在实盘时,可以通过读取PositionMonitora直接获取平均持仓价格.
但回测时,加减仓只能自行记录成交价格,比如变量记录当前bar.close价后去和策略仓位做计算?
这样代码和回测时就不一样了么,每次修改不是挺麻烦么???
在实盘时,可以通过读取PositionMonitora直接获取平均持仓价格.
但回测时,加减仓只能自行记录成交价格,比如变量记录当前bar.close价后去和策略仓位做计算?
这样代码和回测时就不一样了么,每次修改不是挺麻烦么???
现在实盘中修改过ctp_gateway.py里 onRspQryInvestorPosition,再在策略文件中直接获取....
但回测时没法使用....
要代码整一致,是不是应该都,直接自行记录去计算呢???
但ctp_gateway.py里面读取的是排除了滑点以后真实持仓均价呢....
求解惑....
用on_trade获取后自己算即可,实盘和回测通用的
用Python的交易员 wrote:
用on_trade获取后自己算即可,实盘和回测通用的
再次请教下,如果是多种周期结合,比如基于日线的中长期持仓的策略里,又有日内短线加减仓策略时,
on_trade只能获取成交价格和ID,
中长线和短线都有自己独立的止损策略时,如果想独立计算中长线的持仓均价,
不写成两个策略,,,只能自行变量计算吧???
是的
xiaohe wrote:
是的
感谢xiaohe回复.
回测发现不从on_trade获取,仅从buy,sell,short和cover这些发单记录获取,因为不能保证一定会搓合成交,实际持仓会和变量记录有误差,持仓均价也就不准确了。
还有些问题,比如短周期发单以后,on_trade反馈的信息无法标识长短周期,仅用变量标识,假如未能搓合成交,交易逻辑就出错了。
请教xiaohe兄,
有基于日线的长周期持仓,也有基于15分钟的加减仓时,除了写成两个策略外,有没有更好的思路,能在回测和实盘时,对仓位进行标识呢?
分类记录orderid在on_trade里是不是就能判断辨别长短周期了
实盘&回测。
不是回撤。
看了半天没看明白
xiaohe wrote:
分类记录orderid 在on_trade里是不是就能判断辨别长短周期了
多谢多谢。是不是这样理解:
短线或长线发单后变量标识下,在on_order或on_trdera来识别谁发的,待搓合成交完成以后,按统计各自手数或持仓均价。
那么在on_order里用order.status.ALLTRADED(全部成交后状态)和on_trade里,执行统计信息,会不会有啥不同啊???