Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 990

 
Alexandr Sokolov:

***

Вот я только что алертил, и только при умножении на EMPTY_VALUE получается inf

***

О! Очень хороший пример! Нужно сохранить ...

   double a=EMPTY_VALUE;
   Print("- - -");
   Print("EMPTY_VALUE / 2 = ",a/2.0);
   Print("EMPTY_VALUE * 2 = ",a*2.0);
   Print("EMPTY_VALUE - 2 = ",a-2.0);
   Print("EMPTY_VALUE + 2 = ",a+2.0);
   Print("EMPTY_VALUE = ",a);

и результат:

2019.11.02 07:50:48.131 INF (ATD.B.XTSE,H1)     - - -
2019.11.02 07:50:48.142 INF (ATD.B.XTSE,H1)     EMPTY_VALUE / 2 = 8.988465674311579e+307
2019.11.02 07:50:48.142 INF (ATD.B.XTSE,H1)     EMPTY_VALUE * 2 = inf
2019.11.02 07:50:48.142 INF (ATD.B.XTSE,H1)     EMPTY_VALUE - 2 = 1.797693134862316e+308
2019.11.02 07:50:48.142 INF (ATD.B.XTSE,H1)     EMPTY_VALUE + 2 = 1.797693134862316e+308
2019.11.02 07:50:48.142 INF (ATD.B.XTSE,H1)     EMPTY_VALUE = 1.797693134862316e+308
 

https://www.mql5.com/ru/docs/constants/namedconstants/otherconstants

EMPTY_VALUE  Пустое значение в индикаторном буфере DBL_MAX


inf это переполнение
 
werter:

Смишно.

Это BuySellVolume. Общий объём не равен сумме Buy и Sell, а только чуть-чуть больше.

Вы описывайте проблему подробно, из кода удаляйте лишнее...

Нет желание копаться в таком овно коде, пусть даже и небольшом...

 
Vladimir Pastushak:

Вы описывайте проблему подробно, из кода удаляйте лишнее...

Нет желание копаться в таком овно коде, пусть даже и небольшом...

Уже ничего не нужно,спасибо, нашел ошибку.
 
LuckyTrader:

Array out of range

Ошибка появилась после добавления strict

Вам компилятор указывает строку и позицию курсора где будет ошибка, если не научитесь пользоваться МЕ, нет смысла дальше этим заниматься

 
LuckyTrader:
Строку показал:

значит переменная i в цикле 

for(int i=0; i<62; i++)

стала больше размера массива numberFibo[] 

ищите где описываете массив или изменяете размер этого массива

можете перед циклом написать 

Print("Размер массива numberFibo = " , ArraySize(numberFibo));
 

Как сделать это сообщение читабельным?

Alert("Тестовое \r\nсообщение №1");
Alert("Тестовое \r\nсообщение №2");


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


Что можно сделать чтобы обычному пользователю было удобно? Ведь представьте что будет если например я выведу символ, таймфрейм, направление сделки, цену открытия, стоп и профит 

 
LuckyTrader:

Array out of range

Ошибка появилась после добавления strict

Вот это

   for(int i=0; i<62; i++)
     {
      numberFibo            [i]=0;
      numberPesavento       [i]=0;
      numberGartley         [i]=0;
      numberGilmorQuality   [i]=0;
      numberGilmorGeometric [i]=0;
      numberGilmorHarmonic  [i]=0;
      numberGilmorArithmetic[i]=0;
      numberGilmorGoldenMean[i]=0;
      numberSquare          [i]=0;
      numberCube            [i]=0;
      numberRectangle       [i]=0;
      numberExt             [i]=0;
     }

можно заменить на

ZeroMemory(numberFibo);
ZeroMemory(numberPesavento);
ZeroMemory(numberGartley);
ZeroMemory(numberGilmorQuality);
ZeroMemory(numberGilmorGeometric);
ZeroMemory(numberGilmorHarmonic);
ZeroMemory(numberGilmorArithmetic);
ZeroMemory(numberGilmorGoldenMean);
ZeroMemory(numberSquare);
ZeroMemory(numberCube);
ZeroMemory(numberRectangle);
ZeroMemory(numberExt);

А дальше, я почему-то не вижу изменение размера массива. Перед заполнением какой размер массива назначен?

 
Alexandr Sokolov:

Как сделать это сообщение читабельным?


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


Что можно сделать чтобы обычному пользователю было удобно? Ведь представьте что будет если например я выведу символ, таймфрейм, направление сделки, цену открытия, стоп и профит 

Я бы хотел чтобы разработчики в следующем обновлении сделали так, чтобы возле большого колокольчика отображалось то сообщение, на которое пользователь кликнул ниже в окне алертов

 
LuckyTrader:

У вас ошибка была когда работали в цикле

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам

LuckyTrader, 2019.11.04 09:08

Строку показал (компилятор ничего не показывает, ошибка в индикаторе при тестировании появляется, нашёл в журнале):

      numberFibo            [i]=0;

а пример показываете совсем другой. В той портянке, на предыдущей странице ошибки не должно быть.
Причина обращения: