在Kimi中输入提示词:
你是一个Python编程专家,要完成一个编写Python脚本的任务,具体步骤如下:
用akshare库获取谷歌(股票代码:105.GOOG)、亚马逊(股票代码:105.AMZN
)、苹果(股票代码:105.AAPL)、阿里巴巴(股票代码:106.BABA)在2024年5月1日到2024年6月1日期间的股票数据;
绘制这几只股票的股价走势曲线,放在一张图上
注意:
每一步都要输出信息到屏幕上
日期格式是YYYYMMDD
设置matplotlib默认字体为'SimHei',文件路径为:C:\Windows\Fonts\simhei.ttf
历史行情数据-东财
接口: stock_us_hist
目标地址: https://quote.eastmoney.com/us/ENTX.html#fullScreenChart
描述: 东方财富网-行情-美股-每日行情
限量: 单次返回指定上市公司的指定 adjust 后的所有历史行情数据
输入参数
名称类型描述
symbolstr美股代码, 可以通过 ak.stock_us_spot_em() 函数返回所有的 pandas.DataFrame 里面的 代码 字段获取
periodstrperiod='daily'; choice of {'daily', 'weekly', 'monthly'}
start_datestrstart_date="20210101"
end_datestrend_date="20210601"
adjuststr默认 adjust="", 则返回未复权的数据; adjust="qfq" 则返回前复权的数据, adjust="hfq" 则返回后复权的数据
输出参数
名称类型描述
日期object-
开盘float64注意单位: 美元
收盘float64注意单位: 美元
最高float64注意单位: 美元
最低float64注意单位: 美元
成交量int32注意单位: 股
成交额float64注意单位: 美元
振幅float64注意单位: %
涨跌幅float64注意单位: %
涨跌额float64注意单位: 美元
换手率float64注意单位: %
接口示例
import akshare as ak
stock_us_hist_df = ak.stock_us_hist(symbol='106.TTE', period="daily", start_date="20200101", end_date="20240214", adjust="qfq")
print(stock_us_hist_df)
Kimi生成的源代码:
import akshare as ak
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
import matplotlib as mpl
from datetime import datetime
# 设置matplotlib的默认字体为'SimHei'
font_path = 'C:\\Windows\\Fonts\\simhei.ttf'
font_name = 'SimHei'
mpl.rcParams['font.family'] = font_name
mpl.rcParams['font.sans-serif'] = [font_name] # 用列表明确字体名
mpl.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
# 设置股票代码和数据获取参数
stocks = ['105.GOOG', '105.AMZN', '105.AAPL', '106.BABA']
period = 'daily'
start_date = '20240501'
end_date = '20240601'
adjust = "qfq" # 前复权数据
# 准备一个字典来存储股票数据
stock_data = {}
# 获取股票数据
for stock in stocks:
try:
# 调用akshare接口获取数据
stock_data[stock] = ak.stock_us_hist(symbol=stock, period=period,
start_date=start_date, end_date=end_date, adjust=adjust)
print(f"获取 {stock} 在{start_date}到{end_date}期间的股票数据成功。")
except Exception as e:
print(f"获取 {stock} 在{start_date}到{end_date}期间的股票数据失败: {e}")
# 绘制股价走势曲线
plt.figure(figsize=(14, 7))
for stock, data in stock_data.items():
if not data.empty:
plt.plot(data['日期'], data['收盘'], label=stock)
# 设置图表标题和标签
plt.title('股票价格走势曲线(2024年5月1日到2024年6月1日)', fontsize=15)
plt.xlabel('日期', fontsize=13)
plt.ylabel('收盘价(美元)', fontsize=13)
plt.legend() # 显示图例
plt.grid(True) # 显示网格
# 显示图表
plt.show()