history - 查询历史行情
作者:互联网
函数原型:
history(symbol, frequency, start_time, end_time, fields=None, skip_suspended=True,
fill_missing=None, adjust=ADJUST_NONE, adjust_end_time='', df=True)
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbol | str | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法,但不能是list 类型的输入参数,使用时参考symbol |
frequency | str | 频率, 支持 ‘tick’, ‘1d’, ‘15s’, ‘30s’ 等, 默认 ‘1d’, 详情见股票行情数据和期货行情数据 |
start_time | str or datetime.datetime | 开始时间 (%Y-%m-%d %H:%M:%S 格式), 也支持datetime.datetime格式, 其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | str or datetime.datetime | 结束时间 (%Y-%m-%d %H:%M:%S 格式), 也支持datetime.datetime格式 |
fields | str | 指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有, 具体字段见:股票字段 ,期货字段 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | str or None | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 , 目前只支持股票 |
adjust_end_time | str | 复权基点时间, 默认当前时间 |
df | bool | 是否返回 dataframe格式, 默认 False , 返回list[dict] |
返回值:
当df = True时, 返回
类型 | 说明 |
---|---|
dataframe | tick的dataframe 或者 bar的dataframe |
示例1:
history_data = history(symbol='SHSE.000300', frequency='1d', start_time='2010-07-28', end_time='2017-07-30', fields='open, close, low, high, eob', adjust=ADJUST_PREV, df= True)
输出1:
open close low high eob
0 2796.4829 2863.7241 2784.1550 2866.4041 2010-07-28 00:00:00+08:00
1 2866.7720 2877.9761 2851.9961 2888.5991 2010-07-29 00:00:00+08:00
2 2871.4810 2868.8459 2844.6819 2876.1360 2010-07-30 00:00:00+08:00
3 2868.2791 2917.2749 2867.4500 2922.6121 2010-08-02 00:00:00+08:00
4 2925.2539 2865.9709 2865.7610 2929.6140 2010-08-03 00:00:00+08:00
当df = False时, 返回
类型 | 说明 |
---|---|
list | tick 列表 或者 bar 列表 |
示例2:
1 history_data = history(symbol='SHSE.000300', frequency='1d', start_time='2017-07-30', end_time='2017-07-31', fields='open, close, low, high, eob', adjust=ADJUST_PREV, df=False)
输出2:
1 [{'open': 3722.42822265625, 'close': 3737.873291015625, 'low': 3713.655029296875, 'high': 3746.520751953125, 'eob': datetime.datetime(2017, 7, 31, 0, 0, tzinfo=tzfile('PRC'))}]
注意:
1.返回的list/DataFrame
是以参数eob/bob
的升序来排序的,若要获取多标的的数据,通常需进一步的数据处理来分别提取出每只标的的历史数据
2.start_time和end_time中月,日,时,分,秒均可以只输入个位数,例:'2010-7-8 9:40:0'
或'2017-7-30 12:3:0'
,但若对应位置为零,则0
不可被省略,如不可输入'2017-7-30 12:3: '
获取数据目前采用前后闭区间的方式,即会获取前后两个时间节点的数据,使用时务必注意这点
3.若输入无效标的代码,返回空列表/空DataFrame
4.若输入代码正确,但查询字段包含无效字段,返回的列表、DataFrame只包含eob、symbol
和输入的其他有效字段
5. skip_suspended 和 fill_missing 参数暂不支持
6. 单次返回数据量最大返回33000, 超出部分不返回
7. start_time和end_time输入不存在日期时,会报错details = “failed to parse datetime”
标签:00,行情,end,datetime,start,time,查询,2010,history 来源: https://www.cnblogs.com/guanshoupeng/p/15123011.html