郁闷!!!一个简单的MACD交叉却不成交,请各位朋友看看是怎么回事 - 页 2

 

进去不IF

也就说明if(_time!=Time[0] && MACDM0>0 && MACDS1<MACDM1 && MACDS0>MACDM0)这个判断的条件不成立。

那你需要逐个每个条件,根据你前面帖子,MACDS1<MACDM1 && MACDS0>MACDM0这两个条件是成立的。

现在重点检查下_time!=Time[0] && MACDM0>0这两个条件。

你可以把这个IF拆开,来看哪里出了问题。

if(下单条件满足吗)
{
 if(是需要检测的时间吗)
 {
  if(下单条件1//_time!=Time[0]
  {
   print(条件一满足);          
   if(下单条件二)
   {
    print(条件二满足)
    if ........

   }      
  }
 }
} 

判断下那个条件出了问题。

很可能是_time!=Time[0]这个条件出错了。

 
xfxyldj 写道 >>

进去不IF

也就说明if(_time!=Time[0] && MACDM0>0 && MACDS1<MACDM1 && MACDS0>MACDM0)这个判断的条件不成立。

那你需要逐个每个条件,根据你前面帖子,MACDS1<MACDM1 && MACDS0>MACDM0这两个条件是成立的。

现在重点检查下_time!=Time[0] && MACDM0>0这两个条件。

你可以把这个IF拆开,来看哪里出了问题。

判断下那个条件出了问题。

很可能是_time!=Time[0]这个条件出错了。

xfxyldj,谢谢您的热心回复。

/---

你所说的方法我曾一个一个的测试过,除了不能进下单语句外,外面的判断都是没有问题的。

/---

我昨晚安装另一个平台测试,同样的代码,在新平台原来有问题的点位是可以成交的,但同时有些原来成交的点位却不成交了,

看来下单条件需要更严密些,不过原来的问题依然是个问题,毕竟如贴图所示,这是个很明显的死叉,为什么不能下单呢。

 
你的意思是说,能够执行到ordersend()语句,但就是没有订单发生?
 
xfxyldj 写道 >>
你的意思是说,能够执行到ordersend()语句,但就是没有订单发生?

您好xfxyldj ,除了6点50几的单子没有进入判断下单进行开单外,其它能成立的单子都没有任何问题。

 
010 写道 >>

您好xfxyldj ,除了6点50几的单子没有进入判断下单进行开单外,其它能成立的单子都没有任何问题。

你的表述有些混乱。

你的意思是在你指定的那个时间,并没有进入到if中?也就是没有执行到ordersend()?

如果是这样,还是回到我前面的问题了。

就是在你指定的时间,IF条件不成立。

所以你还是要检查这几个条件,看那个条件出了问题。

我想你需要用到下面的if嵌套

if(是需要检测的时间吗)
{
 if(!下单条件1//_time!=Time[0]
 {
  print(条件一不满足);
 }
 if(!下单条件二)
 {
  print(条件二不满足)
 }
 if ........
 {
  .......     
 }
}

我想一定某个条件在你指定的这个时间内一直不满足。

 

xfxyldj 的反复提示帮助,问题终于找到,就是我所贴的代码里前面还有一个 _time 被再次赋值,

所以就不能进入IF语句进行正常的下单工作。

/-

在此深深的感谢各位热心的朋友的帮助。

原因: