这样改下,
在当根第一笔判断上一根满足立即出信号
#CALL[6890,JIA] AS VAR1
ZHANGFU1:VAR1.BB;
#CALL[6881,JIA] AS VAR2
ZHANGFU2:VAR2.BB;
#CALL[6885,JIA] AS VAR3
ZHANGFU3:VAR3.BB;
HH:MAX(MAX(ZHANGFU1,ZHANGFU2),ZHANGFU3);
LL:MIN(MIN(ZHANGFU1,ZHANGFU2),ZHANGFU3);
REF(HH=ZHANGFU1,1),SK;
REF(LL=ZHANGFU1,1),BK;
CLOSEMINUTE1<=SHIJIAN,CLOSEOUT;//收盘前10分钟,清仓
A:=MINPRICE1;
(C>=BKPRICE+YINGLI*A)&&BKPRICE>0,SP;
(C<=SKPRICE-YINGLI*A)&&SKPRICE>0,BP;
MULTSIG_MIN(0,0,1);
AUTOFILTER;
您的思路要用到跨合约函数的,
而跨合约跨周期等函数的基础数据是1分钟数据,MULTSIG等函数是逐笔TICK回测的,
所以不支持一起连用的,需要用MULTSIG_MIN函数在15分钟以上周期上使用的,您了解下
如何要设置多个信号,调整下面标红部分的参数就可以了,
MULTSIG_MIN(0,0,2);
只在当天第一根判断是否满足开仓信号?
参考:
#CALL[6890,JIA] AS VAR1
ZHANGFU1:VAR1.BB;
#CALL[6881,JIA] AS VAR2
ZHANGFU2:VAR2.BB;
#CALL[6885,JIA] AS VAR3
ZHANGFU3:VAR3.BB;
HH:MAX(MAX(ZHANGFU1,ZHANGFU2),ZHANGFU3);
LL:MIN(MIN(ZHANGFU1,ZHANGFU2),ZHANGFU3);
HH=ZHANGFU1&&DAYBARPOS=1,SK;
LL=ZHANGFU1&&DAYBARPOS=1,BK;
CLOSEMINUTE1<=SHIJIAN,CLOSEOUT;//收盘前10分钟,清仓
A:=MINPRICE1;
(C>=BKPRICE+YINGLI*A)&&BKPRICE>0,SP;
(C<=SKPRICE-YINGLI*A)&&SKPRICE>0,BP;
//MULTSIG_MIN(0,0,2);
AUTOFILTER;
开仓条件中,DAYBARPOS=1 使用来限制开仓的,意思是当天的第一根K线,
这种写法就是只在当天的第一根K线判断是否满足开仓条件,满足就开仓,之后满足平仓条件会平仓,当天不会再出开仓信号了
您加载试下效果