Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Изучаешь MQL5? Начни с документации!
steemandlinux
32
steemandlinux 2016.04.29 20:30 
   double HL(int period)
   {
     MqlRates rates[];
     int timeposition=0;
     ArraySetAsSeries(rates,true);
     int copied=CopyRates(symbol,period,timeposition,7,rates);
     int i;
     int k=7;
     double hgh, lw;
      for (i=0;i<k;i++){
         hgh=rates[i].high;
         lw=rates[i].low;
         Print(" High=", hgh, " Low=", lw);
         }

   }

 

Результат: 

 

 0 04:29:56.379 eurgbp3 EURGBP,M15:  High=0.7772 Low=0.7771

0 04:29:56.379 eurgbp3 EURGBP,M15:  High=0.7773 Low=0.777

0 04:29:56.379 eurgbp3 EURGBP,M15:  High=0.7774 Low=0.7772


А что с точностью случилось? Зачем он округляет?

steemandlinux
32
steemandlinux 2016.04.29 20:32  
Или он только в выводе округляет?
steemandlinux
32
steemandlinux 2016.04.29 21:00  
С MqlTick та же проблема.
Tecuciztecatl
70
Tecuciztecatl 2016.04.29 21:37  

попробуйте:

Print("High=",DoubleToStr(hgh,Digits)," Low=",DoubleToStr(lw,Digits));
steemandlinux
32
steemandlinux 2016.04.30 08:29  

Что-то я ничего не понимаю, при одиночном запуске в обоих вариантах пишет:

 

2016.04.30 11:21:05.665 test USDCHF,M15: High=0.95910 Low=0.95907 

2016.04.30 11:21:05.665 test USDCHF,M15: High=0.95910 Low=0.95907

 

 А при постоянной работе округляет

 

0 00:14:54.225 usdchf3 USDCHF,M15:  High=0.9668 Low=0.9655

0 00:14:54.225 usdchf3 USDCHF,M15:  High=0.9666 Low=0.9661

0 00:14:54.225 usdchf3 USDCHF,M15:  High=0.9667 Low=0.9661

steemandlinux
32
steemandlinux 2016.04.30 10:36  
А все-таки это Print округлял. Спасибо!
steemandlinux
32
steemandlinux 2016.04.30 10:49  
А нашел причину проблем. В экспорте bid, а не ask :)
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий