Трелинг стоп работающий по процентам Фибоначчи от тай профита.

У Вас есть идея, под которую нужен торговый робот? А, быть может, требуется создание нового индикатора или адаптация старого к МТ5? Бесплатно советники и индикаторы под Ваше техническое задание!

Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение ВЯЧЕСЛАВПЕТРОВ » 11 янв 2017, 16:41

Haos писал(а):После проверки советника и устранения возможных нюансов, я могу в саму основную функцию f_ModifySL() еще добавить выставление значков при модификации СЛ на график, возможную подачу сигналов звуковых и вывод ошибок при невозможности модификации. Сейчас же главное - суть работы проверить.
Вот об этой функции идет речь:
Код: выделить все
void f_ModifySL(int op, int tp, int sl, int dy, int mn)
{
/*
   Используются сторонние ресурсы:
   1. ф-я f_IfInside()
   2. Массивы dblMTP[7], dblMSL[7]
   Описание : Изменяет СЛ открытых позиций в зависимости от величины хода цены в профит
   Параметры:                                                               
   op - операция (OP_BUY или OP_SELL)
   tp - ТП позиций (пнт.)
   sl - СЛ позиций (пнт.)
   dy - допуск (пнт).               
   mn - MagicNumber (-1   - любой магик)                   
*/
   bool   bol_Ins, bol_Mod; // Сработала ли ф-ия OrderModify
   double dbl_OP, dbl_SL, dbl_TP;
   double dbl_TPY; // уровень ТП в зависимости от массива dblMTP[]
   
   for(int i = 0; i < OrdersTotal(); i++)
   {
      if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
      {
         if(OrderSymbol() == Symbol())
         {
            if(mn < 0 || OrderMagicNumber() == mn)
            {
               if(OrderType() == OP_BUY)   
               {   
                  dbl_OP = OrderOpenPrice();
                  dbl_SL = OrderStopLoss();
                  dbl_TP = OrderTakeProfit();
                  for(int j = 0; j < 7; j++) 
                  {
                     dbl_TPY = NormalizeDouble(dbl_OP + tp * dblMTP[j] * _Point, _Digits);
                     bol_Ins = f_IfInside(OP_BUY, dbl_TPY, dy);
                     if(bol_Ins)
                     {
                        dbl_SL = NormalizeDouble(dbl_SL + sl * dblMSL[j] * _Point, _Digits);
                        bol_Mod = OrderModify(OrderTicket(), dbl_OP, dbl_SL, dbl_TP, 0, CLR_NONE);                         
                     }
                  }
               }
               else if(OrderType() == OP_SELL)
               {
                  dbl_OP = OrderOpenPrice();
                  dbl_SL = OrderStopLoss();
                  dbl_TP = OrderTakeProfit();
                  for(int j = 0; j < 7; j++) 
                  {
                     dbl_TPY = NormalizeDouble(dbl_OP - tp * dblMTP[j] * _Point, _Digits);
                     bol_Ins = f_IfInside(OP_SELL, dbl_TPY, dy);
                     if(bol_Ins)
                     {
                        dbl_SL = NormalizeDouble(dbl_SL - sl * dblMSL[j] * _Point, _Digits);
                        bol_Mod = OrderModify(OrderTicket(), dbl_OP, dbl_SL, dbl_TP, 0, CLR_NONE);                         
                     }
                  }               
               }
            }
         }
      }
   }
}

Что то идет не по плану.
2017.01.11 19:05:35.918 EA-FiboTrall-v1 USDCHF,Daily: modify #22944178 buy 0.01 USDCHF at 1.02363 sl: 0.00916 tp: 1.06698 ok
2017.01.11 19:15:17.697 '427451': modify order #22944178 buy 0.01 USDCHF at 1.02363 sl: 0.02271 tp: 1.06698 -> sl: 0.02274 tp: 1.06698
2017.01.11 19:38:37.703 EA-FiboTrall-v1 USDCHF,Daily: invalid stoploss for OrderModify function
Аватар пользователя
ВЯЧЕСЛАВПЕТРОВ
 
Сообщений: 1522
Зарегистрирован: 06 сен 2016, 21:28
Средств на руках: 90.40 Доллар
Награды: 2
Ветеран I (1) Медаль за эрудицию (1)
Группа: Базовая
Благодарил (а): 3574 раз.
Поблагодарили: 434 раз.
Автор Вячеслав Петров. Возьму капитал или счет в управление. В лс.
Мониторинг трех счетной системы. Первый.Второй. Третий.
Четвертый.

Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение ВЯЧЕСЛАВПЕТРОВ » 11 янв 2017, 17:01

Haos писал(а):Такс, проверяйте. Поскольку, Вы осваиваете написание кода я выкладываю в открытом коде советник. Чтобы можно было обсуждать моменты разные и вопросы. Позднее я напишу статью в разделе обучения программированию, посвященную данному методу тралла, когда есть набор изменений цены относительно ТП и им в соответствие ставится определенные значения на которые нужно изменить СЛ.
В данной советнике я реализовал возможность для многих сделок и на покупку и на продажу по одной валютной паре траллить СЛ каждой из сделок. При этом набор мне показался очевидным:
Код: выделить все
   // Инициация массива dblMTP:
   dblMTP[0] = 0.08; dblMTP[1] = 0.13; dblMTP[2] = 0.21; dblMTP[3] = 0.34;
   dblMTP[4] = 0.55; dblMTP[5] = 0.89; dblMTP[6] = 0.90;
   // Инициация массива dblMSL:
   dblMSL[0] = 0.01; dblMSL[1] = 0.03; dblMSL[2] = 0.05; dblMSL[3] = 0.08;
   dblMSL[4] = 0.13; dblMSL[5] = 0.21; dblMSL[6] = 0.34;

Т.е.
8% ТП -> 1% СЛ
13% ТП -> 3% СЛ
...
(см. соотношение между массивами по номеру элемента массива)

Вы правильно поняли саму мысль. Этот алгоритм можно вставлять во множество советников с разными вариантами работы алгоритма он универсален.
Сам я тоже написал код правда очень битый и большой, но в работе проверил первый вариант. Основная проблема в том что ордер как правило выбивает вначале движения на 3-5% как и любой другой трелинг стоп. Для этого и нужны варианты. После прохождения определенного уровня трал работает устойчиво давая трейдеру новые возможности работы в вариациях лока или пирамиденга.
Здесь я хотел бы вернутся не к коду, а конструкции советника.
Он должен тралить ордера выбранные трейдером не трогая другие на той же паре. У трейдера должен быть вариант изменить условия трала в любой момент. Советник должен брать в работу отложенные ордера когда станут рыночными по варианту трейдера.
У меня получилась схема из четырех скриптов открывающих ордера с разным магиком который задает вариант трала и советника который тралит открытые ордера на выбранном инструменте. Это позволяет работу с отложенными ордерами и работу с несколькими компьютерами . Когда советник находится на выделенном сервере, а трейдер открывает ордер у себя дома через скрипт.( мне показалось так удобнее чем выставлять постояно стоп и тейк профит.). К сожалению магик и комментарий нельзя изменить на сервере брокера также как это делается со стоплост. Тогда бы все проблемы с изменением ордера были бы решены. Вот сейчас думаю над этим.
У меня по теме изменить пока не каких мыслей не созрело. А так получилась конструкция из четырех скриптов и советника.
Аватар пользователя
ВЯЧЕСЛАВПЕТРОВ
 
Сообщений: 1522
Зарегистрирован: 06 сен 2016, 21:28
Средств на руках: 90.40 Доллар
Награды: 2
Ветеран I (1) Медаль за эрудицию (1)
Группа: Базовая
Благодарил (а): 3574 раз.
Поблагодарили: 434 раз.
Автор Вячеслав Петров. Возьму капитал или счет в управление. В лс.
Мониторинг трех счетной системы. Первый.Второй. Третий.
Четвертый.

Re: Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение Haos » 11 янв 2017, 18:48

ВЯЧЕСЛАВПЕТРОВ писал(а): Что то идет не по плану.
2017.01.11 19:05:35.918 EA-FiboTrall-v1 USDCHF,Daily: modify #22944178 buy 0.01 USDCHF at 1.02363 sl: 0.00916 tp: 1.06698 ok
2017.01.11 19:15:17.697 '427451': modify order #22944178 buy 0.01 USDCHF at 1.02363 sl: 0.02271 tp: 1.06698 -> sl: 0.02274 tp: 1.06698
2017.01.11 19:38:37.703 EA-FiboTrall-v1 USDCHF,Daily: invalid stoploss for OrderModify function

Как это Вам так быстро удалось проверить? Еще пирожок не остыл. :hi_hi_hi: Пробуйте пока улучшенный вариант, что я последним выложил. Там будем смотреть - сложные задумки дают сложные проблемы и... совершенно неэффективны, жаль что Вы еще этого не поняли.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение ВЯЧЕСЛАВПЕТРОВ » 11 янв 2017, 19:08

В коде где то ошибка. Трал должен за два три захода резко отпускать стоплост, а он набирает по единице. То есть модифицирует ордер множество раз.
2017.01.11 22:01:34.065 EA-FiboTrall-v1-1 USDCHF,Daily: modify #22945117 sell 0.01 USDCHF at 1.02359 sl: 1.02369 tp: 0.97161 ok
Насчет эффективности это к торговой системе трал вспомогательный инструмент.
Проверил быстро потому что у меня два трала и все ошибки я уже исправлял в своем коде. Но мой код на уровне третьего класса.

Стоплост может быть равным 0 не задан. Хотя тут я конкретного не скажу для универсального варианта. Сам то я на без стоплостовой работаю системе.
Аватар пользователя
ВЯЧЕСЛАВПЕТРОВ
 
Сообщений: 1522
Зарегистрирован: 06 сен 2016, 21:28
Средств на руках: 90.40 Доллар
Награды: 2
Ветеран I (1) Медаль за эрудицию (1)
Группа: Базовая
Благодарил (а): 3574 раз.
Поблагодарили: 434 раз.
Автор Вячеслав Петров. Возьму капитал или счет в управление. В лс.
Мониторинг трех счетной системы. Первый.Второй. Третий.
Четвертый.

Re: Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение Haos » 12 янв 2017, 07:41

Все это нужно проверять. Если СЛ нулевой, то как же он будет траллиться? Вы хоть не путайте и без того запутанные... свои задания.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение ВЯЧЕСЛАВПЕТРОВ » 12 янв 2017, 15:23

Haos писал(а):Все это нужно проверять. Если СЛ нулевой, то как же он будет траллиться? Вы хоть не путайте и без того запутанные... свои задания.

Да вы правы мои задания довольно запутанные. Это сказывается отсутствие опыта в работе с советниками. За то время что прошло с момента заказа по сегодняшний день ситуация немного изменилась и возможно тема уже не совсем для стола заказов. Возможно для творческой мастирскои или для тем по созданию советников.
Про нулевой стоп. . Сейчас не важно пока. Сам трал будет иметь множество модификаций и вариантов. Мы с вами возможно и не будем писать для них код.
Это просто на будущее как вариант в трале.
Если не задан начальный стоплост трейдером но выставлен тейк профит то тральшик тралит от цены открытия точно также как и с начальным стопом. Наличие или отсутствие стопа не влияет на работу трала после достижения уровня переноса стопа.
Если отсутствует тай профит то также после достижения первого уровня от открытия цены трал выставляет фиксированный тейк профит указано в настройках трала.
Конечно меня посетила идея по реализации алгоритма как пирамиду.
Допустим цена достигла уровня 34 стоп перенесен на 21 на этом уровне можно открыть ордер в том же направлении со стопом на уровне 21 . Это обеспечит безопасность депо и даст возможность взять еще так ка трал прикроет стопом следующий ордер на уровне 5% в безубыток 3%.
Аватар пользователя
ВЯЧЕСЛАВПЕТРОВ
 
Сообщений: 1522
Зарегистрирован: 06 сен 2016, 21:28
Средств на руках: 90.40 Доллар
Награды: 2
Ветеран I (1) Медаль за эрудицию (1)
Группа: Базовая
Благодарил (а): 3574 раз.
Поблагодарили: 434 раз.
Автор Вячеслав Петров. Возьму капитал или счет в управление. В лс.
Мониторинг трех счетной системы. Первый.Второй. Третий.
Четвертый.

Re: Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение Haos » 20 янв 2017, 11:58

Попробуйте эту модификацию. Добавил флаг проверки на модификацию ТП (СЛ) чтобы не было повторных попыток.
Вложения
EA-FiboTrall-v1.1~.mq4
(19.44 KB) Скачиваний: 32
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение ВЯЧЕСЛАВПЕТРОВ » 23 янв 2017, 16:42

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


Версия EA-FiboTrall-v1.1~.mq4 это примерно 30% идеи.
Тральщик не тралит рывками как положено,а гонит стоплост по несколько пунктов за тик.

2017.01.23 19:24:38.321 EA-FiboTrall-v1-1 UKOIL,H4: modify #23120214 buy 0.01 UKOIL at 55.00 sl: 54.75 tp: 56.24 ok
2017.01.23 19:24:33.368 EA-FiboTrall-v1-1 UKOIL,H4: modify #23120214 buy 0.01 UKOIL at 55.00 sl: 54.74 tp: 56.24 ok
2017.01.23 19:24:28.963 EA-FiboTrall-v1-1 UKOIL,H4: modify #23120214 buy 0.01 UKOIL at 55.00 sl: 54.73 tp: 56.24 ok

И пока не выходит за уровень цены открытия ордера.
Аватар пользователя
ВЯЧЕСЛАВПЕТРОВ
 
Сообщений: 1522
Зарегистрирован: 06 сен 2016, 21:28
Средств на руках: 90.40 Доллар
Награды: 2
Ветеран I (1) Медаль за эрудицию (1)
Группа: Базовая
Благодарил (а): 3574 раз.
Поблагодарили: 434 раз.
Автор Вячеслав Петров. Возьму капитал или счет в управление. В лс.
Мониторинг трех счетной системы. Первый.Второй. Третий.
Четвертый.

Re: Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение Haos » 23 янв 2017, 16:46

Это всё, что можно было сделать. Если считаете, что Вам нужно больше, то заказывайте отдельно в самом полном виде, в любом случае, я не возьмусь, а возьмется ли кто-то другой - не знаю. Очень сложные заморочки Вы придумываете, и, особенно плохо то, что я уверен, что бессмысленные. Поэтому никакого энтузиазма нет тратить на это время.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Трелинг стоп работающий по процентам Фибоначчи от тай профита.

Сообщение Haos » 23 янв 2017, 16:50

Есть проверенные старые функции тралла вслед за ценой равномерно, а не рывками. Как еще убедить Вас что никакой разницы нет??? Ставьте обычный тралл и не мудрите. Потом поймете, что тралл любой только снижает прибыль. Все это уже годы назад проверено перепроверено.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.


Вернуться в Торговые советники на заказ

Кто сейчас на форуме?

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 131

Права доступа к форуму

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron