下单组件 订单流策略 趋势策略
算法下单组件编写、机制说明

算法下单组件,用于接管模组中趋势策略发出的信号或者手动委托的指令,按设计好的算法执行委托下单或者自动分批下单。

算法下单组件的结构:接管趋势策略信号/手动下单指令 -> 发出委托处理。

一、组件计算机制

算法下单组件根据从上至下,从左至右的顺序计算;
算法下单组件不支持历史测试,仅适用于实时行情交易;

二、信号接管函数

趋势策略模组+组件
F_Sig() 函数接管当前模组中趋势策略发出的信号:Sig_BK、Sig_SK、Sig_BP、Sig_SP、Sig_BPK、Sig_SPK;
注:
1、括号位置必须为空,默认取当前加载模组中趋势策略当前信号类型;
2、该函数必须与F_FreshSig()配合使用,在刷新信号之后才能取到值;
手动下单+组件
M_GetTradeSig函数接管手动发出的下单指令:Sig_BK、Sig_SK、Sig_BP、Sig_SP、Sig_BPK、Sig_SPK;

三、模组信号接收处理

有效信号发出
先用F_FreshSig()刷新当前模组中趋势策略的信号,收到新信号后,F_Sig()获取模组中的信号类型,接管信号执行下单。
换月移仓
模组中自动换月移仓,也转换为信号传到组件,刷出旧主力平仓和新主力开仓两笔信号。
平仓时F_SigCode对应为旧主力合约,开仓时F_SigCode对应为新主力合约。
模组中手动加/减仓
在模组中手动加仓/减仓的操作,也转换为信号传到组件;F_SigExercisePrice取值为设置的价格方式取到的价格。

四、其他机制说明

多账号下单:
  ① 多账号下单需要在模组中绑定交易账号,每个账号启动一个算法下单组件,组件只对自己对应的账号下单。
  ② 修改绑定账号,不再绑定的账号其组件自动删除;
  ③ 多账号下单,F_SigVol()传给组件的手数已考虑下单倍率(下单手数*账号倍数);
  ④ 模组中修改账号下单倍数立即生效,组件下单时按新倍数计算下单手数;
模组切断账号时,删除算法下单组件;连接账号时,启动算法下单组件;
组件中支持定义数据区,实际下单的合约可以和模组中的数据合约不同;
组件支持F_Variant、F_SeriesVariant、F_StringVariant取绑定模组中的趋势策略变量;
F_DeleteOrder只能撤组件运行过程中发出的委托,组件重新加载不再管理之前的委托;
当模组信号合约和下单合约所属账号类型不同时,支持跨账户类型绑定交易账号。