请教一个问题 (文华财经WH6赢顺V6.7)

投资者咨询:请教一个问题 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-23 16:34
老师好,我想在上面的基础上,再加以下条件:

macd金叉到macd死叉(或者macd死叉到macd金叉)之间的时间周期大于2才画线

谢谢!
 
技术人员回复
日期:2018-5-23 16:47
 DIFF1:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA1:=EMA(DIFF1,9);
MACD1:=2*(DIFF1-DEA1),COLORSTICK;
JC:=CROSS(DIFF1,DEA1);
SC:=CROSSDOWN(DIFF1,DEA1);
N1:BARSLAST(JC)+1,NODRAW;
N2:BARSLAST(SC)+1,NODRAW;
HH:VALUEWHEN(SC,HHV(H,N1)),NODRAW;

M1:REF(SUMBARS(JC,1),N2),NODRAW;
M2:REF(SUMBARS(SC,1),N1),NODRAW;

LL:VALUEWHEN(JC,LLV(L,N2)),NODRAW;
HHZQ:IF(SC=1,HHVBARS(H,REF(N1,1)),NULL),NODRAW;
LLZQ:IF(JC=1,LLVBARS(L,REF(N2,1)),NULL),NODRAW;

Q:=BACKSET(N1=1&&N2>3,LLVBARS(L,N2)+1);
W:=BACKSET(N2=1&&N1>3,HHVBARS(H,N1)+1);
DRAWLINE1(Q>REF(Q,1),L,W>REF(W,1),H,0),COLORRED;
DRAWLINE1(W>REF(W,1),H,Q>REF(Q,1),L,0),COLORGREEN;
 
投资者咨询:请教一个问题 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-23 16:34
补充:
macd金叉到macd死叉(或者macd死叉到macd金叉)之间的时间周期大于2才画线

还是要连续的画线,不能因为要满足以上条件,中间就没有画线的K线(断掉了)

 
技术人员回复
日期:2018-5-23 16:54
  DIFF1:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA1:=EMA(DIFF1,9);
MACD1:=2*(DIFF1-DEA1),COLORSTICK;
JC:=CROSS(DIFF1,DEA1);
SC:=CROSSDOWN(DIFF1,DEA1);
N1:BARSLAST(JC)+1,NODRAW;
N2:BARSLAST(SC)+1,NODRAW;
HH:VALUEWHEN(SC,HHV(H,N1)),NODRAW;

M1:REF(SUMBARS(JC,1),N2),NODRAW;
M2:REF(SUMBARS(SC,1),N1),NODRAW;

LL:VALUEWHEN(JC,LLV(L,N2)),NODRAW;
HHZQ:IF(SC=1,HHVBARS(H,REF(N1,1)),NULL),NODRAW;
LLZQ:IF(JC=1,LLVBARS(L,REF(N2,1)),NULL),NODRAW;

Q:=BACKSET(N1=1&&N2>3,LLVBARS(L,N2)+1);
W:=BACKSET(N2=1&&N1>3,HHVBARS(H,N1)+1);
DRAWLINE1(Q>REF(Q,1),L,W>REF(W,1),H,0),COLORRED;
DRAWLINE1(W>REF(W,1),H,Q>REF(Q,1),L,0),COLORGREEN;
 
投资者咨询:请教一个问题 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-23 16:34
老师好,出了以下小问题,帮忙看看,谢谢!

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

技术人员回复
日期:2018-5-23 17:01
 这是您忽略时间周期小于2后造成的

您可以看到2波红柱期间有一个MACD<0存在

正常在MACD<0 时应该画出低点的,但是由于条件限制,需要删除,就造成了这个结果,暂不可避免

您原公式也能用,需要取舍一下
投资者咨询:请教一个问题 (文华财经WH6赢顺V6.7)
来源:文华财经  日期:2018-5-23 16:34
老师你好
不改上面的原程序,但是在原程序的画线结果上进行画线的优化,将那些只经过两个或三个点的画线过滤掉,并保持画线的连续。可以吗?
谢谢!
技术人员回复
日期:2018-5-23 18:12
 您的思路连续性较强,相关同事明日工作时间给您回复
技术人员回复
日期:2018-5-24 8:39
 DIFF1:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA1:=EMA(DIFF1,9);
MACD1:=2*(DIFF1-DEA1),COLORSTICK;
JC:=CROSS(DIFF1,DEA1);
SC:=CROSSDOWN(DIFF1,DEA1);
N1:BARSLAST(JC)+1,NODRAW;
N2:BARSLAST(SC)+1,NODRAW;
HH:VALUEWHEN(SC,HHV(H,N1)),NODRAW;

M1:REF(SUMBARS(JC,1),N2),NODRAW;
M2:REF(SUMBARS(SC,1),N1),NODRAW;

LL:VALUEWHEN(JC,LLV(L,N2)),NODRAW;
HHZQ:IF(SC=1,HHVBARS(H,REF(N1,1)),NULL),NODRAW;
LLZQ:IF(JC=1,LLVBARS(L,REF(N2,1)),NULL),NODRAW;

Q:=BACKSET(N1=1,LLVBARS(L,N2)+1);
W:=BACKSET(N2=1,HHVBARS(H,N1)+1);
I:=BARSLAST(Q>REF(Q,1));
S:=BARSLAST(W>REF(W,1));
DRAWLINE1(Q>REF(Q,1)&&S>3,L,W>REF(W,1)&&I>3,H,0),COLORRED;
DRAWLINE1(W>REF(W,1)&&I>3,H,Q>REF(Q,1)&&S>3,L,0),COLORGREEN;