macd指标的编写 (文华财经WH8赢智V8.2)

投资者咨询:macd指标的编写 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-1-9 22:59
 我想表达/1、在0轴单边连续出现2次以上的金叉(在0上或0下都可以)
                  在0轴单边连续出现2次以上的死叉(在0轴上或下都可以) 就是一定要单边的情况。
              2、连续的意思也就是如果是金叉,那就意味着连续两个金叉中间夹着一个死叉,也必须在这个0轴的单边才叫连续。
以下这个写法,有一定误差。请指正:(可能是S1 S2后面不是“&&DB”,好像重复了)
DB:=DIFF>DEA;
KB:=DEA>DIFF;

T1:=BARSLAST(CROSS(DIFF,DEA)&&DIFF>0&&DEA>0)+1; 
T2:=BARSLAST(CROSS(DIFF,DEA)&&DIFF<0&&DEA<0)+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2&& DB;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2&& DB;
S:=S1||S2;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2&& KB;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2&& KB;
D:=D1||D2;
技术人员回复
日期:2018-1-10 8:17
这么改下,您编写中统计的周期有问题

DB:=DEA>0&&DIFF>0;
KB:=DEA<0&&DIFF<0;
T1:=BARSLAST(CROSS(DIFF>0&&DEA>0,0.5))+1; 
T2:=BARSLAST(CROSS(DIFF<0&&DEA<0,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2&& DB;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2&& DB;
S:=S1||S2;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2&& KB;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2&& KB;
D:=D1||D2;

 
投资者咨询:macd指标的编写 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-1-9 22:59
这样表达准确吗:

DB:=DEA>0&&DIFF>0;
KB:=DEA<0&&DIFF<0;

T1:=BARSLAST(CROSS(DB,0.5))+1; 
T2:=BARSLAST(CROSS(KB,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2;
S:=S1||S2;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
D:=D1||D2;
技术人员回复
日期:2018-1-15 14:34
 和您思路有关,建议判断是增加DB KB的确认,如下您试试

DB:=DEA>0&&DIFF>0;
KB:=DEA<0&&DIFF<0;

T1:=BARSLAST(CROSS(DB,0.5))+1; 
T2:=BARSLAST(CROSS(KB,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2;
S:=(S1||S2)&&DB;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
D:=(D1||D2)&&KB;
投资者咨询:macd指标的编写 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-1-9 22:59
 DB:=DEA>0&&DIFF>0;
KB:=DEA<0&&DIFF<0;

T1:=BARSLAST(CROSS(DB,0.5))+1; 
T2:=BARSLAST(CROSS(KB,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2;
S:=(S1||S2)&&DB;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
D:=(D1||D2)&&KB;

这个里面是不是也包含了:
S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2;
cross(diff,dea)2个中间夹的cross(dea,diff)也是符合DB条件的呢?
技术人员回复
日期:2018-1-15 15:02
 DB:=DEA>0&&DIFF>0;
KB:=DEA<0&&DIFF<0;
这么改下

T1:=BARSLAST(CROSS(DB,0.5))+1; 
T2:=BARSLAST(CROSS(KB,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
S:=(S1||S2)&&DB;

D1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
D:=(D1||D2)&&KB;

投资者咨询:macd指标的编写 (文华财经WH8赢智V8.2)
来源:文华财经  日期:2018-1-9 22:59
DB:=DEA>DIFF &&(DEA>0&&DIFF>0 OR DEA<0&&DIFF<0 );
KB:=DEA<DIFF &&(DEA>0&&DIFF>0 OR DEA<0&&DIFF<0 );

T1:=BARSLAST(CROSS(DB,0.5))+1; 
T2:=BARSLAST(CROSS(KB,0.5))+1; 

S1:=COUNT(CROSS(DIFF,DEA),T1)>=2;
S2:=COUNT(CROSS(DIFF,DEA),T2)>=2;
S:=(S1||S2)&& DB;

D1:=COUNT(CROSSDOWN(DIFF,DEA),T1)>=2;
D2:=COUNT(CROSSDOWN(DIFF,DEA),T2)>=2;
D:=(D1||D2)&& KB;
我把上面 DB,KB 改了可以吗?都是要表达这个意思,有冲突吗?
那么S,D 可以理解为:
S:历史在0轴的同象限里有两次金叉
D:历史在0轴的同象限里有两次死叉??????

 
技术人员回复
日期:2018-8-31 8:27
您定义时不应该有DEA和DIFF的大小关系,它会影响定义区间的

就是前两行您需要删除大小关系后使用