上下文

策略运行上下文Context是策略可以直接访问的唯一对象,策略所有的接口都通过Context对象调用。

输出接口

stra_log_text

输出日志

传入参数 含义 类型
message 日志信息 str

时间接口

stra_get_tdate

获取当前交易日

返回结果 类型
当前交易日 int(格式如20180513)

stra_get_date

获取当前日历日期

返回结果 类型
当前日历日 int(格式如20180513)

stra_get_time

获取当前时间,24小时制,精确到分

返回结果 类型
当前时间 int(格式如1231)

stra_get_secs

获取当前秒数,精确到毫秒

返回结果 类型
当前秒数 int(格式如1231)

账户接口

stra_get_position_avgpx

获取当前持仓均价

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
持仓均价 float

stra_get_position_profit

获取持仓浮动盈亏

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
浮动盈亏 float

stra_get_fund_data

获取资金数据

传入参数 含义 类型
flag 0-动态权益,1-总平仓盈亏,2-总浮动盈亏,3-总手续费 int
返回结果 类型
资金数据 float

stra_get_all_position

获取全部持仓

返回结果 类型
全部持仓 dict(持仓结构)

stra_get_position

读取当前仓位

传入参数 含义 类型
stdCode 标准合约代码 StdCode
bonlyvalid 只读可用持仓,默认为False bool
usertag 入场标记 StdCode
返回结果 类型
净持仓,正为多仓,负为空仓 int

stra_get_detail_profit

获取指定标记的持仓的盈亏

传入参数 含义 类型
stdCode 标准合约代码 StdCode
usertag 进场标记 进场标记
flag 盈亏记号,0-浮动盈亏,1-最大浮盈,-1-最大亏损(负数) int
返回结果 类型
盈亏 float

stra_get_detail_cost

获取指定标记的持仓的开仓价

传入参数 含义 类型
stdCode 标准合约代码 StdCode
usertag 进场标记 进场标记
返回结果 类型
开仓价 float

stra_get_detail_entertime

获取指定标记的持仓的进场时间

传入参数 含义 类型
stdCode 标准合约代码 StdCode
usertag 进场标记 进场标记
返回结果 类型
进场时间,格式如201907260932 int

数据接口

stra_get_price

获取最新价格,一般在获取了K线以后再获取该价格

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
最新价格 float

stra_prepare_bars

准备历史K线,一般在on_init调用

传入参数 含义 类型
stdCode 标准合约代码 StdCode
period K线周期,如m3/d7 str
count 要拉取的K线条数 int
isMain 是否为主K线,主K线将用于驱动策略回测 bool

stra_get_bars

获取历史K线

传入参数 含义 类型
stdCode 标准合约代码 StdCode
period K线周期,如m3/d7 str
count 要拉取的K线条数 int
isMain 是否为主K线 bool
返回结果 类型
K线数据 WtBarRecords

stra_sub_ticks

订阅实时行情

传入参数 含义 类型
stdCode 标准合约代码 StdCode

stra_get_ticks

获取tick数据

传入参数 含义 类型
stdCode 标准合约代码 StdCode
count 要拉取的tick数量 int
返回结果 类型
tick数据 WtTickRecords
Tip

stra_prepare_bars与stra_get_bars功能相似,都能够起到订阅K线的作用,区别在于stra_get_bars会返回获取到的历史K线。同样stra_get_ticks也能起到stra_sub_ticks订阅数据的功能,但stra_get_ticks会订阅后并返回tick数据,而stra_sub_ticks仅订阅

Tip

如果订阅了多个合约,请确保仅选择了一个作为主K线,如果设置了多个主K线,可能会导致无法触发on_bar与on_calculate

stra_get_order_queue

获取委托队列数据

传入参数 含义 类型
stdCode 标准合约代码 StdCode
count 要拉取的数量 int
返回结果 类型
委托队列数据 WtOrdQueRecords

stra_get_transaction

获取逐笔成交数据

传入参数 含义 类型
stdCode 标准合约代码 StdCode
count 要拉取的数量 int
返回结果 类型
逐笔成交数据 WtTransRecords

stra_get_comminfo

获取品种详情

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
品种信息 ProductInfo

stra_get_sessinfo

获取交易时段详情

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
交易时间信息 SessionInfo

user_save_data

保存用户数据

传入参数 含义 类型
key 数据id str
val 数据值 可以直接转换成str的数据均可

user_load_data

读取用户数据

传入参数 含义 类型
key 数据id str
defVal 默认数据,如果找不到则返回改数据,默认为None 可以直接转换成str的数据均可
vType 数据类型,默认为float *
返回结果 类型
返回值,默认处理为float数据 vType决定

交易接口

stra_buy

买入指令

传入参数 含义 类型
stdCode 标准合约代码 StdCode
price 买入价格, 0为市价 int
qty 买入数量 int
flag 下单类型,0-normal, 1-fak, 2-fok int

stra_sell

卖出指令

传入参数 含义 类型
stdCode 标准合约代码 StdCode
price 卖出价格, 0为市价 int
qty 卖出数量 int
flag 下单类型,0-normal, 1-fak, 2-fok int

stra_get_undone

获取当前某一合约未成的净委托量

传入参数 含义 类型
stdCode 标准合约代码 StdCode

stra_cancel

撤销指定订单

传入参数 含义 类型
localid 下单时返回的本地订单号 int

stra_cancel_all

撤销指定品种的全部买入订单or卖出订单

传入参数 含义 类型
stdCode 标准合约代码 StdCode
isBuy 是否是买入订单 bool

stra_get_last_entrytime

获取当前持仓最后一次进场时间

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
返回最后一次进场的时间,格式如201903121047 int

stra_get_last_exittime

获取当前持仓最后一次出场时间

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
返回最后一次出场的时间,格式如201903121047 int

stra_get_first_entrytime

获取当前持仓第一次进场时间

传入参数 含义 类型
stdCode 标准合约代码 StdCode
返回结果 类型
返回第一次进场的时间,格式如201903121047 int