У статті докладно описаний процес тестування і оптимізації радників в тестері торгової платформи MetaTrader 4 і MetaTrader 5. Необхідність і затребуваність такого роду матеріалу назріла давно. Багато починаючі користувачі торгової платформи MetaTrader 4 і MetaTrader 5 погано уявляють собі суть і послідовність дій при роботі з експертами.
Майже кожен день (без перебільшення) на форумі порушуються питання початківців користувачів, - як встановити радник в термінал, як запустити радник в роботу, що таке оптимізація і як її реалізувати в тестері MetaTrader 4 і MetaTrader 5, що таке форвард-тест і т. п.
Тестування радників в терміналі Metatrader 4
Головне вікно тестера стратегій
Для теcтірованія ми вибрали нашу універсальну торговельну систему The X
Насамперед Вам необхідно включити тестер стратегій:
Після відкриття тестера стратегій у Вас з'являється вкладка Strategy Tester
Поля для заповнення:
Expert Advisor - Зі списку радників виберете той, який Ви будете тестувати.
Symbol - Символ для тестування
Model - Модель тестування
Для тестування можна вибрати один з трьох методів моделювання історичних даних:
- За цінами відкриття (швидкий метод на сформованих барах)
Деякі механічні торгові системи не залежать від особливостей внутрібарного моделювання, вони торгують на сформованих барах. Те, що поточний ціновий бар повністю сформувався, можна дізнатися по появі наступного. Саме для таких експертів призначений цей режим моделювання.
В цьому режимі спочатку моделюється відкриття бару (Open = High = Low = Close, Volume = 1), що дає експерту можливість точно ідентифікувати закінчення формування попереднього цінового бара. Саме на цьому зароджується барі запускається тестування експерта. На наступному кроці видається вже повністю сформований поточний бар, але на ньому тестування не проводиться! - Контрольні точки (використовується найближчий менший таймфрейм)
Метод моделювання контрольних точок призначений для грубої оцінки експертів, які торгують всередині бару. Для цього методу необхідна наявність історичних даних найближчого меншого періоду (таймфрейма). У деяких випадках наявні дані меншого таймфрейма в повному обсязі покривають часовий діапазон тестованого таймфрейма. При відсутності даних меншого таймфрейма розвиток бару генерується на основі визначених хвильових шаблонів, як це було в попередній, третьої версії клієнтського терміналу MetaTrader 3.
Як тільки з'являються історичні дані меншого таймфрейма, то інтерполяція застосовується вже до цих даних. Однак точно існуючі ціни OHLC меншого таймфрейма виступають в якості контрольних точок. У більшості випадків результати тестування експертів за методом контрольних точок можуть братися до уваги тільки як оціночні, а не як остаточні. Такі результати мають проміжний оціночний характер. - Все тики (на основі всіх найменших доступних періодів)
Цей режим дозволяє найбільш точно змоделювати рух ціни всередині бару. На відміну від "контрольних точок", потіковий метод використовує для генерації дані не тільки найближчого меншого таймфрейма, але і всіх доступних менших таймфреймів. При цьому, якщо для якогось тимчасового діапазону одночасно існують дані більш, ніж одного таймфрейма, для генерації використовуються дані самого меншого таймфрейма. Так само, як і в попередньому методі, генеруються контрольні точки на основі даних OHLC найменшого доступного таймфрейма. Для генерації руху ціни між контрольними точками також використовується інтерполяція на основі визначених шаблонів, тому вкрай бажано наявність хвилинних даних, що покривають весь діапазон тестування. Можлива ситуація, коли генерується кілька однакових тиків поспіль. В цьому випадку дублюються котирування фільтруються, і фіксується обсяг останньої з таких котирувань.
Необхідно враховувати дуже великий можливий обсяг згенерованих потікових даних. Це може позначитися на споживаних ресурсах операційної системи і на швидкості тестування.
Діапазон дат дозволяє тестувати радники не на всіх наявних даних, а лише на обраному часовому відрізку. Це буває зручним при необхідності досліджувати окрему частину історичних даних. Обмеження діапазону дат можна використовувати не тільки при тестуванні експерта, а й при генерації тестирующей послідовності барів (файлу змодельованих даних, використовуваного для тестування). Дуже часто немає необхідності генерувати дані всієї історії, особливо при потіковом моделюванні, коли обсяг невикористовуваних даних може бути дуже великим. Тому якщо при первинній генерації тестирующей послідовності була включена можливість використання діапазону дат, то бари, що виходять за межі вказаного діапазону, не генеруються, а просто переписуються в вихідну послідовність. Дані не виключаються з послідовності, щоб залишалася можливість правильно порахувати індикатори на всій отриманої історії. Необхідно зауважити, що перші 100 барів також не генеруються. Це обмеження не залежить від встановленого діапазону дат.
Visual Mode - Режим візуалізації дозволяє користувачеві спостерігати за ходом тестування на окремому графіку терміналу. При включенні цього режиму, в терміналі відкривається вікно візуалізації, в якому відображається графік і. відкриваються радником, угоди.
Period - таймфрейме для тестування. Якщо Ваш радник працює по барах або за індикаторами, Вам необхідно вибрати той таймфрейм, який буде використовуватися при реальній торгівлі.
Spread - тестується спред. У Терміналі МТ4 спред може бути тільки фіксованим. Ви можете встановити цей спред в даному полі.
Увага. Результати будуть відрізнятися від реального рахунку. якщо Ваш реальний рахунок містить плаваючий спред.
Увага. Я не рекомендую вибирати спред = 0 тому, як при кожному тетсірованіі спред буде встановлюватися з поточного спреда брокера, який може бути плаваючим.
Optimization - Встановіть цей прапорець, якщо хочете провести оптимізацію радника в тестері стратегій, але перед цим необхідно налаштувати радник для оптимізації.
Вікно вибору параметрів тестування
Initial Deposit - Початковий балансвашего рахунки для тестування.
Ви можете вказати тут суму, яка достатня для роботи експерта.
Positions - Ви можете вибрати тип позицій, які будуть відкриватися. Можна вибрати тільки Покупки або тільки Продажі. Якщо Ви вибрали тільки покупки - раднику буде заборонено відкривати позиції продажу.
Optimization - блок для управління типом оптимізації, наприклад по балансу, профіт фактору, просідання.
Вікно налаштувань експерта:
У цій вкладці Ви налаштовуєте експерта на тестування.
Налаштовувати можна тільки поле Value - Значення, інші поля тільки для оптимізації радника.
Увага. Якщо у Вашого експерта є налаштування індикатора і Ви збираєтеся спостерігати за ходом тестування в режимі візуалізації, будь ласка будьте уважні.
Налаштування індикатора в радника повинні бути однаково налаштувань індикатора на графіку.
Іншими словами: Радник торгує по тому індикатору, який налаштований у нього в зовнішніх змінних.
Якщо Ви вирішили нанести на графік індикатор, будь ласка, налаштуйте його так, як це зроблено в радника.
Інакше у Вас виникне питання: А чому по індикатору сигналу немає, а радник відкрив або не відчинив угоду.
Для початку тестування натисніть кнопку START
Для спостереження за ходом тестування Ви можете відкрити вкладку Results і спостерігати за тестуванням
Після закінчення тестування, перейдіть в вкладку Reports для ознайомлення з результатами тестування вашого радника в тестері стратегій.
У Вкладці Graph Ви можете спостерігати графік зміни балансу і Еквіті за час проведення тестування.
Для того, щоб зберегти звіт про тестування, зайдіть в вкладку Results і натисніть правою кнопкою миші на даних, у Вас з'явиться меню збереження звіту:
Оптимізація радників в MetaTRader 4
Налаштуйте термінал на оптимізацію і обов'язково встановіть галочку на Optimization
Після етоого відкрийте настройки радника і налаштуйте поля для оптимізації:
Start - Стартове значення параметра, який Ви хочете оптимізувати.
Step - Крок зміни значення параметра, який Ви хочете оптимізувати.
Stop - Кінцеве значення параметра, який Ви хочете оптимізувати.
Обов'язково поставте галочку перед тим параметром, який Ви збираєтеся оптимізувати
Чи означає, що ми хочемо. щоб стоплосс і тейкпрофіт тестувалися з початкового значення 100 пунктів, з кроком 100 (100 200 300 400.) і до значення 600
Всього оптимізатор повинен пройти 6 * 6 проходів = 36 результатів.
Результати оптимізації Ви можете спостерігати в вкладці Optimization Results
Після оптимізації Ви можете подивитися на 3Д графік оптимізації:
Якщо Ви хочете отримати звіт про тестованих значеннях і результат оптимізації, Вам необхідно вибрати правою кнопкою потрібні результати і натиснути кнопку Set Inputs Parametr, після цього Ви зможете ще раз натиснути на кнопку СТАРТ тетсірованія і отримати повний звіт по тестуванню.
Для того, щоб зберегти набір налаштувань, які ВИ протетсіровалі, Вам необхідно відкрити настройки советнкіа в тестері стратегій, і натиснути кнопку SAVE - Зберегти
Надалі, Ви можете завантажити ці настройки в свого експерта на реальному графіку.
Тестування та оптимізація в MetaTrader 5
Питання відповідь
1. Чому результати однойменних тестів різні в різних ДЦ?
- Різні результати тестів в різних ДЦ пояснюються різними котируваннями. Кожен брокер має своїх постачальників котирувань. Звідси і різниця в результатах тестування.
- У кожного брокера свій спред і своя специфікація Констракт, тому результати можуть відрізнятися кардинально.
keyboard_arrow_left Prev keyboard_arrow_right Next