生成最近n天股票价格图表的Python代码

💡 原文英文,约700词,阅读约需3分钟。
📝

内容提要

这段代码使用yahooquery获取指定股票的历史数据,生成收盘价和交易量的可视化图表,并添加百分比变化注释。代码支持过滤周末数据、设置时区,并将图表保存为图像文件。示例展示了NVIDIA股票过去14天的数据,并保存为“output.png”。

🎯

关键要点

  • 使用yahooquery获取指定股票的历史数据。
  • 生成收盘价和交易量的可视化图表,并添加百分比变化注释。
  • 支持过滤周末数据和设置时区。
  • 将图表保存为图像文件。
  • 示例展示了NVIDIA股票过去14天的数据,并保存为'output.png'。
  • 导入必要的库,包括matplotlib、yahooquery、datetime、pandas、pytz和os。
  • 定义函数plot_stock_last_n_days,接受股票代码、天数、文件名和时区作为参数。
  • 计算日期范围并获取历史数据,检查数据是否可用。
  • 处理数据,转换索引为日期时间格式,过滤掉周末数据,计算收盘价的百分比变化。
  • 创建并配置图表,添加收盘价和交易量的绘图,设置坐标轴和网格线。
  • 添加水印并保存图表为指定文件名,最后显示图表。

延伸问答

如何使用yahooquery获取股票的历史数据?

使用yahooquery库中的Ticker类可以获取指定股票的历史数据。

这段代码如何处理周末数据?

代码会过滤掉周末(星期六和星期天)的数据,只保留工作日的数据。

如何生成股票价格的可视化图表?

通过定义函数plot_stock_last_n_days,使用matplotlib绘制收盘价和交易量的图表,并添加百分比变化注释。

代码中如何计算收盘价的百分比变化?

通过调用pct_change()方法计算收盘价的百分比变化,并将结果存储在数据框的'pct_change'列中。

如何保存生成的图表为图像文件?

使用plt.savefig(filename)函数将图表保存为指定的图像文件。

示例代码中使用了哪些库?

示例代码中使用了matplotlib、yahooquery、datetime、pandas、pytz和os等库。

➡️

继续阅读