Полуавтоматический советник по сопровождению открытой позиции. |
Здравствуйте, прошу, Вас, написать полуавтоматический торговый советник, по выводу открытой позиции из просадки, в безубыток.
Правила и принцип работы ТС: «Breakeven»
1) Первый ордер мы открываем самостоятельно, вручную.
2) ТР и SL отсутствуют.
3) Без индикаторов и осцилляторов.
4) Нам нужно будет:
а) локирующий ордер.
Б) TSL, с одинаковыми параметрами, на все открытые позиции.
В) BUPoint уровень безубыточности.
Г) все мелкие составляющие: магик, Slip, BULevel, TSLstart и TSLstеp.
д) алерты.
Если, после открытия позиции, предположим SELL 1, цена пошла в нашу сторону, то просто её тралим, если против, то через N количество пунктов открывается локирующий ордер BUY 1 с объёмом ордера SELL 1. У нас получается как бы «канал» с границами на ордере SELL 1 и ордере BUY 1, и если цена вернулась в «канал» и TSL или BUPoint у ордера BUY 1 не успел сработать, то и Бог с ней, советник должен ждать выхода цены из «канала» (не важно в какую сторону) и отработки TSL или BUPoint. Далее, два варианта развитие ситуации:
1. Цена продолжила движение в сторону BUY 1, у которого активируется TSL или BUPoint c заданными параметрами. Как только цена развернулась и TSL или BUPoint сработал, закрыв ордер BUY 1, сразу же открывается два ордера: ордер SELL 2 по рынку, (на месте закрытия ордера BUY 1), с таким же лотом как у SELL 1 (не нужно мартышки), а закрывшийся ордер BUY 1, переносится, как новый отложенный локирующий ордер BUY 1 на расстоянии N пунктов от отработанного уровня, с объёмом лота, уже, SELL 1 + SELL 2. И далее три варианта развития ситуации:
а) Советник сразу определяет и показывает уровень безубыточности по двум открытым ордерам SELL 1 и SELL 2, при достижении и ПРОХОДЕ которого, так же должен включиться TSL и BUPoint, при срабатывание которых, все ордера удаляются и советник будет ждать, открытия новых позиций.
б) Цена не дошла до уровня безубыточности, а У ордера SELL 2 уже активировался TSL или BUPoint, и ордер SELL 2 закрылся по ним, то отложенный локирующий ордер BUY 1, с объёмом лота SELL 1 + SELL 2, ЗАКРЫВАЕТСЯ, и сразу же открывается по рынку, на месте закрытия ордера SELL 2, с объёмом лота опять как у SELL 1. Получается, что мы возвращаемся к первоначальному состоянию «каналов», но уже немного суженого и с плюсом на баланс, от BUY 1 и SELL 2.
в) Цена пошла в сторону отложенного ордера BUY 1, не активировав TSL или BUPoint ордера SELL 2, то ЦИКЛ ПОВТОРЯЕТСЯ ЗАНОВО: у ордера BUY 1 активируется и СРАБАТЫВАЕТ TSL или BUPoint, закрыв ордер BUY 1 и сразу же открываются два новых ордера: следующий ордер SELL 3 по рынку, с объёмом как и SELL 1,(на уровне отработанного ордера BUY 1) и опять выставляется НОВЫЙ отложенный локирующий ордер BUY 1, с объёмом уже SELL 1 + SELL 2 + SELL 3, на расстоянии N пунктов от отработанного уровня. Мы опять возвращаемся к первоначальному состоянию «каналов», но с границами от уровня безубыточности ордеров SELL 1 + SELL 2 + SELL 3 и ордера BUY 1, с плюсом на баланс от закрывшегося ордера BUY 1, ну и с нагрузкой на депозит конечно.
Поэтому прошу, Вас, в параметрах настройки, поставить ограничение на открытие ордеров в первоначальном направлении (в данном случае SELL), на N количество, где 0, это запрет на выставление дополнительных ордеров.
2.Второе развитие ситуации, Цена развернулась и пошла в сторону SELL 1, то всё срабатывает в зеркальном порядке, уже открываются BUY 2, BUY 3… и так далее.
Некоторые моменты по ТС:
1) Советник должен контролировать все свои ордера, все ордера открытые вручную и если нетрудно, все открытые ордера других советников, (ВКЛ/ВКЛ) эту функцию.
2) Советник должен видеть объём первоначально открытой позиции, а так же объёмы других открытых позиций и рассчитывать уровень безубыточности по ним.
3) Уровень безубыточности должен учитывать спред.
4) Показывать уровень безубыточности, а так же уровень где должен открыться отложенный ордер.
5) Не выставлять отложенный ордер заранее, а держать его в «уме» и заходить с рынка, при достижении уровня открытия, (ВКЛ/ВЫКЛ) эту функцию.
6) Если не трудно, то вывести всю информацию на экран как то: состояние всех подконтрольных ордеров в пунктах/депозите и общий баланс в пунктах/депозите.
Вроде бы всё, если, что то подзабыл, то добавлю, а если, что то непонятно написал, то спрашивайте. Вроде не размазывал а вышло много.
P.S. Хочу добавить, что эта система не «слизана» откуда то и не «высосана из пальца», а разрабатывалась мною, как говориться, «кровью и потом» на «живые деньги», на «живом депозите», на реальном счёте, когда мне, ну очень не хотелось и без того маленький депозит, отдавать брокеру и я его не отдал, а вывел депозит в безубыток + ребете. Конечно я понимаю, что «изобрёл велосипед», но таких систем я не встречал и поэтому если, Вы, хотели бы добавить в неё, что то стоящее, то я буду только ЗА! А если, Вы, возьмётесь написать автомат, то в последствии, на базе, Вашего, кода, можно будет сделать и полноценный советник, только с параметрами входа разобраться надо.
Заранее Благодарен.
-
+1
- Просмотров: 8567
- 13 июля 2016, 18:03
- s772008
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!
Комментарии (35)
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
Могу сделать примерно такой простой вариант. Работа с одним ордером плюс лок к нему, и трал бу.
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
Я сейчас прикину как проще пояснить систему, правда голова уже болит, два дня из компа не вылезаю.
12 s772008 Автор Сообщений: 56 - s772008
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
1) цена вышла за границу канала ордера BUY 1
2) цена вернулась в канал и вышла за границу канала ордера SELL 1
Рассмотрим ситуацию номер 1. Возможно 3 варианта развития событий:
А) У ордера BUY 1 сработал TSL и ордер BUY 1 закрывается.
Сразу же с рынка открывается SELL 2, с таким же объемам лота как и SELL 1.
После этого открывается отложенный ордер BUY 1, с расстоянием на N кол. Пунктов от сработанного уровня TSL, с объемом лотов ордеров SELL 1 + SELL 2.
Собсвенно TSL у BUY 1 нам нужен не для того чтобы брать прибыль, а чтобы поймать разворотное движение цены, тоже касается всех TSL.
Далее ждем когда цена пробьет уровень безубыточности, после чего вкл TSL, траллим прибыль, при срабатывании которых отложенный ордер BUY 1 удаляется. Все ждем нового открытия позиции.
Б) Цена не дошла до уровня безубыточности, а у ордера SELL 2 уже активировался TSL и закрылся по нему. Отложенный ордер BUY 1 переносится на уровень закрытия TSL SELL 2 и открывается с рынка с объемом лота ордера SELL 1, так как SELL 2 уже закрылся.
Получается, что мы вернулись к началу развития ситуации 1), но с новыми границами канала SELL 1 и BUY 1. Каналы, как таковые никакую роль не играют, они нужны для лучшего понимания ТС.
B) Цена не активировав TSL ордера SELL 2, а пошла в сторону отложенного ордена BUY 1 и открыла его, то мы возращаемся к ситуации А). Цикл как бы ПОВТОРЯЕТЯ ЗАНОГО от ситуации А):
У сработанного ордена BUY 1 активируется и срабатывает TSL, ордер BUY 1 закрывается, на месте закрытия открывается ордер SELL 3, с объемом лота SELL 1 и выставляется новый отложенный орден BUY 1 с объемом лота SELL 1 + SELL 2 + SELL 3, и т.д. по развитию ситуации А) или Б).
2 ) Цена вернулась в канал и вышла за границу канала ордера SELL 1:
Ситуация развивается зеркальным образом с открытием орденов BUY 2; BUY 3…
Надеюсь, что Вы сейчас увидите, что сама по себе стратегия не сложная, главное в ней, правильный порядок выставление орденов от развития ситуации, вот и все, ну и уровень безубыточности конечно контролировать. Надеюсь, поняв систему вы возьмётесь оформить её в коде. С уважением Сергей.
12 s772008 Автор Сообщений: 56 - s772008
Нет не возьмусь. Чтобы реализовать целиком, нужно уйму времени и сил вбухать, а с этим не ко мне. Я приблизительный вариант в базу скинул и если по вашему ТЗ написать также примерно работать будет.
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
Погоняв советник, со своими параметрами, я, заметил тенденцию: при покупки на восходящем тренде, депозит растёт, а на нисходящем сокращается, а при продаже наоборот. Так, тогда, советнику нужно обозначить направление тренда и возможно, тогда, что нибуть, более менее, стоящее получится.
С уважением, Сергей.
12 s772008 Автор Сообщений: 56 - s772008
35 AM2 Сообщений: 16388 - Андрей
За ранее благодарю, Сергей.
12 s772008 Автор Сообщений: 56 - s772008
А почему на платном не закажете, если стратегия прибыльная?
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
3 newpvr Сообщений: 17 - Павел
35 AM2 Сообщений: 16388 - Андрей
Чтобы работало только от открытого вручную ордера — и не открывало первый ордер самостоятельно?
(добавить вкл/откл в параметры, или подсказать, что закомментировать в коде)
Но с сохранением всего алгоритма, т.е. ежели МА используются для других целей (отложки и т.д.), при работе с уже открытыми ордерами — нарушать не надо.
Редактирован: 1 февраля 2017, 15:37
11 preasto Сообщений: 445
12 s772008 Автор Сообщений: 56 - s772008
а здесь как договоритесь, но в среднем от 50 наверное будет: www.mql5.com/ru/job
35 AM2 Сообщений: 16388 - Андрей
12 s772008 Автор Сообщений: 56 - s772008
27 Oxy Сообщений: 3430 - ..ιllιlι.lι.ιllι.ιlι..
12 s772008 Автор Сообщений: 56 - s772008
Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий