Почему не работает ? - страница 2

 

Дык с этим большим условием почему что-то должно работать?

Рисуйте 4 стрелки. Желательно разными цветами.

То вы спрашиваете почему сделка не открывается-

теперь вы спрашиваете почему стрелка не рисуется.

Так код надо бить на части! :-)

 

Почему вот так все работает (стрелки рисуются)

   double muv_h4=norm(iMA(Symbol(),PERIOD_H4,muv_trend_per,0,MODE_EMA,PRICE_CLOSE,0));
   double sar_h4=norm(iSAR(Symbol(),PERIOD_H4,hag_parab,max_parab,0));
   int vol_0_h4=iVolume(Symbol(),PERIOD_H4,0);
   int vol_1_h4=iVolume(Symbol(),PERIOD_H4,1);
   int procent_h4=vol_0_h4/vol_1_h4;
   if(muv_h4<iOpen(Symbol(),PERIOD_H4,0) && sar_h4<iOpen(Symbol(),PERIOD_H4,0) /*&& procent_h4>2.0*/)
      {
      ObjectCreate("arrow"+Time[0],OBJ_ARROW,0,Time[0],sar_h4);
      ObjectSet("arrow"+Time[0],OBJPROP_ARROWCODE,241);
      ObjectSet("arrow"+Time[0],OBJPROP_COLOR,Green);
      h4_byk=true;
      }

а когда расскомментирую объемы, то не работает (ничего не рисуется хотя при просмотре вручную условие выполняется)

   double muv_h4=norm(iMA(Symbol(),PERIOD_H4,muv_trend_per,0,MODE_EMA,PRICE_CLOSE,0));
   double sar_h4=norm(iSAR(Symbol(),PERIOD_H4,hag_parab,max_parab,0));
   int vol_0_h4=iVolume(Symbol(),PERIOD_H4,0);
   int vol_1_h4=iVolume(Symbol(),PERIOD_H4,1);
   int procent_h4=vol_0_h4/vol_1_h4;
   if(muv_h4<iOpen(Symbol(),PERIOD_H4,0) && sar_h4<iOpen(Symbol(),PERIOD_H4,0) && procent_h4>2.0)
      {
      ObjectCreate("arrow"+Time[0],OBJ_ARROW,0,Time[0],sar_h4);
      ObjectSet("arrow"+Time[0],OBJPROP_ARROWCODE,241);
      ObjectSet("arrow"+Time[0],OBJPROP_COLOR,Green);
      h4_byk=true;
      }
 

Да-да! Вся проблема была в объемах. А Вы эти объемы распечатайте Print'ом в лог.

Там было что-то типа 0 и -1.

.

Только что наконец заметил:

это у Вас особенность целочисленного деления. 3/5 == 0.

почему Вы объемы читаете в int'ы ?!

 
jartmailru >>:

Да-да! Вся проблема была в объемах. А Вы эти объемы распечатайте Print'ом в лог.

Там было что-то типа 0 и -1.

.

Только что наконец заметил:

это у Вас особенность целочисленного деления. 3/5 == 0.

почему Вы объемы читаете в int'ы ?!

уже разобрался спасибо за внимание ))

Причина обращения: