Універсальний торговий радник на користувацьких індикаторах для MetaTrader. Exp – The xCustomEA Універсальний торговий радник на користувацьких індикаторах. The xCustomEA працює…
Partial Close and Trailing. Часткове закриття позицій на відкатах
Close Minus by Plus, Закриття невигідних позицій шляхом пошуку та закриття вигідних позицій

Table of Contents (click to show)
List
- Опис
- Початок Крок Зупинка
- Підготовка до Оптимізації Експертного Радника
- Кастомізовані Параметри для Оптимізації
- Блок 1: Торгові Сигнали та Фільтри
- Блок 2: Параметри Сигналу
- Блок 3: Параметри Відкриття Фільтра
- Блок 4: Параметри Закриття
- Блок 5: Параметри Очікуваних Замовлень
- Блок 6: Торгові Параметри
- Блок 7: Параметри Стопів
- Блок 8: Параметри лотів
- Блок 9: Параметри Averager
- Блок 10: Додаткове відкриття
- Блок 11: Параметри BreakEven без збитків
- Блок 12: Параметри стандартного Trailing
- Блок 13: Trailing Stop за SAR
- Блок 14: Параметри часу торгівлі
- Блок 15: Параметри CloseALL при прибутку або збитку
- Опції для виклику OnTester_Custom_max:
- Висновки
- Питання?
Опис
The X та The xCustomEA є двома видатними Експертними радниками (EAs) у спільноті Форекс, здобувши широку популярність за останні п’ять років. Ці інструменти розроблені для трейдерів, які бажають кастомізувати свої торгові стратегії та зосередитися на тестуванні та оптимізації, щоб підвищити продуктивність і адаптуватися до різних умов ринку.
Ключові Особливості:
- The X: Цей EA є комплексним будівельником стратегій, який дозволяє користувачам створювати торгові стратегії за допомогою стандартних індикаторів MetaTrader. Він включає понад 20 варіантів сигналів та різноманітні фільтри, роблячи його адаптивним інструментом для будь-якого торгового стилю.
- The xCustomEA: Піднімаючи кастомізацію на новий рівень, цей EA дозволяє трейдерам розробляти стратегії на основі індикаторів iCustom (iCustom), забезпечуючи ще більшу гнучкість у торгових стратегіях. Це означає, що ви можете інтегрувати будь-який кастомний індикатор (custom indicator) у вашу автоматизовану торгівлю (automated trading).
Чому Обрати The X та The xCustomEA?
- Універсальні та Адаптивні: Обидва радники можуть використовуватися для різних валютних пар, таймфреймів та умов ринку, пропонуючи трейдерам безмежні можливості для розробки стратегій.
- Без Необхідності в Кодуванні: Хоча інструменти є висококастомізованими, вони розроблені для легкого використання, навіть для тих, хто не має досвіду в програмуванні. Просто виберіть свої індикатори та параметри, і нехай EAs зроблять решту.
- Розширені Функції: Обидва Експертні радники оснащені розширеними функціями, такими як динамічне визначення лоту (dynamic lot sizing), трейлінгові стопи (trailing stops), рівні беззбитковості (break-even levels) та інше. Незалежно від того, чи ви початківець, чи досвідчений трейдер, ці функції дозволяють точно керувати ризиками (risk management) та виконувати угоди (trade execution).
Гнучкість
З The X ви можете створювати стратегію з використанням стандартних індикаторів MetaTrader, тоді як The xCustomEA дозволяє інтегрувати ваші кастомні індикатори (custom indicators), надаючи вам можливість дійсно персоналізувати вашу торгову стратегію.
Ці EAs пропонують повний пакет для будь-кого, хто прагне автоматизувати свої торгові стратегії, максимізувати потенціал та приймати обґрунтовані рішення на основі складного технічного аналізу.
Ми не будемо розповідати про те, як тестувати чи оптимізувати Експертних радників (EAs) у терміналах MT4 та MT5! Ми вже обговорювали це в нашій статті: Тестування та Оптимізація Експертних Радників.
У цій статті я покажу вам деякі способи оптимізації Експертного Радника та правильні функції, щоб працювати з Експертним Радником.
Ми створили для вас кілька наборів налаштувань оптимізації, щоб ви могли почати оптимізувати на своєму комп’ютері.
Починаючи з версії 18.008, ми призначили однакові імена для всіх змінних у версіях MT4 та MT5. Це зроблено для того, щоб ви могли переносити файли конфігурації з одного терміналу до іншого!
Ми покажемо приклади торгових стратегій, заснованих на THE X.
Пам’ятайте: The X або The xCustomEA є конструктором для торгових стратегій. Групуючи та застосовуючи різні комбінації функцій, ви можете досягати різних результатів.
Ви повинні зрозуміти, що чудеса не трапляються. Наші Експертні Радники (EAs) є лише інструментами для торгівлі на Форекс. Торгівля на Форексі передбачає 100% ризик!
Функціональні особливості Експертних Радників та опис налаштувань вже були розглянуті в нашій статті The X – Універсальний Радник для Форекс MT4 MT5 Повна Інструкція.
У цій статті ми обговоримо, як оптимізувати параметри Експертного Радника та досягти бажаних результатів.
Ми розглянемо методи тестування, вибір стратегій оптимізації та включення різних функцій для торгівлі на Форексі.
Початок Крок Зупинка
Набір налаштувань залежить від вашого депозиту та ліміту просадки, валютної пари та специфікацій контракту, а також від того, чи ви займаєтеся довгостроковими торгами чи піпсінгом!
Тут і нижче я буду використовувати ці значення:
0-10-100 = означає, що параметри для оптимізації наступні:
- Початкове значення оптимізації = 0
- Крок оптимізації параметру = 10
- Зупинне значення параметру для оптимізації = 100
Всі параметри, що вимірюються у точках (піпсах) (Stop Loss, Take Profit, Distance тощо), базуються на 4-значних котируваннях.
- Наприклад, EURUSD = 1.2001 означає, що брокер має 4-значні котирування. І 1 = 1 точка!
- Якщо я напишу 10, це означає, що я маю на увазі 10 точок (піпсів).
- Якщо у вашого брокера 5-значні котирування, тоді вам потрібно помножити мої рекомендації на 10!
- Наприклад, EURUSD = 1.20015 означає, що брокер має 5-значні котирування. І 1 = 1 точка!
- Якщо я напишу 10, це означає, що я маю на увазі 10 точок (піпсів). Але ви повинні встановити значення до 100.
Пам’ятайте відповідь на запитання!
Які значення в параметрах у точках або піпсах?
У точках! Значення походить з змінної Point.
- Якщо у вас брокер з 5 або 3-значними котируваннями, тоді 1 точка = 0.00001 або 0.001
- Якщо у вас брокер з 4 або 2-значними котируваннями, тоді 1 точка = 0.0001 або 0.01
Підготовка до Оптимізації Експертного Радника
Наші Експертні Радники (EAs) використовують однакові сигнали та алгоритми функцій.
Однак через різницю між терміналами MT5 та MT4 можуть виникнути різниці у продуктивності.
Тестер стратегій у терміналі MT5 наразі є найтехнологічнішою та найточнішою.
Найважливішою особливістю терміналу MetaTrader 5 та Тестера стратегій є можливість тестувати на реальних тиках. Спред та рівні стопу у MetaTrader 5 плаваючі, що означає, що тестування в тестер стратегій MT5 є максимально близьким до реальної торгівлі.
Ми не будемо пояснювати тестування та оптимізацію у терміналі MetaTrader 4! Ви вже знаєте, як його тестувати. Процес оптимізації схожий на процес MT5 (налаштування та запуск).
Але головною особливістю тестера стратегій у MT5 є, звісно, можливість оптимізувати у хмарі MQL5 Cloud Network.
Хмара дозволяє оптимізувати Експертного Радника (EA) за допомогою тисяч інших комп’ютерів за мінімальну вартість. Це дуже доступно та швидко. Тому я настійно рекомендую використовувати MQL5 Cloud.
В архіві з Експертним Радником ви знайдете кілька файлів з налаштуваннями оптимізації. Це лише приклади, але вони покажуть вам, як налаштувати оптимізацію.
Пам’ятайте: Кожна валютна пара та брокер мають свої власні торгові умови (Спред, своп, комісія, метод розрахунку, виконання, тип рахунку), тому результати оптимізації можуть відрізнятися!
Для того, щоб результати були більш послідовними, потрібно вимкнути Random Delay. Це не потрібно для оптимізації!
Налаштування Тестера Стратегій:
- Виберіть Експертного Радника зі списку.
- Встановіть валютну пару, для якої ви будете проводити тест.
- ТФ: Краще вибрати M1. (Таймфрейм буде встановлено Експертним Радником з його налаштувань)
- Дата оптимізації: Ви можете вибрати поточний рік! Пам’ятайте, минулі результати не гарантують прибуток у майбутньому! Оптимізація кожні півроку є найпрактичнішим діапазоном!
- Forward можна встановити на 1 місяць, але ми рекомендуємо спочатку отримати чисті результати. Потім ми проведемо Forward Test.
- Депозит: Краще встановити депозит, з яким ви почнете торгувати. Не встановлюйте занадто малий баланс, і не надто великий теж!
- Кредитне плече: Встановіть кредитне плече, з яким ви будете торгувати.
- Оптимізуйте алгоритм Slow Complete.
- І переконайтеся: “Кожен тик, на основі реальних тиков”!
Налаштування Параметрів Експертного Радника:
- Натисніть вкладку Inputs та завантажте наш файл Set.
- Позначте або зніміть позначки з опцій, які ви хочете оптимізувати. (За замовчуванням, я налаштовую файл таким чином, щоб ви могли оптимізувати всі важливі параметри)
- Value — Це фіксоване значення параметра. Експертний Радник використовуватиме це значення, якщо цей параметр не оптимізовано або під час тестування!
- Start – Початкове значення параметра для оптимізації.
- Step – Крок, на який змінюється параметр кожного разу, коли запускається оптимізатор.
- Stop – Кінцеве значення параметра для оптимізації.
- Пам’ятайте! Чим більше параметрів та кроків для оптимізації, тим більше часу потрібно для завершення тестування та оптимізації!
Увімкнути Хмарну Оптимізацію
Я настійно рекомендую увімкнути хмарну оптимізацію!
У цьому випадку я вимикаю використання свого процесора, тому мій комп’ютер не сповільнюється під час оптимізації. Крім того, вартість одного проходу у хмарі складає менше 0.01 центів!
Натисніть кнопку START і продовжуйте свої завдання!
Кастомізовані Параметри для Оптимізації
Ви можете завантажити наші файли для оптимізації для The X.
Блок 1: Торгові Сигнали та Фільтри
У наших Експертних Радниках (EAs) понад 20 торгових стратегій базуються на стандартних індикаторах терміналу MetaTrader.
Чому Ми Використовуємо Стандартні Індикатори?
Всі користувацькі індикатори майже повністю дублюють стандартні індикатори, які вже є в терміналі.
Змінюючи параметри в коді, ви створюєте кастомний індикатор (custom indicator). Логічно, кастомний індикатор складається з 90% стандартних індикаторів!
Ми написали більше 5,000 Експертних Радників (EAs), використовуючи кастомні індикатори (custom indicators), і ми можемо впевнено сказати, що це не має сенсу.
Працювати зі стандартними індикаторами передбачувано і в 90% випадків більш прибутково.
Тому ми використовуємо стандартні індикатори для торгівлі. Читайте приклади відкриття позицій на основі стандартних індикаторів, а також опис сигналів в статті: Приклади Роботи Сигналів!
Індикатори та сигнали є основними елементами, на які слід звернути увагу при початку нашої оптимізації та тестування!
На момент написання цієї статті у нас є 20 сигналів:
- NoSignal = 0, // Без Сигналу
- Ma = 1, // Ковзна Середня
- MACD = 2, // Згортання та Розходження Ковзної Середньої (MACD)
- STOCH = 3, // Стохастичний Осцилятор
- RSI = 4, // Індекс Відносної Сили (RSI)
- CCI = 5, // Індекс Каналу Сировини (CCI)
- WPR = 6, // Williams Percent Range (WPR)
- BB = 7, // Смуги Боллінджера
- Envelopes = 8, // Об’єкти (Envelopes)
- Alligator = 9, // Аллігатор
- OsMA = 10, // Ковзна Середня Осцилятора (OsMA)
- AO = 11, // Вражаючий Осцилятор (AO)
- ISH = 12, // Ічімоку
- AC = 13, // AC
- BAR = 14, // BAR BEAR \ BULL
- ADX = 15, // Середній Напрямний Індекс (ADX)
- ADXWilder = 19, // ADX Вайлдер
- ZigZag = 17, // ZigZag
- MFI = 20, // Індекс Грошового Потоку (MFI)
- Fractals = 21, // Фрактали
Кожен сигнал та стратегія є стандартною стратегією використання індикатора. Такі стратегії були розроблені творцями цих індикаторів. Ми не будемо пояснювати весь зміст кожної стратегії.
Це стандартні торгові стратегії!
У вас буде 100,000,000 варіантів використання стандартного індикатора, але ви також розумієте, що ми не можемо додати їх до Експертного Радника!
Якщо ви бажаєте написати свою стратегію або Експертного Радника (EA) на своєму індикаторі, то вам потрібен відкритий код (open-source code):
- Відкритий код The X для MetaTrader5 (Наразі недоступний)
- Відкритий код The X для MetaTrader4 (Наразі недоступний)
- Програмування Експертного Радника: 10 Кроків до Успіху!
У нашому Експертному Раднику ви можете поєднати один сигнал та до п’яти фільтрів.
Різниця між Сигналом та Фільтром:
Сигнал
- Сигнал — виникає, коли виконуються всі умови для сигналу, наприклад, перетин ліній MA або з’явлення нової точки ZigZag.
- Наприклад, перетин рівня 70 для індикатора RSI є сигналом. Якщо RSI вище рівня 70, то це вже фільтр.
- Сигнал — це те, що з’являється при отриманні цінових котирувань, закріплених на барі. Експертний радник (EA) приймає сигнал.
- Наприклад, світло увімкнулося. Це сигнал, тому що світло щойно увімкнулося. Коли ви вмикаєте світло, людина прокидається. Це сигнал.
- Відкриття позицій відбувається після підтвердження сигналу. Лінії перетинаються, і потім відкривається позиція. Якщо лінії перетнулися раніше, це не сигнал; сигнал вже пройшов.
Фільтр:
- Фільтр — це поточне положення індикатора, наприклад, поточне положення ліній MA відносно одна одної або поточний останній вершина ZIGZAG.
- Фільтр — це те, що показує індикатор в даний момент. Це не сигнал. Це поточне положення індикатора.
- Наприклад, світло було увімкнене. Це фільтр, тому що світло вже увімкнене і зараз увімкнене. Коли світло увімкнене, людина більше не спить. Це фільтр.
- Сигнали фільтруються на основі поточного значення індикатора. Якщо Fast MA вище Slow MA, тоді тільки BUY позиції повинні відкриватися з цим фільтром.
Поради щодо Оптимізації Параметрів Сигналу:
string Signal1s = "========= Власні параметри Сигналу ========="; typesignals IndSigToTrade = 1; ENUM_TIMEFRAMES TF_IndSigToTrade1 = PERIOD_CURRENT; bool Signal_Reverse = false; bool ClosePositionifChangeOWNSignal = false; int OWNSIGNAL_shift = 1; string Signal2s = "========= Параметри Фільтру 1 ========="; typesignals2 FILTER_IndSigToTrade1 = 0; ENUM_TIMEFRAMES FILTER_TF_IndSigToTrade1 = PERIOD_CURRENT; bool Filter1_Reverse = false; int FILTERSIGNAL1_shift = 1;
Рекомендуємо використовувати не більше двох фільтрів для сигналу, тому ми приховали інші три фільтри внизу таблиці налаштувань.
Це тому, що кожен фільтр зменшує кількість сигналів. Якщо використовувати більше двох фільтрів, сигнали стають дуже рідкісними.
Чому ми створили п’ять фільтрів?
Під час програмування та створення Експертного Радника (EA), наші перші користувачі надали нам “список бажань” функцій та запитів. Ми виконали ці запити та створили п’ять фільтрів.
Варіанти Оптимізації Блоку Сигналів
IndSigToTrade параметр можна оптимізувати! Буде 20 варіантів для цього параметра. Це небагато, але ви можете вибрати найкращий результат для тієї чи іншої стратегії.
Оптимізація значень: 1 – 20 або Moving Average – Fractals
Параметр TF_IndSigToTrade1 також можна оптимізувати. Однак ми рекомендуємо встановити TimeFrame на той, на якому ви зазвичай торгуєте.
- Пам’ятайте: Чим вищий TimeFrame, тим менше з’являтимуться сигнали. Чим вищий TimeFrame, тим довше буде стратегія.
Параметр Signal_Reverse використовується для інверсії стратегій! Іноді торгівля стає прибутковішою, коли ми інвертуємо стратегію.
Оптимізувати немає сенсу.
- Однак, щоб включити цей параметр, я рекомендую тільки довгострокові торги та використання великих Stop Loss та Take Profit.
- Якщо ви використовуєте lossless та trailing stops і зазнаєте збиток у межах spread, ви не зможете торгувати прибутково, ввімкнувши цей параметр!
- Наприклад, якщо ваша стратегія включає Stop Loss = 2000 Points (Pips) та Take Profit = 500 Points (Pips), у вас буде 100 збитків і 1 прибуток.
- Коли ви інвертуєте стратегію, ви отримуєте 100 виграшів і 1 збиток.
- Але все відносно. Кожну теорію потрібно тестувати! Чудеса не відбуваються!
Параметр ClosePositionifChangeOWNSignal дозволяє закривати відкриті позиції, коли первинний сигнал змінюється.
Оптимізувати немає сенсу.
- Ця опція може використовуватися для негайного відсікання хибних сигналів.
- Наприклад, припустимо, що ви не використовуєте усереднення (відображення серії торгів у загальному прибутку) і приймаєте, що деякі сигнали будуть хибними, що призведе до миттєвих збитків при закритті на сигнал. У цьому випадку ви можете увімкнути цю функцію.
Параметр OWNSIGNAL_shift дуже важливий! Він регулює прийом сигналу з закритого або поточного бара.
Оптимізувати немає сенсу.
- Рекомендую залишити його за замовчуванням.
- 1 – Прийом сигналів з вже закритого та повністю сформованого бара.
- 0 – Прийом сигналу з поточного бара, який ще формується.
- Детальна стаття про те, як використовувати SHIFT сигнал.
Параметри Filter N мають ті ж логічні пояснення, що й сигнали. Тому ми їх не повторюємо, але зазначаємо наступне:
- Ви можете використовувати фільтри інших індикаторів, відмінних від сигналів.
- Ви можете використовувати той же індикатор, що й у сигналі, але встановити TimeFrame вищим за TimeFrame сигналу. Наприклад, TF signal = M15, а TF filter = H1.
- Фільтр зменшує кількість сигналів та відкритих позицій.
- Один фільтр може не працювати з іншим сигналом. Все залежить від встановлених вами стратегій. Деякі фільтри та сигнали можуть конфліктувати між собою.
- Наприклад, Moving Average показує сигнал BUY, тоді як RSI Filter показує тільки SELL в цей момент. Такі конфлікти траплялися.
- Якщо ви не відкриваєте позицію, використовуючи фільтр, вимкніть фільтр та дослідіть цю проблему. Можливо, два індикатори конфліктують між собою.
Блок 2: Параметри Сигналу
У цьому блоці ми додали параметри, які можуть допомогти в тонкому налаштуванні блоку сигналів.
Ці параметри є допоміжними, і я не рекомендую їх оптимізувати.
bool Show_alert_without_opening_positions = false; bool OpenBarControlOnly = false; bool ControlNewBarforSIGNAL = true; bool ReverseSignal = false;
Параметр Show_alert_without_opening_positions дозволяє вимкнути фактичне відкриття позицій. Замість цього Експертний Радник (EA) відображає інформацію на екрані, коли надходить сигнал.
Оптимізувати немає сенсу.
- Експертний Радник (EA) не відкриває позицію.
- Інформація про сигнал з розрахованими параметрами відображається.
- Ви можете увімкнути або вимкнути відкриття позицій для цього сигналу.
Параметр OpenBarControlOnly використовується тільки для тестувальної моделі у формі Open Prices Only.
Оптимізувати немає сенсу.
- Це дозволяє Експертному Раднику (EA) працювати на відкритих барах на реальному графіку.
- Коли цей параметр увімкнено, весь алгоритм Експертного Радника виконується лише один раз при відкритті нового бара.
- Результати при увімкненні цієї опції схожі на результати тестування у режимі Open Prices Only.
Параметр ControlNewBarforSIGNAL – параметр, який включає обробку сигналу лише один раз на новий бар.
Оптимізувати немає сенсу.
- Дозволяє значно зменшити навантаження на комп’ютер під час оптимізації Експертного Радника (EA).
- Збільшує швидкість тестування в стратегічному тестері.
- Використовується тільки для SHIFT > 0.
Параметр ReverseSignal – інвертує загальний сигнал для відкриття позицій.
Оптимізація значень: True – False
- На відміну від Signal_Reverse, ви можете інвертувати основний сигнал для відкриття, включаючи сигнали та фільтри.
Блок 3: Параметри Відкриття Фільтра
Цей блок містить параметри, які дозволяють фільтрувати відкриття позицій на основі технічних обмежень.
string oo_121 = "========= Параметри Відкриття Фільтра ========="; TypeTrade TypeTradeBUYSELL = 0; int MinuteToOpenNextPosition = 0; bool OpenOppositePositionAfterStoploss = false; bool OnlyOnePosbySignal = true; bool OnePosPerDirection = true; bool OnlyOnePositionPerMagic = false; bool OnlyAlternateSignals = false; int MAX_BUY_POSITION = 0; int MAX_SELL_POSITION = 0; int MaxSpreadToNotTrade = 0; int MinSpreadToNotTrade = 0;
Параметр TypeTradeBUYSELL – включає можливість торгувати тільки в одному напрямку.
Оптимізувати немає сенсу.
- Корисно, коли ви керуєте Експертним Радником (EA) вручну, наприклад, під час аналізу новин.
- Або коли ви використовуєте додаткові засоби для визначення сигналів, наприклад, трендові лінії.
- Рекомендую цю функцію тільки тоді, коли ви впевнені, що тренд має напрямок.
Параметр MinuteToOpenNextPosition – забороняє відкриття додаткової позиції на сигналі.
Оптимізувати немає сенсу.
- Дозволяє вам тонко налаштувати торгові параметри на сигналах, коли трейдер впевнений у силі сигналу.
- Використовується з OnlyOnePosbySignal = false.
- Обмежує відкриття позицій на той самий сигнал.
Параметр OpenOppositePositionAfterStoploss – відкриває протилежну позицію, якщо попередня позиція була закрита стоп-лоссом (у збиток).
Оптимізувати немає сенсу.
- Це експериментальна опція і може використовуватися лише трейдером, який розуміє сутність своєї роботи.
Параметр OnlyOnePosbySignal – дозволяє Експертному Раднику (EA) відкривати тільки одну позицію для обраної валютної пари та магічного номера.
Ви можете встановити цей параметр на True або False при використанні OnePosPerDirection = true.
- Вимкнення цієї функції дозволяє “дозувати” позиції на той самий сигнал в одному напрямку.
- Не рекомендую змінювати цей параметр.
Параметр OnePosPerDirection – дозволяє Експертному Раднику (EA) відкривати позиції тільки в одному напрямку або включає можливість торгувати в двох напрямках одночасно.
Оптимізувати немає сенсу.
- Працює тільки коли OnlyOnePosbySignal = false.
- Не рекомендую змінювати цей параметр.
Параметр OnlyOnePositionPerMagic дозволяє контролювати відкриті позиції всіх Експертних Радників (EA), які мають той самий MAGIC.
Оптимізувати немає сенсу.
- Працює тільки коли OnlyOnePosbySignal = false.
- Не рекомендую змінювати цей параметр.
Параметр OnlyAlternateSignals – дозволяє відкривати позиції тільки в протилежному напрямку від останньої закритої позиції.
Оптимізувати немає сенсу.
- Значно зменшує кількість сигналів.
- Не рекомендую змінювати цей параметр.
Параметри MAX_BUY_POSITION та MAX_SELL_POSITION дозволяють обмежити кількість одночасно відкритих угод (позицій).
Оптимізувати немає сенсу.
- Працює тільки коли OnlyOnePosbySignal = false.
- Не рекомендую змінювати цей параметр.
- Цей параметр створено для торгівлі в різних напрямках без обмеження кількості сигналів.
- Дозволяє обмежити одночасне відкриття позицій на один сигнал або знайти відкриті позиції на ринку.
Параметри MaxSpreadToNotTrade та MinSpreadToNotTrade дозволяють обмежити відкриття позицій на сигналі, коли брокер часто змінює спред.
Оптимізувати немає сенсу.
- Не рекомендую змінювати цей параметр.
- Ці параметри слід встановлювати тільки на реальному графіку.
- Вони дозволяють обмежити сигнали під час важливих випусків новин та різких стрибків спреду, де Експертний Радник (EA) може встановити великі стопи.
Блок 4: Параметри Закриття
Цей блок містить параметри, які дозволяють закривати позиції в певних ситуаціях.
input string oo_123 = "========= Параметри Закриття ========="; input bool ClosePosIfChange = true; input bool CloseChangeOnlyInProfit = true; input int ClosePosition_After_X_Minutes = 0;
Параметр ClosePosIfChange – закриває протилежну позицію при зміні сигналу на відкриття.
Оптимізація значень: True – False
- Корисно, коли ви хочете змінити поточний сигнал, якщо він виявився хибним, або коли з’являється новий сигнал.
- Дозволяє зафіксувати прибуток або збиток при зміні сигналу з індикатора.
Параметр CloseChangeOnlyInProfit – дозволяє закривати тільки прибуткові позиції.
Якщо отримано сигнал на відкриття протилежної позиції, вона буде закрита тільки тоді, коли поточна позиція є прибутковою.
Оптимізація значень: True – False
- Дозволяє зафіксувати прибуток при зміні сигналу з індикатора.
- Працює тільки з ClosePosIfChange = true.
Параметр ClosePosition_After_X_Minutes – закриває позицію через певний час.
Оптимізація значень: Рекомендується встановлювати числа, кратні вашому TimeFrame (TF).
Наприклад, при використанні Експертного Радника (EA) на TimeFrame M15, встановіть значення: початок 0, крок 15, стоп 75.
- Точно зафіксувати час, коли Експертний Радник (EA) має право торгувати.
- Дозволяє закривати позиції, відкриті сигналом. Наприклад, через 15 хвилин після відкриття.
- Залежить та працює з параметром CloseChangeOnlyInProfit:
- Якщо CloseChangeOnlyInProfit = true, то позиції закриваються, якщо вони мають прибуток.
Блок 5: Параметри Очікуваних Замовлень
У цьому блоці описані параметри для управління очікуваними замовленнями.
input StopOrderType StopOrderUSE = 0; input int StopOrderDeltaIfUSE = 0; input int StopOrderDayToExpiration = 0; input int StopOrderBarToExpiration = 0; input bool ReInstallStopOrdersNewSignalAppears = true;
Параметр StopOrderUSE – дозволяє відкривати очікувані або лімітні замовлення замість позицій.
Оптимізація значень: False – Використовувати Stop Orders.
- Дозволяє додатково фільтрувати сигнали за робочою відстанню.
- Використання Stop Orders: Якщо Експертний Радник (EA) отримує сигнал і ми відкриваємо очікуване замовлення на відстані 100 пунктів (піпсів), якщо ціна пройде 100 пунктів (піпсів) у нашому напрямку та спрацює очікуване замовлення, тоді сигнал вважається підтвердженим.
- Використання Limit Orders: Якщо Експертний Радник (EA) отримує сигнал і ми відкриваємо лімітне замовлення на відстані 100 пунктів (піпсів), якщо ціна пройде 100 пунктів (піпсів) у протилежному напрямку та спрацює лімітне замовлення, тоді сигнал вважається відскоком. Найкраще переконатися, що буде відскок.
- Не рекомендую оптимізувати для Використання Limit Orders.
- Значення Використання Stop Orders має сенс тільки для довгострокової торгівлі.
Параметр StopOrderDeltaIfUSE – відстань до очікуваного стоп або лімітного замовлення.
Оптимізація значень: Рекомендується встановлювати параметри індивідуально для кожної пари.
- Наприклад, якщо це валютна пара EURUSD і ви торгуєте на таймфреймі M30. Середній рух ціни в періоді, наприклад, 50 барів = 7500 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як початок 0, крок 100, стоп 1000.
- Наприклад: Якщо це валютна пара XAUUSD і ви торгуєте на таймфреймі M1, а середній рух ціни в періоді, наприклад, 50 барів = 100 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як: початок 0, крок 10, стоп 100.
- Наприклад, вам потрібне підтвердження сигналу на відкриття та середній рух ціни в періоді. Наприклад, 100 барів = 1000 пунктів (піпсів), тоді початок 0, крок 50, стоп 500.
Параметр StopOrderDayToExpiration – видаляє очікуване замовлення, якщо воно не виконується протягом встановленої кількості днів.
Оптимізувати немає сенсу.
Параметр StopOrderBarToExpiration видаляє очікуване замовлення, якщо воно не виконується протягом встановленої кількості барів (залежить від вашого таймфрейму).
Оптимізаційні опції: початок 0, крок 1, стоп 10
- Дозволяє видалити очікуване замовлення, якщо ціна не прорветь рівень очікуваного замовлення (StopOrder).
Параметр ReInstallStopOrdersNewSignalAppears – скидає очікуване замовлення, коли з’являється новий сигнал.
Оптимізувати немає сенсу.
- Дозволяє встановлювати очікуване замовлення кожного разу, коли з’являється новий сигнал.
- Не рекомендую змінювати це налаштування.
Блок 6: Торгові Параметри
У цьому блоці зібрані параметри, які встановлюються під час виконання позицій.
Оптимізувати немає сенсу.
Блок 7: Параметри Стопів
Блок для роботи зі стоп-лоссом та тейк-профітом.
input string oo5 = "========= Параметри Стопів ========="; input bool VirtualStops = false; input bool ForcedModifySLTP = false; input minlevel SetMinStops = 0; input int StopLoss = 2000; input int TakeProfit = 0; input bool Include_Commission_Swap = true;
Параметри ForcedModifySLTP, SetMinStops, Include_Commission_Swap – не рекомендую змінювати. Оптимізувати немає сенсу.
Параметр VirtualStops – включає можливість встановлення віртуальних стоп-лоссів та тейк-профітів без фактичного модифікування позицій (стоп-лосс та тейк-профіт у позиції будуть = 0).
Оптимізація значень: True – False
- Усі рівні StopLoss та TakeProfit зберігаються у глобальних змінних та на графіку.
- Є віртуальне виконання StopLoss та TakeProfit.
- Має сенс застосовувати тільки тоді, коли потрібно встановити дуже малі (менше мінімального можливого рівня на сервері) рівні стопів.
- Дозволяє приховати рівні стопів від брокера, ускладнюючи розуміння логіки вашої стратегії.
Параметр StopLoss – стоп-лосс для позиції.
Оптимізація значень: Рекомендується встановлювати параметри індивідуально для кожної пари.
- Наприклад, якщо це валютна пара EURUSD і ви торгуєте на таймфреймі M30. Середній рух ціни в періоді, наприклад, 50 барів = 7500 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як початок 0, крок 100, стоп 1000.
- Наприклад: Якщо це валютна пара XAUUSD і ви торгуєте на таймфреймі M1, а середній рух ціни в періоді, наприклад, 50 барів = 100 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як: початок 0, крок 10, стоп 100.
- Залежить від ваших лімітів для кожної позиції.
- Чим більше StopLoss, тим довше триватиме утримання позиції, і тим більше можливостей сподіватися, що ціна повернеться до відкритої позиції.
- Чим менше StopLoss, тим швидше будуть закриватися хибні сигнали.
- Не має сенсу використовувати малий StopLoss, який менший за DistanceAdditionalOpening.
Параметр TakeProfit – тейк-профіт для позиції.
Оптимізація значень: Рекомендується встановлювати параметри індивідуально для кожної пари.
- Наприклад: Якщо це валютна пара EURUSD і ви торгуєте на таймфреймі M30. Середній рух ціни в періоді, наприклад, 50 барів = 7500 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як: початок 0, крок 25, стоп 500.
- Наприклад: Якщо це валютна пара XAUUSD і ви торгуєте на таймфреймі M1, а середній рух ціни в періоді, наприклад, 50 барів = 100 пунктів (піпсів), тоді встановіть цей параметр для оптимізації як: початок 0, крок 5, стоп 100.
- Ви можете встановити тейк-профіт у розрахунку StopLoss / 2 або StopLoss / 3.
- Чим більше TakeProfit, тим довше триватиме утримання позиції. Ви можете пропустити прибуткову позицію, якщо вона не досягне мети TakeProfit.
- Чим менше TakeProfit, тим швидше будуть закриватися прибуткові сигнали.
- Не має сенсу використовувати малий TakeProfit, який менший за DistanceAdditionalOpening.
Блок 8: Параметри лотів
Блок для роботи з фіксованими лотами та авто-лотами.
input string oo4 = "========= Параметри лотів ========="; input double Lots = 0.01; input bool DynamicLot = false; input double LotBalancePercent = 0.01; input double RiskRate = 0; input double MaxLot = 999; input double Martingale = 1;
Не рекомендую змінювати параметри MaxLot та RiskRate. Оптимізувати їх немає сенсу.
Lots параметр – регулює обсяг позиції.
Оптимізація значень: Залежить від вашого депозиту. Наприклад: Для кроку лота 0.01 та депозиту $1000: початок 0.01, крок 0.01, стоп 0.1
- Цей параметр краще оптимізувати після оптимізації решти параметрів стратегії.
- При збільшенні лота збільшується прибуток, отриманий від однієї позиції.
- Зі збільшенням лота можна виснажити депозит.
- Оптимізувати з DynamicLot = true немає сенсу.
- Розрахуйте лот так, щоб при відкритті позиції з цим лотом використовувати лише 1-2% від Баланс. Наприклад:
- Для відкриття однієї позиції з лотом 0.01 потрібно $10 вільної маржі.
- Якщо використовувати 100 стоп-пунктів (піпс) (де ціна 1 пункт = $0.1), ви зазнаєте збиток $10. Це 1% від $1000.
Параметри DynamicLot та LotBalancePercent – регулюють автоматичний розрахунок лота позиції.
Оптимізація значень: DynamicLot = true та LotBalancePercent з параметрами: початок 0.1, крок 0.1, стоп 1
- Цей параметр краще оптимізувати після оптимізації решти параметрів стратегії.
- Дозволяє збільшувати лот при отриманні прибутку у геометричній прогресії.
- Може вплинути на кінцевий прибуток.
- Не рекомендую використовувати значення більше 1%.
Martingale параметр – включає Martingale при закритті на стоп-лосс.
Оптимізація значень: початок 0.1, крок 0.2, стоп 2
- Є сенс використовувати лише значення StopLoss > 0.
- Якщо Martingale менше 1, то кожна наступна позиція та її лот будуть меншими за попередню.
- Якщо значення менше 1, доцільно використовувати лише коли лотові позиції перевищують мінімальний лот на сервері.
- Якщо Martingale більше 1, то кожна наступна позиція та її лот будуть більшими за попередню.
- Чим вище значення Martingale, тим небезпечніша торгівля Expert Advisor (EA).
- Martingale – дуже проста та небезпечна стратегія.
- Рекомендую перевірити та прочитати про нашу Martingale стратегію торгівлі: Two Sides.
Блок 9: Параметри Averager
Блок для роботи з відкриттям проти тренду. Усереднення позицій.
input string oo2 = "========= Параметри Averager ========="; input bool AverageUSE = true; input bool OnlyModify = false; input int TakeProfitALL = 200; input int Distance = 500; input double DistanceMartingale = 1; input double LotsMartingale = 1; input int MaxOrdersOpen = 5;
Параметр OnlyModify – не рекомендую змінювати. Оптимізувати немає сенсу.
Параметр AverageUSE активує функції усереднення. Лише з AverageUSE встановленим в true можна оптимізувати інші параметри!
Оптимізація значень: True – False
- Усереднення позицій може навантажити ваш рахунок додатковими позиціями.
- Стратегія усереднення вимагає балансу, який щонайменше у три рази більший за стандартний депозит (без усереднення).
- Усереднення позицій – це спроби утримати програшну позицію в прибутку.
- Якщо використовувати рекомендований депозит, можна збільшити кількість прибуткових угод до 70-90%.
- При використанні усереднення, Expert Advisor (EA) буде намагатися привести хибний сигнал в прибуток. Інші сигнали ігноруватимуться до закриття серії усереднення.
Параметр TakeProfitALL змінює take profit всіх позицій на один рівень.
Оптимізація значень: 10-50-1000 (початок = 10, крок = 50, стоп = 1000)
- Служить додатковим захистом для позицій, якщо ви вимкнули усереднення.
- Корисно, якщо ви не використовуєте параметр AdditionalOpening встановлений в false.
Параметр Distance визначає відстань, на якій відкриваються додаткові позиції проти тренду.
Оптимізація значень: Рекомендується встановлювати параметри індивідуально для кожної валютної пари.
- Наприклад, якщо це валютна пара EURUSD і ви торгуєте на таймфреймі M30 зі середнім рухом ціни 50 барів = 7500 пунктів (піпс), встановіть цей параметр для оптимізації наступним чином: початок = 0, крок = 25, стоп = 500.
- Наприклад, якщо це валютна пара XAUUSD і ви торгуєте на таймфреймі M1 зі середнім рухом ціни 50 барів = 100 пунктів (піпс), встановіть цей параметр для оптимізації наступним чином: початок = 0, крок = 5, стоп = 100.
- Ще один спосіб оптимізувати цей параметр – використовувати середній спред для вибраної валютної пари. Ми використовуємо цей метод у нашому TickSniper Expert Advisor (EA).
- Наприклад, якщо середній спред для валютної пари становить 3 пункти (піпс), тоді усереднююча Distance = 50 * 3 = 150 пунктів (піпс). У цьому випадку оптимізацію можна встановити наступним чином: 100-25-250.
- Дізнайтеся більше про рекомендації щодо усереднюючої Distance: Averager для MT4 та MT5
- Чим більші значення відстані, тим довше Expert Advisor (EA) витрачає час на приведення серії позицій до загального прибутку.
- Чим менше значення усереднюючої Distance, тим більше навантаження на баланс вашого рахунку. Більше відкритих позицій означає, що ви можете швидше досягти прибутку, але ваш торговий рахунок буде сильно навантажений!
Параметр DistanceMartingale збільшує відстань у кожній додатковій позиції.
Оптимізація значень: Лише в екстремальних випадках, 1-0.1-2
- Цей параметр слід оптимізувати, якщо потрібно збільшити Distance для кожної нової позиції в серії.
- Якщо Distance занадто мала, тоді DistanceMartingale дозволяє збільшити крок усереднюючої сітки.
- Якщо DistanceMartingale менше 1, крок усереднюючої сітки та Distance будуть зменшуватися з кожною додатковою усереднюючою позицією!
- Якщо DistanceMartingale більше 1, крок усереднюючої сітки та Distance будуть збільшуватися з кожною додатковою усереднюючою позицією!
Параметр LotsMartingale збільшує розмір лота для кожної додаткової позиції!
Оптимізація значень: Лише в екстремальних випадках, 1-0.1-2
- Дозволяє зменшити час, необхідний для переходу серії позицій у прибуток.
- Може збільшити навантаження на ваш торговий рахунок та баланс.
- Рекомендовано використовувати лише з достатнім балансом!
- Якщо LotsMartingale менше 1, розмір лота наступної додаткової позиції буде зменшуватися з кожною додатковою усереднюючою позицією.
- Якщо LotsMartingale більше 1, розмір лота наступної додаткової позиції буде збільшуватися з кожною додатковою усереднюючою позицією.
Параметр MaxOrdersOpen обмежує кількість додаткових усереднюючих позицій проти тренду!
Оптимізація значень: Лише в екстремальних випадках, 0 – 1 – 10
- Дозволяє обмежити навантаження на рахунок, обмежуючи кількість нових додаткових позицій.
- Я використовую значення 5. Однак ви можете оптимізувати це значення для кращих результатів.
Блок 10: Додаткове відкриття
Цей блок стосується відкриття позицій в напрямку тренду. Додатковий аналіз.
input string oo10 = "========= Додаткове відкриття ================================== ======= "; input bool AdditionalOpening = false; input bool OnlyModifyAdditionalOpening = false; input int StopLossALL = 0; input int DistanceAdditionalOpening = 100; input double LotsMartinAdditionalOpening = 1; input int MaxOrdersOpenAdditionalOpening = 0;
Параметр OnlyModifyAdditionalOpening не рекомендую змінювати! Оптимізувати немає сенсу.
Параметр AdditionalOpening активує функцію додаткового відкриття на основі тренду. Лише коли AdditionalOpening встановлено в true, можна оптимізувати інші параметри!
Оптимізація значень: True – False
- Додаткові відкриття позицій дозволяють досягти більшого прибутку, якщо сигнал є високоприбутковим.
- Додаткова позиція може зазнати збитку та зменшити прибуток від оригінальної серії.
- Дозволяє побудувати сітку позицій у напрямку прибутку.
- Є сенс використовувати разом з Absolute Stop або Trailing Stop.
Параметр StopLossALL змінює StopLoss всіх позицій на один рівень.
Оптимізація значень: 10-50-1000 (початок = 10, крок = 50, стоп = 1000)
- Служить додатковим відкриттям позицій, якщо ви вимкнули його.
- Є сенс, якщо ви не використовуєте Averaging: AverageUSE = false.
Параметр DistanceAdditionalOpening визначає відстань, на якій відкриваються додаткові позиції у тренді.
Оптимізація значень: Рекомендується встановлювати параметри індивідуально для кожної валютної пари.
- Наприклад, якщо це валютна пара EURUSD і ви торгуєте на таймфреймі M30 зі середнім рухом ціни 50 барів = 7500 пунктів (піпс), встановіть цей параметр для оптимізації наступним чином: початок = 0, крок = 25, стоп = 500.
- Наприклад, якщо це валютна пара XAUUSD і ви торгуєте на таймфреймі M1 зі середнім рухом ціни 50 барів = 100 пунктів (піпс), встановіть цей параметр для оптимізації наступним чином: початок = 0, крок = 5, стоп = 100.
- Ще один спосіб оптимізувати цей параметр – використовувати середній спред для вибраної валютної пари.
- Наприклад, якщо середній SPREAD для валютної пари становить 3 пункти (піпс), тоді усереднююча відстань = 50 * 3 = 150 пунктів (піпс). У цьому випадку оптимізацію можна встановити наступним чином: 100-25-250.
- Дізнайтеся більше про рекомендації щодо усереднюючої Distance: Averager для MT4 та MT5
- Чим більші значення відстані, тим довше Expert Advisor (EA) витрачає час на приведення серії позицій до загального прибутку.
- Чим менше значення усереднюючої Distance, тим більше навантаження на баланс вашого рахунку. Більше відкритих позицій означає, що ви можете швидше досягти прибутку, але ваш торговий рахунок буде сильно навантажений!
Параметр LotsMartinAdditionalOpening збільшує розмір лота для кожної додаткової позиції.
Оптимізація значень: Лише в екстремальних випадках, 1-0.1-2
- Може вплинути на ваш торговий рахунок та баланс.
- Рекомендовано використовувати лише з достатнім балансом.
- Якщо LotsMartinAdditionalOpening менше 1, розмір лота наступної додаткової позиції буде зменшуватися з кожною додатковою позицією.
- Якщо LotsMartinAdditionalOpening більше 1, розмір лота наступної додаткової позиції буде збільшуватися з кожною додатковою позицією.
Параметр MaxOrdersOpenAdditionalOpening обмежує кількість додаткових позицій у тренді.
Оптимізація значень: Лише в екстремальних випадках, 0 – 1 – 10
Блок 11: Параметри BreakEven без збитків
Блок BreakEven.
input string MovingInWLUSE_ = "========= Параметри BreakEven без збитків ========="; input bool MovingInWLUSE = false; input int LevelWLoss = 0; input int LevelProfit = 0;
Параметр MovingInWLUSE дозволяє встановити Stop-Loss на точці break-even. Лише коли MovingInWLUSE встановлено в true, можна оптимізувати інші параметри!
Оптимізація значень: True – False
Параметр LevelWLoss встановлює рівень для коригування стоп-лоссу в прибуток. Параметр LevelProfit визначає значення прибутку в пунктах (піпс), коли починає працювати break-even.
Оптимізація значень: 0-5-50
- Параметр LevelProfit завжди повинен бути більшим за LevelWLoss.
- Можна встановити оптимізацію LevelProfit до 25-5-100 та LevelWLoss до 0-5-50.
- Чим вище значення LevelProfit, тим більше позиція має рухатися в прибуток, щоб Expert Advisor (EA) встановив точку break-even. Це захищає від малих збитків, але ви можете пропустити прибутки.
- Чим більша різниця між LevelProfit та LevelWLoss, тим менш чутливим стає поріг break-even.
Блок 12: Параметри стандартного Trailing
Блок для стандартних trailing stop.
input string Trailing_ = "========= Параметри стандартного Trailing ========="; input bool TrailingStopUSE = true; input bool IfProfTrail = true; input int TrailingStop = 100; input int TrailingStep = 1; input bool SaveTPafterTrailingStop = false;
IfProfTrail, TrailingStep, та SaveTPafterTrailingStop параметри не рекомендую змінювати! Оптимізувати немає сенсу.
Параметр TrailingStopUSE дозволяє підтримку та коригування Stop-Loss в прибуток. Лише коли TrailingStopUSE встановлено в true, можна оптимізувати інші параметри!
Оптимізація значень: True – False
- Різниця між TrailingStop та BreakEven полягає в тому, що trailing stop встановлює точку BreakEven і потім коригує стоп-лосс в прибуток, якщо ринкові умови дозволяють.
- Можна використовувати різні значення параметрів для TrailingStop та BreakEven. Немає сенсу використовувати ті ж параметри для обох.
Параметр TrailingStop визначає відстань стоп-лоссу від поточної ціни. У цьому випадку позиція повинна накопичити прибуток у піпсах TrailingStop.
Оптимізація значень: 0-10-100 (З середнім рухом валютної пари 200-300 пунктів (піпс) на день)
- Чим вище значення TrailingStop, тим більше позиція має рухатися в прибуток, щоб Expert Advisor (EA) встановив точку break-even та продовжував trailing позицію. Це захищає від малих збитків, але ви можете пропустити більші прибутки.
Блок 13: Trailing Stop за SAR
Блок Trailing Stop на основі індикатора SAR.
input period periods6 = "========= TrailingStop за SAR ================================= ==== "; input bool TrailingStopSAR = false; input ENUM_TIMEFRAMES TrailingStopSAR_TimeFrame = PERIOD_CURRENT; input double step = 0.02; input double maximum = 0.2;
Параметри TrailingStopSAR_TimeFrame, step, та maximum не рекомендую змінювати! Оптимізувати немає сенсу.
Параметр TrailingStopSAR дозволяє підтримку та коригування Stop-Loss в прибуток на основі пунктів (піпс) індикатора Parabolic SAR. Лише коли TrailingStopSAR встановлено в true, можна оптимізувати інші параметри!
Оптимізація значень: True – False
- Дозволяє встановити Stop-Loss на основі екстремумів індикатора.
- Завжди підтримуйте відстань від поточної ціни до екстремуму, автоматично розраховуючи відстань.
- Немає сенсу використовувати разом з TrailingStopUSE встановленим в true.
Блок 14: Параметри часу торгівлі
Блок управління часом Expert Advisor (EA).
input string oo6 = "========= Параметри часу торгівлі ================================= ======= "; input bool TradeStartStopbyTime = false; input string SeveralTimeWork = ""; input string of_times41 = "=== Час початку/зупинки торгівлі ============================"; input int OpenHour = 0; input int OpenMinute = 0; input int ClosePeriod_Minute = 0; input int CloseHour = 23; input int CloseMinute = 59; input typeofclosebyouttime CloseAllTradesByOutOfTime = NotUse; input string period43 = "=== Дні торгівлі ============================"; input bool TradeByDays = false; input string Days = "1,2,3,4,5,6,0"; input int DayForOptimization = 0; input string period42 = "=== Час торгівлі понеділок ============================"; input bool TradeStartbyTimeMonday = false; input int OpenHourMonday = 0; input int OpenMinuteMonday = 0; input string of_periods44 = "=== Час торгівлі п'ятниця ============================"; input bool TradeStartStopbyTimeFriday = false; input int OpenHourFriday = 0; input int OpenMinuteFriday = 0; input int CloseHourFriday = 23; input int CloseMinuteFriday = 59; input bool CloseFriday = false;
Цей блок містить безліч параметрів, тому оптимізувати всі їх займе багато часу.
Ви можете оптимізувати налаштування часу після оптимізації всіх інших блоків, щоб покращити результати тесту.
Лише коли TradeStartStopbyTime встановлено в true, має сенс оптимізувати решту параметрів!
Рекомендую оптимізувати лише ці параметри:
- OpenHour = 0-1-23
- CloseHour = 0-1-23
- TradeByDays = True-False
- DayForOptimization = 0-1-6
Блок 15: Параметри CloseALL при прибутку або збитку
Блок для закриття на основі загального прибутку.
input string CloseProfitLoss = "========= Параметри CloseALL при прибутку або збитку ========="; input typeprofloss TypeofClose = 1; input bool CloseProfit = false; input double prifitessss = 10; input bool CloseLoss = false; input double lossss = -10; input double TrailOptions = 0; input double TrailOptionsStep = 0; input double BalanceStart = 0; input bool ForcedClose = true; input bool MailSend; input bool Orderdelete = true; input bool OFFAfterClosePROF = false; input bool OFFAfterCloseLOSS = false; input bool CloseTerminalAfterClosePROF = false; input bool CloseTerminalAfterCloseLOSS = false;
Індивідуальний блок. Можна оптимізувати параметри лише тоді, коли це необхідно для вашої стратегії.
Наприклад, коли ви відкриваєте кілька позицій або займаєтеся хаотичним відкриттям позицій.
Є сенс оптимізувати наступні параметри, коли TypeofClose встановлено в PercentBalance:
- CloseProfit = True-False;
- prifitessss = 0.1-0.1-1
- CloseLoss = True-False;
- lossss = (-0.1) – (-0.1) – (-1)
Опції для виклику OnTester_Custom_max:
Перший параметр – загальна формула для отримання результату запуску оптимізатора!
За замовчуванням: (Прибуток * Кількість Угод) / Відсоток Drawdown Доступних Фондів
OnTester_Custom_max | Ваш власний критерій для генетичної оптимізації. Більше інформації про результати тесту: Статистика Записано у вигляді формули. Наприклад: OnTester_Custom_max = “STAT_PROFIT * STAT_TRADES / STAT_EQUITY_DD” Обов’язково вкажіть назви змінних як у довіднику! |
Опції для виклику OnTester_****:
OnTester_Min_Trades | Мінімальні Угоди для Оптимізації | Мінімальний Баланс (в валюті депозиту) на кінець тестування для успішного результату оптимізації. Наприклад, 1000 (Той самий початковий депозит) = Якщо Баланс у цьому запуску оптимізатора менше початкового депозиту, тоді цей результат буде рівним 0. |
OnTester_Min_Profit | Мінімальний Прибуток для Оптимізації | Мінімальні Вільні Фонди (в валюті депозиту) на кінець тестування для успішного результату оптимізації. Наприклад, 500 = Якщо Equity у цьому запуску оптимізатора менше 500 (в валюті депозиту), тоді цей результат буде рівним 0. |
OnTester_Min_ProfitFactor | Мінімальний ProfitFactor для Оптимізації | Мінімальний Profit Factor, необхідний для успішного результату оптимізації. Наприклад, 1.5 = Якщо Profit Factor у цьому запуску оптимізатора менше 1.5, тоді цей результат буде рівним 0. |
OnTester_Min_Balance | Мінімальний Баланс для Оптимізації | Мінімальний Баланс (в валюті депозиту) на кінець тестування для успішного результату оптимізації. Наприклад, 1000 (Той самий початковий депозит) = Якщо Баланс у цьому запуску оптимізатора менше початкового депозиту, тоді цей результат буде рівним 0. |
OnTester_Min_Equity | Мінімальний Equity для Оптимізації | Мінімальна кількість угод, відкритих Expert Advisor (EA), для успішного результату оптимізації. Наприклад, 50 = Якщо кількість угод у цьому запуску оптимізатора менше 50, тоді цей результат буде 0. |
OnTester_Max_Balance_DD | Максимальний Drawdown Балансу % для Оптимізації | Максимально допустимий Drawdown на Балансі (в валюті депозиту) для успішного результату оптимізації. Наприклад, 20% = Якщо Drawdown Балансу у цьому запуску оптимізатора перевищує 20%, тоді цей результат буде рівним 0. |
OnTester_Max_Equity_DD | Максимальний Drawdown Equity % для Оптимізації | Максимально допустимий Drawdown на Equity (в валюті депозиту) для успішного результату оптимізації. Наприклад, 15% = Якщо Drawdown Equity у цьому запуску оптимізатора перевищує 15%, тоді цей результат буде рівним 0. |
Висновки
Оптимізація та тестування Expert Advisors (EA) – це безперервне завдання.
Ви можете думати, що оптимізація складна та дороговартісна. Але ви плануєте заробити мільйони доларів?
Ви повинні розуміти, що Forex – це не легко. Кожен EA – це просто алгоритм, вбудований у код.
Ми працюємо більше 10 років і розуміємо, що вимагають торгові експерти.
З впевненістю можемо сказати, що оптимізація та налаштування одного EA набагато простіше, ніж пошук та оптимізація тисяч інших роботів.
- Тестуйте та знаходьте торгові опції, які вам найкраще підходять!
- Оптимізуйте кожні шість місяців!
- Моніторьте Expert Advisor (EA), вивчайте логи та залишайтеся уважними до EA!
- Коригуйте параметри Expert Advisors (EA) на основі новин.
Вивчайте матеріали з торгівлі на Forex.
Питання?
Якщо у вас є будь-які питання, будь ласка, задавайте їх. Ми не продаємо свиню в мішку.
Кожен наш продукт можна перевірити перед покупкою.
Ми цінуємо ваші відгуки та побажання щодо наших продуктів і прагнемо підтримувати високі стандарти якості.
Дякуємо, що ви з нами!
У вас є питання?
Пов’язані публікації
Averager. Усереднення торгових позицій. Відкриття угод проти тренду та по
Усереднення позицій. Відкриття додаткових позицій по тренду та проти тренду з функцією загального трейлінг-стопу прибутку! Робот може відкривати додаткові…
Close Minus by Plus, Закриття невигідних позицій шляхом пошуку та
Закриття невигідних позицій шляхом ідентифікації та закриття вигідних позицій. Експерт-радник (EA) розроблений для закриття невигідних позицій шляхом ідентифікації та закриття вигідних…
Assistant – найкраща безкоштовна торговельна панель для підтримки позицій та
втоматичне налаштування стоп-лоссу (StopLoss), тейк-профіту (TakeProfit), трейлінг-стопу (Trailing Stop), рівнів беззбитковості, активація віртуальних стопів. Exp Assistant допоможе вам організувати обслуговування ваших…
Шаблони MQL з відкритим вихідним кодом. Шаблон для створення експерта
Коротко Створення Експертних радників (EAs) для тестування вашої стратегії з використанням будь-якого індикатора (indicator) може бути спрощене за допомогою шаблонів (templates)…
Partial Close and Trailing. Часткове закриття позицій на відкатах
Partial Close and Trailing — це помічник EA, який закриває частину позиції (тобто частину лота) під час відкату. EA частково закриває…
The xCustomEA Радник на PipFinite Trend PRO. Автоматичий EA
Опис Приклад програмування стратегії для індикатора PipFinite Trend PRO та торгівлі за допомогою нашої універсальної торгової системи Exp – The xCustomEA. У…
CLP CloseIfProfitorLoss. Контроль загального прибутку або збитку з трейлінг-прибутком.
Експертний радник (EA) пропонує розширені функції для управління та закриття позицій у MetaTrader, особливо при досягненні передвстановленого рівня загального прибутку…
TickSniper Автоматичний Експертний Радник для MetaTrader. Скальпер
Exp-TickSniper — це швидкий Tick скальпер, який автоматично вибирає параметри для кожної валютної пари окремо. Експертний радник розроблений на основі досвіду,…
Forex Tester Pad — це торговий симулятор для тестера стратегій.
Одноклікова торгівля на графіку Тестера Стратегій. Утиліта дозволяє вручну тестувати ваші стратегії в тестері стратегій. Одноклікова торгівля на графіку візуалізації. Зручний…
InfoPad, Онлайн інформаційна панель для MetaTrader
InfoPad — це дуже корисна інформаційна панель, розроблена для надання важливої інформації про вибрану валютну пару в терміналі MetaTrader. Ця панель…
The X – Універсальний Експерт Радник (EA) для Форекс на
Універсальний Експерт Радник (EA) для MetaTrader з розширеною функціональністю Експерт Радник The X — це універсальний торговий інструмент для…
Market Time Pad. Індикатор для MetaTrader з торговими сесіями
Індикатор часу відображає поточний час на основних світових ринках та підсвічує активну торгову сесію. Він легкий у використанні та…
AI Sniper. Автоматичний Розумний Експертний Радник для MetaTrader.
AI Sniper — це інтелектуальний, самовдосконалюваний торговий робот, розроблений для терміналів MT4 та MT5. Він використовує розумний алгоритм та передові…
БІБЛІОТЕКА EAPADPRO – Додавання нашої панелі до вашого EA
БІБЛІОТЕКА EAPADPRO – Покращення вашого Експертного Радника (EA) за допомогою нашої інформаційної панелі БІБЛІОТЕКА EAPADPRO пропонує надійне рішення для трейдерів, які…
Пов’язані публікації
EA The xCustomEA: Універсальний торговий радник для користувацьких індикаторів. Конструктор
Універсальний торговий радник на користувацьких індикаторах для MetaTrader. Exp – The xCustomEA Універсальний торговий радник на користувацьких індикаторах. The xCustomEA працює…
Торговий звіт TickSniper і кращих радників Expforex
Опис Ми підсумували узагальнені та детальні результати торгів наших експертів TickSniper, Good Santa, Tick Hamster, The X, на наших реальних торгових рахунках. Статистика торгів наших Експертних…
AI Sniper. Автоматичний Розумний Експертний Радник для MetaTrader.
AI Sniper — це інтелектуальний, самовдосконалюваний торговий робот, розроблений для терміналів MT4 та MT5. Він використовує розумний алгоритм та передові…
InfoPad, Онлайн інформаційна панель для MetaTrader
InfoPad — це дуже корисна інформаційна панель, розроблена для надання важливої інформації про вибрану валютну пару в терміналі MetaTrader. Ця панель…
Extra Report Pad – Щоденник Трейдера. Професійно аналізує ваш торговий
Extra Report Pad – професійне рішення для аналізу вашого торгового рахунку Сьогодні надзвичайно важливо одночасно торгувати на кількох валютних парах. Але…
EAPadPRO – Інформаційна панель для наших експертів. Панель управління для
Інформаційна панель для всіх наших радників та утиліт для терміналу MetaTrader. Детальні інструкції з основ управління та використання панелі…
Swing-стратегія (Маятник). Автоматичне відкриття 2 протилежних відкладених ордерів, OCO ордери.
Стратегія Маятник або Свінг передбачає послідовне відкриття відкладених ордерів із збільшеним лотом. Основний принцип простий: розміщуються два відкладених ордера, і…
Forex Tester Pad — це торговий симулятор для тестера стратегій.
Одноклікова торгівля на графіку Тестера Стратегій. Утиліта дозволяє вручну тестувати ваші стратегії в тестері стратегій. Одноклікова торгівля на графіку візуалізації. Зручний…
The xCustomEA Радник на PipFinite Trend PRO. Автоматичий EA
Опис Приклад програмування стратегії для індикатора PipFinite Trend PRO та торгівлі за допомогою нашої універсальної торгової системи Exp – The xCustomEA. У…
Шаблони MQL з відкритим вихідним кодом. Шаблон для створення експерта
Коротко Створення Експертних радників (EAs) для тестування вашої стратегії з використанням будь-якого індикатора (indicator) може бути спрощене за допомогою шаблонів (templates)…
Duplicator – Дублювання угод/позицій на терміналах MetaTrader
Exp-Duplicator — це автоматичний Експертний Радник (Expert Advisor), розроблений для дублювання угод та позицій задану кількість разів на вашому рахунку…
Averager. Усереднення торгових позицій. Відкриття угод проти тренду та по
Усереднення позицій. Відкриття додаткових позицій по тренду та проти тренду з функцією загального трейлінг-стопу прибутку! Робот може відкривати додаткові…
Copylot – Forex копір для торгових позицій для MetaTrader. Копір
Копіювальник угод для MetaTrader. Копіює угоди на форекс, позиції, ордери з будь-яких рахунків. Це один із найкращих копіювальників угод MT4-MT4, MT5-MT4 для…
SafetyLOCK PRO Захищайте свої позиції, блокуючи їх за допомогою відкриття
SAFETYLOCK: Захистіть свої угоди від різких ринкових розворотів Торгівля на фінансових ринках пов’язана з високими ризиками, особливо під час різких ринкових…
Торгова панель VirtualTradePad (VTP). Для торгівлі в один клік з
VirtualTradePad або VTP – панель управління для торгівлі в One Click в терміналах MetaTrader. Програма для скальпінгу та ручної торгівлі на Forex….
Ця публікація також доступна на: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어
Leave a Reply