前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >AI炒股:获取个股的历史成交价格并画出K线图

AI炒股:获取个股的历史成交价格并画出K线图

作者头像
AIGC部落
发布2024-06-24 19:33:43
800
发布2024-06-24 19:33:43
举报
文章被收录于专栏:Dance with GenAIDance with GenAI

任务:获取贵州茅台的近几个月的价格数据,绘制k线图;

在deepseek中输入提示词:

你是一个Python编程专家,要完成一个编写Python脚本的任务,具体步骤如下:

用AKShare库获取股票贵州茅台(股票代码:600519)在2024年3月7日到2024年6月5日期间的历史行情数据-前复权。

然后用pyecharts绘制K线图;

注意:

每一步都要输出信息到屏幕上

日期格式是YYYYMMDD

AKShare库使用示例:

接口: stock_zh_a_hist

目标地址: https://quote.eastmoney.com/concept/sh603777.html?from=classic(示例)

输入参数

名称类型描述

symbolstrsymbol='603777'; 股票代码可以在 ak.stock_zh_a_spot_em() 中获取

periodstrperiod='daily'; choice of {'daily', 'weekly', 'monthly'}

start_datestrstart_date='20210301'; 开始查询的日期

end_datestrend_date='20210616'; 结束查询的日期

adjuststr默认返回不复权的数据; qfq: 返回前复权后的数据; hfq: 返回后复权后的数据

timeoutfloattimeout=None; 默认不设置超时参数

接口示例-历史行情数据-前复权

import akshare as ak

stock_zh_a_hist_df = ak.stock_zh_a_hist(symbol="000001", period="daily", start_date="20170301", end_date='20240528', adjust="qfq")

print(stock_zh_a_hist_df)

输出参数-历史行情数据

名称类型描述

日期object交易日

股票代码object不带市场标识的股票代码

开盘float64开盘价

收盘float64收盘价

最高float64最高价

最低float64最低价

成交量int64注意单位: 手

成交额float64注意单位: 元

振幅float64注意单位: %

涨跌幅float64注意单位: %

涨跌额float64注意单位: 元

换手率float64注意单位: %

源代码:

import akshare as ak

from pyecharts.charts import Kline

from pyecharts import options as opts

# 获取股票历史行情数据

def get_stock_data(symbol, period, start_date, end_date, adjust):

stock_hist_df = ak.stock_zh_a_hist(

symbol=symbol,

period=period,

start_date=start_date,

end_date=end_date,

adjust=adjust

)

print("获取到的股票历史行情数据如下:")

print(stock_hist_df)

return stock_hist_df

# 使用pyecharts绘制K线图

def plot_kline(stock_data):

if not stock_data.empty:

# 准备K线图的数据

kline_data = []

for index, row in stock_data.iterrows():

kline_data.append([

row["日期"], # 日期

row["开盘价"], # 开盘价

row["最高价"], # 最高价

row["最低价"], # 最低价

row["收盘价"] # 收盘价

])

# 定义K线图

kline = (

Kline()

.add_xaxis([row[0] for row in kline_data]) # X轴数据为日期

.add_yaxis(

"贵州茅台",

[row[1:] for row in kline_data], # Y轴数据为开盘价、最高价、最低价、收盘价

is_more_utils=True,

)

.set_global_opts(

title_opts=opts.TitleOpts(title="贵州茅台(股票代码:600519)K线图"),

xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=45)), # X轴标签旋转45度

)

.set_series_opts(

itemstyle_opts=opts.ItemStyleOpts(

normal=opts.NormalOpts(color="#ffde33", color0="#00a1ff"),

emphasis=opts.EmphasisOpts(color="#ffde33", color0="#00a1ff")

)

)

)

# 渲染图表到HTML文件

kline.render("guangxi_moutai_kline.html")

print("K线图已生成,文件名为:guangxi_moutai_kline.html")

else:

print("没有获取到数据,无法生成K线图。")

# 设置参数

symbol = "600519"

period = "daily"

start_date = "20240301"

end_date = "20240605"

adjust = "qfq"

# 执行函数

stock_hist_df = get_stock_data(symbol, period, start_date, end_date, adjust)

plot_kline(stock_hist_df)

打开maotai_kline.html,显示如下:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Dance with GenAI 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档