投资者咨询:[求助]请老师改模型 (文华财经)
来源:文华财经 日期:2018-7-12 21:22
一、均线模型
EMA21:=EMA(CLOSE,N1);
EMA34:=EMA(CLOSE,N2);
MA60:=MA(CLOSE,N3);
//21天线大于34天线同时34天金叉60天线做多,
AA001:=EMA21>EMA34;
AA002:=CROSSUP(EMA34,MA60);
AA001 AND AA002,BK;
//21天线死叉60天线平多;
PD001:=CROSSDOWN(EMA21,MA60);
PD001,SP;
//21天线小于34天线同时34天线死叉60天线做空,
BB001:=EMA21<EMA34;
BB002:=CROSSDOWN(EMA34,MA60);
BB001 AND BB002,SK;
//21天线金叉60天线平空。
PK001:=CROSSUP(EMA21,MA60);
PK001,BP;
SLOWLENGTH:=N1;
MIDLENGTH:=N2;
FASTLENGTH:=N3;
Y:=(HIGH+LOW)/2;
鳄:=SMA(Y,SLOWLENGTH,1);
齿:=SMA(Y,MIDLENGTH,1);
唇:=SMA(Y,FASTLENGTH,1);
X:=REF(齿,5);
CON1:=(鳄<齿&&齿<唇);
CON2:=(鳄>齿&&齿>唇);
//计算辅助指标
AO:=SMA(Y,5,1)-SMA(Y,34,1);
AC:=SMA((AO-SMA(AO,5,1)),5,1);
//分形
BO1:=(H>=HHV(H,3));//判断当前K线的最高价是否为三根K线的最高价
BO2:=(L<=LLV(L,3));//判断当前K线的最低价是否为三根K线的最低价
BAR1:=SUMBARS(REF(BO1,2)&&REF(BO1,1)=0&&BO1=0,2);
KU:=IF(REF(BO1,2)&&REF(BO1,1)=0&&BO1=0,REF(H,2),REF(H,BAR1));
BAR2:=SUMBARS(REF(BO2,2)&&REF(BO2,1)=0&&BO2=0,2);
DL:=IF(REF(BO2,2)&&REF(BO2,1)=0&&BO2=0,REF(L,2),REF(L,BAR2));
BAR3:=SUMBARS(HIGH>X,1);
TOPDLINE:=IF(HIGH>=X,KU,REF(KU,BAR3));
BAR4:=SUMBARS(LOW<=X,1);
UNDERDLINE:=IF(LOW<=X,DL,REF(DL,BAR4));
CON1&&C>TOPDLINE&&REF(C,1)<REF(TOPDLINE,1),BK;
CON2&&C<UNDERDLINE&&REF(C,1)>REF(UNDERDLINE,1),SK;
//止损
C<鳄,SP;
C>鳄,BP;
AUTOFILTER;
辛苦老师,万分感谢!!
技术人员回复
日期:2018-7-12 21:26
改编需要时间,明日给您回复
投资者咨询:[求助]请老师改模型 (文华财经)
来源:文华财经 日期:2018-7-12 21:22
辛苦老师,谢谢!!!!!!!!!!
技术人员回复
日期:2018-7-13 9:04
1.
TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));//真实波幅
ATR..MA(TR,26); //求26个周期内真实波幅的简单移动平均
TC..INTPART((MONEYTOT*0.01/(UNIT*ATR)));//根据权益的1%计算下单手数
MTC..4*TC; //总的持仓头寸
EMA21:=EMA(CLOSE,N1);
EMA34:=EMA(CLOSE,N2);
MA60:=MA(CLOSE,N3);
//21天线大于34天线同时34天金叉60天线做多,
AA001:=EMA21>EMA34;
AA002:=CROSSUP(EMA34,MA60);
//21天线死叉60天线平多;
PD001:=CROSSDOWN(EMA21,MA60);
//21天线小于34天线同时34天线死叉60天线做空,
BB001:=EMA21<EMA34;
BB002:=CROSSDOWN(EMA34,MA60);
//21天线金叉60天线平空。
PK001:=CROSSUP(EMA21,MA60);
AA001 AND AA002&&ISLASTBK=0&&ISLASTSK=0,BK(TC);//最新价超过20周期的最高值,首次买入开仓,手数为TC手
BB001 AND BB002&&ISLASTBK=0&&ISLASTSK=0,SK(TC); //最新价跌破20周期的最低值,首次卖出开仓,手数为TC手
C>=BKPRICE+0.5*ATR&&BKVOL<MTC&&ISLASTBK,BK(TC);//价格在上次开仓的基础上上涨0.5倍ATR,在手数不超过4倍TC的时候,买入加仓TC手
C<=SKPRICE-0.5*ATR&&SKVOL<MTC&&ISLASTSK,SK(TC);//价格在上次开仓的基础上下跌0.5倍ATR,在手数不超过4倍TC的时候,卖出加仓TC手
C<=(BKPRICE-2*ATR)&&BKVOL>0,SP(BKVOL);//最新价小于开仓价减去2倍的ATR,止损平仓
C>=(SKPRICE+2*ATR)&&SKVOL>0,BP(SKVOL); //最新价大于开仓价加上2倍的ATR,止损平仓
PD001&&SKVOL>0,BP(SKVOL);//最高价上穿10周期最高价,平仓
PK001&&BKVOL>0,SP(BKVOL); //最低价下穿10周期的最低价,平仓
TRADE_AGAIN(10);
技术人员回复
日期:2018-7-13 9:05
2.
TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));//真实波幅
ATR..MA(TR,26); //求26个周期内真实波幅的简单移动平均
TC..INTPART((MONEYTOT*0.01/(UNIT*ATR)));//根据权益的1%计算下单手数
MTC..4*TC; //总的持仓头寸
SLOWLENGTH:=N1;
MIDLENGTH:=N2;
FASTLENGTH:=N3;
Y:=(HIGH+LOW)/2;
鳄:=SMA(Y,SLOWLENGTH,1);
齿:=SMA(Y,MIDLENGTH,1);
唇:=SMA(Y,FASTLENGTH,1);
X:=REF(齿,5);
CON1:=(鳄<齿&&齿<唇);
CON2:=(鳄>齿&&齿>唇);
//计算辅助指标
AO:=SMA(Y,5,1)-SMA(Y,34,1);
AC:=SMA((AO-SMA(AO,5,1)),5,1);
//分形
BO1:=(H>=HHV(H,3));//判断当前K线的最高价是否为三根K线的最高价
BO2:=(L<=LLV(L,3));//判断当前K线的最低价是否为三根K线的最低价
BAR1:=SUMBARS(REF(BO1,2)&&REF(BO1,1)=0&&BO1=0,2);
KU:=IF(REF(BO1,2)&&REF(BO1,1)=0&&BO1=0,REF(H,2),REF(H,BAR1));
BAR2:=SUMBARS(REF(BO2,2)&&REF(BO2,1)=0&&BO2=0,2);
DL:=IF(REF(BO2,2)&&REF(BO2,1)=0&&BO2=0,REF(L,2),REF(L,BAR2));
BAR3:=SUMBARS(HIGH>X,1);
TOPDLINE:=IF(HIGH>=X,KU,REF(KU,BAR3));
BAR4:=SUMBARS(LOW<=X,1);
UNDERDLINE:=IF(LOW<=X,DL,REF(DL,BAR4));
CON1&&C>TOPDLINE&&REF(C,1)<REF(TOPDLINE,1)&&ISLASTBK=0&&ISLASTSK=0,BK(TC);//最新价超过20周期的最高值,首次买入开仓,手数为TC手
CON2&&C<UNDERDLINE&&REF(C,1)>REF(UNDERDLINE,1)&&ISLASTBK=0&&ISLASTSK=0,SK(TC); //最新价跌破20周期的最低值,首次卖出开仓,手数为TC手
C>=BKPRICE+0.5*ATR&&BKVOL<MTC&&ISLASTBK,BK(TC);//价格在上次开仓的基础上上涨0.5倍ATR,在手数不超过4倍TC的时候,买入加仓TC手
C<=SKPRICE-0.5*ATR&&SKVOL<MTC&&ISLASTSK,SK(TC);//价格在上次开仓的基础上下跌0.5倍ATR,在手数不超过4倍TC的时候,卖出加仓TC手
C<=(BKPRICE-2*ATR)&&BKVOL>0,SP(BKVOL);//最新价小于开仓价减去2倍的ATR,止损平仓
C>=(SKPRICE+2*ATR)&&SKVOL>0,BP(SKVOL); //最新价大于开仓价加上2倍的ATR,止损平仓
C<鳄&&SKVOL>0,BP(SKVOL);//最高价上穿10周期最高价,平仓
C>鳄&&BKVOL>0,SP(BKVOL); //最低价下穿10周期的最低价,平仓
TRADE_AGAIN(10);