Функция iMA возвращает отличное от ожидаемого значение (MQL5)

Я использую MQL5 (мой первый код). Я хочу использовать скрипт, который использует MA, но сначала я хотел подтвердить значение, чтобы убедиться, что я все делаю правильно. Использование очень простого кода в скрипте:

 double x=0;
 x = iMA(Symbol(),Period(),100,0,MODE_SMA,PRICE_CLOSE);
 Alert("The actual MA from last 100 points of EURUSD actually is: " + x;

Ожидаемое значение близко к фактической цене... 1,23456, но эта функция возвращает 10,00000 или 11,0000. Кажется, я что-то упустил, и https://www.mql5.com/es/docs/indicators/ima не совсем ясна.

Я уже видел другую похожую функцию: MA[0], которая вроде бы выводит скользящую среднюю от конкретной свечи, но я не знаю, как управлять диапазоном периода (100) или связана ли с ним переменная закрытия/открытия. Я не нашел какой-либо конкретной справочной ссылки для обзора.

Любые идеи очень ценятся!!!


person Alberto J Soriano    schedule 02.12.2019    source источник


Ответы (1)


x должен быть int, это обработчик МА. Таким образом, каждый индикатор при создании в МТ5 получает свой обработчик, и вы можете использовать его позже, чтобы получить то, что вам нужно. Если вам нужно несколько скользящих средних - создайте несколько обработчиков и дайте каждому из них разные имена (x1, x2 или добавьте какой-нибудь смысл). Советники в сборке MT5 по умолчанию — хороший пример того, что нужно делать.

person Daniel Kniaz    schedule 02.12.2019
comment
если вам нужны примеры здесь - пожалуйста, дайте мне знать. - person Daniel Kniaz; 02.12.2019
comment
Спасибо за ваши комментарии. Мой следующий вопрос должен заключаться в том, что такое обработчик, но я считаю, что вы дали мне хорошее ключевое слово для исследования. Спасибо!! - person Alberto J Soriano; 02.12.2019
comment
Когда вы открываете, например, файл или открываете/создаете другой объект, скажем, объект MA (с его периодом и другими параметрами) - вы можете попытаться получить этот объект снова (открыв файл снова, или вычислив MA из самое начало) но однозначно это не оптимально, быстрее сохранить ссылку на объект (и использовать ее, а не путать с другими объектами, что критично). Это то, что как ссылка хранится в целочисленном значении. - person Daniel Kniaz; 03.12.2019
comment
Я думаю, вы должны указать, как мне это использовать, или указать ссылки в своем ответе. - person mohsen; 14.03.2021