ALL-IN-1 — СОВЕТНИК С ФУНКЦИЕЙ ЧАСТИЧНОГО ЗАКРЫТИЯ ТЕЙК-ПРОФИТА

СОДЕРЖАНИЕ:


Profiter — форекс советник для управления открытыми ордерами

В архиве советники для МТ4 и МТ5 терминалов.

Для того, что бы правильно установить советник в новый bild терминала МТ4, необходимо в открытом терминале выбрать меню «Файл», далее в контекстном меню выбираем «Открыть каталог данных». В появившемся каталоге находим папку «MQL4», внутри Experts, кладем файл советника (ex4) туда MQL4\Experts.

Перезапускаем терминал, или делаем обновление списка советников в окне навигатора.

Если у вас наблюдаются какие-то нюансы – убедитесь, что советник загружен корректно.

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

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

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

  1. Советник возьмет все ордера без magic number по валютной паре на которой он установлен.
  2. Закрывать несколько уровней take profit.
  3. Не мешает работе других советников (если другие советники ставят Magic Number).
  4. Устанавливать stop-loss в точке безубытка.
  5. Ваши уровни профита не видны для брокера.
  6. Советник работает как с четырьмя, так и с пятью знаками. Корректировки производить не надо.

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

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

Советник для этого и создан – для управления ручными позициями.

[!] Если активация советника приводит к закрытию терминала, то у вас старая сборка терминала. В таком случае рекомендуем его обновить. Версию сборки (билда) терминала всегда можно посмотреть в разделе «Справка», «О программе». Там же и будет информация о возможном обновлении.

На текущий момент новая и необходимая сборка 419.

На вкладке «Общие», настроек советника, необходимо установить галочки:

В разделе «Автоматическая торговля»


Разрешить советнику торговать: да

Ручное подтверждение: нет

В разделе «Безопасность»

Разрешить импорт функций из DLL: да

Ручное подтверждение: нет

Разрешить экспорт из внешних экспертов: да

Вкладка «Входные параметры» настроек советника

Советник Profiter — пастух для открытых ордеров в МетаТрейдере 4

Сегодня речь пойдет про управление открытыми ордерами! А поможет нам робот Profiter
Советник Profiter был разработан специально для того, чтобы управлять сделками открытыми вручную, он работает так, что брокер не видит его действий, что может помочь нам в определенных случаях, КТО В ТЕМЕ, ТОТ ПОЙМЕТ.
Данного советника мне дал мой читатель, а я решил написать о нем обзор, я думаю многим пригодится!

Советник Profiter — пастух для открытых ордеров в МетаТрейдере 4

В общем, сегодня нам в руки попался советник Profiter, который является частью комплексной системы получения прибыли, под общим названием FXNewsKiller (но речи не об этом). Важными частями этого аппарата являются:

  • 1. АвтоКлик. Представляет собой часть общей системы в виде программного модуля, который открывает ордера в соответствие с сигналами, идущими из Интернета. Работает в автоматическом режиме, нуждается в несложной подстройке пользователем. Об автоклике мы говорить не будет!
  • 2. Советник Profiter. Программный продукт, который помогает следить за сделками. На алгоритме функционирования этого робота мы остановимся подробнее.


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

Функции советника Profiter для управление ордерами

4,0,1,0,0

  • 1. Этот робот не взаимодействует с Автокликом.
  • 2. Призван управлять открытыми позициями.
  • 3. Работает со всеми ордерами без магических номеров по паре, на которую был установлен.
  • 4. Способен, в зависимости от среды, закрывать сделку несколькими уровнями тейкпрофита.
  • 5. Способен работать в паре с другими советниками, которые расставляют магические номера.
  • 6. Может установить стоплосс в зоне безубытка.
  • 7. Особенно важно, что уровни тейкпрофита не будут видны брокеру.
  • 8. Советник работает с брокерами, которые выдают котировки с четырьмя знаками, как и с теми, что поставляют пятизнаковые котировки. При этом не требуются корректировки.

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

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

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

Настройки робота Profiter

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

Присоединяя советника к графику, нужно обеспечить ему следующие опции. В разделе «Автоматическая торговля», нужно Разрешить советнику торговать и отключить — «Ручное подтверждение», а в разделе «Безопасность» Разрешаем импорт функций из DLL, отключаем «Ручное подтверждение» и «Разрешаем импорт из внешних экспертов».


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

14,0,0,1,0

Следуя логике представленных переменных, советник закрывает, например 0,1 лота при достижении профита в 10 пунктов. После чего он будет закрывать по одной десятой лота через каждые пять пунктов дохода. Это значит, что наша позиция закроется на плюс 10, плюс 15, плюс 20 и так далее. До тех пор, пока лот вхождения не закончится. Обратите внимание, этот алгоритм работает не только на Метатрейдер 5. Читай — как закрыть ордер частями

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

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

19,0,0,0,1

В общем информацию я вам дал, а там как использовать его, думайте сами! Можно к примеру дополнить функционал других Форекс советников (к примеру — Enertsii Money, что и как я использую подробно раскажу ВИП группе), или частично автоматизироать свои стратегии….

(5 оценок, среднее: 5,00 из 5)

Как скрыть стоп-лосс от брокера?

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

Тем трейдерам, которые торгуют, имея внушительные суммы на счету, знакома ситуация, когда цена «хвостом» свечи (буквально 1-2 пунктами) «цепляет» стоп-лосс ордера и выбивает его. Почему так происходит? Ответ прост – брокер «видит» стоп-лоссы ордеров и начинает «мухлевать» – дорисовывает на графике у нужной свечи «хвост» и закрывает «жирный» ордер в свою пользу! Эта ситуация возможна, когда стоп-лосс ставиться стандартными средствами терминала МТ4 и он виден на стороне брокера. Как этого избежать? Нужно скрыть стоп-лосс от брокера . Другими словами, при выставлении стоп-лосса информация о нем не должна оправляться программой МетаТрейдер 4 на общий терминал управления брокера. Вот об этой возможности (впрочем, как и о ещё целой куче дополнительных фишек) и пойдёт речь в сегодняшней статье.

Программа MetaTrader 4 — не только самая популярная торговая платформа у трейдеров всего мира, но также самая многофункциональная и удобная. С каждой новой версией терминала разработчики внедряют новые функции, устраняют баги предыдущих версий. Тем не менее, для доведения программы до совершенства ещё необходимо проделать много работы, и этим занимаются не только специалисты компании MetaQuotes . Кроме них есть и отдельные программисты, которые умеют создавать вспомогательные программы к терминалу. Создаются они обычно в виде скриптов и советников, но несут в себе роль дополнения к платформе. Одним из таких советников является VR Stealth Pro , созданный для внедрения ряда удобных функций с целью повышения эффективности использования терминала MT4.

В возможности советника VR Stealth Pro входит быстрое и удобное управление открытыми ордерами , как рыночными, так и отложенными, прямо в окне графика, автоматическое закрытие сделок в указанное время, а также такие интересные функции, как скрытие от брокера стоп-лосса и тейк-профита. Сам эксперт при этом не торгует, его основная задача — облегчить процесс торговли.

Бесплатно скачать советника VR Stealth Pro можно в разделе Маркет торгового терминала, вбив в поисковую строку его название:

Рис. 1. Советник VR Stealth Pro в Маркете торгового терминала.

В этом случае после скачивания советник установится автоматически.

Настройки советника VR Stealth Pro .


Советник VR Stealth Pro имеет ряд настроек, с которыми трейдер начнет знакомство при его перетягивании на график:

Рис. 2. Входные параметры эксперта VR Stealth Pro .

Во входных параметрах видим следующие переменные:

  • — Trade Panel settings — настройки торговой панели;
  • — Start Lots — начальный торговый лот. Задавать параметр можно из панелей, которые будут отображаться на графике;
  • — Order Distance — расстояние для открытия отложенного ордера от текущей цены;
  • — Order Arrow — включает/выключает отображение терминальных значков при изменении ордеров;
  • — Magic — магический номер советника, который присваивается ордерам. При значении переменной, равной 1 — советник следит за всеми ордерами в терминале, при 0 — открытые вручную трейдером, а при любом другом значении — свои или ордера, открытые другим советником (при условии, что их «магики» совпадают);
  • — Slip — допустимое проскальзывание.

Настройки контроля ордеров:

Следует понимать, что все данные о стоп-лоссе и тейк-профите советник выставляет «виртуально» – они хранятся в его памяти и не передаются брокеру. Именно это свойство позволяет прятать SL и TP открытого ордера от брокера – он просто не видит его! Кстати, эта же особенность позволяет обойти ограничения брокера в выставлении стопа и профита — помните надпись при модификации ордера – Вы можете установить Стоп Лосс и Тейк Профит не ближе N пунктов от рыночной цены ? Благодаря советнику VR Stealth Pro их можно выставить на расстоянии даже 1 пункт!

Итак, давайте разберём параметры, благодаря которым можно контролировать рыночные и отложенные ордера:

  • — Stop Loss — стоп-лосс по умолчанию, который задается ордерам, открываемым советником. После открытия сделки его можно изменить прямо на графике, перетащив уровень мышкой;
  • — Take Profit — аналогично стоп-лоссу задается по умолчанию и может изменяться на графике;
  • — Breakeven — расстояние, после прохождения которого ценой, ордер будет переводиться в безубыток;
  • — Breakeven Step — минимальный размер прибыли, который должен быть достигнут, чтобы ордер перевелся в безубыток;
  • — Trailing Stop — размер трейлинг-стопа;
  • — Button Size — задаёт размер кнопок управления ордером;
  • — Button Stop Loss — включает/выключает кнопку SL;
  • — Button Take Profit — включает/выключает кнопки TP;
  • — Button Breakeven — включает/выключает кнопку функции безубытка;
  • — Button Trailing Stop — включает/выключает кнопки трейлинг-стопа;
  • — Button Time Close — включает/выключает кнопку закрытия или удаления ордера по времени;
  • — Button Info — включение/отключение кнопки, отвечающей за показ полной информации по ордеру;
  • — Edit Field Lots Close — включение/отключение строки редактирования размера лота для частичного закрытия сделки;
  • — Vertical Line Level — включение/отключение отображения линий TP и SL;
  • — Default Stop Loss — включение/отключение функции установки SL при открытии сделки;
  • — Default Take Profit — включает/выключает установку TP;
  • — Default Breakeven — включает/отключает функцию перевода в безубыток при открытии ордера;
  • — Default Trailing Stop — включает/отключает установку трейлинг-стопа при открытии сделки;
  • — Default Time Close — включение/отключение установки времени для удаления, открытия или закрытия ордера;
  • — Default Info — включает/отключает демонстрацию окна с информацией о сделке.

Во втором блоке представлены настройки торговых сессий: название сессии со словом Start и Stop — начало и конец соответствующей торговой сессии. Параметр Step Line Alert задаёт дистанцию для линий «Алерта».

Следующий блок дополнительных настроек:

  • — Sound — включает/отключает звук при открытии и закрытии ордеров;
  • — Logs — при включенной функции будут вестись логи, при off — логи не ведутся;
  • — Chart — ведутся только на графике;
  • — Excel — пишутся только в файл программы Excel;
  • — Chart_and_Excel — ведутся и на графике, и в файл Excel.

При выставлении настроек следует учитывать следующий момент: для четырехзначных счетов выставляются двузначные значения настроек, для пятизначных — трехзначные значения! После установки всех параметров кликаем по кнопке ОК .

Работа с VR Stealth Pro .

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

Рис. 3. Функционал эксперта VR Stealth Pro .

В блоке меню (1) представлены следующие функции:


  • — Lots — изменение размера торгового лота;
  • — Buy/Sell — быстрая установка ордеров на покупку и продажу соответственно;
  • — Buy Limit и Sell Limit — отложенная заявка на покупку/продажу по цене ниже/выше текущей цены;
  • — Buy Stop и Sell Stop — отложенная заявка на покупку/продажу по цене выше/ниже текущей.
Эта статья приведёт Вас к успеху:  ФОРЕКС ИНДИКАТОР SUNRISE

После открытия сделки, под линией ордера появится ряд кнопок быстрого доступа (2) к перечисленным ранее возможностям утилиты:

  • — <> — позволяет перемещать линию;
  • — V — свернуть;
  • — Sl — возможность установки SL;
  • — Tp — кнопка установки TP;
  • — Br — включение функции безубытка;
  • — Tr — включение функции трейлинг-стопа;
  • — Ti — указывается время закрытия ордера;
  • — In — информация о сделке;
  • — X — кнопка, закрывающая ордер;
  • — 0.01 — текущий лот ордера.

Аналогичные кнопки доступны и для работы с отложенными ордерами.

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

  • — TradeMenu — позволяет перемещать и фиксировать торговое меню советника;
  • — Grid — отвечает за выставление горизонтальных и вертикальных циклических линий;
  • — Session — с её помощью можно отобразить на графике периоды Азиатской, Европейской и Американской торговых сессий (кликните для увеличения):

Рис. 4. Выделение торговых сессий при помощи функционала VR Stealth Pro .

Рис. 5. Функция отображения времени советника VR Stealth Pro .

Рис. 6. Установка виртуальных ордеров при помощи функционала VR Stealth Pro .

Заключение.

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

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

Чтобы освоить все нюансы работы с советником VR Stealth Pro , рекомендуется потренироваться в овладении его функционалом на демо-счёте.

Советники ДЛЯ ЗАКРЫТИЯ ПОЗИЦИЙ в различных торговых ситуациях


Есть скрин статистики этого советника? Сколько месяц уже торгует? Вот этих данных в советнике в каком месте можно найти эти данные? И редактирование только в мета эдиторе?

[quote=»4x_trader»][b][color=#0000FF]exp_AccountProfitTrailing_v1[/color][/b] — Советник, автор которого пожелал остаться неизвестным, осуществляющий [color=#0000FF]трейлинг прибыльного состояния счёта и закрытие всех позиций при достижении указанной в настройках просадки состояния счёта (Equity) относительно баланса в процентах[/color].
[b]Внешние параметры советника:[/b]
TakeProfit_ON — Включения тейкпрофита по проценту Эквити/Баланс
TakeProfitPercent — Процент прибыли
StopLoss_ON — Включения стоплосс по проценту Эквити/Баланс
StopLossPercent — Процент убытка
Trailing_ON — Включения трейлинга по проценту Эквити/Баланс
TrailingStartPercent — Процент Эквити/Баланс при котором начинается перемещение уровня закрытия
TrailingLevelPercent — Величина снижения процента Эквити/Баланс, при котором выполняется закрытие
ShowComment — Показывать комментарий.
UseSendMail — Использовать передачу почтовых сообщений
MinCangesPercent — Минимальное изменение приыбыли при котором отсылается емайл
Slippage — Допустимое проскальзывание
NumberOfTry — Количество торговых попыток после ошибки
PauseAfterError — Пауза после ошибки в секундах[attachment=0]exp_AccountProfitTrailing_v1.mq4[/attachment][/quote]

Есть скрин статистики этого советника? Сколько месяц уже торгует? Вот этих данных в советнике в каком месте можно найти эти данные? И редактирование только в мета эдиторе?

VR Stealth Pro — невидимый для брокера советник

Советник-торговая панель скрывает торговые уровни и предназначен для упрощения торговли трейдера.

Интерфейс советника интуитивно понятен и прост. Советник скрывает торговые уровни Take Profit, Stop Loss, Breakeven, Trailing Stop. Скрытие происходит путем виртуализации уровней на терминале трейдера. Вместо реальных уровней советник работает с графическими объектами — линиями. Все торговые операции выполняются в терминале трейдера. С помощью данной программы открытие, закрытие, модификация ордеров происходят с помощью мышки и в один клик. Советник устроен так, чтобы максимально сократить время работы трейдера с торговыми позициями. В отличие от многих других программ, VR Stealth Pro имеет торговую панель и панель управления ордером, каждый ордер имеет свою панель. Программа может работать на всех типах счетов (демо, реальные счета, тестер стратегий).

Программа VR-Stealth-Pro писалась с целью защитить торговые уровни трейдера, автор программы торгуя у брокера заметил то что называется «Умышленным сносом стопов». То-есть брокер выбивал стоп лоссы на 1-5 пунктов и цена уходила в прогнозированном ранее направлении. Так же опытные трейдеры не раз писали о «Странном поведении цены», например для BUY ордера установлен TakeProfit по цене 1,30000, соответственно ордер должен быть закрыт когда цена Bid будет равна 1,30000, но на практике часто бывало что цена Bid не доходила 1-2 пункта до уровня TakeProfit, а цена Ask уходила на 100-400 пунктов дальше. Обычно брокеры аргументируют подобные ситуации плавающим спредом. То есть брокер говорит что в этот момент рыночный спред составил 100-400 пунктов. Программа VR-Stealth-Pro написана для того что бы скрыть торговые уровни. Если вы подозреваете своего брокера в нечестном поведении данный советник поможет Вам в работе. Программа распространяется бесплатно в закрытом коде.

По своей сути VR Stealth Pro — это лайт версия торговой панели VR Trade Panel

Возможности VR-Stealth-Pro

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

Важно: программа не работает в выключенном терминале MetaTrader. Программа VR-Stealth-Pro работает на Вашем терминале MetaTrader 4 , приказы на закрытие, модификацию, удаление и открытие ордеров отправляются с Вашего терминала. На сервере брокера хранится только цена открытия и цена отложенного ордера. В случае если Ваш терминал MetaTrader 4 закрыт или отключен от интернета, Ваши ордера остаются без контроля. Приказы на закрытие, модификацию не выполняются. Учитывайте данную информацию в своей работе. Обязательно нужно учитывать параметр проскальзывание (Slip).

Настройки советника VR Stealth Pro:

Trade Panel Settings

  • Start Lots — начальный лот для торговли. Можно изменять из панелей торговли

  • Step Lots — шаг увеличения лота при клике в торговой панели на графике
  • * Order Distance — дистанция для отложенных ордеров от текущей цены
  • Magic Number — уникальный номер советника. При установке программы на разные графики и на один и тот же инструмент, чтобы не было конфликта программ, Magic Number нужно изменить. Учет ордеров — при -1 все ордера в терминале, 0 только ручные, >0 только свои или ордера другого советника
  • * Slippage — проскальзывание (отклонение от текущей цены)
  • Order Arrow — отображение терминальных значков при открытии, закрытии, модификации ордеров
  • Sound — включение/отключение звуковых сигналов

Orders Control Settings

  • * Stop Loss — стартовый стоп-лосс по умолчанию, можно изменять вручную на графике путем перетаскивания линии мышкой
  • * Take Profit — стартовый тейк-профит по умолчанию, можно изменять в ручную на графике путем перетаскивания линии мышкой
  • * Breakeven — дистанция для установки безубытка
  • * Breakeven Step — минимальная прибыль при установке безубытка
  • * Trailing Stop — подтягивание стоп-лосса за ценой в прибыльную сторону
  • Button Size — размер кнопок управления ордером
  • Button Stop Loss — включение/отключение кнопки стоп-лосса
  • Button Take Profit — включение/отключение кнопки тейк-профита
  • Button Breakeven — включение/отключение кнопки безубытка
  • Button Trailing Stop — включение/отключение кнопки трейлинг-стопа
  • Button Time Close — включение/отключение кнопки закрытия/удаления ордера по времени

  • Button Info — включение/отключение кнопки полной информации о ордере
  • Edit Field Lots Close — включение/отключение поля редактирования лота для частичного закрытия ордера
  • Vertical Line Level — включение/отключение вертикальных линий тейк-профита и стоп-лосса
  • Default Stop Loss — включение/отключение установки стоп-лосса при открытии ордера
  • Default Take Profit — включение/отключение установки тейк-профита при открытии ордера
  • Default Breakeven — включение/отключение установки безубытка при открытии ордера
  • Default Trailing Stop — включение/отключение установки трейлинг-стопа при открытии ордера
  • Default Time Close — включение/отключение установки времени для закрытия/удаления ордера при открытии ордера
  • Default Info — включение/отключение показа окна с информацией о открытом ордере

Indicator Settings

  • Days — количество дней для отображения сессий
  • W > * Зависимость количества знаков после запятой. То есть если у 4х значного брокера Тейк Профит указывался 50 пунктов, то для 5 значного брокера будет 50*10=500 пунктов.

Пример: Для 5 значного брокера в настройках указываем 500 для 4х значного 50.

Версия 16.120 — 2020.12.13
Сделана более жёсткая проверка стоп лоссов и тейк профитов

Версия 16.42 — 2020.04.15
Исправлено перемещение панели открытия ордеров при смене окна графиков в терминала.

Версия 16.41 — 2020.04.05
Внесено улучшение для функции BarTime
Теперь если метка времени выделена, она может быть размещена на любом месте графика. Если с метки выделение снято, метка фиксируется на расстоянии 3 баров от текущего бара и по цене Аск.


Версия 16.14 — 2020.01.22
Исправлено:
Отображение торговых уровней.
Возможность выставлять и двигать реальные уровни.

Версия 16.13 — 2020.01.21
Добавлена возможность отключать неиспользуемые инструменты из панели инструментов.

Версия 16.12 — 2020.01.08
Исправлена ошибка выхода за пределы массива.
(Ранее ошибка приводила к остановке программы и возникала в индикаторе торговых сессий)
Если торговые сессии отображаются неверно, загрузите минутную историю инструмента.

Версия 16.11 — 2020.01.06
Добавлено:
Метка состояния советника:
Справа вверху появилась собственная метка советника с именем программы и своим значком, при наведении мышки на смайлик всплывет подсказка о настройках программы. При клике на смайлик также откроются настройки советника. (Что нужно сделать чтобы советник правильно работал, подсказка имеет две локализации RU и EN).

Информационный инструмент Time который выводит время сервера брокера, локальное время трейдера, время до конца бара (Цвет времени до конца бара можно изменить в настройках программы Color End Bar Time = clrRed.)

Изменено:
При выделении линии теперь появляются ценовые метки, при перетаскивании уровней стоп лосса, тейк профита, теперь видна цена. Цена появляется если линия активна и выделена.

Версия 16.1 — 2020.12.23
Обновлен дизайн программы
Добавлено окно информации о разрешении торговать советниками
Переработаны все звуки

Версия 15.100 — 2020.10.21

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

Версия 15.90 — 2020.09.23
1. Возможность прятать панель управления ордером
2. Выставлять ордера с предустановленными стопом, тейком и другими параметрами
3. Самому выбирать в настройках необходимые кнопки управления
4. Убран индикатор АТР, так как он сильно грузил программу
5. Убрана кнопка Del All
6. Частичное закрытие ордера теперь только при ручном контроле, то есть только при нажатии на кнопку X.
По тейк-профиту или стоп-лоссу ордер закрывается полностью. Ранее по тейку можно было закрыть часть позиции, но это могло спровоцировать проблемы
7. Исправлена работа звука при смене таймфрема
8. Обьектам программы повышен приоритет при клике мышью
Масса других улучшений, исправлений и решение старых проблем.

Версия 15.80 — 2020.08.11
Улучшено:
Кнопки управления ордерами подсвечиваются согласно типу ордера.
Для бай ордеров в светло-голубой, для селл светло-красный.

Исправлено:
1. удаление объектов.
2. звук при переключении периода.

Версия 15.72 — 2020.07.03
Исправлено отображение строки авторства.

Версия 15.71 — 2020.07.02
Добавлено:
Настройки инструмента алерт:
StepLineAlert=300; // Дистанция для линий по умолчанию
StepSignalAlerSek=3; // Периодичность сигналов в секундах

Версия 15.57 — 2020.06.29
Исправлено:
Баг «Close order Stop Loss»
Баг «Неверный номер тикета»

Версия 15.53 — 2020.05.22
Исправлено:
1 — Отображение надписи при вызове индикатора АТР
2 — Закрытие ордеров при нажатии на кнопку Х , ранее если менялся лот в частичном закрытии, то при закрытии на Х, ордер закрывался частично. Теперь при нажатии на кнопку Х ордер полностью закрывается или удаляется.

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

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

Версия 15.51 — 2020.05.19
Доработано:
Теперь возможен более плавный выбор лотов

Исправлено:
Отображение надписи, которая появляется при создании советников на основе VR-Stealth-Pro


Версия 15.50 — 2020.05.14
Советник полностью переписан с нуля
Улучшено отображение ордеров
Добавлен инструмент Time
Добавлена возможность импорта функций в другие советники
Добавлена возможность изменять размеры кнопок и текста
Масса других улучшений и оптимизаций

Версия 15.13 — 2020.02.09
Добавлено:
Возможность закрытия части позиции по тейк профиту.

Версия 15.12 — 2020.01.30
Исправлено:
Работа стоп-лосса и тейк-профита

Версия 15.11 — 2020.01.29
Исправлено:
Работа трейлинг-стопа и безубытка.

Версия 15.1 — 2020.01.27
Добавлена функция выставления виртуальных отложенных ордеров

Версия 14.12 — 2014.12.24
Исправлена ошибка «Файл не прочитан».
Отключена возможность рисования.

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

Версия 3.52 — 2014.10.22
Исправлено:
— Исправлены кнопки согласно 735 билда (теперь текст отображается правильно).
— Функция проверки новой версии теперь работает корректно.

Добавлено:
— Теперь при запуске советник сам переводит график на задний план (сам снимает галочку в настройках «График сверху»).
— Добавлена возможность выбора: графические метки или линии на уровнях виртуального стоп лосса и тейк профита. Выбор делается в настройках Typ_TP_SL_Obj: можно выбрать Arrow или Lines
— К каждому ордеру добавлена кнопка (In). Показывает всю информацию о ордере, прибыль, убыток, соотношение, и др.

Добавления внесены по просьбам пользователей.

Версия 3.51 — 2014.10.08
Исправлено:
Теперь при модификации/закрытии ордеров значки не отображаются.
График остаётся чистым.

Изменено:
Размер панели управления уменьшен по ширине, теперь стал еще более компактным.

Добавлено:
Функция проверки новой версии.
В правом верхнем углу появилась кнопка со знаком [ ! ],
функция автоматически с периодичностью раз в 10 дней проверяет наличие новой версии на сайте mql5, данный адрес должен быть добавлен в настройках терминала в разрешенные URL. В случае если есть новая версия, кнопка будет светиться красным цветом, а при нажатии отобразит Вашу версию советника и версию нового советника на сайте.

Версия 3.5 — 2014.10.02
Исправлено:
Звук при приходе нового тика теперь работает корректно.

Добавлено:
Панель для рисования. Панель активирует кнопка Draw, появляются еще 2 кнопки для выбора цвета и полного удаления всего нарисованного.

Версия 3.4 — 2014.09.12
Исправлено поведение кнопок управления ордерами при смене таймфрема
Добавлена возможность отключения комментариев в нижнем левом углу (LogChart=false)

Архив содержит файлы:

VR-Stealth Pro.ex4 для MetaTrader 4

Help_VR_Stealth_Pro_RU.chm — Файл справки на Русском языке


Help_VR_Stealth_Pro_EN.chm — Файл справки на Английском языке

В случае если справка пустая, разблокируйте ее правым кликом мыши.

Обсуждение на форуме здесь: Зайти в тему форума

Советник устанавливает стоп лосс и тейк профит

Добавте к нему усреднение при открытии последующих ордеров
Усреднение ТП то есть первоначальный ТП с учётом ного ордера и на выбор СЛ(или с усреднением,или как ТП-среднее от всех
И все с функцией тру/фалс

Добавте к нему усреднение при открытии последующих ордеров
Усреднение ТП то есть первоначальный ТП с учётом ного ордера и на выбор СЛ(или с усреднением,или как ТП-среднее от всех
И все с функцией тру/фалс

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

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

Простите-а тогда в чём смысл бесплатного,если изначально-цель-продать лучшее.Или Бесплатный изначально будет не айс,как задумано ))

Сова она или работает или не работает.
А поход в кассу-это только форма её донести до масс.

Может я Вас удивлю, но у меня нет задачи что то доносить до масс, ни советники ни кассу.

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

Реализация Take Profit в виде лимитных ордеров без изменения оригинального кода советника

Содержание

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

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

1. Проблематика вопроса

Наверное, нет смысла вступать в полемику «что лучше — встроенный в MetaTrader 5 алгоритм работы тейк-профита позиции или его подмена лимитными ордерами». Я думаю, каждый должен сам решить этот вопрос, исходя из принципов и требований используемой стратегии. В данной статье я лишь хочу предложить всем желающим альтернативу и право выбора.

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

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


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

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

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

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

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

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

  1. Если мы вносим изменения в код такого советника, то, дабы не искать все возможные варианты изменения тейк-профита в коде, мы просто подменяем вызов функции OrderSend на вызов метода нашего класса, где уже и проверяем наличие выставленного ранее лимитного ордера и соответствие его новому уровню. В случае необходимости изменяем ранее выставленный ордер. Или игнорируем команду, если ранее выставленный лимитный ордер соответствует новым требованиям.
  2. Мы используем купленный советник и у нас нет доступа к его коду; наша программа не открывает позицию, а только осуществляет подмену тейк-профита. В таком случае, велика вероятность появления тейк-профита у позиции, к которой мы уже ранее выставили лимитные ордера. И тогда мы должны перепроверить существующие лимитные ордера на актуальность и скорректировать их. При этом обнулить поле тейк-профита позиции.

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

2. Принципы построения связи позиция — лимитный ордер

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

Потенциально, изменение позиции может произойти в любой момент, когда открыта торговая сессия. Но фактически, это происходит не так уж и часто, а проверка на каждом тике значительно увеличит выполняемые советником операции. И тут нам на помощь приходят события. В документации MQL5 мы находим «событие Trade генерируется при завершении торговой операции на торговом сервере». В результате этого события запускается функция OnTrade. Следовательно, запускать функцию проверки соответствия открытых позиций и выставленных лимитных тейк-профитов мы можем из этой функции. Это позволит нам не проверять соответствие на каждом тике и, в тоже время, не пропустить никаких изменений.

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

3. Создаем класс лимитного тейк-профита

Подытожим вышесказанное. Функциональность нашего класса можно разделить на 2 логических процесса:

  1. Внесение изменений в отправку торговых приказов на сервер.
  2. Мониторинг и корректировка открытых позиций и выставленных лимитных ордеров.

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

Методы Magic, OnlyOneSymbol, AddTakeProfit и DeleteTakeProfit являются методами настройки работы класса. Magic — указывает по каким меджик номерам отслеживать позиции (применимо к хедж-счетам), при указании «-1» класс будет работать со всеми позициями. OnlyOneSymbol дает указанию классу работать только с позициями инструмента графика, на котором запущен советник. Методы AddTakeProfit и DeteleTakeProfit предназначены для добавления и удаления уровней фиксированного тейк-профита с указанием закрываемого объема в процентах к начальному объему позиции.

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


3.1. Блок внесения изменений в отправку торговых приказов

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

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

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

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

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

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

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

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

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

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

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

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

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

Для полноты картины рассмотрим алгоритм метода CheckLimitOrder. Функционально данный метод проверяет наличие выставленного ранее лимитного ордера по подготовленному торговому запросу. При наличии уже выставленного ордера метод возвращает значение true и новый ордер не выставляется.

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

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

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

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


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

В зависимости от типа счета у нас возможно два варианта отработки лимитного ордера:

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

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

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

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

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

3.2. Блок обработки торговых операций

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

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

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

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

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

В завершении цикла вызовем метод SetTakeProfits для проверки и выставления лимитных ордеров по позиции. Алгоритм метода был описан выше.

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

Алгоритм этого метода построен на переборе всех выставленных ордеров, среди которых по комментариям отбираются наши ордера.

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

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

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


4. Интеграции класса в советник

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

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

Вторым шагом ниже кода нашего класса создадим функцию LimitOrderSend с параметрами вызова, аналогичными функции OrderSend, единственным функционалом которой будет вызов метода CLimitTakeProfit::OrderSend. Затем с помощью директивы #define осуществим подмену оригинальной функции OrderSend на нашу. Применение такого метода дает возможность подставить наш код сразу во все функции советника, отправляющие торговые запросы. Что избавит нас от долгого поиска таких команд по всему коду советника.

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

Далее, для интеграции класса в советник нам остается добавить ссылку на файл нашего класса с помощью директивы #include. Но не забываем, что наш класс должен идти до вызова других библиотек и кода советника. Ниже приведен пример добавления класса к советнику MACD Sample.mq5 из стандартной поставки терминала.

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

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

С полным кодом советника можно ознакомиться во вложении.

Заключение

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

Тема: Советник Take Profit

Опции темы
Поиск по теме
Отображение
  • Линейный вид
  • Комбинированный вид
  • Древовидный вид

Местный Регистрация 12.07.2020 Адрес Барнаул Сообщений 119

Благодарности
Получено: 69
Отправлено: 0

Советник Take Profit

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

Торговый алгоритм советника Take Profit.

Исходный код в этот раз мне тоже не удалось достать, но судя по тестам на истории, советник просто в определенный момент открывает позицию в сторону движения рынка, и если движение продолжается, то мы соответственно получаем прибыль по тейк-профиту, а если рынок идет не в нашу сторону, то советник начинает процесс усреднения позиции, параллельно с этим увеличивая торговый лот, что соответственно не благоприятным образом сказывается на риске.
На первый взгляд, советник Take Profit кажется каким-то банальным и ничем не примечательным, многие даже могут сказать, что это обычный «Мартингейльщик», но если вы возьметесь тестировать этого робота на разных инструментах и на разных тайм-фреймах, даже не меняя параметров, то по результатам его тестов можно видеть, насколько график одной валютной пары отличается от графика другой.
Это полезно еще и для того, если вы захотите подогнать параметры вручную, чтобы понять, как именно влияют изменения того или иного параметра на результаты торговли данного советника. И из этого собственно можно вынести то, какие параметры для вас более предпочтительны для оптимизации, а какие нет. Какие из них больше влияют на результат, на просадку или на прибыльность, тут уж кому, что важнее.
Про тестирование робота я еще подробно напишу чуть позже в соответствующем разделе статьи.

Технические характеристики советника Take Profit.

Рекомендуемые инструменты для торговли данным советником, это валютные пары GBP/USD, GBP/JPY, а так же золото (GOLD или XAU/USD) с 4-х часовыми тайм-фреймами.
В целом же, требования к советнику намного мягче, так как его стратегия достаточно универсальна, что позволяет использовать практически любой финансовый инструмент с практически любым тайм-фреймом. Главное к выбранному графику правильно подобрать параметры.
Минимальный депозит для торговли начинается с $500, а рекомендуемый с $2000. Если у вас нет таких средств для торгового счета, то вы можете воспользоваться услугой центовых счетов, которую на сегодняшний день предлагают практически все форекс брокеры.

Параметры советника Take Profit.

  • Lots — начальный торговый лот;
  • TakeProfit — величина тейк-профита в пунктах, для отдельного ордера или для группы ордеров;
  • UseTrailing — активация трейлинг-стопа;
  • TrailStart — количество пунктов, после которого начинает действовать трейлинг-стоп;
  • TrailStop — размер профита, после которого трейлинг-стоп останавливается;
  • MaxCountOrders — максимальное количество открытых ордеров в одной серии;
  • SafeEquity — активация отслеживания максимальной просадки по торговому счету;
  • SafeEquityRisk — величина максимальной просадки от начального торгового баланса, после которого советник остановит свою торговлю, в процентах;
  • Slippage — максимальной отклонение цены в пунктах при выставлении торговых ордеров;
  • MagicNumber — «магический номер» ордеров, для того чтобы советник мог отличать свои сделки от чужих.

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

Тестирование и оптимизация советника Take Profit.

Сразу хочу сказать, что оптимизацию я не проводил, так как и на стандартных параметрах советник показывает достойные результаты.
Тут стоит заметить, что эти достойные результаты зависят не только от финансового инструмента, но и от тайм-фрейма. Все это вы можете заметить, если проведете свои тесты на исторических данных, я же вам покажу только часть из них.
Для тестов я выбрал валютную пару GBP/USD, так как она есть в рекомендуемых инструментах и является основной валютной парой на рынке форекс. Протестировал я практически все тайм-фреймы за 2014-ый год и вот что получилось.
На минутном графике советник всегда сливал в конце, какие бы параметры я не менял. На часовом графике было практически тоже самое.
После этого я прочел в рекомендациях то, что необходимо выбирать 4-х часовой тайм-фрейм для всех валютных пар и на этом периоде советник сразу выдал достойные торговые результаты на стандартных параметрах. После этого я протестировал его еще и на 5-ти минутном графике и на нем результаты резко отличались от тех, что были на минутном.

Тестирование советника на 5-ти минутном графике Фунта:


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

Советник Take Profit хорошо подойдет тем, кто хочет просто «срубить» денег на рынке и при этом не «заморачиваться» с торговой стратегией. Такой подход конечно является сильно рискованным, но в случае удачи позволит увеличить депозит в несколько раз, так как Мартингейл все равно нельзя отключить в параметрах, и он будет использоваться в любом случае. Скачать >>ТЫК

    Opentraders — это независимое сообщество, создаваемое трейдерами и для трейдеров. Присоединяйтесь, нам по пути!
  • Войти
  • Регистрация
oyama
Александр

Группа «Стол заказов MQL»

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

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

Не забывайте указывать платформу: MT4 или MT5

Свыше 1000 заказов уже выполнено бесплатно!

** уровень должен быть 3 или выше, чтобы заказ был рассмотрен штатным программистом Стола (см. правила)

РЕКОМЕНДУЮ

Лучшее от oyama

Путь самурая 2
2020-10-10 12:41:01

Просто совпадения ? 11
2020-10-31 18:38:17

Неделя 4
2020-08-28 11:12:33

Три сына. 1
2020-09-11 11:43:15


Кросс на кроссе. 2
2020-10-30 09:08:13

Для частичного закрытия .

  • Стол заказов MQL

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

  • разное
  • Просмотров: 3573
  • 17 сентября 2020, 12:26
  • oyama

Комментарии ( 31 )

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

Сейчас в советнике 4 лота и 4 тейка: www.opentraders.ru/downloads/872/

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

Может я чего не так делаю, но у меня не закрывает ничего

Открыл советником ордер, закрывает как положено. Магик выставили в 0?

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

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

28 AM2 Сообщений: 9700 — Андрей

Немного поправил, гоняю дальше.

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

28 AM2 Сообщений: 9700 — Андрей

Также отработал и на бай:

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

7 PetrovMaxim Сообщений: 117 — Максим

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

28 AM2 Сообщений: 9700 — Андрей

17 oyama Автор Сообщений: 349 — Александр

17 oyama Автор Сообщений: 349 — Александр

ЧАТ ТРЕЙДЕРОВ

Быстрое соединение

  • alterego
  • ShamanHand

Рейтинг брокеров FOREX

Из недавнего:


  • poker
    28 сентября 2020, 20:27
    АК 12 🙂 просто и надежно (сов под МТ4) ( 11 ) в Стол заказов MQL
    Ну все равно это будет работа, возможно нам кажется просто. <>[Читать..]
  • Homya4ek
    28 сентября 2020, 20:17
    Результаты баттла #315 ( 1 ) в Конкурсы и акции OpenTraders
    с ума сойти! впервые я первый! :: <>[Читать..]

  • crypton
    28 сентября 2020, 16:06
    Почему упал курс биткоина? ( 3 ) в Экономические новости
    Думаю тут было уже следствие <>[Читать..]
  • Andrey1979
    28 сентября 2020, 15:26
    Обзор сигнала «EA HTMiX PROM5» ( 1 ) в Торговые системы
    Здорово, как вариант прикрутить ещё одну машку, которая. <>[Читать..]
  • juozas
    27 сентября 2020, 22:44
    10 лет OpenTraders! ( 17 ) в Прожектор Opentraders
    Я как и все ::
    Всех благ <>[Читать..]
  • bezarsen1234
    26 сентября 2020, 21:06
    Советник KB ( 9 ) в Стол заказов MQL
    Похожий советник, но там нет фильтра.
    <>[Читать..]
  • Sasha8989
    26 сентября 2020, 21:03
    Здравствуйте , прошу написать простого советника по индикатору для mt4 (новая запись) ( 2 ) в Стол заказов MQL
    Спасибо большое. <>[Читать..]
  • alex30774
    26 сентября 2020, 19:45
    Здравствуйте , прошу написать простого советника по индикатору для mt4 . ( 5 ) в Стол заказов MQL
    По этому индикатору есть уже советник.Это болинджер пе. <>[Читать..]
  • IrinaNic
    26 сентября 2020, 18:15
    Прогноз форекс на 26.09.2020 ( 1 ) в Блог им. artsiomheliy
    Артём, спасибо за прогноз. Сегодня по евродоллару сходила. <>[Читать..]

  • AM2
    26 сентября 2020, 17:26
    В сове сменить индикатор. ( 9 ) в Стол заказов MQL

    каждый советник будет торговать строго по своему с. <>[Читать..]

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

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