Скрипт закрытия всех ордеров по паре. Скрипт для закрытия большого количества ордеров

Открытие сделки – это лишь половина процесса торговли. А второй половиной является закрытие сделки. При этом успешность (т. е. прибыльность) сделки напрямую зависит от правильно рассчитанных моментов и верно совершенных входов в рынок и выходов из него. При этом правила открытия сделок устанавливаются в каждой торговой стратегии. А вот вопрос как закрыть сделку в МТ4 рассматривается редко. В этой статье мы постараемся восполнить этот пробел.

Торговая платформа МетаТрейдер обеспечивает закрытие открытых позиций следующими способами:

  • вручную;
  • по стоп-ордерам.

Закрывать сделки в MT4 вручную можно (рис. 1):

  • непосредственно на графике, выбрав в контекстном меню (выделено красным прямоугольником на рис. 1), вызываемом щелчком правой кнопкой мыши при положении ее указателя на уровне открытия позиции, пункта «Закрыть»;
  • из окна «Терминал», выбрав в контекстном меню (на рис.1 выделено желтым прямоугольником), вызываемом при положении указателя мыши на строке с закрываемой позицией щелчком ее правой кнопки, пункта «Закрыть ордер»;
  • нажав крестик в самой правой части строки с параметрами сделки, отображаемой в терминале (на рис. 1 выделен фиолетовым кружком).

В обоих случаях выбор в контекстном меню указанных пунктов приводит к моментальному закрытию сделки в полном объеме.

Однако ручной способ закрытия позиций при достижении ценой определенных уровней требует от трейдера непосредственного присутствия возле терминала и регулярного контроля рыночной ситуации, что не всегда возможно. В таких случаях целесообразно каждую открытую позицию оснащать СтопЛоссом (ограничивает убытки) и ТейкПрофитом (фиксирует прибыль). Для их установки необходимо вызвать окно управления ордером (рис. 2), что делается:

  • двойным щелчком левой кнопки мыши на уровне открытия сделки (зеленая штрихпунктирная горизонталь на рис. 1);
  • выбором пункта «Изменить» в контекстном меню, обозначенном на рис. 1 красным прямоугольником;
  • выбором пункта «Модифицировать или удалить ордер» в контекстном меню, обозначенном на рис. 1 желтым прямоугольником.

Уровень установки СтопЛосса задается поле «Стоп Лосс», а ТейкПрофита – в поле «Тейк Профит». Также можно задать расстояние в пунктах от входа в рынок до СтопЛосса (поле, обведенное красным прямоугольником) и до ТейкПрофита (поле, обведенное синим прямоугольником). После задания необходимых уровней этих стоп-ордеров нажимается кнопка «Изменить» и они размещаются на графике в виде красных штрихпунктирных линий. В примере на рис. 2 для длинной позиции верхняя линия обозначает уровень ТейкПрофита (подписана как tp), а нижняя – СтопЛосса (подписана как sl). В дальнейшем эти стоп-ордера можно перемещать непосредственно на графике, захватив их линии мышью.

Как закрыть часть сделки в МТ4

В некоторых случаях трейдеру необходимо закрыть позицию не полностью, а частично. Это требуется при торговле по некоторым стратегиям, например, предполагающим частичную фиксацию прибыли при прохождении ценой части расстояния до определенной цели. А полное закрытие сделки происходит при достижении ценой намеченной цели.

Называется частичное закрытие ордеров скейлингом и осуществляется оно из окна управления ордером (рис. 2), но переменной «Тип» необходимо задать значение «Немедленное исполнение». В этом случае будет доступно для редактирования поле «Объем», в котором и необходимо задать закрываемый объем текущей сделки.

Например, если сделка была открыта объемом 1 лот, а трейдер хочет закрыть лишь ее половину, то в поле «Объем» вводится значение 0,5. Затем нажимается кнопка «Закрыть» (она также появляется при присвоении типа изменения сделки на «Немедленное исполнение») и часть сделки в МТ4 закрывается. В результате остается открытой позиция объемом 0,5 лота.

А вот установить ТейкПрофит или СтопЛосс, закрывающие лишь часть сделки в МТ4, не получится – функционал терминала не предусматривает выполнение такой операции. Стоп-ордера могут закрывать сделку, к которой они прикреплены лишь полностью.

Как закрыть все сделки в MT4 одновременно

В ряде торговых стратегий (в основном ультракраткосрочных скальпинговых) трейдер последовательно открывает несколько позиций, которые после достижения ценой определенного уровня необходимо как можно быстро все закрыть. При этом продолжительность процесса закрытия сделок не должна превышать нескольких секунд (именно скорость совершения торговых операций является одним из наиболее критичных параметров успешности торговли). Если выполнять закрытие всех сделок вручную, то на это потребуется гораздо больше времени, чем несколько секунд. Например, при 20-ти открытых позициях и времени на закрытие каждой из 3 секунды на их полное закрытие потребуется 1 минута. За это время цена может пройти существенное расстояние и сделает из прибыльных сделок убыточные.

В функционале торговой платформы MetaTrader отсутствует встроенная возможность одновременного закрытия всех сделок. Поэтому для ее реализации используются скрипты, представляющие собой алгоритмы, запрограммированные на языке MQL и обеспечивающие однократное выполнение какой-либо функции.

Примером скрипта, которым можно закрыть все сделки в МТ4 одновременно, является Закрыть_все_ордера (скачать ). Файл этого скрипта помещается в папку MQL/Scripts, которая находится в каталоге данных терминала (открыть его можно из меню «Файл»), после чего МетаТрейдер перезапускается. Найти этот скрипт можно в окне «Навигатор» в разделе «Скрипты» (рис. 3).

Чтобы скрипт мог запускаться, необходимо выполнить настройку терминала. Настроечное окно открывается через меню «Сервис», в котором выбирается пункт «Настройка». В этом окне открывается вкладка «Советники» и на ней отмечаются следующие пункты «Разрешить автоматическую торговлю» и «Разрешить импорт DLL» (рис. 3). Теперь, поместив скрипт «Закрыть_все_ордера» на ценовой график и нажав кнопку «Да» в окне, запрашивающем разрешение на применение данного скрипта, можно наблюдать, как последовательно (с задержкой в доли секунды) закрываются все открытые позиции.

Следует учитывать, что данный скрипт не действует на отложенные ордера.

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

Скрипт – это небольшая по объему, но не по значению программа. Она дополнительно устанавливается на терминал МТ4 или 5.

В отличие от советников, скрипты не исполняют свою роль постоянно, он используются разово. То есть, для совершения определенной операции и только единожды. Такой операцией может быть, например, открытие или закрытие ордера или . Вообще же скрипты пишут для самых разных целей.

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

В платформе MT4 некоторые скрипты уже прописаны. Это, в частности скрипт открытия. Он используются для открытия позиции. Также, есть скрипт для удаления ранее открытой позиции. Все скрипты хранятся в одноименном разделе в специальном окне навигатора. Здесь, можно просмотреть весь список доступных программных модулей.

Для того, чтобы начать работу с каким-то скриптом, его нужно перенести на открытый график. Потребуется активировать скрипт в появившемся окошке, с вопросом действительно мы хотим присоединить «close» к графику EUR/USD Daily?

При нажатии клавиши «ДА», скрипт запустится. А после выполнения поставленной функции, он автоматически закроется и уберется с графика, не отвлекая внимание. Удалить скрипт можно и досрочно. Например, если он уже не нужен.

Для удаления, правой кнопкой мышки, щелкнуть на график и нажать функцию «Удалить скрипт ». Готово.

ВИДЕО: Выставление ордеров в МТ4

Установка скриптов непосредственно для открытия / закрытия нескольких ордеров в дополнение к уже имеющимся

Любые скрипты сегодня можно найти в сети. Скрипты для МТ4, также легко скачать на форумах. Для того, чтобы начать работу, убедитесь что у Вас установлена сама программа Metatrader4 скрипты как правило, закачивают целыми архивами.


После скачивания, такой архив нужно распаковать. Все его содержимое должно быть скопировано в папку МQL4/scripts . Кстати, она есть в самом каталоге данных. Далее нужно перейти в этот каталог: Файл => Открыть каталог данных.

Следующий шаг – открытие папки Scripts раздела MQL4. Именно сюда и помещаются скаченные скрипты. После удачного копирования, платформу МТ4 нужно перезапустить. Без этого действия скрипты не отобразятся.

Теперь можно снова запускать программу MT4 и проделать следующие шаги:

  • Выбрать на верхней панели раздел Сервис => Настройки
  • Во вкладке Советник расставить крестики/галочки так, как это показано на картинке ниже:
  • Последний пункт – нажать «ОК»

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

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

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

Для начала нужно:

Найти в программе нужный скрипт и выбираем пункт меню изменить при щелчке по правой кнопке.

В открывшемся окошке приложения MetaEditor, как раз и меняются параметры. Главное не изменить лишнего. Внимательно следите за тем, какие именно параметры меняете. В противном случае, ваш скрипт просто перестанет правильно работать и вместо пользы принесет только вред, а следовательно – убытки.

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

Сложностей с программами или каких-то непредвиденных ситуаций возникнуть не должно. Поскольку все скрипты предельно понятны и просты.

Стоит учитывать, что скрипты существуют всякие. Есть вполне полезные, а есть не совсем. Но есть целый набор скриптов, которые не повредят. В списке самых распространенных много наименований.

Скрипт закрытия и открытия защитных ордеров — Urdala Helper

Этот скрипт отлично помогает, когда торговля на Форексе идет в ручном режиме. Управление простейшее – мышкой, как в работе с стандартными окнами Windows. Данный скрипт предназначен для открытия ордеров. Причем как рыночных, так и с выставленным тейком профита и стоп лоссом.

Используется Urdala Helper и при закрытии ордеров (одного или целой группы). Это даже могут быть все ордера разом. А еще с помощью этого скрипта, можно ордера модифицировать. Работать можно также с одним или с несколькими ордерами. Их можно перевести к профиту выше или ниже линии, причем прибыль при этом не потеряется.

Работать со скриптом предельно легко. Его нужно перетянуть на график. В окне настроек а и оформление.

Скрипт представляется в виде окон. Он начинает выбранное вами действие и автоматически закрывается по его выполнении.

Как действует скрипт для нескольких ордеров?

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

Закрытие ордера или ордеров происходит так:

  • Метку цены (зеленую или красную) нужно переместить на точку открытия.
  • Затем выбрать действие закрытия.
  • Можно также выбрать действие закрытие группы.

Помните. Вы всегда сможете остановить работающий скрипт. Например, если сомневаетесь в правильности выбора. Или если он Вам больше не нужен. Для это есть кнопка «Отмена».

Обзор скриптов открытия / закрытия стандартных ордеров для MT4

Скрипт «Закрыть все ордера» . Из названия уже понятно, какую функцию он выполняет. По такому же принципу – «Закрыть все действующие отложенные ордера » либо «Закрыть прибыльные защитные ордера».
Итак, есть скрипт «Break-even-level» . Он показывает на графике безубыточный уровень.
«Modify_taке_profits_DragDrop» — скрипт, который автоматически ставит профит для всех ордеров разом. Если перетянуть его на график, то там за несколько секунд появятся все профиты.

Добрый день, уважаемые трейдеры. Бывает так, что в торговле на рынке может произойти, что-то, когда нужно быстро и просто закрыть все ордера, которые были открыты. Или нужно закрыть только те, что попали под некоторые условия. Вы знакомы с такой ситуацией? Обычно, неопытный трейдер старается все сделать вручную, в этом ему помогают стандартные функции .
Это, не трудно догадаться, может занять немало времени, особенно если учесть, что у вас открыто . Цена не остановится, чтобы подождать, когда трейдер выполнит задуманное и закроет сделки, поэтому отсутствие каких-либо специальных средств может повлиять на результат сделок, которые вы провели.
Как справится со сложившейся ситуацией? Тут не обойтись без готовых инструментов – это скрипты для закрытия ордеров. Они устанавливаются в терминале МетаТрейдер 4 и применяются с ситуации, которая может возникнуть в любой момент. Как правильно установить в обновленный терминал скрипты, как использовать их, торгуя? Об этом можно узнать, прочитав эту небольшую статью.

Скрипты для закрытия ордеров, маленькие помощники в большой игре

Знакомство с предлагаемыми скриптами для закрытия сделок

Я предлагаю вам несколько вариантов скриптов, они предназначены для использования в разных торговых ситуациях:

  • CloseOrders – этот скрипт при использовании закрывает все ордера, которые открыты в данный момент, или это могут быть только те, что характеризуются положительным результатом. Также есть возможность закрывать только те ордера, которые обозначены вами.
  • CloseAllOrders_v4 – скрипт для закрытия ордеров по некоторым условиям. Тут трейдер сначала указывает параметры, на которые программа должна обратить внимание, а потом эти параметры используются при закрытии ордеров.
  • Close Percent By Line скрипты, которые способны закрыть некоторый процент по каждому из ордеров, то есть частичное закрытие ордера.
  • CloseAllOrders / Losses/Profit – скрипты помогают комплексно закрыть все ордера прибыльные или убыточные.

Смотреть

Для каждого скрипта прилагается дополнительная инструкция с параметрами, вот смотрите видео и под ним форма для скачки:


Скачать

Установка скриптов для закрытия ордера


Теперь давайте узнаем, как устанавливать скрипт, который вам понравился и, затем, определим, как его использовать. Рассмотрим эти правила внимательно на примере скрипта, который закрывает позиции CloseOrders. Остальные работают точно также.

После скачки скриптов из моего хранилища, нужно запустить терминал, как мы делаем это обычно, далее перейдем на вкладку меню Файл, Открыть каталог данных.

В этом окне нужно перейти в папку MQL4 там находим специальный каталог, в котором расположены скрипты, эта папка называется Scripts. Дальше заходим в этот каталог при помощи копирования перемещаем в него к примеру скрипт для закрытия ордеров CloseOrders.ex4.

После этого нужно закрыть окно каталога данных и перезапустить терминал. В результате нужно перейти в окно Навигатор, там во вкладке Скрипты уже установлен наш скрипт закрытия ордеров.

Применение установленных скриптов – легкое занятие


Для этого нужно подождать, когда у вас будут открыты позиции и нужно быстренько их закрыть или закрыть только те, что с прибылью, тогда нажимаем на правую кнопку мыши на скрипте затем нужно выбрать в контекстном меню Исполнить на графике.

Также можно просто перенести скрипт на график пары и подтвердить наши действия. В результате скрипт будет выполнен, а позиции закрыты.

Обратите внимание на то, что для полного контроля над скоростью процедуры вызова скрипта, вы можете установить Горячую клавишу для каждого из инструментов. Для этого, нажмем правую кнопку мыши и Установим Горячую Клавишу.

Дальше будет открыто окно навигатора горячих клавиш, где находится ваш скрипт и теперь осталось только прописать ту комбинацию клавиш, которая вам удобна. После этого нажимаем кнопку Установить и закрываем окно.

Теперь скрипт для закрытия ордеров вызывается нажатием комбинации, которую вы избрали.

А вот и ещё один пример по работе с CloseAllOrders_v4


Давайте посмотрим, как работает скрипт для закрытия ордеров с условиями, которые обозначены заранее. Речь идет о скрипте CloseAllOrders_v4. Для этого просто проводим установку скрипта и перезапускаем терминал.

Сравнивая, с предыдущим скриптом, легко уловить, что он работает на тех условиях, которые установил трейдер, они прописываются трейдером перед запуском в параметрах скрипта. Не забудьте, что описание с параметрам скрипта прилагаются.

Давайте на примере посмотрим, как разнотипные ордера закрываются с помощью этого скрипта.

Пусть мы открыли 4 позиции: две на покупку и две на продажу, и складывается ситуация, когда нам необходимо быстро закрыть все ордера на продажу. Для этого используем наш скрипт и закрываем ордера. Это делается переносом его на график, перед нами откроются входные параметры скрипта закрытия ордеров.

Чтобы скрипт закрыл только сделки на понижение нужно проследить за том, чтобы в поле TipOrder установили значение -1 – это для продажи, 1 – для покупки, а 0 – для всех. Далее нажимаем Ок. После этого скрипт автоматически закроет позиции, который вы обозначили, то есть на понижение. После чего он выдаст сообщение с подробностями результатов закрытых им сделок.

Как вы находите скрипты для закрытия ордеров? Надеюсь это то, что вам нужно! Как видно, их просто использовать. Они надежны в торговле. Так что вы можете легко их использовать и задавать комментировать вашу практику.

На этот раз всё. В следующих публикациях вас ожидает много новых полезных материалов, которые сделают вас богаче, а мы станем от этого счастливее. Самое главное , чтобы не допустить потери денег из-за глупой ошибки!

Незаменимый помощник трейдерам, которые работают с большим числом ордеров и вынуждены вручную закрывать «пачки» ордеров, теряя время и деньги (цена ведь не стоит на месте). Разумеется, можно настроить работу как угодно: закрывать рыночные и\или отложенные ордера, тип ордеров (BUY\SELL), профитные или убыточные ордера, закрывать ордера только с конкретным маджик-номером или не обращать на него внимания и т.д.

Скрипт для закрытия большого количества ордеров

Этот скрипт пригодится многим трейдерам, которые работают с большим количеством ордеров и вынуждены вручную закрывать их десятками, теряя время и деньги (цена ведь не стоит на месте). Скрипт позволяет настроить работу как угодно: можно закрывать как рыночные, так и (или) отложенные ордера, можно выбирать тип ордеров (BUY\SELL) для закрытия, закрывать только профитные или только убыточные ордера, можно закрывать ордера только с конкретным маджик-номером и т.д…
Использовать скрипт очень просто: поместите файл ATS.CloseOrders.ex4 в папку MQL4/Scripts своего терминала, после чего запустите скрипт на любой валютной паре. На какой конкретно – значения не имеет, советник работает со всеми ордерами, независимо от того, на какой паре они открыты.
После запуска, введите желаемые параметры:

Пояснение:
«Закрывать открытые BUY ордера» — если выбрано false – ордера типа BUY затронуты не будут и останутся в рынке. Если выбрано true – будет проверяться условие на прибыльность\убыточность ордера (третий и четвертый параметры).
«Закрывать открытые SELL ордера» — если выбрано false – ордера типа SELL затронуты не будут и останутся в рынке. Если выбрано true – будет проверяться условие на прибыльность\убыточность ордера (третий и четвертый параметры).
«Закрывать профитные ордера?» — если ордер прошел проверку по первому и второму параметру, теперь проверится это условие. (Например, ордер типа SELL, и мы выбрали «Закрывать открытые SELL ордера» — true.) Тогда, допустим, в этом параметре мы выбрали false (то есть НЕ закрывать профитные ордера), а наш ордер как раз прибыльный. Тогда этот ордер закрыт не будет. Если же мы поставили бы true, тогда ордер был бы закрыт.
«Закрывать убыточные ордера?» — полностью аналогично предыдущему параметру, но для убыточных ордеров.
«Удалять отложенные ордера?» — название говорит само за себя. Если выбираем true – отложенные ордера будут удалены.
«Закрывать\удалять ордера только с маджиком ниже?» — если выбираем true, тогда скрипт будет работать ТОЛЬКО с теми ордерами, маджик которых совпадает с тем числом, которое мы введем в следующем параметре. Если же мы выбираем false – скрипт будет работать со всеми ордерами.
Немного полезной информации: помните, что у ордеров, которые открыты вручную, маджик равен нулю. Вы можете использовать это, когда, например, хотите закрыть только ордера, открытые вручную. При этом ордера, открытые советниками (а они обычно используют маджики), останутся в рынке.
«Маджик (Magic Number)» — собственно число, которому должны быть равны маджики ордеров при активном предыдущем параметре.
«Проскальзывание (4-значные пункты)» — этот параметр определяет, сколько пунктов может пройти рынок в промежуток между тем, когда скрипт отдал команду на закрытие, и тем, когда сервер ее готов обработать. Если за это время рынок успел «убежать» более чем на введенное количество пунктов – сделка не закроется.

Обратите внимание, что кроме скомпилированной версии мы предоставляем вам также открытый код данного скрипта. Им вы можете воспользоваться в своих разработках, а также для изучения языка MQL4. Скачать скрипт нажав на кнопку ниже. Единственная просьба – при распространении этого скрипта в интернете (если вы будете этим заниматься) оставляйте ссылку на нас. Заранее спасибо.