20/04/2024

Argo Averager; маленький секрет твоих прибыльных сделок

 

Содержание статьи

Argo Averager – маленький секрет твоих прибыльных сделок

Форекс советник Argo Averager

Здравствуйте, товарищи Форекс трейдеры! Как мы уже ранее разбирали в материале Безопасный мартингейл, при грамотном подходе пара трюков с усреднением сделок могут значительно повысить прибыльность вашей торговли.

А сегодня мы более подробно поговорим о том, как это можно автоматизировать. А именно, о вспомогательном сопровождающем советнике ArgoAverager от наших друзей из ArgoLab.

Усреднение позиций – одна из самых популярных стратегий управления капиталом. Многие пользуются ею, толком этого не осознавая. На форекс под усреднением, как правило, подразумевается усиление (увеличение лотности) позиций в убыточной зоне. Злоупотребление этим примитивным механизмом свойственно почти любому начинающему трейдеру. К сожалению, несоблюдение дисциплины портит впечатление о стратегии, что никак не отменяет факта высокой эффективности метода.

Решение – передать полный контроль над ситуацией вспомогательному советнику, который будет сопровождать позиции вплоть до их полного закрытия. Так мы убиваем сразу двух зайцев: советник освобождает руки и гарантирует четкое следование правилам. Как раз такой советник был написан выходцами с нашего форума. ArgoAverager – автоматическая система с широким набором настроек, усредняющая как открытые вручную ордера, так и ордера, открытые другими советниками.

Что такое Усреднение

Что такое усреднение на форекс

Форекс Трейдеры пользуются усреднением постоянно, иногда даже не осознавая этого. Даже когда вы смотрите на график цены, вы, по сути, видите усредненное представление игроков о текущей ситуации на рынке. Это мощный инструмент, который при правильном использовании повышает вероятность закрытия сделки или группы сделок в плюс.

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

Что такое усреднение

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

Установка советника

Вспомогательный советник Argo Averager. Установка советника

Процесс установки AA ничем не отличается от установки любого другого советника для платформы MT4. На нашем сайте есть подробный мануал по установке советников.

Для начала открываем каталог данных платформы через “Файл” – “Открыть каталог данных”.

Вспомогательный советник Argo Averager. Установка советника

Затем, файл вспомогательного эксперта с расширением “.ex4” нужно поместить в папку “MQL4” – “Experts”. После этого перезапускаем терминал.

Вспомогательный советник Argo Averager. Установка советника

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

Вспомогательный советник Argo Averager. Установка советника

ArgoAverager также можно скачать из Маркета MQL5.

Настройки

Вспомогательный советник Argo Averager. Настройки.

Перед запуском советника нужно в первую очередь настроить размерность сетки ордеров. Установите слишком малый шаг сетки, и позиция слишком быстро наберет объем. Установите слишком большой – ордера не откроются вовсе и должного эффекта стратегия не возымеет. Шаг сетки регулируется параметром GridStepPips (в пунктах). Попробуйте рассчитать это расстояние так, чтобы ордера попадали на ближайшие ключевые уровни. Это должно повысить вероястность отката. К сожалению, разработчик не предусмотрел динамический шаг сетки, поэтому ордера всегда располагаются на одинаковом расстоянии друг от друга (кроме первого, дистанцию которого можно изменить через параметр GridDistFirst).

Вспомогательный советник Argo Averager. Настройки советника.

Для всех ордеров по инструменту выставляется общий тейк-профит. По-умолчанию, тейк-профит рассчитывается от уровня безубытка. Установить тейк-профит по прибыли нельзя, но можно закрыть ордера по безубытку. Для того, чтобы закрыть ордера ровно по достижению уровня безубытка, просто установите значение 0 для параметра TakeProfitPips.

Еще один важный параметр – LotMult, или множитель лота. Чем больше значения множителя, тем больше риск. С другой стороны, перевесовка в сторону дополнительных ордеров позволяет гораздо быстрее выйти в безубыток. Если вы точно не знаете, когда ожидать разворот движения, в поле LotMult лучше подставить единицу. Таким образом, объем каждого из дополнительных ордеров будет соответствовать изначальному объему позиции по инструменту. Если установить лот больше единицы, объем каждого последующего ордера сетки будет расти в геометрической прогрессии.

Вспомогательный советник Argo Averager. Полный перечень настроек

Полный перечень настроек:

Моментальные действия:

  • CloseAllNow – при запуске советника будут закрыты все ордера, отобранные по фильтру ордеров.

Фильтр ордеров:

  • BuySell – можно выбрать из вариантов: Buy, Sell, Any – работать только с ордерами на покупку, ордерами на продажу, или всеми ордерами без разбора, соответственно;
  • Ticket – работать только с одним конкретным ордером по номеру тикета (0 для отключения);
  • Magic – работать только с ордерами, открытыми с таким Magic-номером.

Настройки сетки:

  • GridStepPips – шаг сетки;
  • GridDistFirst – отступ для первого усредняющего ордера (0 для отключения);
  • TakeProfitType – можно выбрать из вариантов: FixedTakeProfit и DistanceFromBE, что означает расчет уровня take profit от ордера с лучшей ценой и расчет take profit от уровня безубытка, соответственно;
  • SetTPAtOnce – выбор из двух вариантов: либо советник устанавливает профит сразу после запуска, либо только после срабатывания первого усредняющего ордера;
  • LotMult – коэффициент умножения лота для дополнительных ордеров. Если усредняется группа ордеров, объем усредняющего ордера будет равен суммарному объему всех ордеров, помноженному на коэффициент;
  • LotFirst – объем первого усредняющего ордера (0 для отключения);
  • MaxGridLevel – максимальное количество ордеров сетки, устанавливаемых советником.

Настройки лока:

  • UseLock – включение локирования ордеров;
  • LoсkDistPips – дистанция для установки локирующей позиции. Когда цена проходит отмеченное количество пунктов от крайнего ордера серии, советник перекрывает позицию обратным ордером того же объема, а также убирает все установленные раннее стоп-уровни.

Максимальная просадка:

  • МaxDD – наибольший размер просадки в валюте депозита, по достижении которой будут закрыты все позиции (0 для отключения);
  • MaxDDPerCent – максимальная просадка в процентах от депозита (0 для отключения).
  • MagicEA – Magic-номер для ордеров, устанавливаемых советником;
  • MagicLock – Magic-номер для локирующих заявок;
  • comment_сolor – цвет текста инфо-панели на графике;
  • box_сolor – цвет плашки;
  • сolBE – цвет уровня безубытка;
  • CheckMargin – контроль свободной маржи. При включении параметра, на график будет выводиться информация о количестве доступных для открытия колен сетки. Размер доступной маржи рассчитывается с учетом указанной максимальной просадки;
  • comment_fontsize – размер шрифта инфо-панели;
  • comment_lineheight – размер интервала между строками панели.

Пример работы

Вспомогательный советник Argo Averager. Примеры работ.

Если по символу уже есть открытые позиции, то при запуске советника он тут же установит отложенный усредняющий ордер на расстоянии GridStepPips (либо GridDistFirst, если указан). Голубая линия отображает уровень безубытка, который в данном случае соответствует цене открытия ордера.

Вспомогательный советник Argo Averager. Примеры работ.

Если цена пошла против нас и активировала усредняющий ордер, советник отметит новый уровень безубытка и установит тейк-профит для обоих ордеров (если указана установка после активации ордера).

Вспомогательный советник Argo Averager. Примеры работ.

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

Вспомогательный советник Argo Averager. Примеры работ.

Заключение

Вспомогательный советник Argo Averager. Заключение.

ArgoAverager – по истине незаменимый помощник внутридневного трейдера. В повседневной торговле часто бывает ситуация, когда усреднение – это почти единственный способ выхода из сложившейся ситуации. Запуская ArgoAverager вы, можно сказать, бросаете спасательный круг вашему депозиту, который в это время уже тонет или собирается потонуть. В то же время, ArgoAverager можно использовать просто для перестраховки, ведь, как известно, рынок никогда нельзя предсказать на 100%.

Скрипты для работы на форекс. Советники и скрипты для выставления отложенных ордеров в МТ4

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

Сегодня я расскажу о том, каким может быть типичный скрипт отложенных ордеров MT4. Конечно, многообразие этих смелых помощников трейдера может быть ограничено только фантазией трейдера. Я встречал очень экзотические скрипты, например, один из них показывал международные часы. Но, что касается скриптов, выставляющих отложенные ордера на форекс терминале, то тут, мне показалось я уловил некую закономерность в их функционале. Поэтому попробую сейчас раскрыть полученную мной классификацию.

Откуда вообще может прийти классификация обычного скрипта отложенных ордеров. Мне кажется, самое логичное искать его в тех функциях, которые дает терминал MT4 с точки зрения работы с ними. Что можно сделать с отложенным ордером? Думаю, его можно установить, удалить или изменить.

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

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

Попробуйте представить себя на месте программиста. Нет! Вы не подумайте, что это не возможно, то, что вы сейчас читаете, немного приближает вас к тому самому программерскому мышлению. Вы спросите: «А зачем мне это надо?» Надо! Надо! Дело в том, что не ровен час вы начнете заказывать для себя вспомогательные программы для терминала MT4 или Quik. Тогда вам точно пригодится мышление программиста, контролировать, мотивировать, давать простые технические задания.

Скрипт изменения отложенных ордеров и общие понятия

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

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

Смотреть видео о специальных программах

Итак, у нас несколько отложенных приказов, с каким из них будет работать наш скрипт? Это вопрос! Ответ на него простой. Существуют скрипты, которые работают с первым по счету приказом в терминале. Ничего сложного! Просто они не видят других приказов. Для них он только один. Когда он превратится в приказ по рынку и закроется по или по тейк профиту или по другому поводу, то рабочим приказом, над которым будет трудиться скрипт, будет уже следующий по счету, но уже первый в терминале.

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

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

Ну, а как ещё можно модифицировать приказы? Делать это можно сразу скопом. Ну, бывает такое, что мы уверены, что одинаковое изменение сразу всех отложенных приказов будет полезным для нашей торговой системы. Конечно, чем больше приказов, тем такая вероятность уверенности ниже, а чем меньше таких приказов, тем, соответственно уверенность выше.

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

Скрипт удаления отложенных ордеров

А что можно сказать про скрипт удаления таких приказов? Конечно, он будет работать по похожему алгоритму, как и первый обрисованный. Поэтому не удивляйтесь, если вам попадется скрипт удаления, который будет работать только с первым ордером в терминале.

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

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

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

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

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

Скрипт установки отложенных ордеров с помощью графики и без неё

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

Итак, встретить можно скрипты, которые, само собой, позаботятся о тейк профите и стоп лосе.

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

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

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

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

Сеточники и выводы

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

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

Ручная торговля на рынке Форекс — кропотливый труд, требующий умственных усилий и временных затрат. Это особенно актуально для скальперов и других трейдеров, использующих для получения прибыли на валютном рынке младшие таймфреймы. Существуют способы автоматизации рутинных однотипных действий. Для этой цели используются скрипты . Что это такое и как их использовать? Как упростить выставление отложенных ордеров скриптом? Как установить программу в торговую платформу брокера?

Скрипты Форекс — что это такое?

Скрипты — помощники трейдера, которые автоматизируют обычные рутинные процессы, например, закрытие большого числа сделок одним кликом или выставление стоп-ордеров. Это обычная программа, которая написана на том же языке программирования, что и советник или индикатор. Скрипты пользуются меньшей популярностью только по причине отсутствия достаточных знаний об их возможностях у трейдеров. Как работает скрипт?

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

Чудодейственной таблеткой, способной работать на валютном рынке вместо трейдера, скрипты также назвать нельзя. У них достаточно ограниченные возможности, однако тяжело переоценить помощь, которую они могут оказать трейдеру. Так, можно удалять с помощью скриптов отложенные ордера и создавать из них сетку, закрывать только прибыльные сделки, удалять все построения с рабочего графика валютной пары, устанавливать стоп-лосс на уровне безубыточности и так далее. Функций скриптов для трейдеров, которые предпочитают активный трейдинг, более чем достаточно для упрощения работы.

Установка скриптов в торговый терминал

Установить скрипт в торговый терминал так же просто, как и индикатор или советник. Действовать необходимо по тому же алгоритму. Первоначально необходимо открыть меню «Файл» и выбрать пункт «Открыть каталог данных». Так вы попадете в корневой каталог торговой платформы (папку установки терминала).

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

Отложенные ордера

Инструментов для автоматического выставления отложенных ордеров скриптом достаточно много как простых, так и сложных. Скрипт под названием Remove Pending Order самостоятельно удаляет все отложенные ордера. Его настраивать не нужно (параметров настроек у него нет).

Скрипт Open Buy Sell Order способен открыть два отложенных ордера в противоположном направлении. Точкой отсчета выступает текущая цена. У него есть настраиваемые параметры. Если вы используете стратегии торговли, основанные на пробитии уровней, ценового коридора, то наверняка оцените подобный скрипт.

Следующий скрипт может открыть сетку отложенных ордеров за один раз. Его название — OpenStopOrderNet. У него есть несколько настраиваемых параметров. В настройках можно задать размер стоп-лосса и тейк-профита в пунктах. Если в этой строке указать цифру 0, фиксация убытков и прибыли производиться не будет. Также вы можете указать в настройках максимальное количество ордеров в сетке, расстояние между ними, объем сделки и тип ордера (Селлстоп или байстоп).

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

Следующий скрипт отложенных ордеров под названием cm script OpenGread также выполняет функцию открытия сетки ордеров, однако обладает большим набором функций. Так с его помощью можно установить время установки ордера и время его жизни, разное расстояния между сделками, коэффициент увеличения лота открываемых ордеров, количество попыток, которое должен проделать скрипт перед открытием сделки.

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

Помним, что прибыльность торговли очень сильно зависит от

В торговом терминале MetaTrader4 предусмотрена возможность установки отложенных ордеров:

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

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

Многие трейдеры во избежание путаницы с открытие ордеров предпочитают использовать скрипт Форекс для отложенных ордеров. Для этого в настройках терминала необходимо разрешить функцию автоторговли и установить необходимые флажки. Вышеописанные ордера BuyLimit и BuyStop устанавливаются с использованием скрипта Setup_BUY_PendingOrder простым перетаскиванием их на график цены, на тот уровень, где планируется их срабатывание согласно функционалу. Ордера SellLimit и SellStop могут быть установлены на график цены с использованием скрипта Setup_SELL_PendingOrder по аналогии. При этом скрипт сам производит расчет того вида ордера, который необходимо выставить на данном уровне.

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

Однако в столь огромном темпе, особенно если речь идет об пипсовке, практически невозможно своевременно и быстро устанавливать правильные значения стоп приказа или профита.

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

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

Скрипты для работы на форекс.

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

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

Скрипт Trailing Master

Одним из приёмов сохранения прибыли и минимизации убытков является использование в торговле ордера «Трейлинг стоп ».

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

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

С одним из таких скриптов вы и сможете познакомиться в этой статье.

Скрипт Trailing Master — это вспомогательный советник трейдера, суть которого состоит в том, чтобы в автоматическом режиме совершать как массовый, так и одиночный трейлинг ордеров при достижении ценой заданного значения прибыли по ордеру.

Скрипт Limit orders Pro. Универсальный помощник сеточного трейдера на все случаи жизни

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

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

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

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

Скрипт переноса истории на график

Как же узнать сможет ли управляющий вести эффективную торговлю?

Какова его стратегия и самое главное, не накручены ли данные показатели за счет грамотного применения рискованных моделей управления капиталом , которые дают красивую картинку графика доходности, но при этом слив наступает внезапно и одномоментно?

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

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

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

Невидимые стопы. Эксперт, способный сохранить вашу тайну от нечестного брокера

Вы спросите, зачем это делать брокеру? А какой смысл выводить трейдеров на реальный рынок, если девять из десяти участников сольют?

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

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

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

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

Скрипт «Просадка». Будьте в курсе происходящего на вашем счете

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

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

Однако далеко не все и всегда могут находиться постоянно у своего монитора, дабы отслеживать просадку на счете.

Именно с этой целью в торговом терминале предусмотрены Push сообщения, а ситуацию с их помощью вы сможете отслеживать с помощью специального вспомогательного скрипта-советника.

Скрипт Binary Option open trade. Мгновенное открытие сделок по бинарным опционам

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

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

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

Infopanel. Информационный скрипт для МТ4

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

Однако в базовом функционале МТ4 для того что бы узнать о том же спреде по выбранному активу необходимо самостоятельно отнимать цены.

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

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

Скрипт перемещения стоп лосс

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

Реальный метод борьбы с подобной ситуацией – это использование трейлинг стопа.

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

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

Скрипт оценки стратегии

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

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

Tradingsystemrating – это пользовательский скрипт разработанный под торговый терминал МТ4, основная задача которого состоит в том чтобы оценить вашу торговую стратегию, которая применяется на счете.

Скрипт оценивает стратегию на выбор по двум методикам. Первая методика оценки стратегии была описана Ван Тарпом в книге «Супертрейдер.

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

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

Подобная задержка для трейдера, чей профит исчисляется несколькими пунктами прибыли сравнима с убытками.

И если трейдеры торгующие статичным лотом еще как-то сглаживают эту ситуацию быстрым открытием сделки в один клик, то что делать трейдеру который использует динамичный лот, рискуя определённым процентом риска на одну позицию?

Единственный путь решение проблемы – это использование вспомогательных программ помощников, а в этой статье мы одну из них.

Статистика трейдинга со скриптом Iprofit Custom

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

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

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

Скрипт волатильности

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

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

Скрипт волатильности VolScript – это специальное приложение для торговки платформы МТ4, благодаря которому вы сможете узнать текущую и среднюю волатильность на рынке.

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

Скрипт Range Bars. Убираем рыночный шум

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

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

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

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

Скрипт переворачивающий позиции

Многие трейдеры соглашаются со своим поражением и дожидаются выхода из рынка форекс по стоп приказу.

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

Скрипт переворачивающий позиции Revers — это отличное решение для трейдеров практикующих переворот позиций. В отличие от многих аналогов скрипт автоматически запоминает объем и количество открытых ранее ордеров и выполняет переворот ровно таким же лотом.

Стоит заметить, что данный скрипт является универсальным инструмент и выполняет одноразовое действие, что не перегружает вашу торговую платформу.

Индикатор для скриншотов сделок на форекс

Однако стоит понимать, что дневник предназначен не для сохранения истории, а для ее анализа. Сомневаемся что кто-то из вас, спустя месяц сможет сказать, почему он открыл сделку, какими суждениями он руководствовался и банально, в каком настроение он был.

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

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

Подавляющее большинство трейдеров, а особенно старшего поколения, ведут свой дневник в обычном блокноте или тетради, забывая о самом главном объекте анализа – торговом графике в момент совершения сделок. Естественно в торговом терминале существует возможность сделать скриншот, однако это отнимает время и усилия, что приводит к тому, что трейдер забывает это делать.

Лучшее место забрать прибыль – EasyTakeProfit

Зачастую два банальных параметра как уровень профита и уровень стопа могут кардинально поменять статистику стратегии на форекс .

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

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

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

Скрипт скорости движения цены

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

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

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

Как написать скрипт для работы на форекс

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

Скрипт – это программа, которая предназначена для выполнения одноразового действия. Для примера, если вы сталкивались с торговыми советниками, то вы наверняка знаете, что данная программа выполняет определенные задачи до тех пор, пока она находится на графике.

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

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

Скрипт GrailMeter – измеряем граальность вашего робота

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

Как правило, в ловушку Грааля попадают наивные новички, которые склонны к желанию быстрой наживы.

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

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

GUI-Robot – автоматический трейдинг без знания программирования

Как правило, в современных реалиях трейдеру отведена функция контроля и подтверждения сигналов, а также мастера, который своевременно внесет правки в свой заранее запрограммированный алгоритм.

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

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

Сегодня о важности графического анализа дискутировать довольно сложно, поскольку даже самому заядлому критику известно что данный инструмент доказал свою эффективность временем.

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

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

Самая распространенная болезнь трейдеров, из-за которой сливаются счета десятками, а то и сотнями – несоблюдение дисциплины в области управления капиталом.

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

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

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

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

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

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

Однако, не смотря на все прелести ручной торговли очень многие процессы становятся не подвластны человеку.

Скрипт «clear»

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

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

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

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

Индикатор совокупной позиции

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

TrailinRobot – незаменимый помощник трейдера!

Порой постоянная рутина отнимает очень много времени. Выставление трейлинг стоп и попытка перемещать стоп приказ максимально за трендом является одной из них.

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

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

Скрипт «Статистика прибыли».

Часто для различных целей трейдеру требуется информация по статистике полученной прибыли, инфо необходимо как для предоставления инвесторам так и для своих целей.

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

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

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

Тейк профит для отложенных ордеров.

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

Позволяет автоматически установить для них тейк профит исходя из размера стоп лосс и величины спреда.

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

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

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

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

Рассмотрим пример выставления отложенных ордеров и управление сделка для торговой системы Akula FX, которая была рассмотрена в предыдущей статье .

Итак, вернемся к фундаментальной теории торговой системы «Akula FX » и разберем где продавать и выставлять отложные ордера. На рисунке ниже Вы видите индикатор выхода цены из динамического канала и сигнал разворота, на котором основывается вся фундаментальная стратегия торговой системы. Согласно теории фундаментальной стратегии, после сигнала разворота следует откат цены к ранее пробитому динамическому каналу или круглому уровню повышенной активности, на котором необходимо продавать или выставлять отложный ордер. Другими словами, после сигнала разворота Вам необходимо ждать отката цены для того что бы открыть позицию. Исключением, когда Вы можете не ждать отката цены может быть ситуация когда во время сигнала разворота цена пробила все уровни поддержки под давлением глобального тренда.

Где продавать и выставлять отложные ордера в практике

На рисунке ниже под номером 1. Вы видите что после того как цена Вышла из динамического канала, она пробила уровень поддержки (синие ромбы), однако, цена отбилась от круглого уровня 00 так и не пробив его. Поскольку цена пробила только 1 вид уровня поддержки, Вам необходимо ждать откат до уровня динамического канала или круглого уровня повышенной активности для того что бы открыть позицию в их зоне. Если бы при выходе из динамического канала цена пробила уровень 00, то Вы могли продавать сразу при открытии новой свечи. На рисунке под номером 2. Вы видите что цена сделала откат к уровню 20, от которого Вы могли бы войти в продажу, или чуть ниже на 2 — 5 пунктов разместить отложный ордер селл лимит. Под номером 2. Вы видите еще один пример выхода цены из динамического канала, на котором видно что цена не пробила уровень 20 и отбилась от него, соответственно необходимо ждать отката. В данном случае, когда движение цены весьма сильное и уровень сопротивления 50 находится до уровня динамического канала, следует не отдавать ему особый приоритет а стремиться к продажи от уровня NRTR немного выше уровня 50.

Как выставлять отложные ордера на графике в терминале МТ4

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

  • Скрипт SetOrderBuy устанавливает отложенные ордера типа BuyStop или BuyLimit.
  • Скрипт SetOrderSell устанавливает отложенные ордера типа SellStop или SellLimit.

Ограничение убытков и фиксация прибыли

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

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

Правильный досрочный выход из рынка

Практически в 90% случаях сигналы торговой системы оказываются в деньгах, однако, лишь на половину этой доли выпадает ценовое движение до окончательной цели тэйк профит. Предположим, Вы открыли торговую позицию с размером тэйк профит 150 пунктов, а цена дошла только до 110 пунктов и развернулась в противоположенную сторону. Согласитесь, в такой ситуации лучше забрать профит $100 на 50 пунктах, чем потом словить стоп лосс и получить убыток $14. Именно правильный и своевременный выход из рынка с помощью трэйлинг стоп делает торговую систему по настоящему доходной и в тоже время надежной, поскольку обеспечивает доход даже в не особо удачных сделках. Трейлинг стоп работает по очень простому принципу, с ранее заданными настройками он передвигает уровеь стоп лосс в положительную сторону вслед за рынком, и если рынок разворачивается, то советник забирает ту прибыль, которую Вы уже заработали.

В настройках советника есть всего 2 параметра, это размер трэйлинг стопа и размер шага, которые необходимо настраивать в соответствии с заданной ранее цели по тэйк профиту. Например, Ваша цель тэйк профита 150 пунктов, в таком случае Вам необходимо поделить 150 пунктов на несколько долей и определить размер трейлинг стопа и шага. Предположим Вы 150 пунктов поделили на 5, получили 30 пунктов — это размер трейлинг стопа, т.е. стоп лосс будет перенесен на фиксацию прибыли в 30 пунктов при условии достигнутого ценою шага, который должен быть минимум в 2 раза больше. Например, при достижении ценою прибыли в 60 пунктов, советник выставляет трейлинг стоп (стоп лосс) на прибыли в 30 пунктов, при достижении прибыли в 120 пунктов, советник выставляет трейлинг стоп на 60 пунктах и т.д. Всегда когда Вы будете настраивать советник, Вами должна быть достигнута золотая середина, что бы трэйлинг стоп и шаг были не слишком маленькими или большими, а так же, между трэйлинг стопом и шагом необходимо иметь простор, для возможности маневра цены, поэтому делайте шаг в 2-3 раза больше чем трейлинг стоп.

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

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

После того, как я решил использовать валютное хеджирование в качестве основы торговой стратегии, 1-м делом я определил все необходимое для торговли. Итак, мне понадобится:

  • индикатор прохода цены серии валютных пар от определенного дня и времени;
  • советник для открытия серии валютных пар в одном направлении;
  • советник для закрытия серии валютных пар.

В данном посте я напишу советник для открытия серии валютных пар в одном направлении.

Предварительно можно посмотреть тестирование созданного советника.

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

Более того, советник, в случае сбоя, оставшись работать на графике будет проверять, все ли ордера по заданным валютным парам открыты. Если ордер по определенной валютной паре не найдется, советник его немедленно откроет.

Хочу отметить, что создание указанных советников и индикатора не обеспечит прибыльную и стабильную торговлю на Форекс. Это лишь помощники, которые облегчат процесс анализа торговой ситуации и операции с ордерами.

Чтобы избежать задание лишних внешних параметров и ускорить работу, будут 2 разных советника. 1-й на Buy, 2-й на Sell. Это снизит уровень возможных ошибок от невнимательности.

Пишем советник

Для тех, кто только начинает знакомиться с программированием на MQL 4, для лучшего понимания основ языка MQL, предварительно можно изучить запись в блоге о том, как написать индикатор, который выводит на экран спрэд по текущему торговому инструменту.

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

Определим необходимые внешние задаваемые переменные.

  • количество лотов;
  • отклонение от цены открытия;
  • открываемая серия;
  • проскальзывание.

Теперь открываем MetaEditor. Слева в Навигаторе выбираем вкладку «Файлы» и открываем советник Moving Averages. После открытия выделяем и удаляем все содержимое, затем жмем Файл – Сохранить как и сохраняем под именем «Buy_X».

Задаем внешние переменные

Первыми строчками задаем необходимые внешние переменные.

Для начинающих программистов на языке MQL4 – параметр extern указывает, что переменная может быть изменена внешне, т.е. в MetaTrader’е.

Переменная workLimit это ограничитель. Если цена ушла от цены открытия нового бара больше указанного уровне, ордер не будет открыт.

Переменная openSet в принципе небольшое дополнение. Хотя я никогда не использовал ранее доливки при торговле на Форексе, но на будущее решил предусмотреть этот параметр.

Значение переменной openSet будет указана в Комментарии в открываемом ордере. С помощью этого мы сможем определить с какой серией ордеров мы сейчас работаем.

Чтобы было понятно, объясню на примере: на новом баре мы открыли 5 ордеров 1-й серии. Через 10 минут мы решаем, что нужно сделать доливку. Мы вновь переносим советник на торговый график, в параметрах советника указываем номер серии 2 и на новом баре советник открывает на еще 5 ордеров.

Теперь объявляем глобальные переменные советника.

В массиве pairs[] мы задаем необходимые валютные пары. Размер массива в 14 элементов задан произвольно.

В массиве pairsOpen[] будет храниться количество открытых ордеров по каждой валютной паре. Т.е. после 1-го открытия у всех элементов в данном массиве должно быть значение 1. Значение 2 будет означать, что сделана доливка.

Массив openPrice[] содержит цены открытия текущего бара для каждой валютной пары.

Функция init()

Переходим к содержимому функции init() . Данная функция запускается при прикреплении советника к торговому графику, изменению настроек советника, а также смене символа или периода графика.

Сначала узнаем, в системе используется 5 и 3 знаков после запятой или 4 и 2.

Предопределенная переменная Digits хранит значение количества знаков после запятой текущего символа (валютной паре).

Главное помнить, что несмотря на то, что ордера мы собираемся открывать по нескольким валютным парам, советник присоединяется к графику одной валютной пары и именно с ней мы сейчас работаем.

Если 3 или 5 знаков после запятой, в переменную number заносим значение 10. Это множитель. К примеру, мы указали изначально, что проскальзывание равно 2 пункта. Но с 5-ю знаками после запятой это значение должно равняться 20. Как раз это мы и получим, помножив 2 на 10.

Теперь заполняем данными наши внешние переменные.

Переменной orderType мы присваиваем 0, т.к. пишем советник, который будет открывать ордера на Buy. Чтобы советник работал на Sell, переменной нужно присвоить значение 1 и перекомпилировать.

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

Хотя мы можем задать любой размер массива pairs[] , в переменную totalPairs необходимо поместить количество заданных элементов. Т.е. если 3 валютных пары, а размер массива 14, в переменной totalPairs должно быть значение 3.

Пройдемся в цикле по массиву pairs[] .

Изначально присваиваем переменной totalPairs значение 0. В переменную size помещаем ранг массива pairs[] .

В цикле проходимся по всем элементам массива pairs и если длина элемента больше 0, то увеличиваем количество валютных пар в переменной totalPairs .

Как только цикл доходит до пустого элемента, то с помощью оператора завершения break работа цикла завершается.

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

Теперь нам необходимо сохранить цены открытия по всем валютным парам. Нам это необходимо для отслеживания появления нового бара.

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

Функция setOpenPrices() в цикле проходит по всем заданным валютным парам в массиве pairs и узнает с помощью функции iOpen(…) для каждой цену открытия, которая сохраняется в массиве openPrice .

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

После того, как советник обновил время открытия для каждой валютной пары, необходимо проверить все открытые ордера.

Проверка ордеров также будет происходить при поступлении каждого нового тика. Вынесем проверку в отдельную функцию.

Обнуление массива pairsOpen необходимо, т.к. ордер, который советник считает за открытый мог уже быть закрыт трейдером, брокером или, к примеру, вылететь по Стоп-лоссу или Тейк-профиту.

Выборка ордеров происходит по типу ордера orderType , магическому числу magic и номеру сета openSet .

Если советник работает с доливкой, т.е. номер сета, к примеру 2, то его уже не интересуют ордера 1-го сета.

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

Глобальная переменная количества ордеров count также обнуляется в начале функции и увеличивается с каждым новым выбранным ордеров.

Чтобы записать количество открытых ордеров в массив pairsOpen[] нужен номер валютной пары. Т.к. советник знает лишь наименование финансового инструмента, то приходиться дописать дополнительную функцию по получению номера getPairNumber(…) .

После того, как номер валютной пары в массиве pairs получен, соответствующий элемент массива pairsOpen[] становится равным номеру сета openSet .

После прохождения всех ордеров в цикле советник делает последнюю проверку перед выходом из функции.

Если подсчитанное в цикле количество ордеров count больше «0″, советник запишет во флаг работы work значение false , что поставит запрет на открытие новых ордеров.

Количество ордеров, подсчитанное и хранящееся в переменной count может быть меньше заданного, если, к примеру, при открытии ордеров произошла Критическая ошибка. Флаг work мы переставляем в положение false , чтобы на новом тике советник, проверив количество ордеров, открыл недостающие.

Если оставить флаг работы work в положении true , советник откроет недостающие ордера только на новом баре.

Теперь обратимся к функции getPairNumber(…) , которая находит номер элемента в массиве pairs[] .

Функция getPairNumber(string pair) получает строковое значение валютной пары, к примеру, «GBPUSD». В цикле функция проходится по всем элементам массива pairs[] .

Как только цикл доходит до искомой валютной пары if (pairs[i] == pair) , советник выходит из функции и возвращает номер валютной пары в массиве pairs[] .

За возврат целого числового значения отвечает параметр int , который стоит перед объявлением функции int getPairNumber(string pair) .

Функция start()

Функция start() совсем небольшая.

По сути советник лишь обновляет список ордеров и переходит к функции criteria() , которая отвечает за проверку условий для открытия ордеров.

Функция проверки условий criteria()

Советник на каждом новом тике должен проверить новый ли бар и принять решение об открытии ордеров.

В 1-м условии if (checkOpenPrices() && work) при поступлении нового бара и флаге work , разрешающим работу, со значение true советник запустит функцию на открытие ордеров.

В ином случае, если количество ордеров, найденных функцией loadOrders() , меньше количества валютных пар в массиве pairs[] и запрещенной работе ( work = false ) советник также запустит функцию на открытие ордеров openOrders() .

Функция checkOpenPrices() как и все содержимое функции criteria() запускается с приходом нового тика. Проверка всех валютных пар на образование новой свечи довольно натянута: в принципе можно было проверить лишь цену открытия текущего инструмента. Но я все-таки сделал по-другому:

Как только по 1-й валютной паре мы находим отличие в текущей цене открытия от той, что сохранена в массиве openPrice[] , функция checkOpenPrices() возвращает положительный ответ.

Функция checkOpenPrices() возвращает логический ответ return (true) , на что указывает префикс bool checkOpenPrices() перед названием функции при объявлении.

Если же количество открытых ордеров count меньше количества ордеров в нашем массиве pairs[] и флаг работы work установлен в false , это означает, что советник уже открыл ордера, но не полностью.

В таком случае советник также вызывает функцию openOrders() и она открывает недостающие ордера.

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

Функция открытия ордеров openOrders()

Условием для открытия ордера по определенной валютной паре является значение элемента массива pairsOpen[] . Если оно равно номеру сета openSet , то ордер не откроется.

Если значение pairsOpen[i] не равно сету, то ордер открывается с помощью функции openOrder(…) .

После открытия ордера элемент pairsOpen[i] получает значение номера сета openSet .

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

Как только ордера открылись, флаг работы work получает значение false , что позволит избежать ошибок.

Завершающий этап работы функции – обновить информацию советника о текущем баре. Т.е. ордера открылись на новом и, чтобы функция не вызывалась повторно, мы должны обносить цены открытия в массиве openPrice[] .

Таким образом, условие if (checkOpenPrices() && work) в функции criteria() более не позволит запустить функцию openOrders() .

Функция открытия ордера openOrder()

Функция bool openOrder(int type, int pairNumber) получает тип открываемого ордера int type и номер валютной пары int pairNumber в массиве pairs[] .

Функция openOrder() сама по себе элементарна. Переменная ticket получает значение -1 и используется в цикле while (ticket как условие.

Цикл while () работает до тех пор, пока ордер не будет открыт или не сработает оператор return(bool …) .

Главным условием для работы советника при открытии ордера является удаление цены от цены открытия бара. Уровень удаления задан в переменной workLimit . Проверка производится в следующем условии (для ордера Buy):

Если Текущая цена минус цена Открытия в пунктах больше лимита удаления, то мы выходим из функции openOrder() .

Важным моментом является перевод лимита к текущим условиям, а именно помножение на значение глобальной переменной number , которое было рассчитано в функции init() .

Если Дилинговый центр предоставляет котировки в MetaTrader 4 с 5-ю или 3-мя знаками после запятой, то значение переменной workLimit , которое задается в пунктах, помножается на 10 (значение глобальной переменной number ).

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

Если бы работа велась по финансовому инструменту текущего графика, то мы бы использовали предопределенные переменные Bid , Ask и Point .

Как только подготовительные вычисления закончены, с помощью функции OrderSend(…) советник отправляет запрос на открытие ордера.

Переменная lot , т.е. количество лотов, у нас внешняя. Уровень проскальзывания, также заданный во внешней переменной slippage , помножается на переменную number , чтобы подстроиться под котировки с 5-ю или 3-мя знаками после запятой.

Уровень Стоп-лосса хоть и вынесен в отдельную переменную SL , но все равно равен 0 , так как меня он не интересует. При желании можно вывести его во внешнюю переменную и задавать значение из MetaTrader’а.

В комментарий к ордеру записывается номер сета, переведенный из числового в строковое значение DoubleToStr(openSet, 0) . Как раз по этому параметру и происходит отсев ордеров в функции loadOrders() .

Ордер открывается с магически числом, заданным в глобальной переменной magic . Это 2-й параметр, по которому происходит отсев ордеров в функции loadOrders() .

Если функция OrderSend() возвращает отрицательный номер тикета, то происходит проверка кода ошибки с помощью функции checkError() .

Код последней ошибки записывается в глобальную переменную lastError = GetLastError() .

В случае, если функция checkError() возвращает отрицательный результат прохождения проверки, функция openOrder() завершает работу.

В ином случае, если функция checkError() возвращает положительный ответ, цикл while (…) перезапускается.

Как только номер тикета, возвращаемый функцией OrderSend() станет положительным числом, функция openOrder() завершит работу с положительным ответом return (true) .

Функция обработки ошибок checkError()

Функция checkError() работает с глобальной переменной lastError , содержащей код последней ошибки. Код ошибки передается в оператор-переключатель switch(lastError) .

Ошибки разделены на Преодолимые и Непреодолимые. При преодолимых ошибках производится обновление данных с помощью функции RefreshRates() или обновление данных после небольшой задержки.

Функция Sleep(int milliseconds) помогает советнику осуществить задержку.

Как только предположительно удалось решить возникшую ошибку, функция checkError() возвращает результат: положительный или отрицательный.

Тестирование советника

Теперь, когда написание советника для валютного хеджирования закончено, проведем тестирование.

Как видно, советник успешно открыл 1-й сет, дополнил недостающую позицию и открыл 2-й сет после изменения входных параметров.

Советник Buy_X начал открывать ордера 1-го сета

Советник Buy_X начал открывать ордера 1-го сета

Сигнал советника Buy_X об успешном открытии ордеров

Сигнал советника Buy_X об успешном открытии ордеров

Записи по работе советника Buy_X на вкладке Эксперт

Записи по работе советника Buy_X на вкладке Эксперт

Записи по работе советника Buy_X на вкладке Журнал

Записи по работе советника Buy_X на вкладке Журнал

Терминал - Торговля - Закрываем один из ордеров

Терминал — Торговля — Закрываем один из ордеров

Советник Buy_X на новом тике открывает недостающий ордер

Советник Buy_X на новом тике открывает недостающий ордер

Меняем настройки советника Buy_X

Меняем настройки советника Buy_X

Советник Buy_X делает доливку

Советник Buy_X делает доливку

Заключение

Далее в блоге я напишу, как добавить к советнику графическое сопровождение, чтобы на графике, где он работает было наглядно видно, собирается советник открывать ордера или нет.

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

Источник http://tlap.com/argo-averager/

Источник http://ulnavto.ru/skripty-dlya-raboty-na-foreks-sovetniki-i-skripty-dlya-vystavleniya.html

Источник http://cafeforex.ru/trading-blog/2011/06/20/%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%BE%D0%B2%D0%B5%D1%82%D0%BD%D0%B8%D0%BA%D0%B0-%D0%B4%D0%BB%D1%8F-%D0%BE%D1%82%D0%BA%D1%80%D1%8B%D1%82%D0%B8%D1%8F-%D1%81%D0%B5%D1%80%D0%B8%D0%B8-%D0%BE%D1%80%D0%B4%D0%B5%D1%80%D0%BE%D0%B2/

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *