MetaTrader 4 Client Terminal build 610 - страница 68

 
#property indicator_label1  "V"
#property indicator_type1   DRAW_HISTOGRAM
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  1

Индикатор создан в мастере, заголовок не менял. Буфер отрисовывается линией. Билд 610.


После добавления

   SetIndexStyle(0,DRAW_HISTOGRAM);

рисуется как надо.

 
VOLDEMAR:

Нет с помощью Comment () и дальнейших вычеслений, со вчерашнего дня голову ломал почему советник не по правильной цене закрывает ордер, сегодня на бродрую голову по шагам определил

Если в Вашем исходнике нет #property strict, то функция Comment (так же, как и Print) выводит вещественные числа с точностью 4 знака после запятой
 
keekkenen: ссылка на сообщение

господа разработчики, объясните куда подевалась единица

и когда все таки код будет одинаково работать при F7 и F5 ?


Особенность представления чисел с плавающей точкой.

1) Число 1252.322/0.001 не может быть представлено степенью двойки, получается что-то похожее на 1252321.9999999(9)
2) В операции преобразования из double в int записанной в виде int x=1252321.9999999 не проводится округление! Остаётся только целая часть, а это есть 1252321

Компилятор и отладчик отработали верно, ошибка в алгоритме или его реализации.
 
wlad:
в 614-ом
компайлер момещен теперь в метаедитор
подскажите как можно скомпилировать с коммандной строки

1) metaeditor.exe /compile:"path to source" /inc:"path to MQL5 directory"

К сожалению, Вы не получите сообщений об ошибках и предупреждениях.

2) Консольный компилятор MQL4/MQL5 остался, обновляется вместе с платформами МетаТрейдер 4/5 и всегда доступен по ссылкам:

 
Ув.Разработчики, убедительно прошу ответить на мой вопрос по работе функций OnTimer() и OnChartEvent() при откл "Советники", заданный с приведенными тестами две страницы назад
 
GSB:
Ув.Разработчики, убедительно прошу ответить на мой вопрос по работе функций OnTimer() и OnChartEvent() при откл "Советники", заданный с приведенными тестами две страницы назад

Кнопки имеют разный функционал.
В четвёртом терминале кнопка отключает работу советников (запрет на вызов обработчиков), а в пятом терминале отключает автоторговлю.
 
mql5:

Кнопки имеют разный функционал.
В четвёртом терминале кнопка отключает работу советников (запрет на вызов обработчиков), а в пятом терминале отключает автоторговлю.

Ну это было верно когда была одна функция start() :) Теперь когда есть обработка событий почему это не использовать и не привести функционал к МТ5?, что мешает! К эксперту во время откл кнопки нет Никакого доступа!


С отключение кнопки "Советник" эксперт не может анализировать никакую информацию, мало того он еще и не переинициализируется с вкл этой кнопки. И программно это не сделать. Это категорически неверно.

 
mql5:

Особенность представления чисел с плавающей точкой.

1) Число 1252.322/0.001 не может быть представлено степенью двойки, получается что-то похожее на 1252321.9999999(9)
2) В операции преобразования из double в int записанной в виде int x=1252321.9999999 не проводится округление! Остаётся только целая часть, а это есть 1252321

Компилятор и отладчик отработали верно, ошибка в алгоритме или его реализации.


и вы считаете, что вы правы в том что написали ? это неприемлемо !

вот варианты

void test2()
  {

   int i=0,value=0,c1=0,c2=0,c3=0,c4=0,c5 = 0,c6 = 0;

   for(i=Bars-1; i>=0; i--)

     {
      value=Close[i]/Point;
      if(value*Point!=Close[i])
        {
         c1++;
        }
      if(NormalizeDouble(value*Point-Close[i],Digits)!=0)
        {
         c2++;
        }
        
      value=NormalizeDouble(Close[i],Digits)/Point;
      if(value*Point!=Close[i])
        {
         c3++;
        }
      if(NormalizeDouble(value*Point-Close[i],Digits)!=0)
        {
         c4++;
        }
        value=NormalizeDouble(Close[i],Digits)/NormalizeDouble(Point,Digits);
        if(value*Point!=Close[i])
        {
         c5++;
        }
      if(NormalizeDouble(value*Point-Close[i],Digits)!=0)
        {
         c6++;
        }
     }
     
     Print("from ",Bars-1," ",c1," ",c2," ",c3," ",c4," ",c4," ",c6);

  }

вот результаты

2014.03.04 18:14:37.565 debug GBPUSDX,H1: from 5023 2942 2142 3591 2177 2177 2177

предложите свои варианты реализации так, что бы отношение цены на поинт всегда давало именно то значение, которое человек вычисляет правильно, а код нет

зы. тут даже нормализация не спасает..

 
Вопрос к разработчикам - не могли бы вы ответить на вопрос:
https://forum.mql4.com/ru/60982/page66#918635

Хотелось бы понять существуют ли различия в скорости сохранения переменных при использовании терминальных переменных по сравнению с File-овыми?
 
keekkenen:


предложите свои варианты реализации так, что бы отношение цены на поинт всегда давало именно то значение, которое человек вычисляет правильно, а код нет

преобразовать в строку, убрать точку, преобразовать в инт )))



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