网站建设加盟代理,济南哪个公司做网站好,国外建站vps,怎么提交网站 Python SDK文档
5.API 介绍 5.1基本函数
init - 初始化策略
初始化策略, 策略启动时自动执行。可以在这里初始化策略配置参数。
函数原型#xff1a;
init(context)参数#xff1a;
参数名类型说明contextcontext上下文#xff0c;全局变量可存储在这里
示例… Python SDK文档
5.API 介绍 5.1基本函数
init - 初始化策略
初始化策略, 策略启动时自动执行。可以在这里初始化策略配置参数。
函数原型
init(context)参数
参数名类型说明contextcontext上下文全局变量可存储在这里
示例
def init(context):# 订阅barsubscribe(symbolsSHSE.600000,SHSE.600004, frequency30s, count5)# 增加对象属性如:设置一个股票资金占用百分比context.percentage_stock 0.8注意 回测模式下init函数里不支持交易操作仿真模式和实盘模式支持 schedule - 定时任务配置
在指定时间自动执行策略算法, 通常用于选股类型策略
函数原型
schedule(schedule_func, date_rule, time_rule)参数
参数名类型说明schedule_funcfunction策略定时执行算法date_rulestrn 时间单位 可选d/w/m 表示 n 天/n 周/n 月time_rulestr执行算法的具体时间 (%H:%M:%S 格式)
返回值
None
示例
def init(context):#每天的19:06:20执行策略algo_1schedule(schedule_funcalgo_1, date_rule1d, time_rule19:06:20)#每月的第一个交易日的09:40:00执行策略algo_2schedule(schedule_funcalgo_2, date_rule1m, time_rule9:40:00)def algo_1(context):print(context.symbols)def algo_2(context):order_volume(symbolSHSE.600000, volume200, sideOrderSide_Buy, order_typeOrderType_Market, position_effectPositionEffect_Open)
注意
1.time_rule 的时,分,秒均不可以只输入个位数例:9:40:0或14:5:0
2.目前暂时支持1d、1w、1m其中1w、1m仅用于回测 run - 运行策略
函数原型
run(strategy_id, filename, modeMODE_UNKNOWN, token, backtest_start_time,backtest_end_time, backtest_initial_cash1000000,backtest_transaction_ratio1, backtest_commission_ratio0,backtest_slippage_ratio0, backtest_adjustADJUST_NONE, backtest_check_cache1,serv_addr, backtest_match_mode0)参数
参数名类型说明strategy_idstr策略 idfilenamestr策略文件名称modeint策略模式 MODE_LIVE(实时)1 MODE_BACKTEST(回测) 2tokenstr用户标识backtest_start_timestr回测开始时间 (%Y-%m-%d %H:%M:%S 格式)backtest_end_timestr回测结束时间 (%Y-%m-%d %H:%M:%S 格式)backtest_initial_cashdouble回测初始资金, 默认 1000000backtest_transaction_ratiodouble回测成交比例, 默认 1.0, 即下单 100%成交backtest_commission_ratiodouble回测佣金比例, 默认 0backtest_slippage_ratiodouble回测滑点比例, 默认 0backtest_adjustint回测复权方式(默认不复权) ADJUST_NONE(不复权)0 ADJUST_PREV(前复权)1 ADJUST_POST(后复权)2backtest_check_cacheint回测是否使用缓存1 - 使用 0 - 不使用默认使用serv_addrstr终端服务地址, 默认本地地址, 可不填若需指定应输入 ip端口号如127.0.0.1:7001backtest_match_modeint回测市价撮合模式 1-实时撮合在当前 bar 的收盘价/当前 tick 的 price 撮合0-延时撮合在下个 bar 的开盘价/下个 tick 的 price 撮合默认是模式 0
返回值
None
示例
run(strategy_idstrategy_1, filenamemain.py, modeMODE_BACKTEST, tokentoken_id,backtest_start_time2016-06-17 13:00:00, backtest_end_time2017-08-21 15:00:00)注意
1. run 函数中mode1也可改为modeMODE_LIVE两者等价backtest_adjust同理
2. backtest_start_time 和 backtest_end_time 中月,日,时,分,秒均可以只输入个位数例:2016-6-7 9:55:0或2017-8-1 14:6:0,但若对应位置为零则 0 不可被省略,比如不能输入2017-8-1 14:6:
3. filename 指运行的 py 文件名字如该策略文件名为 Strategy.py,则此处应填Strategy.py stop - 停止策略
停止策略退出策略进程
函数原型
stop()返回值
None
示例
#若订阅过的代码集合为空停止策略
if not context.symbols:stop()timer - 设置定时器
设定定时器的间隔秒数每过设定好的秒数调用一次计时器 timer_func()直到 timer_stop()结束定时器为止。 仿真、实盘场景适用回测模式下不生效
函数原型
timer(timer_func, period, start_delay)参数
参数名类型说明timer_funcfunction在 timer 设置的时间到达时触发的事件函数periodint定时事件间隔毫秒数设定每隔多少毫秒触发一次定时器范围在 [1,43200000]start_delayint等待秒数(毫秒)设定多少毫秒后启动定时器范围在[0,43200000]
返回值 dict
字段类型说明timer_statusint定时器设置是否成功成功0失败非 0 错误码timer_id 无效。timer_idint设定好的定时器 id
#timer_stop - 停止定时器
停止已设置的定时器
函数原型
timer_stop(timer_id)复制成功
参数
字段类型说明timer_idint要停止的定时器 id
返回值
字段类型说明is_stopbool是否成功停止True or False
示例
def init(context):# 每隔1分钟执行ontime_1, 即时启动context.timerid_1 timer(timer_funcontimer_1, period60000, start_delay0)context.counter_1 0# 每隔半小时执行ontime_2, 5分钟之后启动context.timerid_2 timer(timer_funcontimer_2, period300000, start_delay0)print(启动定时器2, context.now)context.counter_2 0def ontimer_1(context):# 定时器执行次数计数context.counter_1 1# 定时器执行逻辑print(定时器1, context.now)def ontimer_2(context):# 定时器执行次数计数context.counter_2 1# 定时器执行逻辑如查询账户资金cash context.account().cashprint(定时器2, context.now)# 按执行次数条件停止定时器if context.counter_1 5:ret1 timer_stop(context.timerid_1[timer_id])if ret1:print(结束1分钟定时器)if context.counter_2 10:ret2 timer_stop(context.timerid_2[timer_id])注意
仿真、实盘场景适用回测模式下不生效period 从前一次事件函数开始执行时点起算若下一次事件函数需要执行时前一次事件函数没运行完毕等待上一个事件执行完毕再执行下一个事件。 5.2数据订阅
subscribe - 行情订阅
订阅行情, 可以指定 symbol, 数据滑窗大小, 以及是否需要等待全部代码的数据到齐再触发事件。
函数原型
subscribe(symbols, frequency1d, count1, unsubscribe_previousFalse)参数
参数名类型说明symbolsstr or list订阅标的代码, 注意大小写支持字串格式如有多个代码, 中间用 , (英文逗号) 隔开, 也支持 [symbol1, symbol2] 这种列表格式frequencystr频率, 支持 tick, 60s, 300s, 900s 等, 默认1d, 详情见股票行情数据和期货行情数据, 实时行情支持的频率countint订阅数据滑窗大小, 默认1 ,详情见数据滑窗unsubscribe_previousbool是否取消过去订阅的 symbols, 默认False不取消, 输入True则取消所有原来的订阅。
返回值
None
示例
def init(context):subscribe(symbolsSHSE.600519, frequency60s, count2)def on_bar(context,bars):data context.data(symbolSHSE.600519, frequency60s, count1)注意 subscribe 支持多次调用并可以重复订阅同一代码。订阅后的数据储存在本地需要通过 context.data 接口调用或是直接在 on_tick 或 on_bar 中获取。 在实时模式下最新返回的数据是不复权的。 unsubscribe - 取消订阅
取消行情订阅, 默认取消所有已订阅行情
函数原型
unsubscribe(symbols*, frequency60s)参数
参数名类型说明symbolsstr or list订阅标的代码, 支持字串格式如有多个代码, 中间用 , (英文逗号) 隔开, 也支持 [symbol1, symbol2] 这种列表格式frequencystr频率, 支持 tick, 60s, 300s, 900s 等, 默认1d, 详情见股票行情数据和期货行情数据, 实时行情支持的频率
返回值
None
示例
unsubscribe(symbolsSHSE.600000,SHSE.600004, frequency60s)注意 如示例所示代码取消SHSE.600000,SHSE.600004两只代码60s行情的订阅若SHSE.600000同时还订阅了300s频度的行情该代码不会取消该标的此频度的订阅 5.3数据事件
数据事件是阻塞回调事件函数通过 subscribe 函数订阅 主动推送 on_tick - tick 数据推送事件
接收 tick 分笔数据 通过 subscribe 订阅 tick 行情行情服务主动推送 tick 数据
函数原型
on_tick(context, tick)参数
参数名类型说明contextcontext 对象上下文ticktick 对象当前被推送的 tick
示例
def on_tick(context, tick):print(tick)输出
{symbol: SHSE.600519, created_at: datetime.datetime(2020, 9, 2, 14, 7, 23, 620000, tzinfotzfile(PRC)), price: 1798.8800048828125, open: 1825.0, high: 1828.0, low: 1770.0, cum_volume: 2651191, cum_amount: 4760586491.0, cum_position: 0, last_amount: 179888.0, last_volume: 100, trade_type: 0, receive_local_time: 1602751345.262745}on_bar - bar 数据推送事件
接收固定周期 bar 数据 通过 subscribe 订阅 bar 行情行情服务主动推送 bar 数据
函数原型
on_bar(context, bars)参数
参数名类型说明contextcontext 对象上下文对象barslist(bar当前被推送的 bar 列表
示例
def on_bar(context, bars):for bar in bars:print(bar)输出
{symbol: SHSE.600519, eob: datetime.datetime(2020, 9, 30, 15, 15, 1, tzinfotzfile(PRC)), bob: datetime.datetime(2020, 9, 30, 0, 0, tzinfotzfile(PRC)), open: 1660.0, close: 1668.5, high: 1691.9000244140625, low: 1660.0, volume: 2708781, amount: 4536012540.0, pre_close: 1652.2999267578125, position: 0, frequency: 1d, receive_local_time: 1602751647.923199}注意
1. 若在 subscribe 函数中订阅了多个标的的 bar但 wait_group 参数值为 False,则多次触发 On_bar,每次返回只包含单个标的 list 长度为 1 的 bars;若参数值为 True,则只会触发一次 On_bar,返回包含多个标的的 bars。
2. bar 在本周期结束时间后才会推送标的在这个周期内无交易则不推送 bar。 on_l2transaction - 逐笔成交事件
接收逐笔成交数据(L2 行情时有效) 仅特定券商版本可用 函数原型
on_l2transaction(context, transaction)参数
参数名类型说明contextcontext 对象上下文对象transactionL2Transaction 对象收到的逐笔成交行情
示例
def on_l2transaction(context, transaction):print(transaction)输出
{symbol: SZSE.300003, volume: 300, created_at: datetime.datetime(2020, 11, 24, 9, 38, 16, 50, tzinfotzfile(PRC)), exec_type: 4, side: , price: 0.0} on_l2order - 逐笔委托事件
接收逐笔委托数据深交所 L2 行情时有效 仅特定券商版本可用 函数原型
on_l2order(context, l2order)参数
参数名类型说明contextcontext 对象上下文对象l2orderL2Order 对象收到的逐笔委托行情
示例
def on_l2order(context, l2order):print(l2order)输出
{symbol: SZSE.300003, side: 1, price: 29.350000381469727, volume: 2400, created_at: datetime.datetime(2020, 11, 24, 9, 38, 16, 80, tzinfotzfile(PRC)), order_type: 2} 5.4行情数据查询函数
current - 查询当前行情快照
查询当前行情快照返回 tick 数据。实时模式返回当前最新 tick 数据回测模式返回回测当前时间点的最近一分钟的收盘价
函数原型
current(symbols, fields)参数
参数名类型说明symbolsstr or list查询代码如有多个代码, 中间用 , (英文逗号) 隔开, 也支持 [symbol1, symbol2] 这种列表格式 使用参考symbolfieldsstr查询字段, 默认所有字段 具体字段见:Tick 对象
返回值 list[dict]
示例
current_data current(symbolsSZSE.000001)输出
[{symbol: SZSE.000001, open: 16.200000762939453, high: 16.920000076293945, low: 16.149999618530273, price: 16.559999465942383, quotes: [{bid_p: 16.549999237060547, bid_v: 209200, ask_p: 16.559999465942383, ask_v: 296455}, {bid_p: 16.540000915527344, bid_v: 188900, ask_p: 16.56999969482422, ask_v: 374405}, {bid_p: 16.530000686645508, bid_v: 44900, ask_p: 16.579999923706055, ask_v: 187220}, {bid_p: 16.520000457763672, bid_v: 20800, ask_p: 16.59000015258789, ask_v: 102622}, {bid_p: 16.510000228881836, bid_v: 37700, ask_p: 16.600000381469727, ask_v: 337002}], cum_volume: 160006232, cum_amount: 2654379585.66, last_amount: 14153832.0, last_volume: 854700, trade_type: 7, created_at: datetime.datetime(2020, 10, 15, 15, 0, 3, tzinfotzfile(PRC))}]注意
1. 若输入包含无效标的代码则返回的列表只包含有效标的代码对应的dict
2. 若输入代码正确但查询字段中包括错误字段返回的列表仍包含对应数量的dict但每个dict中除有效字段外其他字段的值均为空字符串/0
3. 回测只返回 symbol、price 和 created_at 字段实时模式返回全部字段
4. 实时模式无法获取集合竞价的数据可使用 history_n history - 查询历史行情
函数原型
history(symbol, frequency, start_time, end_time, fieldsNone, skip_suspendedTrue,fill_missingNone, adjustADJUST_NONE, adjust_end_time, dfTrue)参数
参数名类型说明symbolstr or list标的代码, 如有多个代码, 中间用 , (英文逗号) 隔开, 也支持 [symbol1, symbol2] 这种列表格式 使用参考symbolfrequencystr频率, 支持 tick, 1d, 60s 等, 默认 1d, 详情见股票行情数据和期货行情数据, 实时行情支持的频率start_timestr or datetime.datetime开始时间 (%Y-%m-%d %H:%M:%S 格式), 也支持 datetime.datetime 格式end_timestr or datetime.datetime结束时间 (%Y-%m-%d %H:%M:%S 格式), 也支持 datetime.datetime 格式fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有, 具体字段见:tick 对象 和 bar 对象skip_suspendedbool是否跳过停牌, 默认跳过fill_missingstr or None填充方式, None - 不填充, NaN - 用空值填充, Last - 用上一个值填充, 默认 NoneadjustintADJUST_NONE or 0: 不复权, ADJUST_PREV or 1: 前复权, ADJUST_POST or 2: 后复权 默认不复权 , 目前只支持股票adjust_end_timestr复权基点时间, 默认当前时间dfbool是否返回 dataframe 格式, 默认 False, 返回 list[dict]
返回值:参考tick 对象 和 bar 对象。
当 df True 时 返回
类型说明dataframetick 的 dataframe 或者 bar 的 dataframe
示例
history_data history(symbolSHSE.000300, frequency1d, start_time2010-07-28, end_time2017-07-30, fieldsopen, close, low, high, eob, adjustADJUST_PREV, df True)输出 open close low high eob
0 2796.4829 2863.7241 2784.1550 2866.4041 2010-07-28 00:00:0008:00
1 2866.7720 2877.9761 2851.9961 2888.5991 2010-07-29 00:00:0008:00
2 2871.4810 2868.8459 2844.6819 2876.1360 2010-07-30 00:00:0008:00
3 2868.2791 2917.2749 2867.4500 2922.6121 2010-08-02 00:00:0008:00
4 2925.2539 2865.9709 2865.7610 2929.6140 2010-08-03 00:00:0008:00
当 df False 时 返回
类型说明listtick 列表 或者 bar 列表
注意
history_data history(symbolSHSE.000300, frequency1d, start_time2017-07-30, end_time2017-07-31, fieldsopen, close, low, high, eob, adjustADJUST_PREV, dfFalse)输出
[{open: 3722.42822265625, close: 3737.873291015625, low: 3713.655029296875, high: 3746.520751953125, eob: datetime.datetime(2017, 7, 31, 0, 0, tzinfotzfile(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
history_n - 查询历史行情最新 n 条
函数原型
history_n(symbol, frequency, count, end_timeNone, fieldsNone, skip_suspendedTrue,fill_missingNone, adjustADJUST_NONE, adjust_end_time, dfFalse)参数
参数名类型说明symbolstr标的代码(只允许单个标的的代码字符串)使用时参考symbolfrequencystr频率, 支持 tick, 1d, 60s 等, 默认 1d, 详情见股票行情数据和期货行情数据, 实时行情支持的频率countint数量(正整数)end_timestr or datetime.datetime结束时间 (%Y-%m-%d %H:%M:%S 格式), 也支持 datetime.datetime 格式默认 None 时用了实际当前时间非回测当前时间fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有, 具体字段见:tick 对象 和 bar 对象skip_suspendedbool是否跳过停牌, 默认跳过fill_missingstr or None填充方式, None - 不填充, NaN - 用空值填充, Last - 用上一个值填充, 默认 NoneadjustintADJUST_NONE or 0: 不复权, ADJUST_PREV or 1: 前复权, ADJUST_POST or 2: 后复权 默认不复权 , 目前只支持股票adjust_end_timestr复权基点时间, 默认当前时间dfbool是否返回 dataframe 格式, 默认 False, 返回 list[dict]
返回值:参考tick 对象 和 bar 对象。
当 df True 时返回
类型说明dataframetick 的 dataframe 或者 bar 的 dataframe
示例
history_n_data history_n(symbolSHSE.600519, frequency1d, count100, end_time2020-10-20 15:30:00, fieldssymbol, open, close, low, high, eob, adjustADJUST_PREV, dfTrue)输出 symbol open ... high eob
0 SHSE.600519 1350.2278 ... 1350.3265 2020-05-22 00:00:0008:00
1 SHSE.600519 1314.6434 ... 1350.8010 2020-05-25 00:00:0008:00
2 SHSE.600519 1354.0629 ... 1354.1321 2020-05-26 00:00:0008:00
3 SHSE.600519 1343.3086 ... 1344.2970 2020-05-27 00:00:0008:00
4 SHSE.600519 1322.5214 ... 1331.3878 2020-05-28 00:00:0008:00当 df False 时 返回
类型说明listtick 列表 或者 bar 列表
示例
history_n_data history_n(symbolSHSE.600519, frequency1d, count2, end_time2020-10-20 15:30:00, fieldssymbol, open, close, low, high, eob, adjustADJUST_PREV, dfFalse)输出
[{symbol: SHSE.600519, open: 1725.0, close: 1699.0, low: 1691.9000244140625, high: 1733.97998046875, eob: datetime.datetime(2020, 10, 19, 0, 0, tzinfotzfile(PRC))}, {symbol: SHSE.600519, open: 1699.989990234375, close: 1734.0, low: 1695.0, high: 1734.969970703125, eob: datetime.datetime(2020, 10, 20, 0, 0, tzinfotzfile(PRC))}]
注意
1. 返回的list/DataFrame是以参数eob/bob的升序来排序的
2. 若输入无效标的代码返回空列表/空DataFrame
3. 若输入代码正确但查询字段包含无效字段返回的列表、DataFrame 只包含 eob、symbol和输入的其他有效字段
4. end_time 中月,日,时,分,秒均可以只输入个位数,例:2017-7-30 20:0:20,但若对应位置为零则0不可被省略,如不可输入2017-7-30 20: :20
5. skip_suspended 和 fill_missing 参数暂不支持
6. 单次返回数据量最大返回 33000, 超出部分不返回
7. end_time 输入不存在日期时会报错 details Cant parse string as time: 2020-10-40 15:30:00
context.data - 查询订阅数据
函数原型
context.data(symbol, frequency, count)参数
参数名类型说明symbolstr标的代码(只允许单个标的的代码字符串)使用时参考symbolfrequencystr频率, 支持 tick, 1d, 60s 等, 默认 1d, 详情见股票行情数据和期货行情数据, 实时行情支持的频率countint滑窗大小(正整数)需小于等于 subscribe 函数中 count 值fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有, 具体字段见:tick 对象 和 bar 对象
返回值:参考tick 对象 和 bar 对象。
类型说明dataframetick 的 dataframe 或者 bar 的 dataframe
示例
def init(context):subscribe(symbolsSHSE.600519, frequency60s, count2)def on_bar(context,bars):data context.data(symbolSHSE.600519, frequency60s, count1)输出 symbol eob bob open close high low amount pre_close position frequency volume
0 SHSE.600519 2020-12-21 09:31:0008:00 2020-12-21 09:30:0008:00 1840 1845.5 1845.5 1838.199951 210503484 0 0 60s 114365注意
1. 只有在订阅后此接口才能取到数据如未订阅数据则返回值为空。
2. symbols 参数只支持输入一个标的。
3. count 参数必须小于或等于订阅函数里面的 count 值 get_history_l2ticks - 查询历史 L2 Tick 行情
仅特定券商版本可用
函数原型 get_history_l2ticks(symbols, start_time, end_time, fieldsNone,skip_suspendedTrue, fill_missingNone,adjustADJUST_NONE, adjust_end_time, dfFalse)参数
参数名类型说明symbolsstr标的代码使用时参考symbolstart_timestr开始时间 (%Y-%m-%d %H:%M:%S 格式)end_timestr结束时间 (%Y-%m-%d %H:%M:%S 格式)fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有skip_suspendedbool是否跳过停牌, 默认跳过fill_missingstr or None填充方式, None - 不填充, NaN - 用空值填充, Last - 用上一个值填充, 默认 NoneadjustintADJUST_NONE or 0: 不复权, ADJUST_PREV or 1: 前复权, ADJUST_POST or 2: 后复权 默认不复权adjust_end_timestr复权基点时间, 默认当前时间dfbool是否返回 dataframe 格式, 默认 False
返回值:参考Tick 对象
当 df True 时 返回dataframe
当 df Falst 返回list 示例
history_l2tickget_history_l2ticks(SHSE.600519, 2020-11-23 14:00:00, 2020-11-23 15:00:00, fieldsNone,skip_suspendedTrue, fill_missingNone,adjustADJUST_NONE, adjust_end_time, dfFalse)
print(history_l2tick[0])输出
{symbol: SHSE.600519, open: 1771.010009765625, high: 1809.9000244140625, low: 1771.010009765625, price: 1791.0999755859375, quotes: [{bid_p: 1790.8800048828125, bid_v: 100, ask_p: 1794.760009765625, ask_v: 200}, {bid_p: 1790.80004882812
5, bid_v: 123, ask_p: 1794.800048828125, ask_v: 100}, {bid_p: 1790.699951171875, bid_v: 100, ask_p: 1794.8800048828125, ask_v: 416}, {bid_p: 1790.68994140625, bid_v: 200, ask_p: 1794.8900146484375, ask_v: 300}, {bid_p: 1790.630004882812
5, bid_v: 300, ask_p: 1794.9000244140625, ask_v: 1000}, {bid_p: 1790.6199951171875, bid_v: 500, ask_p: 1794.949951171875, ask_v: 300}, {bid_p: 1790.6099853515625, bid_v: 300, ask_p: 1794.9599609375, ask_v: 300}, {bid_p: 1790.59997558593
75, bid_v: 200, ask_p: 1794.97998046875, ask_v: 100}, {bid_p: 1790.510009765625, bid_v: 314, ask_p: 1794.989990234375, ask_v: 200}, {bid_p: 1790.5, bid_v: 4200, ask_p: 1795.0, ask_v: 9700}], cum_volume: 5866796, cum_amount: 1049949547
1.0, last_amount: 1973854.0, last_volume: 1100, created_at: datetime.datetime(2020, 11, 23, 14, 0, 2, tzinfotzfile(PRC)), cum_position: 0, trade_type: 0}注意get_history_l2ticks接口每次只能提取一天的数据, 如果取数时间超过一天则返回按照结束时间的最近有一个交易日数据 如果取数时间段超过 1 个自然月31天则获取不到数据 get_history_l2bars - 查询历史 L2 Bar 行情
仅特定券商版本可用
函数原型 get_history_l2bars(symbols, frequency, start_time, end_time, fieldsNone,skip_suspendedTrue, fill_missingNone,adjustADJUST_NONE, adjust_end_time, dfFalse)参数
参数名类型说明symbolsstr标的代码使用时参考symbolfrequencystr频率, 支持 1d, 60s等start_timestr开始时间 (%Y-%m-%d %H:%M:%S 格式)end_timestr结束时间 (%Y-%m-%d %H:%M:%S 格式)fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有skip_suspendedbool是否跳过停牌, 默认跳过fill_missingstr or None填充方式, None - 不填充, NaN - 用空值填充, Last - 用上一个值填充, 默认 NoneadjustintADJUST_NONE or 0: 不复权, ADJUST_PREV or 1: 前复权, ADJUST_POST or 2: 后复权 默认不复权adjust_end_timestr复权基点时间, 默认当前时间dfbool是否返回 dataframe 格式, 默认 False
返回值:参考Bar 对象。
当 df True 时 返回dataframe
当 df Falst 返回list
示例
history_l2barget_history_l2bars(SHSE.600000, 60s, 2020-11-23 14:00:00, 2020-11-23 15:00:00, fieldsNone,skip_suspendedTrue, fill_missingNone,adjustADJUST_NONE, adjust_end_time, dfFalse)
print(history_l2bar[0])
输出
{symbol: SHSE.600000, frequency: 60s, open: 9.90999984741211, high: 9.90999984741211, low: 9.890000343322754, close: 9.899999618530273, volume: 1270526, amount: 12574276.0, bob: datetime.datetime(2020, 11, 23, 14, 0, tzinfotzfile(PRC))
, eob: datetime.datetime(2020, 11, 23, 14, 1, tzinfotzfile(PRC)), position: 0, pre_close: 0.0}注意 1. get_history_l2bars接口每次最多可提取 1 个自然月31天的数据如2015.1.1-2015.1.31 错误设置2015.1.1-2015.2.1超出 31 天则获取不到任何数据 get_history_l2transactions - 查询历史 L2 逐笔成交
仅特定券商版本可用
函数原型 get_history_l2transactions(symbols, start_time, end_time, fieldsNone, dfFalse)参数
参数名类型说明symbolsstr标的代码使用时参考symbolstart_timestr开始时间 (%Y-%m-%d %H:%M:%S 格式)end_timestr结束时间 (%Y-%m-%d %H:%M:%S 格式)fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有dfbool是否返回 dataframe 格式, 默认 False
返回值:参考level2 逐笔成交数据
当 df True 时 返回dataframe
当 df Falst 返回list
示例
history_transactionsget_history_l2transactions(SHSE.600000, 2020-11-23 14:00:00, 2020-11-23 15:00:00, fieldsNone, dfFalse)
print(history_transactions[0])输出
{symbol: SHSE.600000, side: B, price: 9.90999984741211, volume: 100, created_at: datetime.datetime(2020, 11, 23, 14, 0, 0, 820000, tzinfotzfile(PRC)), exec_type: }注意 1. get_history_l2transactions接口每次只能提取一天的数据, 如果取数时间超过一天则返回按照开始时间的最近有一个交易日数据 get_history_l2orders - 查询历史 L2 逐笔委托
仅特定券商版本可用 注意 仅深市标的可用
函数原型 get_history_l2orders(symbols, start_time, end_time, fieldsNone, dfFalse)参数
参数名类型说明symbolsstr标的代码使用时参考symbolstart_timestr开始时间 (%Y-%m-%d %H:%M:%S 格式)end_timestr结束时间 (%Y-%m-%d %H:%M:%S 格式)fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有dfbool是否返回 dataframe 格式, 默认 False
返回值:参考level2 逐笔委托数据
当 df True 时 返回dataframe
当 df Falst 返回list
示例
history_orderget_history_l2orders(SZSE.000001, 2020-11-23 14:00:00, 2020-11-23 15:00:00, fieldsNone, dfFalse)
print(history_order[0])输出
{symbol: SZSE.000001, side: 1, price: 19.520000457763672, volume: 200, created_at: datetime.datetime(2020, 11, 23, 14, 0, 0, 110000, tzinfotzfile(PRC)), order_type: 2}注意 1. get_history_l2orders接口每次只能提取一天的数据, 如果取数时间超过一天则返回按照开始时间的最近有一个交易日数据 get_history_l2orders_queue - 查询历史 L2 委托队列
仅特定券商版本可用
函数原型 get_history_l2orders_queue(symbols, start_time, end_time, fieldsNone, dfFalse)参数
参数名类型说明symbolsstr标的代码使用时参考symbolstart_timestr开始时间 (%Y-%m-%d %H:%M:%S 格式)end_timestr结束时间 (%Y-%m-%d %H:%M:%S 格式)fieldsstr指定返回对象字段, 如有多个字段, 中间用, 隔开, 默认所有dfbool是否返回 dataframe 格式, 默认 False
返回值:参考 level2 委托队列据
当 df True 时 返回dataframe
当 df Falst 返回list
示例
history_order_queueget_history_l2orders_queue(SHSE.600000, 2020-11-23 14:00:00, 2020-11-23 15:00:00, fieldsNone, dfFalse)
print(history_order_queue[0])输出
{symbol: SHSE.600000, price: 9.90999984741211, total_orders: 155, queue_orders: 50, queue_volumes: [52452, 600, 1200, 3200, 10000, 1800, 1000, 300, 10000, 2000, 500, 500, 2000, 1000, 2000, 300, 1200, 1400, 1000, 200, 1000, 100, 500, 1000, 500, 2380
0, 25400, 1000, 2000, 200, 500, 1200, 5000, 2000, 17600, 5000, 1000, 1300, 1000, 1200, 1000, 3000, 1000, 1000, 15000, 400, 15000, 5000, 2000, 10000], created_at: datetime.datetime(2020, 11, 23, 14, 0, 1, tzinfotzfile(PRC)), side: , volume: 0}注意 1. get_history_l2orders_queue接口每次只能提取一天的数据, 如果取数时间超过一天则返回按照开始时间的最近有一个交易日数据