请 [注册] 或 [登录]  | 返回主站

量化交易吧 /  量化平台 帖子:3365815 新帖:22

使用jqdatasdk在本地软件实时看盘

爱汇小王子发表于:5 月 10 日 02:34回复(1)

jqdatasdk 其中get_current_tick可以实时获取股票数据包括:

time    时间
current    当前价
high    当日最高价
low    当日最低价
volume    累计成交量
money    累计成交额
a1_v~a5_v    五档卖量
a1_p~a5_p    五档卖价
b1_v~b5_v    五档买量
b1_p~b5_p    五档买价

get_current_tick可以开通7天的试用权限,往后就。。。。嗯,不会只有一个手机号的GG

这样,我们for循环就可以做动图啦:
(会用到append()函数,因type为list,所以可以直接取[-31:-1],这样就可以保证动图始终只有30个数据,不会引起重叠)
需要在交易时间使用的时候把‘’‘   ‘’‘ 里的数据打开,改一下x轴数据就行了~

动图就不发啦~

Img

import matplotlib.pyplot as pltfrom jqdatasdk import *auth()#账号密码import numpy as npax=[]   #保存图1数据ay=[]bx=[]   #保存图2数据by=[]num=0  #计数plt.ion()    # 开启一个画图的窗口进入交互模式,用于实时更新数据# plt.rcParams['s*efig.dpi'] = 200 #图片像素# plt.rcParams['figure.dpi'] = 200 #分辨率plt.rcParams['figure.figsize'] = (10, 10)        # 图像显示大小plt.rcParams['font.sans-serif']=['SimHei']   #防止中文标签乱码,还有通过导入字体文件的方法plt.rcParams['axes.unicode_minus'] = Falseplt.rcParams['lines.linewidth'] = 1   #设置曲线线条宽度while num<10000:plt.clf()    #清除刷新前的图表,防止数据量过大消耗内存'''stock = get_current_tick('600519.XSHG')    m = stock.volume    n = stock.current    q = stock.datetime'''n=np.random.uniform(20, 10)m=np.random.uniform(20, 10)#图表1ax.append(num)      #追加x坐标值ay.append(n)ex = ax[-31:-1]ey = ay[-31:-1]#追加y坐标值agraphic=plt.subplot(2,1,1)agraphic.set_title('price')      #添加子标题agraphic.set_xlabel('x轴',fontsize=10)   #添加轴标签agraphic.set_ylabel('y轴', fontsize=20)plt.plot(ex,ey,'r')                #等于agraghic.plot(ax,ay,'g-')#图表2bx.append(num)by.append(m)sx=bx[-31:-1]sy=by[-31:-1]bgraghic=plt.subplot(2, 1, 2)bgraghic.set_title('volume')bgraghic.plot(sx,sy,'r^')plt.pause(0.5)     #设置暂停时间,太快图表无法正常显示num = num + 1plt.ioff()       # 关闭画图的窗口,即关闭交互模式plt.show()       # 显示图片,防止闪退

全部回复

0/140

量化课程

    移动端课程