使用Tushare平台提供的数据绘制日K线、周K线、月K线

1. Tushare介绍

Tushare平台提供了丰富的数据,包含股票、基金、期货、债券、外汇、行业大数据,同时包括了数字货币行情等区块链数据的全数据品类的金融大数据平台,各种api接口的调用极为方便。此外我认为比较好的一点是该平台还提供了数据工具用来调试和查看api调用情况数据工具,只能说不能再方便了,在此奉上Tushare平台链接
Tushare数据工具调试

2. 日K线、周K线、月K线绘制

使用Tushare获取数据极为方便,在调用各类api接口前,只需要完成token设置和接口初始化工作,具体代码如下:

# 设置token,该方法只需要在第一次或者token失效后调用,完成调取tushare数据凭证的设置,正常情况下不需要重复设置
ts.set_token('your token here')
# 初始化pro接口
pro = ts.pro_api()

要想绘制日K线、周K线、月K线,只需要将需要展示的股票的每日、每周、每月数据保存到数据库,再进行前端展示即可,前端展示这里就不细说了,这里只简单介绍如何借助Tshare获取到这些数据。

2.1 日K线

2.1.1 思路及代码

首先需要设置我们想展示哪段时期的股票的日K线图,本次实验中,我展示的是近最200天内的数据,代码如下:

# 最近200天内的开始与截止日期
now = datetime.datetime.now()
start_date = datetime2string(now - datetime.timedelta(days=200))
end_date = datetime2string(now - datetime.timedelta(days=1))
# 获取交易日历
df = pro.trade_cal(exchange='', start_date=start_date, end_date=end_date)
# 接着再筛选一下即可即可
d_date = df[df['is_open'] == 1]['cal_date'].values.tolist()

通过遍历这些日期,便可获取股票日线行情,并将其插入到数据库,大致代码如下:
for date in d_date:

daily = pro.daily(ts_code=‘’, trade_date=date) # 日线行情

2.1.2 结果展示

在这里插入图片描述

2.2 周K线

2.2.1 思路及代码

该段日期有多少周,可借助python的isocalendar函数获取:

st = set()
for date in to_update_date:
    y, wi, _ = datetime.datetime.strptime(date, '%Y%m%d').isocalendar()
    st.add((y, wi))

这里要注意python的isocalendar方法会把年末的最后几天算到下一年的第一周,因此需要做些简单的处理,在此就不多说了。

周K线则在日线数据的基础上,大致思路如下:
1.计算该周对应的具体起止日期start_date和end_date
2.查询日线行情数据,得到该支股票对应该周内行情数据
3.统计分析即可

2.2.2 结果展示

在这里插入图片描述

2.3 月K线

2.3.1 思路及代码

该段日期的月份,可借助d_date获取,即截取d_date,再加入到set中去重即可:

st = set()
for date in d_date :
    st.add((int(date[:4]), int(date[4:6])))

月K线同样是在日线数据的基础上,大致思路如下:
1.计算该月对应的具体起止日期start_date和end_date
2.查询日线行情数据,得到该支股票对应该月内行情数据
3.统计分析即可

2.3.2 结果展示

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值