Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 821

 
User_mt5:

Интересно, что об этом скажут разработчики.

Ничего не скажут. Им уже надоело объяснять каждому отдельно.

Просто надо больше читать.

С умным видом я ничего объяснить не смогу, но читал и понимаю что это не от МТ4 или 5, это от Windows и процессора берёт начало. Так-что если таких объяснений достаточно, то не заморачивайтесь и читайте переведённые значения в строки или поймите, что вы видите не то что считается в формулах или отправляется в запросе на торговый сервер.

 
Alexey Viktorov:

Ничего не скажут. Им уже надоело объяснять каждому отдельно.

Просто надо больше читать.

С умным видом я ничего объяснить не смогу, но читал и понимаю что это не от МТ4 или 5, это от Windows и процессора берёт начало. Так-что если таких объяснений достаточно, то не заморачивайтесь и читайте переведённые значения в строки или поймите, что вы видите не то что считается в формулах или отправляется в запросе на торговый сервер.

Спасибо, прочитал. В справке подробно разъяснено что из себя представляют вещественные числа, но не верю что вот это: " что вы видите не то что считается в формулах или отправляется в запросе на торговый сервер.", что это и должно так быть.
 
Андрей:
Спасибо, прочитал. В справке подробно разъяснено что из себя представляют вещественные числа, но не верю что вот это: " что вы видите не то что считается в формулах или отправляется в запросе на торговый сервер.", что это и должно так быть.

Но ведь проверить-то легко...

Отправьте приказ открыть ордер лотом 0.07 и распечатайте это значение...


 
Alexey Viktorov:

Но ведь проверить-то легко...

Отправьте приказ открыть ордер лотом 0.07 и распечатайте это значение...


В это то я верю, я не верю в то, что "это и должно ТАК БЫТЬ".
 
Андрей:
В это то я верю, я не верю в то, что "это и должно ТАК быть".

Если такое происходит, значит так и должно быть. Иначе как можно бороться если из 0.07 получается ...... независимо от ПО. Ведь не нормализованное 0.07 имеет такой-же косяк. Но, поэкспериментируйте с числом больше 1, например 13.07 и этого косяка не будет.

 
Alexey Viktorov:

Если такое происходит, значит так и должно быть. Иначе как можно бороться если из 0.07 получается ...... независимо от ПО. Ведь не нормализованное 0.07 имеет такой-же косяк. Но, поэкспериментируйте с числом больше 1, например 13.07 и этого косяка не будет.

В справке есть вот такое замечание:

"Например, числа 0.3 и 0.7 представлены в компьютере бесконечными дробями, в то время как число 0.25 хранится точно, так как представляет из себя степень двойки."

но это так - к слову.

 

Здравствуйте. Помогите узнать номер бара на котором быстрая МА пересекла медленную снизу вверх.

 
lil_lil:

Здравствуйте. Помогите узнать номер бара на котором быстрая МА пересекла медленную снизу вверх.


Примерный алгоритм:

  1. Создаём в OnInit() два хендла (для быстрого и медленного индикатора Moving Average)
  2. В OnTick() (работать рекомендуется только на новом баре, а не на каждом тике) объявляем два массива - в одном будут потом скопированы значения с быстрого MA, а во второй массив будут скопированы данные с медленного MA.
  3. Копируем например 100 последних значений (то есть копировать нужно с индекса "0" и количество "100") с медленно MA и быстрого MA в эти массивы. 
  4. Переворачиваем массивы так, чтобы индекс #0 в массивах соответствовал самому правому бару на графике.
  5. Теперь остаётся в цикле от "0" до "100-1" пройтись по обоим массивам и искать пересечение. Когда найдём пересечение, то значение переменной цикла как раз и будет номером бара.
Примечание: в этом алгоритме не учтены никакие проверки и защиты от ошибок.

 
А можно как-нибудь узнать об удалении/изменении граф.объекта в другом окне? (в котором нет работающих программ)
 
User_mt5:
А можно как-нибудь узнать об удалении/изменении граф.объекта в другом окне? (в котором нет работающих программ)

ObjectGetInteger(), свойство chart_id вам в помощь

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