文档
测试

7)取消委托

POST

说明 / 示例

# 7)取消委托 cancel() 用法: cancel(orderId, accountId, accountType, ContextInfo) 释义: 取消委托。 参数: orderId,string,委托号。 accountID:string,资金账号。 strAccountType:string,账号类型,可选值: ‘FUTURE’:期货 ‘STOCK’:股票 ‘CREDIT’:信用 ‘HUGANGTONG’:沪港通 ‘SHENGANGTONG’:深港通 ‘STOCK_OPTION’:期权 ContextInfo:pythonobj 返回: bool,是否发出了取消委托信号,返回值含义: True:是 False:否 示例: ''' (1)下单前,根据 get_trade_detail_data 函数返回账号的信息,判定资金是否充足,账号是否在登录状态,统计持仓情况等等。 (2)满足一定的模型条件,用 passorder 下单。 (3)下单后,时刻根据 get_last_order_id 函数获取委托和成交的最新id,注意如果委托生成了,就有了委托号(这个id需要自己保存做一个全局控制)。 (4)用该委托号根据 get_value_by_order_id 函数查看委托的状态,各种情况等。 当一个委托的状态变成“已成'后,那么对应的成交 deal 信息就有一条成交数据;用该委托号可查看成交情况。 *注:委托列表和成交列表中的委托号是一样的,都是这个 m_strOrderSysID 属性值。 可用 get_last_order_id 获取最新的 order 的委托号,然后根据这个委托号获取 deal 的信息,当获取成功后,也说明这笔交易是成了,可再根据 position 持仓信息再进一步验证。 (5)根据委托号获取委托信息,根据委托状态,或模型设定,用 cancel 取消委托。 ''' ```py def init(ContextInfo): ContextInfo.accid = '6000000248' def handlebar(ContextInfo): orderid = get_last_order_id(ContextInfo.accid, 'stock', 'order') print(cancel(orderid, ContextInfo.accid, 'stock', ContextInfo)) ```