Скрипт установки відкладених ордерів. Скрипти для роботи на форекс

У торговому терміналі MetaTrader4 передбачена можливість установки відкладених ордерів:

  • типу Stop, в параметрах якого трейдер вказує для покупки торгового інструменту значення ціни вище ринкової і для продажу торгового інструменту - значення ціни нижче ринкової. Різновиди захисного ордера SellStop і BuyStop призначені для відкладеної продажу по пробою рівня підтримки і відкладеної покупки по пробою рівня опору. Захисні ордера типу Stop використовуються трейдерами, які працюють зі стратегії пробою значущих рівнів, і виставляються після проведення грамотного аналізу ситуації.
  • типу Limit, в настройках якого трейдер вказує ціну нижче ринкової - для покупки торгового інструменту, а ціну вище ринкової - для продажу торгового інструменту. Так звані «лімітні» ордера BuyLimit і SellLimit можуть бути виставлені вручну або за допомогою автоматизованого помічника по виконанню разової дії - скрипта. Ордер типу BuyLimit виставляється трохи вище значимого рівня підтримки, так як в результаті зниження ціни до вказаного рівня може відбутися її розворот, і ордером буде спійманий вдалий момент входу. Ордери типу SellLimit працюють аналогічно: виставляються незначно нижче рівня опору. При відбої ціни від значимого рівня і її розвороті відбудеться відкриття ордера за оптимальною ціною.

У всіх випадках ордера спрацьовують після досягнення ціною рівня, зазначеного в налаштуваннях параметрів.

Багато трейдерів, щоб уникнути плутанини з відкриття ордерів воліють використовувати скрипт Форекс для відкладених ордерів. Для цього в настройках терміналу необхідно дозволити функцію автоторгівлі і встановити необхідні прапорці. Вищеописані ордера BuyLimit і BuyStop встановлюються з використанням скрипта Setup_BUY_PendingOrder простим перетягуванням їх на графік ціни, на той рівень, де планується їх спрацьовування згідно функціоналу. Ордери SellLimit і SellStop можуть бути встановлені на графік ціни з використанням скрипта Setup_SELL_PendingOrder по аналогії. При цьому скрипт сам виробляє розрахунок того виду ордера, який необхідно виставити на даному рівні.

Скрипти для відкриття або закриття угод (ордерів) сьогодні використовують всі трейдери. Але перш ніж розповідати про тонкощі використання таких програм, варто розібратися, що таке скрипт.

Скрипт - це невелика за обсягом, але не за значенням програма. Вона додатково встановлюється на термінал МТ4 або 5.

На відміну від радників, скрипти їх не виконують свою роль постійно, він використовуються разово. Тобто, для здійснення певної операції і тільки один раз. Такою операцією може бути, наприклад, відкриття або закриття ордера або. Взагалі ж скрипти пишуть для самих різних цілей.

Скрипт відкриття і закриття відразу декількох ордерів для платформи MT4

У платформі MT4 деякі скрипти вже прописані. Це, зокрема скрипт відкриття. Він використовуються для відкриття позиції. Також, є скрипт для видалення раніше відкритої позиції. Всі скрипти зберігаються в однойменному розділі в спеціальному вікні навігатора. Тут, можна переглянути весь список доступних програмних модулів.

Для того, щоб почати роботу з якимось скриптом, його потрібно перенести на відкритий графік. Буде потрібно активувати скрипт в віконці, що з'явилося, з питанням дійсно ми хочемо приєднати «close» до графіку EUR / USD Daily?

При натисканні клавіші «ТАК», скрипт запуститься. А після виконання поставленого функції, він автоматично закриється і забереться з графіка, не відволікаючи увагу. Видалити скрипт можна і достроково. Наприклад, якщо він вже не потрібен.

Для видалення, правою кнопкою мишки, клацнути на графік і натиснути функцію «Видалити скрипт». Готово.

Виставлення ордерів в МТ4

Установка скриптів безпосередньо для відкриття / закриття декількох ордерів на додаток до вже наявних

Будь-які скрипти сьогодні можна знайти в мережі. Скрипти для MT4, також легко завантажити на форумах. Для того, щоб почати роботу, переконайтеся що у Вас встановлена ​​сама програма Metatrader4 скрипти як правило, закачують цілими архівами.

Після скачування, такий архів потрібно розпакувати. Всі його вміст має бути скопійовано в папку МQL4 / scripts. До речі, вона є в самому каталозі даних. Далі потрібно перейти в цей каталог: Файл => Відкрити каталог даних.

Наступний крок- відкриття папки Scripts розділу MQL4. Саме сюди і поміщаються скачані скрипти. Після вдалого копіювання, платформу МТ4 потрібно перезапустити. Без цього дії скрипти не відобразяться.

Тепер можна знову запускати програму MT4 і виконати наступні кроки:

  • Вибрати на верхній панелі розділ Сервіс => Налаштування
  • У вкладці Радник розставити хрестики / галочки так, як це показано на зображенні нижче:
  • Останній пункт - натиснути «ОК»

Тепер можна відкривати графік обраної. На графік можна перетягнути встановлений скрипт.

Міняємо параметри скрипта відкриття і закриття захисних ордерів в MT4

Скрипт відкриття / закриття ордерів (одного або декількох), добре працює і з попередньо встановленими параметрами. Але іноді ці параметри вимагають невеликого коректування. Наприклад, якщо Ви хочете збільшити або зменшити лот, який відкриваєте. Для зміни параметрів скрипта, потрібно змінити його код. Зробити це можна тільки в тому випадку, якщо у вас зберігся исходник у форматі MQL.

Для початку потрібно:

Знайти в програмі потрібний скрипт і вибираємо пункт меню змінити при натисканні на праву кнопку.

У віконці програми MetaEditor, як раз і змінюються параметри. Головне не змінити зайвого. Уважно стежте за тим, які саме параметри міняєте. В іншому випадку, ваш скрипт просто перестане правильно працювати і замість користі принесе тільки шкоду, а отже - збитки.

Після виконання всіх необхідних змін, збережіть їх натисканням клавіші «Complite». Після чого, потрібно закрити всі програму МТ4.

Складнощів з програмами або якихось непередбачених ситуацій виникнути не повинно. Оскільки всі скрипти гранично зрозумілі і прості.

Варто враховувати, що скрипти існують всякі. Є цілком корисні, а є не зовсім. Але є цілий набір скриптів, які не зашкодять. У списку найбільш поширених багато найменувань.

Скрипт закриття і відкриття захисних ордерів - Urdala Helper

Цей скрипт відмінно допомагає, коли торгівля на Форексі йде в ручному режимі. Управління найпростіше - мишкою, як в роботі з стандартними вікнами Windows. Даний скрипт призначений для відкриття ордерів. Причому як ринкових, так і з виставленим Тейку профіту і стоп лоссом.

Використовується Urdala Helper і при закритті ордерів (одного або цілої групи). Це навіть можуть бути всі ордера разом. А ще за допомогою цього скрипта, можна ордера модифікувати. Працювати можна також з одним або з декількома ордерами. Їх можна перевести до профітом вище або нижче лінії, причому прибуток при цьому не загубиться.

Працювати зі скриптом гранично легко. Його потрібно перетягнути на графік. У вікні налаштувань а й оформлення.

Скрипт представляється у вигляді вікон. Він починає вибране вами дію і автоматично закривається за його виконанні.

Як діє скрипт для декількох ордерів?

Для відкриття ринкового ордера, потрібно перемістити цінову позначку значення тейк профіт (зелену) або стоп лосс (червону) туди, де ви плануєте стопи ордерів. Те ж з відкладеним ордером.

Торгова позиція іншими словами називається торговим ордером (order). Ордер - це наказ відкрити або закрити торговельну позицію в найбільш широкому сенсі.

Накази можуть бути як простими (ви можете наказати відкрити або закрити торговельну позицію за будь-якою ціною), так і складними (такими, що діють тільки протягом певного часу, спрацьовують при досягненні інструментом певної ціни або з деякими додатковими умовами. Так було раніше. Навіть і 100 років тому. Мало що змінилося в даний час крім того, що зараз торгівля в основному комп'ютеризована.

До простих методів наказів відносять ринкові ордера. До складних - відкладені. Розглянемо їх докладніше. Припустимо, ви не маєте можливості постійно стежити за розвитком ціни на фінансовому інструменті. Але є наміри:

    відкрити торговельну позицію;

    закрити торговельну позицію;

    додати обсяг до вже відкритої торгової позиції;

    зменшити обсяг раніше відкритої торгової позиції;

Існують такі головні типу відкладених ордерів, як STOP і LIMIT.
До ордерами типу STOP відносять:

  • BUYSTOP - відкрити ордер BUY по інструменту вище поточної ціни на зазначеному рівні;
  • SELLSTOP - відкрити ордер SELL по інструменту нижче поточної ціни на зазначеному рівні;

До ордерами типу LIMIT відносять:

  • BUYLIMIT - відкрити ордер BUY по інструменту нижче поточної ціни на зазначеному рівні
  • SELLLIMIT - відкрити ордер SELL по інструменту вище поточної ціни на зазначеному рівні.

Крім того, в відкладені ордери в МТ4-5 можна вносити додаткові параметри експірації. Ви вказуєте дату і час, коли наказ стає не актуальним.

Коли необхідно швидко виставити відкладений ордер, але лічити про себе і вказувати ціну ордера вкрай не зручно, все це займає дуже багато часу, а час з головних чинників ідеального входу, тому рекомендуємо використовувати скрипти або радники швидкої і легкої установки відкладених ордерів (BuyStop, BuyLimit , SellStop, SellLimit), які дозволяє встановити відкладені ордери одним рухом миші, просто перетягнувши скрипт на потрібний рівень на графіку.

  1. Скрипти SetOrderBuy і SetOrderSell

  • скрипт SetOrderBuyвстановлює відкладені ордери типу BuyStop або BuyLimit.
  • скрипт SetOrderSellвстановлює відкладені ордери типу SellStop або SellLimit.

2. Скрипти bvnopen, bvnbuy, bvnsell та bvnpending

Скрипти призначені для відкриття відкладених ордерів різними способами (перетягування скрипта мишею, виклик скрипта по комбінацією клавіш),

Параметри скрипта:

    Risk - ризик угоди в процентах від балансу депозиту;

    Lot - кількість лотів ордера;

    OrdersNumber - кількість ордерів;

    StopLoss - рівень Stop Loss в пунктах;

    StopLossPrice - рівень Stop Loss за ціною;

    TakeProfit - рівень Take Profit в пунктах;

    TakeProfitPrice - рівень Take Profit за ціною;

    BuySell - покупка (1) або продаж (-1), Якщо 0-напрямок визначається за місцем вкидання скрипта на графік (див. Нижче);

    UserComment - коментар до ордеру.

    Magic - магічний номер, може використовуватися для роботи з радниками.

Єдина різниця між скриптами bvnopen, bvnbuy і bvnsell полягає в різному перекомпіліровать значенні параметра BuySell. Оскільки перший призначений для роботи з мишкою, то це значення параметра - 0, тому для двох інших це 1 і -1 відповідно, так як вони призначені для використання з гарячими клавішами, окремо на покупку і на продаж.

Окремим призначенням скрипта bvnpending є відкриття відкладених ордерів. Його можна використовувати тільки за допомогою миші, а тип ордера визначається комбінацією двох обставин: яке значення стоїть у параметра BuySell (виставляти обов'язково, інакше не спрацює) і в якому місці графіка кинутий скрипт, вище або нижче поточної ціни. Наприклад, якщо BuySell дорівнює -1, то це буде ордер на продаж, при цьому, якщо він нижче за ціну, то SELL STOP, а якщо вище, то SELL LIMIT.

Цікавою особливістю всіх скриптів з набору є використання глобальних змінних терміналу для настройки параметрів скрипта, при цьому використовується зважена система пріоритетів так, щоб можна було ставити різні значення для різних умов. Змінні мають такий вигляд:
bvnopen.varname

Таким чином, дія змінної з вказаним позначенням фінансового інструменту має більший пріоритет ніж можливий без такого позначення. Тому для різних пар можна налаштувати різні параметри.

Перелік глобальних змінних, використовуваних скриптом:

    DnDLevel - одна з ключових змінних в роботі скрипта при використанні миші. За замовчуванням цей параметр дорівнює 0 і в цьому режимі місце вкидання скрипта визначає тільки напрямок торгівлі: вище ціни на графіку - покупка, нижче - продаж. Рівні Stop Loss і Take Profit не встановлюються, якщо вони не задані вхідними параметрами скрипта.

    • Якщо встановити для цієї змінної значення 1, то в точці вкидання скрипта буде встановлювати рівень Take Profit, за умови, що вони не задані параметрами скрипта, тобто вхідні параметри мають пріоритет над місцем вкидання скрипта. Вибір напрямку торгівлі залишається таким же, як і при значенні 0.

      Якщо встановити значення -1, то визначення напрямку торгівлі інвертується: вище ціни на графіку - продаж, нижче - покупка, а точка вкидання скрипта визначає рівень Stop Loss, за умови, що вони не задані вхідними параметрами скрипта, тобто вхідні параметри мають пріоритет над місцем вкидання скрипта

    LotMagnifier - ця змінна задає коефіцієнт для кількості лотів, тобто, якщо задати його рівним 0.01, то ви зможете вводити просто 1, 2, 4 і т. Д. Для отримання лотів 0.01, 0.02, 0.04 і т. Д.

    Risk - ця змінна має пріоритет над будь-якими встановленими значеннями обсягу угоди, але вона вимагає також встановленого рівня Stop Loss. Якщо такий не встановлено, то ця змінна (як і вхідний параметр) ігнорується. Для встановлення рівня ризику використовується такий пріоритет:

    • значення, встановлене змінної Risk для конкретного інструменту;

      значення, встановлене змінної Risk глобально;

      значення вхідного параметра Risk.

    Lot - ця змінна дозволяє просто жорстко поставити розмір угоди і тоді ні значення, задане у вхідних параметрах, ні коефіцієнт не матимуть ніякого впливу, тобто можна сказати, що для встановлення кількості лотів використовується такий пріоритет:

    • значення, розраховане за встановленим параметру Risk;

      значення, встановлене змінної Lot для конкретного інструменту;

      значення, встановлене змінної Lot глобально;

      значення вхідного параметра Lot помножене на значення змінної LotMagnifier для конкретного інструменту;

      значення вхідного параметра Lot помножене на значення змінної LotMagnifier глобально;

      значення вхідного параметра Lot.

    StopLoss - змінна, яка встановлює рівень Stop Loss за кількістю пунктів і вона має пріоритет над відповідним вхідним параметром, але не над параметром StopLossPrice. Повний список пріоритетів буде виглядати так:

    • значення вхідного параметра StopLoss, якщо відмінне від 0;

      значення вхідного параметра StopLossPrice;

      значення, встановлене змінної StopLoss для конкретного інструменту;

      значення, встановлене змінної StopLoss глобально;

      місце вкидання скрипта на графік.

    TakeProfit - величина, яка встановлює рівень Take Profit за кількістю пунктів. Порядок пріоритетів аналогічний попередньому випадку.

    OrderNumber - цієї змінної можна задати кількість ордерів, які необхідно відкрити. Вона має пріоритет над відповідним вхідним параметром. Ця можливість може використовуватися, коли необхідно обійти обмеження на максимальну кількість лотів. Наприклад, за правилами конкурсу можна відкрити 5 ордерів максимальним лотом 1. Ви хотіли б відкрити один ордер лотом 5, але вас розбивати один ордер на 5 окремих ордерів.

    Magic - ця змінна, як і відповідний параметр, задає магічний номер ордера, який може використовуватися разом з радниками.

    Sound - ця змінна включає (1) або вимикає (0) звуковий сигнал (бавовна) при виконанні скрипта.

    На перший погляд, може здатися занадто складно, але варто спробувати, можливо, вам сподобається.

    Використовувати ці скрипти можна на гарячих клавішах ATL + B і ATL + S.

понеділок, серпня 27, 2018

Сьогодні я хочу розповісти вам про корисному інструменті. Він стане в нагоді тим трейдерам, у яких сітка ордерівє основою торгової системи. Оскільки ця стратегія передбачає відкриття великої кількості ордерів, виконувати роботу руками важко. Для цього необхідно багато часу і підвищена увага. Використання скрипта значно полегшить роботу трейдера. , В якій застосовується сітка ордерів, Не вимагає глибоких знань ринку. Поведінка ціни в цьому випадку не має особливого значення. Вона побудована на математичних розрахунках, які дозволяють «ловити» ціну.

Суть торгівлі по сітці ордерів

Вона полягає в наступному. Відкладені ордери виставляються на певній відстані один від одного (крок сітки). Напрямок відкриття угод вибирає трейдер. Це можуть бути тільки ордера BUY, або тільки ордера SELL. Але на практиці частіше виставляються відкладені ордери в обидві сторони від поточної ціни, тобто і на покупку, і на продаж.

А тепер поговоримо про скрипт, який може успішно виконати це завдання. Для того, щоб встановити його в торговий термінал, використовуємо звичайну схему дій. Скопійований файл скрипта поміщаємо в папку МТ4 «Scripts». Більш докладну інструкцію можна прочитати в статті.
А потім, в меню терміналу «Навігатор» вибираємо «Скрипти», а в ньому «Grid» і перетягуємо скрипт на графік тієї пари, по якій збираємося торгувати.

Успіх торгівлі багато в чому пов'язаний з правильним підбором значень параметрів скрипта.

Для початку потрібно вказати крок сітки в пунктах - параметр Steps. Іншим важливим параметром є Volume. Це обсяг кожної угоди. Потім повідомляємо скрипту мінімальне відхилення від поточної ціни в пунктах - параметр Price. Далі - параметр Slippage. Він визначає допустиму прослизання в пунктах. Вказуємо розмір тейк-профіту і стоп-лосс у відповідних рядках налаштувань скрипта. І останній параметр - Count Orders. У ньому треба поставити цифру, яка буде відповідати кількості відкритих ордерів. При чому треба мати на увазі, що якщо передбачається відкривати торгові ордера в обидві сторони (і SELL, і BUY), то при значенні параметра 5 скрипт відкриє п'ять ордерів BUY і п'ять ордерів SELL. Вибрати напрямок угод можна в загальних налаштуваннях скрипта.

Як бачите, нічого складного в налаштуваннях цього скрипта немає. Перед застосуванням в реальній торгівлі обов'язково пробуємо його роботу на демонстраційному рахунку. Там же можна підібрати і оптимальні параметри.

скрипт сітка ордерівзавантажити.

Відкладені ордери дозволяють трейдеру забезпечити автоматичне виконання конкретної торгової операції при досягненні ціною певного рівня. Така операція може полягати у відкритті, закритті або зміні позиції. Деякі торгові стратегії припускають розміщення безлічі відкладених ордерів, які спрацьовують при виникненні необхідної ринкової ситуації. При цьому, вони актуальні лише певний часовий проміжок, після якого їх активація може принести лише збитки. У таких випадках доцільно скачати скрипт для видалення відкладених ордерів, Що забезпечує швидке виконання цієї функції.

Дивись відео огляд статті

Коли потрібна установка і видалення відкладених ордерів

Як правило, відкладений ордер (ГО) спрацьовує при досягненні ціною активу заданого рівня. Після установки ГО трейдеру немає необхідності в очікуванні виконання необхідних для конкретної торгової стратегії умов, встановлених для відкриття, закриття або зміни позиції. Брокер, через якого веде свою торговельну діяльність трейдер, здійснює автоматичне виконання ГО по найбільш вигідною ціною (т. Е. Ордер виконується навіть при вимкненому торговому терміналі).

При цьому відкладені ордери не мають терміну виконання - після установки вони залишаються активними до моменту спрацьовування. Під час їх установки можна задати і необхідні розміри стоп-лосс і тейк-профіту, а в установленому ГО можна змінювати будь-які параметри.

Якщо трейдер встановив з десяток відкладених ордерів або більше при появі відповідних сигналів використовуваної ТЗ, то щоб їх видалити при зміні ринкових умов потрібно витратити певний час і зусилля. Хоча і здається, що виконується така операція дуже просто і легко, але багаторазове її здійснення втомлює. У таких випадках і стане в нагоді скрипт для видалення відкладених ордерів, що забезпечує їх оперативну деактивацію за мінімальну кількість маніпуляцій. Після завершення його роботи відображається вікно з оповіщенням про видалення всіх ГО (рис. 1),

Таке швидке видалення ГО затребуване при високочастотної торгівлі на коротких таймфреймах (наприклад, при скальпинга), коли від швидкості прийняття рішень безпосередньо залежить прибутковість торгової стратегії.

Ще один випадок, коли використання відкладених ордерів доцільно - канальна торгівля на флеті. Наприклад, при торгівлі всередині каналу (рис. 2) ГО на покупку виставляється на рівні нижньої межі каналу зі стоп-лоссом під нею і з тейк-профітом по центру каналу. Відповідно ГО на продаж виставляється верхньої межі каналу зі стоп-лоссом над нею і тейк-профітом посередині каналу.

Набагато простіше торгувати на пробій каналу. В цьому випадку при ідентифікації його меж виставляються ордера Buy Stop і Sell Stop, відповідно, на верхній і нижній межах каналу (рис. 3). При виході ціни з каналу відбувається спрацьовування відповідного ГО, а інший видаляється.

Які ще бувають скрипти для відкладених ордерів форекс

За запитами трейдерів програмісти створюють найрізноманітніші алгоритмічні послідовності, що виконують необхідні торгові операції з відкладеними ордерами. Наприклад, del_orders_afte_VLINE може видаляти ГО за часом. Момент видалення відображається на графіку у вигляді вертикальної прямої (червона на рис. 4) і спочатку розміщується на 10 періодів попереду поточної свічки (кількість до закриття всіх ГО секунд виводиться в лівому верхньому кутку вікна цінового графіка). Цю пряму лінію можна захоплювати мишею і переміщати далі або ближче.

А дозволяє закривати строго певний типи ордерів. При запуску він відображає вікно (рис. 5), в якому можна задавати значення наступних параметрів:

  • Закривать_отложенние_Buy-ордера? - застосовувати чи до Buy-ордерів;
  • Закривать_отложенние_Sell-ордера? - застосовувати чи до Sell-ордерів;
  • Закривать_профітние_ордера? - застосовувати чи до прибуткових ордерів;
  • Закривать_убиточние_ордера? - застосовувати чи до збиткових ордерів;
  • Удалять_отложенние_ордера? - застосовувати чи до ГО;
  • Закривати / удалять_ордера_только_с_маджіком_ніже? - застосовувати чи скрипт тільки до ордерами, що володіє Маджік, що збігається з числом параметра «Маджик»;
  • Маджик - число, відповідне Маджік ордерів, які будуть видалені / закриті при значенні true параметра «Закривати / удалять_ордера_только_с_маджіком_ніже?»;
  • Прослизання - максимальна величина зміни ринкової ціни від тієї, при якій був активована команда скрипта на закриття / видалення ордера.

Всі змінні, назва яких сформульовано у вигляді питання, можуть приймати два значення true (так) або false (немає).

Нижче перераховані ще деякі скрипти для відкладених ордерів, що спрощують і полегшують торгівлю:

  • закриває всі виставлені ордера в момент, коли ціна досягає горизонтальній лінії, спочатку розміщується на відстані від поточної ціни, що дорівнює значенню змінної TakeProfit. Положення цієї лінії можна змінювати. Від кожного ордера буде закрита частина, зазначена у відсотках в змінної PercentClose.
  • здійснює переворот позицій.
  • видаляє тільки ордера, що задовольняють заданим умовам, визначеним в параметрах: Magic - номер угод; MagicAll - чи ордера закривати (true - так, false - ні); Profit - розмір профіту, достатній для закриття ГО (0 - все ГО); TipOrder - тип закриваються ГО (0 - все, 1 - Buy, -1 - Sell); SymbolAll - на всіх чи валютних парах закривати ГО (true - так, false - тільки на поточній); DeleteOrders - які ордера видаляти (true - все, false - тільки ринкові); attempts - кількість спроб закриття.