MAT:MA(C,T);//定义一根T日均线
TMP1:=H<MAT;//K线最高价在T日均线下方
TMP2:=L>MAT;//K线最低价在T日均线上方
TMP3:=HIGH>REF(HHV(HIGH,1),1);//开多平空条件
TMP4:=LOW<REF(LLV(LOW,1),1);//开空平多条件
TMP2 AND H>VALUEWHEN(TMP3&&TMP2&&COUNT(TMP3&&TMP2,BARSLAST(CROSS(C,MAT))+1),H)&&REF(TMP2,1),BPK;//K线在T日均线上方且突破前一日K线最高价,开多平空(增加还要同时满足7186合约,K线最低价在T日均线上方)
TMP1 AND L<VALUEWHEN(TMP4&&TMP1&&COUNT(TMP4&&TMP1,BARSLAST(CROSSDOWN(C,MAT))+1),L)&&REF(TMP1,1),SPK;//K线在T日均线下方且突破前一日K线最低价,开空平多(增加还要同时满足7186合约,K线最高价在T日均线下方)
AUTOFILTER;
老师,麻烦帮忙红色部分增加个条件,谢谢!
MAT:MA(C,T);//定义一根T日均线
TMP1:=H<MAT;//K线最高价在T日均线下方
TMP2:=L>MAT;//K线最低价在T日均线上方
TMP3:=HIGH>REF(HHV(HIGH,U),1);//开多平空条件
TMP4:=LOW<REF(LLV(LOW,U),1);//开空平多条件
TMP2 AND H>VALUEWHEN(TMP3&&TMP2&&COUNT(TMP3&&TMP2,BARSLAST(CROSS(C,MAT))+1),H)&&REF(TMP2,1),BK;//K线在T日均线上方且突破前一日K线最高价,买多
3个ATR止损卖平;
突破前期买多高点,继续买多;
TMP1 AND L<VALUEWHEN(TMP4&&TMP1&&COUNT(TMP4&&TMP1,BARSLAST(CROSSDOWN(C,MAT))+1),L)&&REF(TMP1,1),SK;//K线在T日均线下方且突破前一日K线最低价,卖空
3个ATR止损买平;
突破前期卖空低点,继续卖空;
TRADE_OTHER('AUTO');
SETMOVEOPIPRICE(LIMIT_ORDER);
SETSIGPRICETYPE(BPK,LIMIT_ORDER);
SETSIGPRICETYPE(SPK,LIMIT_ORDER);
AUTOFILTER;
参考:
MAT:MA(C,T);//定义一根T日均线
TMP1:=H<MAT;//K线最高价在T日均线下方
TMP2:=L>MAT;//K线最低价在T日均线上方
TMP3:=HIGH>REF(HHV(HIGH,U),1);//开多平空条件
TMP4:=LOW<REF(LLV(LOW,U),1);//开空平多条件
TMP2 AND H>VALUEWHEN(TMP3&&TMP2&&COUNT(TMP3&&TMP2,BARSLAST(CROSS(C,MAT))+1),H)&&REF(TMP2,1),BK;//K线在T日均线上方且突破前一日K线最高价,买多
TR := MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR := MA(TR,26),COLORYELLOW;
C<=BKPRICE-3*ATR,SP;
C>REF(H,BARSBK),BK;
TMP1 AND L<VALUEWHEN(TMP4&&TMP1&&COUNT(TMP4&&TMP1,BARSLAST(CROSSDOWN(C,MAT))+1),L)&&REF(TMP1,1),SK;//K线在T日均线下方且突破前一日K线最低价,卖空
C>=SKPRICE+3*ATR,BP;
C<REF(L,BARSSK),SK;
TRADE_OTHER('AUTO');
SETMOVEOPIPRICE(LIMIT_ORDER);
SETSIGPRICETYPE(BPK,LIMIT_ORDER);
SETSIGPRICETYPE(SPK,LIMIT_ORDER);
AUTOFILTER;
MAT:MA(C,T);//定义一根T日均线
TMP1:=H<MAT;//K线最高价在T日均线下方
TMP2:=L>MAT;//K线最低价在T日均线上方
TMP3:=HIGH>REF(HHV(HIGH,U),1);//开多平空条件
TMP4:=LOW<REF(LLV(LOW,U),1);//开空平多条件
TMP2 AND H>VALUEWHEN(TMP3&&TMP2&&COUNT(TMP3&&TMP2,BARSLAST(CROSS(C,MAT))+1),H)&&REF(TMP2,1),BK;//K线在T日均线上方且突破前一日K线最高价,买多
a1、开仓后止损:开仓价格对应的ATR波动数值*1止损((比如开仓价位对应的ATR是57,波动到56或者58对应的价位,就止损了);
a2、开仓后止盈:K线在T日均线下方且突破前一日K线最低价,反手
b、突破前一次开多那条K线最高点,再继续进场买多;
b1、开仓后止损:开仓价格对应的ATR波动数值*1止损((比如开仓价位对应的ATR是57,波动到56或者58对应的价位,就止损了);
b2、开仓后止盈:K线在T日均线下方且突破前一日K线最低价,反手
c轮……
d轮……
TMP1 AND L<VALUEWHEN(TMP4&&TMP1&&COUNT(TMP4&&TMP1,BARSLAST(CROSSDOWN(C,MAT))+1),L)&&REF(TMP1,1),SK;//K线在T日均线下方且突破前一日K线最低价,卖空
a1、开仓后止损:开仓价格对应的ATR波动数值*1止损((比如开仓价位对应的ATR是57,波动到56或者58对应的价位,就止损了);
a2、开仓后止盈:K线在T日均线上方且突破前一日K线最高价,反手
b、突破前一次开多那条K线最高点,再继续进场买多;
b1、开仓后止损:开仓价格对应的ATR波动数值*1止损((比如开仓价位对应的ATR是57,波动到56或者58对应的价位,就止损了);
b2、开仓后止盈:K线在T日均线上方且突破前一日K线最高价,反手
c轮……
d轮……
TRADE_OTHER('AUTO');
SETMOVEOPIPRICE(LIMIT_ORDER);
SETSIGPRICETYPE(BPK,LIMIT_ORDER);
SETSIGPRICETYPE(SPK,LIMIT_ORDER);
AUTOFILTER;