MACD红柱最高点,对应的K线最高价画横线 (文华财经)

投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
老师,麻烦你写个公式,谢谢!要求:每一个MACD红柱最高点,对应的K线最高价,都画一条向右延伸的红线,直到下一条红线出现,此条红线,就不再向右延伸。每一个MACD绿柱最低点,对应的K线最低价,都画一条向右延伸的绿线,直到下一条绿线出现,此条绿线,就不再向右延伸了。要求在全周期上使用,及一分钟K线,5分钟K线,60分钟K线,日线,周线,月线上都能使用。 
技术人员回复
日期:2020-12-10 14:11
参考:

DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  :=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
AA:=BACKSET(CROSS(DIFF,DEA),LLVBARS(MACD,BARSLAST(CROSSDOWN(DIFF,DEA))+1)+1);
BB:=BACKSET(CROSSDOWN(DIFF,DEA),HHVBARS(MACD,BARSLAST(CROSS(DIFF,DEA))+1)+1);
DRAWHORIZONTALLINE(CROSS(BB,0.5),H,COLORRED);
DRAWHORIZONTALLINE(CROSS(AA,0.5),L,COLORGREEN);

投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
谢谢老师,我上面的表述错了,应该是:每一大片MACD红柱区域所对应的,K线最高价上画一条红线,向右延伸。每一大片MACD绿柱区域所对应的,K线最低价上画一条绿线,向右延伸。
技术人员回复
日期:2020-12-10 14:26
每一大片是什么意思?

当前编写的效果就是每一次红柱对应的最高柱的最高价画线,到下一次截止,反之亦然。

您觉得哪里不符合思路,具体说明下。


图片点击可在新窗口打开查看
图片点击可在新窗口打开查看 文件名:1.jpg

投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
老师你好。你写的是:每一大片MACD红柱区域内最高的那根MACD红柱,所对应的,K线的最高价上画的红线。我要的是,每一大片MACD红柱区内,所对应的,那些K线的最高价上画一条红线。反之亦然。
技术人员回复
日期:2020-12-10 14:33
明白您的意思了,参考:

DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  :=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
AA:=BACKSET(CROSS(DIFF,DEA),LLVBARS(L,BARSLAST(CROSSDOWN(DIFF,DEA))+1)+1);
BB:=BACKSET(CROSSDOWN(DIFF,DEA),HHVBARS(H,BARSLAST(CROSS(DIFF,DEA))+1)+1);
DRAWHORIZONTALLINE(CROSS(BB,0.5),H,COLORRED);
DRAWHORIZONTALLINE(CROSS(AA,0.5),L,COLORGREEN);
投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
谢谢老师。麻烦再帮我加个过滤条件:只显示当天的划线,即只显示从晚上21点开盘,到第2天下午3点收盘,这个时间范围内的划线,之前的画线通通不要显示,谢谢。
技术人员回复
日期:2020-12-10 15:28
参考:

DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  :=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
AA:=BACKSET(CROSS(DIFF,DEA),LLVBARS(L,BARSLAST(CROSSDOWN(DIFF,DEA))+1)+1);
BB:=BACKSET(CROSSDOWN(DIFF,DEA),HHVBARS(H,BARSLAST(CROSS(DIFF,DEA))+1)+1);
DRAWHORIZONTALLINE(CROSS(BB,0.5)&&BACKSET(ISLASTBAR,DAYBARPOS),H,COLORRED);
DRAWHORIZONTALLINE(CROSS(AA,0.5)&&BACKSET(ISLASTBAR,DAYBARPOS),L,COLORGREEN);
投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
OO:=VALUEWHEN(DATE<>REF(DATE,1),O);
MA10:MA(C,10),SETSTYLECOLOR(DOT,COLORYELLOW);
MA20:MA(C,20),SETSTYLECOLOR(LINETHICK1,COLORGREEN);
MA30:MA(C,30),SETSTYLECOLOR(LINETHICK1,RGB(255,0,255));
MA60:MA(C,60),SETSTYLECOLOR(LINETHICK3,COLORRED);
MA100:MA(C,100),SETSTYLECOLOR(DOT,COLORBLUE);

DIFF:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);

A:=C>MA10&&MA10>MA20&&MA20>MA30&&MA30>MA60&&MA60>MA100&&C>=HV(H,60)&&C>OO&&MACD>0;
B:=C<MA10&&MA10<MA20&&MA20<MA30&&MA30<MA60&&MA60<MA100&&C<=LV(L,60)&&C<OO&&MACD<0;

PLAYSOUND(A||B,'A');
DRAWICON(A,L,'ICO4');
DRAWICON(B,H,'ICO5');
老师,以上公式,麻烦帮我加个过滤条件:发出做多信号时,前一大片MACD绿柱,所对应的K线的最低价,必须比,再前一大片MACD绿柱,所对应的K线的最低价高;同时,发出做多信号时,前一大片MACD红柱,所对应的K线的最高价,必须比,再前一大片MACD红柱,所对应的K线的最高价高。这两个条件,同时满足才能发出做多信号。做空信号,正好相反。可以参考6楼。谢谢!


投资者咨询:MACD红柱最高点,对应的K线最高价画横线 (文华财经)
来源:文华财经  日期:2020-12-10 14:07
也就是波浪理论,即前一浪的最高点与最低点,比再前一浪的最高点与最低点都要高,说明行情处于上涨趋势,趋势形态没被破坏。