In [ ]:
import QUANTAXIS as QA
In [ ]:
"""
在讨论完QA_fetch_get系列以后 我们主要考虑的是从本地获取数据并进行分析
QA_fetch_xxx_adv系列
"""
In [ ]:
# 首先进行数据获取 多个股票的日线数据
#QA.QA_fetch_stock_day_adv("000001",'2017-01-01','2017-11-30')
data=QA.QA_fetch_stock_day_adv(["000001",'000002','000004'],'2017-01-01','2017-11-30')
print(data)
In [ ]:
# 一些基础的值
data.open
data.close
data.high
data.low
data.date
data.datetime
data.code
In [ ]:
# 对数据进行复权处理
#data=data.to_hfq() # 批量后复权
data=data.to_qfq() # 批量前复权
In [ ]:
# 查看数据
# 有三种方式查看数据
data.show()
data()
data.data
# 一般我们推荐直接用()的方式查看数据 这个数据是Pandas.Dataframe格式
In [ ]:
# 数据翻转 .reverse()
reversed_data=data.reverse()
print(reversed_data)
print(reverse_data())
In [ ]:
# 数据查询 .query()
data.query('date=="2017-01-03"')
In [ ]:
# 数据筛选- 选取某一只股票的数据 select_code
data.select_code('000001')
print(data.select_code('000001')())
In [ ]:
# 数据筛选- 选取某一段时间内的数据
res=data.select_time('2017-01-01','2017-01-31')
print(res.data)
# 如果end设置为空,则获取到从start开始至今的所有数据
res=data.select_time('2017-11-01')
print(res.data)
In [ ]:
# 数据筛选 - 选取某一个时间点向前向后的数据
# method
# lt 小于 <
# lte 小于等于 <=
# gt 大于 >
# gte 大于等于 >=
# e 等于 ==
res=data.select_time_with_gap(gap=5,method='lte',time='2017-01-31')
print(res.data)
In [ ]:
# 数据筛选 - 拿到某一天的股票数据
# if_trade的作用是 如果if_trade=False 则遇到停牌时 会返回最后一个交易日的bar
res=data.get_bar(code='000001',time='2017-01-20',if_trade=True)
print(res.data)
In [ ]:
# 数据切面 pivot
res=data.pivot('open')
print(res)
In [ ]:
# 对数据块应用函数 add_func
# 一般是配合指标函数去计算指标
# QA.QA_indicator_ATR ATR指标
res=data.add_func(QA.QA_indicator_ATR,10)
print(res)
In [ ]:
# 格式转换 to_dict, to_list, to_numpy
res=data.to_dict()
print(res)
res=data.to_list()
print(res)
res=data.to_numpy()
print(res)
In [ ]:
# 画图
data.plot('000001') #画某一只股票
data.plot() #画全部股票