你这里的开平条件使用的均线是以 套利合约的K计算?
如果是这样,你可能首先需要新建一个套利合约了。
参考:https://www.weistock.com/docs/HE ... BA%A4%E6%98%93.html
建好套利合约之后,你这个策略 就监控这个套利合约就行了。代码本身就变成了一个简单的均线策略了。这是最简单的方式了。
如果你是图表策略,注意要加载到套利合约上 下单时候 系统会自动对2腿分别进行下单操作:
[PEL] 复制代码 // 参数定义
INPUT:MA1_PERIOD(5); // 5日均线周期
INPUT:MA2_PERIOD(10); // 10日均线周期
INPUT:MAX_POSITION(10); // 最大持仓手数
INPUT:CLOSE_TIME(185000); // 平仓时间(14:50)
// 指标计算
MA5:=MA(CLOSE,MA1_PERIOD);
MA10:=MA(CLOSE,MA2_PERIOD);
// 交易信号
金叉信号:=CROSS(MA5,MA10); // 5日上穿10日
死叉信号:=CROSS(MA10,MA5); // 5日下穿10日
平仓时间:=TIME>=CLOSE_TIME AND TIME<=CLOSETIME(0); // 14:50至收盘时间
// 交易逻辑
// 开多平空条件
IF 金叉信号 AND HOLDING<MAX_POSITION and not(平仓时间) THEN BEGIN
SELLSHORT(1,HOLDING,MARKET); // 先平空仓
BUY(1,MAX_POSITION-ABS(HOLDING),MARKET); // 开多仓
END;
// 开空平多条件
IF 死叉信号 AND ABS(HOLDING)<MAX_POSITION and not(平仓时间) THEN BEGIN
SELL(1,HOLDING,MARKET); // 先平多仓
BUYSHORT(1,MAX_POSITION-ABS(HOLDING),MARKET); // 开空仓
END;
// 定时平仓
IF 平仓时间 THEN BEGIN
尾盘平多:SELL(1,HOLDING,MARKET); // 平多仓
尾盘平空:SELLSHORT(1,HOLDING,MARKET); // 平空仓
END;
// 显示持仓和资产
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
如果是后台,上面涉及到的持仓和下单函数换成后台的也就行了。
|