关于几个点的定位问题续@齐云
作者:文华财经 来源:cxh99.com 发布时间:2018年08月25日
-
咨询内容:
做空A:MACD在A处死叉时,满足以下条件平多做空
① A处死叉前的最近一次金叉为D,A处死叉时的DEA值大于0,且MA1>MA2&MA1>MA3;
② E处金叉后形成的最近一次死叉为B,B处为A处前面最近的一次位于0轴上方的死叉;
③ F处金叉后K线最高价出现过大于BOLL上轨,然后形成的死叉为C,F处为C处前面最近的一次金叉,C处也为B处前面最近一次触及过BOLL上轨后形成的死叉;
④ 死叉C与金叉D之间不存在MA2<MA3;
⑤ 死叉A时的DEA值<B处死叉时的DEA值<C处死叉时的DEA值;
⑥ 金叉E与死叉A之间存在(K线最高价大于BOLL上轨且K值大于80),或者存在(D值大于等于80且RSI大于80;
第三条,第四条和第六条在程序里没有表现出来或者说有错误的地方,老师你再看看。
上传图片好像有数量限制,我就不上传了
来源:程序化99
-
文华技术人员:
详细比对了几个开仓点位,是满足条件的,
您条件中⑥ 金叉E与死叉A之间存在(K线最高价大于BOLL上轨且K值大于80),或者存在(D值大于等于80且RSI大于80;
红色部分是要求在一根k线上同时满足还是在区域内都存在即可呢?
你可以提供一下 您觉得不满足的开仓品种 周期 以及对应时间点,给您看一下
修改了一处细节;
DIFF := EMA(CLOSE,5) - EMA(CLOSE,34);//短周期与长周期的收盘价的指数平滑移动平均值做差。DEA :=EMA(DIFF,5);//DIFF的M个周期指数平滑移动平均MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线=MID:=MA(CLOSE,60);//求N个周期的收盘价均线,称为布林通道中轨TMP2:=STD(CLOSE,60);//求M个周期内的收盘价的标准差TOP:MID+2*TMP2;//布林通道上轨BOTTOM:MID-2*TMP2,NOTEXT;//布林通道下轨MA1:MA(C,13);MA2:MA(C,60);MA3:MA(C,120);RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;K:=SMA(RSV,3,1);D:=SMA(K,3,1);LC :=REF(CLOSE,1);RSI:=SMA(MAX(CLOSE-LC,0),7,1)/SMA(ABS(CLOSE-LC),7,1)*100;J:=CROSS(DIFF,DEA);S:=CROSSDOWN(DIFF,DEA);///////////////////////////B策略空N:=BARSLAST(CROSS(H,TOP))+1;XXC:=S&&SUM(S,N)=1&&EXIST(H>TOP,BARSLAST(J)),NODRAW;B1:=DIFF>0&&DEA>0&&S;DB:=REF(BARSLAST(B1),1)+1,NODRAW;//金叉B//DC:=DB+REF(REF(BARSLAST(XXC),1),DB)+1,NODRAW;//金叉C//DD:=BARSLAST(J),NODRAW;//金叉D//DE:=REF(BARSLAST(J),DB)+DB,NODRAW;//死叉E//DF:=REF(BARSLAST(J),DC)+DC,NODRAW;//死叉F
A:=S&&DEA>0&&MA1>MA2&&MA1>MA3&&NOT(REF(EXIST(MA2<MA3,DB),DD))&&NOT(REF(EXIST(MA2<MA3,BARSLAST(XXC)),DB))&&DEA<REF(DEA,DB)&&REF(DEA,DB)<REF(DEA,DC)&&((EXIST(D>=80,DE)&&EXIST(RSI>80,DE))||EXIST(H>TOP,DE)&&EXIST(K>80,DE));A,SPK;
XB:=COUNT(MA1<MA2&&MA2<MA3,BARSLAST(A&&SKVOL=0))=1,NODRAW;EXIST(RSI<20||MA1>MA2,BARSLAST(XB))&&BARSLAST(XB)<BARSSK&&J&&DEA>REF(DEA,SUMBARS(J,2)),BP;ISUP&&C>TOP&&C>REF(HHV(H,DF),BARSSK),BP;/////////////////////////B策略多N1:=BARSLAST(CROSSDOWN(L,BOTTOM))+1;XXC1:=J&&SUM(J,N1)=1&&EXIST(L<BOTTOM,BARSLAST(S)),NODRAW;B11:=DIFF<0&&DEA<0&&J,NODRAW;//VERTLINE(B11,COLORGREEN);DB1:=REF(BARSLAST(B11),1)+1,NODRAW;//金叉B//DC1:=DB1+REF(REF(BARSLAST(XXC1),1),DB1)+1,NODRAW;//金叉C//DD1:=BARSLAST(S),NODRAW;//金叉D//DE1:=REF(BARSLAST(S),DB1)+DB1,NODRAW;//死叉E//DF1:=REF(BARSLAST(S),DC1)+DC1,NODRAW;//死叉F//
A1:=J&&DEA<0&&MA1<MA2&&MA1<MA3&&NOT(REF(EXIST(MA2>MA3,DB1),DD1))&&NOT(REF(EXIST(MA2>MA3,BARSLAST(XXC1)),DB1))&&DEA>REF(DEA,DB1)&&REF(DEA,DB1)>REF(DEA,DC1)&&((EXIST(D<80,DE1)&&EXIST(RSI<80,DE1))||EXIST(L<BOTTOM,DE1)&&EXIST(K<20,DE1));A1,BPK;
XB1:=COUNT(MA1>MA2&&MA2>MA3,BARSLAST(A1&&BKVOL=0))=1,NODRAW;EXIST(RSI>80||MA1<MA2,BARSLAST(XB1))&&BARSLAST(XB1)<BARSBK&&S&&DEA<REF(DEA,SUMBARS(S,2)),SP;ISDOWN&&C<BOTTOM&&C<REF(LLV(L,DF1),BARSBK),SP;
AUTOFILTER;
来源: WWW.CXH99.COM
-
文华客服:
文件名:111.png
金叉C与金叉A之间存在MA2>MA3,所以这个开仓时不符合条件的。
来源: WWW.CXH99.COM
-
文华客服:红色部分是要求在 金叉E与死叉A之间这个 来源: WWW.CXH99.COM
-
文华客服:区域内存在即可! 来源: WWW.CXH99.COM
-
文华客服: 做空和做多都是一样的策略,只不过方向反过来而已,老师你不会只改了空单没改多单吧,或者只改了多单没改空单?
-
网友回复:
修改了一下范围问题,这样试试:
DIFF := EMA(CLOSE,5) - EMA(CLOSE,34);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA :=EMA(DIFF,5);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线=
MID:=MA(CLOSE,60);//求N个周期的收盘价均线,称为布林通道中轨
TMP2:=STD(CLOSE,60);//求M个周期内的收盘价的标准差
TOP:MID+2*TMP2;//布林通道上轨
BOTTOM:MID-2*TMP2;//布林通道下轨
MA1:MA(C,13);
MA2:MA(C,60);
MA3:MA(C,120);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
LC :=REF(CLOSE,1);
RSI:=SMA(MAX(CLOSE-LC,0),7,1)/SMA(ABS(CLOSE-LC),7,1)*100;
J:=CROSS(DIFF,DEA);
S:=CROSSDOWN(DIFF,DEA);
///////////////////////////B策略空
N:=BARSLAST(CROSS(H,TOP))+1;
XXC:=S&&SUM(S,N)=1&&EXIST(H>TOP,BARSLAST(J)),NODRAW;
B1:=DIFF>0&&DEA>0&&S;
DB:=REF(BARSLAST(B1),1)+1,NODRAW;//金叉B//
DC:=DB+REF(REF(BARSLAST(XXC),1),DB)+1,NODRAW;//金叉C//
DD:=BARSLAST(J),NODRAW;//金叉D//
DE:=REF(BARSLAST(J),DB)+DB,NODRAW;//死叉E//
DF:=REF(BARSLAST(J),DC)+DC,NODRAW;//死叉F
A:=S&&DEA>0&&MA1>MA2&&MA1>MA3
&&NOT(REF(EXIST(MA2<MA3,DB),DD))&&NOT(REF(EXIST(MA2<MA3,REF(BARSLAST(XXC),1)),DB))&&DEA<REF(DEA,DB)
&&REF(DEA,DB)<REF(DEA,DC)&&((EXIST(D>=80,DE)&&EXIST(RSI>80,DE))||EXIST(H>TOP,DE)&&EXIST(K>80,DE));
A,SPK;
XB:=COUNT(MA1<MA2&&MA2<MA3,BARSLAST(A&&SKVOL=0))=1,NODRAW;
EXIST(RSI<20||MA1>MA2,BARSLAST(XB))&&BARSLAST(XB)<BARSSK&&J&&DEA>REF(DEA,SUMBARS(J,2)),BP;
ISUP&&C>TOP&&C>REF(HHV(H,DF),BARSSK),BP;
/////////////////////////B策略多
N1:=BARSLAST(CROSSDOWN(L,BOTTOM))+1;
XXC1:=J&&SUM(J,N1)=1&&EXIST(L<BOTTOM,BARSLAST(S)),NODRAW;
B11:=DIFF<0&&DEA<0&&J,NODRAW;
DB1:REF(BARSLAST(B11),1)+1,NODRAW;//金叉B//
DC1:DB1+REF(REF(BARSLAST(XXC1),1),DB1)+1,NODRAW;//金叉C//
DD1:BARSLAST(S),NODRAW;//金叉D//
DE1:REF(BARSLAST(S),DB1)+DB1,NODRAW;//死叉E//
DF1:REF(BARSLAST(S),DC1)+DC1,NODRAW;//死叉F//
A1:=J&&DEA<0&&MA1<MA2&&MA1<MA3
&&NOT(REF(EXIST(MA2>MA3,DB1),DD1))&&NOT(REF(EXIST(MA2>MA3,REF(BARSLAST(XXC1),1)),DB1))&&DEA>REF(DEA,DB1)
&&REF(DEA,DB1)>REF(DEA,DC1)&&((EXIST(D<80,DE1)&&EXIST(RSI<80,DE1))||EXIST(L<BOTTOM,DE1)&&EXIST(K<20,DE1));
A1,BPK;
XB1:=COUNT(MA1>MA2&&MA2>MA3,BARSLAST(A1&&BKVOL=0))=1,NODRAW;
EXIST(RSI>80||MA1<MA2,BARSLAST(XB1))&&BARSLAST(XB1)<BARSBK&&S&&DEA<REF(DEA,SUMBARS(S,2)),SP;
ISDOWN&&C<BOTTOM&&C<REF(LLV(L,DF1),BARSBK),SP;
AUTOFILTER;
-
网友回复:
文件名:123.png
死叉E与金叉A之间不满足 :(K线最低价小于BOLL下轨且K值小于20)或者(D值小于等于20且RSI小于20);