目标:
学会掌握获取特定股票行情的方法
目前用聚宽数据挺好,可以得到每分钟的行情,Tushare只能获取5分钟行情,因此放弃Tushare使用聚宽。
内容:
画行情图,得到价格与成交量的图形。如图下,证券代码300001的2021-1-14日间行情。
行情软件的图示:
源代码如下:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from jqdatasdk import *
auth('用户名','密码') #这里用户名密码需要前往聚宽官网自行申请
is_auth = is_auth()
if is_auth == True:
print("登录成功")
else:
print("连接失败")
print(__version__)
#获取股票每分钟信息
df = get_price('300001.XSHE', start_date='2021-01-14 09:30:00', end_date='2021-01-14 15:00:00', frequency='minute', fields=['open', 'close','volume'])
#print(df)
print(df['volume'])
x=np.array(df.index) #时间序列
price=np.array(df['close']) #用收盘价画图
volume=np.array(df['volume'].values) #获取成交量
xx=np.arange(0,len(x),1) # X轴长度
#画图参数
fig = plt.figure()
ax1 = fig.add_subplot(211)
plt.rcParams['font.sans-serif']=['SimHei'] #解决中文乱码
plt.rcParams['axes.unicode_minus'] = False
ax1.set_title('行情')
ax1.plot(xx,price,c='blue')
plt.xlabel('交易时间(分钟)')
plt.ylabel('成交价格(元)')
ax1.legend('成交价格')
plt.grid()
ax2 = fig.add_subplot(212)
ax2.bar(xx,volume,color='deepskyblue',label='left')
ax2.set_ylabel('成交量')
plt.xlabel('交易时间(分钟)')
plt.grid()
ax2.legend('成交量')
#plt.subplots_adjust(left=0.01)
plt.show()
知识点:
获取股票行情的途径和方式
学习产出:
数据分析基础,Dateframe和array的相互转换。