QUANTAXIS 从web获取数据教程

本notebook旨在提供一个可视可交互的ipyb文件以展示QA如何从web获取各种数据,如果你想试试这些代码的效果,请下载本notebook文件到本地使用。

核心函数是QA_fetch_get_xxxxxx(数据来源,代码,日期/时间参数...)

我们没有完整的演示所有数据获取接口,需要的话请查看文档或源代码。


In [26]:
# 这一步请自行安装QA,如果报错请先自行安装报错提示缺少的包再试试,最后不行再去论坛或Q群提问,谢谢!
import QUANTAXIS as QA

股票数据

  1. 获取股票列表
  2. 获取股票日线
  3. 获取股票分钟线
  4. 获取股票分笔数据

1. 股票列表


In [3]:
QA.QA_fetch_get_stock_list('tdx').head(3)


Out[3]:
code volunit decimal_point name pre_close sse sec
code sse
000001 sz 000001 100 2 平安银行 16.450001 sz stock_cn
000002 sz 000002 100 2 万 科A 26.420000 sz stock_cn
000004 sz 000004 100 2 国农科技 18.350000 sz stock_cn

2.股票日线

QA.QA_fetch_get_stock_day( package, code, start, end, iffq='01', level='day', type='pd', )

if_fq的意思是是否复权,可以选择qfq:前复权 或者 bfq:不复权 或者 hfq:后复权


In [25]:
QA.QA_fetch_get_stock_day('tdx','000001','2018-08-01','2018-08-10',if_fq='bfq').head(3)


Out[25]:
open close high low vol amount date code date_stamp
date
2018-08-01 9.42 9.15 9.50 9.11 814081.0 759282240.0 2018-08-01 000001 1.533053e+09
2018-08-02 9.13 8.94 9.15 8.88 931401.0 839272256.0 2018-08-02 000001 1.533139e+09
2018-08-03 8.93 8.91 9.10 8.91 476546.0 428641536.0 2018-08-03 000001 1.533226e+09

3.股票分钟线

QA.QA_fetch_get_stock_min(package, code, start, end, level='1min')


In [7]:
QA.QA_fetch_get_stock_min('tdx','000001','2019-08-30 09:30:00','2019-08-31 15:00:00').head(3)


Out[7]:
open close high low vol amount datetime code date date_stamp time_stamp type
datetime
2019-08-30 09:31:00 14.29 14.32 14.33 14.29 4387700.0 62754528.0 2019-08-30 09:31:00 000001 2019-08-30 1.567094e+09 1.567129e+09 1min
2019-08-30 09:32:00 14.32 14.38 14.38 14.32 2781400.0 39923096.0 2019-08-30 09:32:00 000001 2019-08-30 1.567094e+09 1.567129e+09 1min
2019-08-30 09:33:00 14.37 14.35 14.37 14.33 1464400.0 21015736.0 2019-08-30 09:33:00 000001 2019-08-30 1.567094e+09 1.567129e+09 1min

4. 股票分笔数据

QA.QA_fetch_get_stock_transaction(package, code, start, end, retry=2)


In [9]:
QA.QA_fetch_get_stock_transaction('tdx','000001','2019-08-30','2019-08-30').head(3)


QUANTAXIS>> Successfully Getting 000001 history transaction data in day 2019-08-30
Out[9]:
time price vol buyorsell date datetime code order
datetime
2019-08-30 09:25:00 09:25 14.29 14071 2 2019-08-30 2019-08-30 09:25:00 000001 0
2019-08-30 09:30:00 09:30 14.29 9434 0 2019-08-30 2019-08-30 09:30:00 000001 1
2019-08-30 09:30:00 09:30 14.31 3043 0 2019-08-30 2019-08-30 09:30:00 000001 2

期货数据

  1. 获取期货列表
  2. 获取期货日线
  3. 获取期货分钟线
  4. 获取期货分笔数据

1. 期货列表


In [14]:
QA.QA_fetch_get_future_list('tdx').head(5)


Out[14]:
category market code name desc
code
AU2012 3 30 AU2012 黄金2012 AU2012
AUL8 3 30 AUL8 黄金主连 AUL8
AUL9 3 30 AUL9 黄金指数 AUL9
BU1912 3 30 BU1912 沥青1912 BU1912
BU2001 3 30 BU2001 沥青2001 BU2001

2.期货日线

QA.QA_fetch_get_future_day(package, code, start, end, frequence='day')

注意合约名要大写!


In [19]:
QA.QA_fetch_get_future_day('tdx','I2001','2019-11-01','2019-11-10').head(3)


Out[19]:
open high low close position trade price amount date code date_stamp
date
2019-11-01 620.0 630.0 614.0 625.5 1571710 17666 622.5 2.202435e-39 2019-11-01 I2001 1.572538e+09
2019-11-04 625.0 626.0 612.5 615.0 1533962 15625 618.5 2.149539e-39 2019-11-04 I2001 1.572797e+09
2019-11-05 614.0 624.5 610.5 622.0 1573306 16716 617.0 2.204671e-39 2019-11-05 I2001 1.572883e+09

3.期货分钟线

QA.QA_fetch_get_future_min(package, code, start, end, frequence='1min')


In [20]:
QA.QA_fetch_get_future_min('tdx','I2001','2019-11-01 09:30:00','2019-11-01 15:00:00').head(3)


Out[20]:
open high low close position trade price datetime amount tradetime code date date_stamp time_stamp type
datetime
2019-11-01 09:30:00 618.0 618.0 617.0 617.5 1510450 2814 0.0 2019-11-01 09:30:00 2.116591e-39 2019-11-01 09:30 I2001 2019-11-01 1.572538e+09 1.572572e+09 1min
2019-11-01 09:31:00 617.5 617.5 617.0 617.5 1510914 3998 0.0 2019-11-01 09:31:00 2.117241e-39 2019-11-01 09:31 I2001 2019-11-01 1.572538e+09 1.572572e+09 1min
2019-11-01 09:32:00 617.5 618.0 616.5 617.0 1511118 4268 0.0 2019-11-01 09:32:00 2.117527e-39 2019-11-01 09:32 I2001 2019-11-01 1.572538e+09 1.572572e+09 1min

4. 期货分笔数据

QA.QA_fetch_get_future_transaction(package, code, start, end)


In [22]:
QA.QA_fetch_get_future_transaction('tdx','I2001','2019-11-01','2019-11-01').head(3)


QUANTAXIS>> Successfully Getting I2001 history transaction data in day 2019-11-01
Out[22]:
date hour minute price volume zengcang natrue_name nature_name direction nature datetime code order
datetime
2019-11-01 20:59:00 2019-11-01 20 59 620000 2472 1532 开仓 开仓 0 20000 2019-11-01 20:59:00 I2001 0
2019-11-01 21:00:00 2019-11-01 21 0 619500 510 342 空开 空开 -1 10000 2019-11-01 21:00:00 I2001 1
2019-11-01 21:00:00 2019-11-01 21 0 620000 1086 -14 空平 空平 1 0 2019-11-01 21:00:00 I2001 2