Як змусити працювати радник на нестандартному таймфрейме
- Програмування на MQL
Зовсім недавно в групі «Стіл замовлень MQL» були розміщені два подібних замовлення, з проханням переписати радник для роботи на нестандартному таймфрейме:
zakaz.opentraders.ru/31412.html
zakaz.opentraders.ru/31316.html
На звичайних графіках радники працювали, а на офлайнових посміхалися але відмовлялися торгувати. Щоб вирішити це питання, я перелопатив форуми, але так і не знайшов прийнятного рішення.
Були такі рекомендації:
«У файл WinUser32.mqh вставити рядок
У скрипт period_converter.mq4 вставити рядок
І яка різниця, на якому таймфрейме запускати цей радник?
Приклад. Таймфрейм H1. У нас є MA simple 24.
На таймфрейме M5 щоб відобразити цю MA треба період у неї вказати 288 (60/5 * 24). І ця буде таже MA!
Якщо ви використовуєте таймфрейм M3, наприклад, і у вас там MA simple 32 коштує, наприклад.
Те відкрийте таймфрейм M1 і запустіть там MA simple 96 - і ви побачите, то це таж MA.
Так Порадник на таймфрейме M1 з параметрами MA 96.
Так якщо наприклад на таймфрейте Н1 у нас є МА Exponential 24 і МА Exponential 10;
Те відповідно на М5 треба відобразити 288 (60/5 * 24) і 120 (60/5 * 10), то графіки збігаються, але за умови якщо ціни закриття збігаються (наприклад, CLOSE = CLOSE; LOW = LOW)
Але якщо поставити ціни закриття на 288 CLOSE і на 120 LOW, а на Н1 24 CLOSE і на 10 LOW, то побудова середніх відрізняються на графіках М5 від Н1.
Спільними зусиллями, а вірніше за допомогою більш досвідчених колег, знайшлося дуже просте рішення цього питання.
Нехай у нас є радник, який торгує на перевищенні однієї Машки над іншою:
Кидаємо наш радник на оффлайн графік і звичайно ж нічого не відбувається.
Щоб радник торгував на М3 створимо таймер OnTimer (). додамо функцію оновлення котирувань RefreshRates () і помістимо в таймер функцію обробки тиків OnTick ().
Щоб таймер працював, при ініціалізації задамо періодичність роботи таймера за допомогою функції EventSetMillisecondTimer ()
В дужках зазначимо кількість мілісекунд через яке необхідно генерувати подія таймера.
При деініціалізацію експерта видалимо створений таймер:
Після таких найпростіших перетворень наш радник прийме наступний вигляд:
І в такому вигляді вже на графіку відкриє угоду:
Таким чином, буде потрібно не більше 5 хвилин щоб переписати звичайний радник на експерт для нестандартних таймфреймів.
Приєднуйтеся до групи "Програмування на MQL". щоб стежити за оновленнями
ПРИЄДНАТИСЯ ДО ГРУПИ
[16:22]
pacak: igrun. хто? ти? мені Бушна не потрібна[16:22] Ami: Oxy. ladna davay ya pokazat kogda vse bydy zakrit plyse, obezatelno pokazy mne bydet daze slishat tvayo mnenie nashot mai targi
[16:23]
pacak: igrun. а, це коли ти кунаком був? Так оскопили тебе чи ні?[16:24] Ami: esli bydy zakrit kaneshno
[16:24] Oxy: Ami. добре
[16:24] Ami: na etat raz takova ne bydet
[16:25] Ami: igrun. ya tebe abeshal ychit davay astavim posle zakrite mai zdelki ya strashna rastroena
[16:25] igrun: Ami. бідолаха
[16:25]
pacak: ось тому їй не бути трейдером ніколи[16:26]
pacak: не жіноча це справа[16:26] Ami: igrun. kto ya bednyazka?
[16:27] igrun: Ami.
[16:28] Ami: igrun. ne chyt ne rastroen shas klychat stari Joe i snim krichat paka ne bydy plyse
[16:29] Oxy: pacak. хто тут сказав про жіноча справа?
[16:29] Ami: Homya4ek mozesh prisaedinitsa
[16:29] Ami: Oxy. da mi lychshe targavat chem ani
[16:30] Автор Oxy: Ami. це теж крайність так порівнювати
[16:30] Автор Ami: Oxy. ne pishi im savetnik pyst znayut tvayu ceny
[16:30] Автор Oxy: заступилася
[16:34]
pacak: Oxy. я сказав. Жінки дуже емоційні. Не їхня справа форекс[16:35]
pacak: їхня справа народжувати дітей, прати шкарпетки і жерти готувати[16:35] Oxy: pacak.
В даний момент Ви не бачите оновлень в чаті.
З'єднаєтеся з чатом прямо зараз! Або перейдіть на сторінку чату.
- morww
- gelis
- Homya4ek
- oliqa7268
- oyama
- Oxy
- pacak
- Ami
- igrun