应该用哪两个BAR来判断相交才是正确的呢?

 

假设我想判断MACD的金叉,就是MACD线上穿SIGNAL线。有两种使用BAR的方法,如下: 

第一种:

...
   MacdCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);
   MacdPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
   SignalCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);
   SignalPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
...


第二种:
...
   MacdCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
   MacdPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,2);
   SignalCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);
   SignalPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,2);
...

上面我们看到,第一种是用 bar[0] and bar[1]。第二种是用 bar[1] and bar[2]。哪种才是正确的?

 
thomas2004:

假设我想判断MACD的金叉,就是MACD线上穿SIGNAL线。有两种使用BAR的方法,如下: 

上面我们看到,第一种是用 bar[0] and bar[1]。第二种是用 bar[1] and bar[2]。哪种才是正确的?


bar[0] 的 close 价格在收盘之前不断变化,判断相交应该用已收盘的 bar[1] 为准,否则会出现大量不确定信号。

一般用 bar[0] 的 high和 low 做突破处理,因为即使尚未收盘,但它们只会更高或更低,而不会缩短了。

 


thomas2004:

假设我想判断MACD的金叉,就是MACD线上穿SIGNAL线。有两种使用BAR的方法,如下: 

上面我们看到,第一种是用 bar[0] and bar[1]。第二种是用 bar[1] and bar[2]。哪种才是正确的?

MACD包含未来信号,不建议使用;
原因: