В двух одинаковых терминалах индикатор работает по разному - страница 2

 
sovetnikmaker:
Почему?

Потому что в детстве я плохо ел манную кашу.

Теперь забываю некоторые переменные инициализировать.

 

sovetnikmaker:

Привет. Расскажите пожалуйста, по какие переменные идет речь?

Тема https://www.mql5.com/ru/forum/6468/page2 

Про любые.

Если использовать значение переменной, которой прежде не присваивалось никакого значения (по недосмотру или предположению, что оно изначально должно быть каким-то конкретным, например нулём), то в результате получаем странное разнообразие при расчётах в одинаковых (вроде бы) условиях.  А всё потому, что в mql5, как и во всех серьёзных языках, переменным в программах никакого значения "автоматически" не присваивается при их создании.  Т.е. изначально созданная переменная содержит случайный мусор из памяти. Это, кстати, касается и индикаторных буферов. Если не всем ячейкам в массиве (буфере) явно присваиваются осмысленные значения, значит в тех которые пропущены остаются случайные значения.  Это является частым источником нестабильной работы индикаторов и прочих программ.

Другими словами: если сталкиваетесь с различными результатами одинаковых вычислений - ищите генератор случайных чисел в своей программе.  Вряд ли это ошибка разработчиков - у них с этим строго, культура программирования и тестирования продукта на высоте.  Хотя конечно случается всякое, от багов никто не застрахован..


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