请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)

投资者咨询:请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-9 10:41
 请问怎么可以标出KD或MACD三次背离?
设计思路:在一定的周期里(可以用变量设定),比如:在30根里,有5浪出现,最近的的高点对应的K值低于前一个高点对应的K值,或前两个高点对应的K值,都是背离,可标识出。如果,在30根里重复出现

图片点击可在新窗口打开查看了3次,则在当前标识出3次背离,当然重复出现了2次,则在当前标识出2次背离,只是调整变量而已。
技术人员回复
日期:2018-5-9 10:55
核实下,您是想实现在N周期内,如果出现3次丁背离,在最后一次满足顶背离位置标注“3次顶背离”?
投资者咨询:请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-9 10:41
 基本是这个意思。但不一定是必须连续的顶背离,包括这样的情况。如图:5/9日pp1809,10点以后,1分钟行情。

图片点击可在新窗口打开查看

主要是希望知道,如何捕捉到倒数第3个顶与倒数第2个顶,倒数第3个顶与当前的顶,怎么比较。我看了大部分的贴出的程序,好像都是捕捉紧邻的顶。
怎么可以标识,白色箭头指示区域的MACD面积背离和高低背离。红色已经是背离,合起来就是2次背离,依次类推。
技术人员回复
日期:2018-5-9 14:39

您参考试下,

 

DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
D:=DIFF;
JC:=CROSS(DIFF,DEA);
SC:=CROSSDOWN(DIFF,DEA);
N1:=BARSLAST(JC)+1;
N2:=BARSLAST(SC)+1;
HH:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(H,N1));//上次MACD红柱期间合约最大值
HH2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(HH,1));//上上次MACD红柱期间合约最大值
MHD:=VALUEWHEN(CROSSDOWN(DIFF,DEA),HHV(MACD,N1));//上次MACD红柱期间MACD最大值
MHD2:=VALUEWHEN(CROSSDOWN(DIFF,DEA),REF(MHD,1));//上上次MACD红柱期间MACD最大值
LL:=VALUEWHEN(CROSS(DIFF,DEA),LLV(L,N2));//上次MACD绿柱期间合约最小值
LL2:=VALUEWHEN(CROSS(DIFF,DEA),REF(LL,1));//上上次MACD绿柱期间合约最小值
MLD:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));//上次MACD绿柱期间MACD最小值
MLD2:=VALUEWHEN(CROSS(DIFF,DEA),LLV(MACD,N2));//上上次MACD绿柱期间MACD最小值
A:=CROSSDOWN(DIFF,DEA)&&HH>HH2&&MHD<MHD2;//顶背离
B:=CROSS(DIFF,DEA)&&LL<LL2&&MLD>MLD2;//底背离
DRAWICON(A,MACD,'ICO4');
DRAWICON(B,MACD,'ICO5');
DRAWTEXT(COUNT(A,30)=2&&A,MACD,'2次顶背离');
DRAWTEXT(COUNT(A,30)=3&&A,MACD,'3次顶背离');
DRAWTEXT(COUNT(B,30)=2&&B,MACD,'2次底背离');
DRAWTEXT(COUNT(B,30)=3&&B,MACD,'3次底背离');

 

 
投资者咨询:请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-9 10:41
 
回复收到,谢谢!另外还有两个问题。

1、在上面的程序里是计算MACD的高度,怎么换成统计MACD面积?
2、CROSS(DIFF,DEA);CROSSDOWN(DIFF,DEA);这样的计算,要等到交叉后,信号才出现,怎么可以提早显示?比如:假设底背离,在绿色柱子缩短的时候,即可假定开始了背离,此时就开始显示底背离信号。
投资者咨询:请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-9 10:41
第二个问题已经解决了,请问第一问题?怎么换成统计MACD面积?
技术人员回复
日期:2018-5-14 9:16

请参考下面帖子链接中,3楼第5条

 

http://help.wenhua.com.cn/dispbbs.asp?boardid=14&Id=698736

 

 

 

 

投资者咨询:请问怎么可以标出三次背离? (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-9 10:41
 (5)柱体面积
 
面积其实就是求红绿柱对应所有柱体的和
JC:=CROSS(DIFF,DEA); //金叉
SC:=CROSSDOWN(DIFF,DEA);//死叉
N1:=BARSLAST(JC)+1;//金叉到当前距离
N2:=BARSLAST(SC)+1;//死叉到当前距离
MJ:VALUEWHEN(DIFF>DEA,SUM(MACD,N1));//红柱期间MACD面积
MS:VALUEWHEN(DIFF<DEA,-1*SUM(MACD,N2));//绿柱期间MACD面积

MJ是完成一个周期的红柱期间MACD面积,怎么计算红柱从高点一开始缩短,此时距离金叉的面积?SUM(MACD,N1)好像不行
技术人员回复
日期:2018-5-15 10:30

参考:

 

DIFF:EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:EMA(DIFF,9);
MACD:2*(DIFF-DEA),COLORSTICK;
JC:=CROSS(DIFF,DEA); //金叉
SC:=CROSSDOWN(DIFF,DEA);//死叉
N1:=BARSLAST(JC)+1;//金叉到当前距离
N2:=BARSLAST(SC)+1;//死叉到当前距离
MHD:=VALUEWHEN(SC,HHV(MACD,N1));//上次MACD红柱期间MACD最大值
MHD_BARS:=VALUEWHEN(SC,HHVBARS(MACD,N1));//上次MACD红柱期间MACD最大值位置到当前的距离
A:=BACKSET(SC,MHD_BARS);
M:=BARSLAST(CROSS(A,0.5));
MJ2:=VALUEWHEN(SC,SUM(MACD,M));//死叉时红柱剩余面积之和
MJ1..VALUEWHEN(SC,SUM(MACD,N1));//死叉时红柱面积之和
MJ3:MJ1-MJ2,NODRAW;//死叉时金叉到红柱缩短面积之和