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

Рейтинг 2146



РЕКОМЕНДУЮ




Лучшее от sergs



Исправить советник
2020-04-21 09:46:59Рейтинг 0

Сеточник Комментариев 18
2022-10-12 10:06:36Рейтинг 0

Арифметический сеточник Комментариев 77
2022-06-20 10:34:57Рейтинг 0

Сеточник с каналом Комментариев 10
2023-01-31 10:35:56Рейтинг 0

Доработать советник Комментариев 6
2020-08-24 10:26:31Рейтинг 0

Разгонник

Здравствуйте. Прошу написать советник для разгона депозита. Полное описание стратегии здесь: avtoforex.ru/strategii/331-bezubytochnyy-razgon-depozita.html.
Правило входа.
Точка входа определяется по двум индикаторам: ценового канала и пин-баров. Если тень свечи пин-бара вышла за границу канала, то советник открывает позицию после закрытия пин-бара и появления стрелки в сторону ее направления.

Рис.1. Точки входа.
Пример торговли.
Допустим мы торгуем на классическом счете с фиксированными спредами и четырехзначными котировками на паре Евро/Доллар со спредом 2 пункта и у нас на депозите 1000 $. По правилам мани-менеджмента для безопасного входа в сделку используем лот объёмом 0.1 при стоп-лоссе 10 пунктов — в этом случае убыток составит 1% от депозита.
После закрытия медвежьего пин-бара и появления красной стрелки советник открывает 2 ордера на продажу объёмом 0.05 лота и стоп-лоссом по 10 пунктов (используем Правило Сейфа). Тейк-профит одного из ордеров ордера ставим так же 10 пунктов. Другой ордер пока «болтается» без тейк-профита. Вариант, когда ордера выбиваются по SL — нас не интересует. Ждем срабатывания ТР.

Рис.2. Вход в сделку для разгона депозита.
После того, как тейк-профит сработал мы находимся в рынке без убытка при любом развитии ситуации. Но, опять-таки, тот случай, когда цена выбьет оставшийся в рынке ордер — нас не интересует. Ждем точку входа для открытия несбалансированного положительного замка. Когда цена выйдет за пределы канала, после закрытия свечи открываем локовый ордер на покупку объёмом 0,4. Индикатор пин-баров в этом случае не используется. Стоп-лосс лока ставим в размере 10 пунктов. На этом же уровне ставим тейк-профит для ордера Sell. А вот тейк-профит для локового ордера ставим на уровне SL ордера Sell.

Рис.3. Точки входа для локов.

Рис.4. Открываем лок — начинаем разгон депозита.
В момент открытия локового ордера мы имеем прибыль в размере 10 пунктов для ордера, закрывшегося по Правилу Сейфа, и 70 пунктов для «оставшегося в рынке» ордера на продажу. Если локовый ордер закроется по стоп-лоссу, «селловский» ордер закроется по тейк-профиту и принесет нам прибыль ещё в 10 пунктов, что в итоге составит 80 пунктов. Итого имеем:
Первый ордер Sell — 10п * 0.05 = 5$;
Второй ордер Sell — (70п + 10п) * 0.05 = 40$.
Значит, мы можем себе позволить получить убыток по локовому ордеру в размере 40 долларов и при этом ещё останемся в небольшом плюсе (за счёт «Сейфа»).
Ордера открыты, стопы и тейки расставлены, прибыль «зажата» в несбалансированный замок. Осталось разобрать, что мы получим, если цена пойдёт «против нас», а что — если «на нас». И наконец-то понять, где тут разгон депозита! А для этого, как обычно, первым разберём «худший» для нас вариант:

Рис.5. Вариант «неудачного» разгона депозита.
На рисунке 5 смоделирован случай, когда мы ошиблись с открытием лока, он закрылся по стоп-лоссу и принес нам убыток в 10 пунктов. В этом случае ордер на продажу закроется по тейк-профиту и принесет нам прибыль 80 пунктов. И не забывайте про прибыль «в сейфе»! Подсчитаем общую прибыль и общий убыток по этим сделкам:
Ордер «в сейфе»: 10п * 0.05 = 5$;
Оставшийся в рынке ордер Sell: 80п * 0.05 = 40$;
Общая прибыль по сделкам на продажу: 5$ + 40$ = 45$;
Локовый ордер на покупку: -10п * 0.4 = -40$:
Общий итог: 45$ — 40$ = 5$.
А теперь давайте посчитаем, на сколько процентов мы разгоним депозит, если локовый ордер на покупку закроется по тейк-профиту, а «селловский» ордер закроется по стоп-лоссу:
Локовый ордер на покупку: 80п * 0.4 = 320$;
Ордер в сейфе: 10п * 0.05 = 5$;
Второй ордер Sell: -10п * 0.05 = -5$;
Общий итог: 320$ + 5$ — 5$ = 320$.

Рис.6. Вот он Грааль — разгон депо на 32% за один торговый день!
В рассмотренном примере цена прошла 70 пунктов до точки входа лока. Расчеты производились, исходя из этого расстояния. В реале расстояние будет другим. А значит и объем лока должен быть другим. Вот формула расчета объема локового ордера:
Лот лока = Лот 1 * ((N + SL лока) / SL лока).
Лот 1 — Объем первого лота (одного из двух).
N — Расстояние от точки входа первого лота до точки входа лока.
SL лока — Стоп-лосс лока.
Полученный результат нужно округлить до сотых долей в сторону уменьшения.
ТР лока можно устанавливать на любом расстоянии от точки входа лока. При его срабатывании нужно закрыть и ордер Sell. Также все ордера закрываются, если в процессе движения цены появится медвежий пин-бар (после его закрытия) или цена коснется верхней границы канала.
Теоретически, может возникнуть ситуация, когда цена коснется стоп-лосса локового ордера, а до тейка ордера на продажу не достанет. И не достанет именно на величину спреда — на 2 пункта. Развернется, и ещё ордер на продажу по стопу закроет. И будет убыток по двум ордерам. Чтобы полностью исключить такой вариант, советник должен ставить тейк-профит ближе к цене, чем выставлен стоп-лосс, на величину спреда. Тогда и SL, и TP сработают одновременно.

Рис.7. Выставление ТР с учетом спреда.
Далее автор стратегии предлагает открывать второй лок. Но пока можно ограничиться одним.
Настройки (для пятизначных котировок):
Объем первого лота (одного из двух): 0.01
Автолот: да/нет
Взять этот лот: 0.01
На это количество депозита: 200
SL первого ордера: 100
SL лока: 100
ТР лока (если 0, то выставлять так, как на рис.7)
Спред
Советник не должен открывать новых позиций, пока не закроется одна серия ордеров.

TMA with Distances.mq4 (12 Kb) PinBar.mq4 (32 Kb)
  • 0
  • Просмотров: 2378
  • 29 июня 2020, 08:59
  • sergs
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Отбой от линии после прорыва.
Следующая запись в группе  
ТРАЛ
28 июня 2020
30 июня 2020

Брокер для ваших роботов, 15 лет на рынке

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

+
0
Это скорее всего ручная стратегия
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 29 июня 2020, 09:06
+
0
Если ручную стратегию можно автоматизировать, значит нужно это сделать
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 29 июня 2020, 09:16
+
0
Вы сами ответили себе
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 29 июня 2020, 09:17
+
+1
можно глянуть прибыльную торговлю вручную по этой стратегии на реале как минимум за 3 месяца? :) 

просто иначе нет смысла выполнять такой объем работы
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 29 июня 2020, 10:08
+
0
Извините, не торговал. Может сделаете постепенно по частям? Стратегия вроде верная. Многие трейдеры будут вам благодарны
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 29 июня 2020, 10:16
+
+1
Стратегия вроде верная


вы бы тогда хоть в тестере проверили, есть ведь тестеры для ручной торговли
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 29 июня 2020, 10:33
+
0
Все это долго. Ладно, я не настаиваю
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 29 июня 2020, 10:41
+
+1
короткие стопы постоянно выбиваются. набросок делает 50% того что вы описали. можете убедиться:




//+------------------------------------------------------------------+
//|                                                       Razgon.mq4 |
//|                                              Copyright 2020, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lot1       = 0.1;      // лот 1
extern double Lot2       = 0.4;      // лот 2
extern int StopLoss      = 200;      // лось
extern int TakeProfit    = 700;      // язь
extern int Slip          = 30;       // реквот
extern int Shift         = 0;        // на каком баре сигнал индикатора
extern int Magic         = 123;      // магик

extern string IndName="TMA with Distances";

extern string TimeFrame       = "current time frame";
extern int    HalfLength      = 56;
extern int    Price           = PRICE_CLOSE;
extern double ATRMultiplier   = 1.0;
extern int    ATRPeriod       = 100;
extern bool   Interpolate     = true;

datetime t=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price,double loss,double take,double lot)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
      if(loss>0)
         sl=NormalizeDouble(price+loss*_Point,_Digits);
      if(take>0)
         tp=NormalizeDouble(price-take*_Point,_Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(loss>0)
         sl=NormalizeDouble(price-loss*_Point,_Digits);
      if(take>0)
         tp=NormalizeDouble(price+take*_Point,_Digits);
     }

   r=OrderSend(NULL,type,lot,NormalizeDouble(price,_Digits),Slip,sl,tp,"",Magic,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades(int type=-1)
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==type || type==-1)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   double up = iCustom(NULL,0,IndName,TimeFrame,HalfLength,Price,ATRMultiplier,ATRPeriod,Interpolate,1,Shift);
   double dn = iCustom(NULL,0,IndName,TimeFrame,HalfLength,Price,ATRMultiplier,ATRPeriod,Interpolate,2,Shift);

   if(CountTrades(0)<1 && CountTrades(1)>0 && Ask<dn)
     {
      PutOrder(0,Ask,StopLoss,TakeProfit,Lot2);
     }
   if(CountTrades(1)<1 && CountTrades(0)>0 && Bid>up)
     {
      PutOrder(1,Bid,StopLoss,TakeProfit,Lot2);
     }

   if(t!=Time[0])
     {
      if(Ask<dn && MathAbs(Open[1]-Close[1])>0 && (Close[1]-Low[1])/MathAbs(Open[1]-Close[1])>3)
        {
         if(CountTrades(0)<1)
           {
            PutOrder(0,Ask,StopLoss,StopLoss,Lot1);
            PutOrder(0,Ask,StopLoss,TakeProfit,Lot1);
           }
        }
      if(Bid>up  && MathAbs(Open[1]-Close[1])>0 && (High[1]-Open[1])/MathAbs(Open[1]-Close[1])>3)
        {
         if(CountTrades(1)<1)
           {
            PutOrder(1,Bid,StopLoss,StopLoss,Lot1);
            PutOrder(1,Bid,StopLoss,TakeProfit,Lot1);
           }
        }
      t=Time[0];
     }

   Comment("\n UP: ",NormalizeDouble(up,_Digits),
           "\n DN: ",NormalizeDouble(dn,_Digits));
  }
//+------------------------------------------------------------------+

avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 29 июня 2020, 11:24
+
0
Согласен, что точки входа неудачные. Над этим надо работать. Но сам принцип разгона верен. Подождем, может кто-нибудь придумает более точный вход
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 29 июня 2020, 12:00
+
0
Попробуйте входы, как здесь: zakaz.opentraders.ru/52153.html
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 29 июня 2020, 14:25
+
0
здесь во флете усреднение еще может помочь, а по тренду все сольет
avatar

  35  AM2 Сообщений: 16250 - Андрей

  • 29 июня 2020, 15:26
+
0
Могу предложить вариант поменять местами саму идею входа на реверс с усреднением
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 08:13
+
0
Предлагайте
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 30 июня 2020, 08:46
+
0
Ну и лентяй. Сам пропиши. Там просто две строчки местами поменять
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 10:22
+
0
Мои цены в инфо обо мне
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 10:23
+
0
Ну не все же такие умные, как ты8-) 
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 30 июня 2020, 10:37
+
0
Тогда смерись, что потратить деньги.

youtu.be/12guHJffAY0
Редактирован: 30 июня 2020, 10:43
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 10:42
+
0
Я кайфую от твоей крутизны*pontorez* 
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 30 июня 2020, 15:02
+
0
Ask<dn поменяй местом с Bid>up в первом условии на открытие ордеров. Должно помочь.
Если шуршалок нет в кошельке, больше ничем помочь не могу.
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 16:07
+
0
Дело не в деньгах. Никогда не покупал и не собираюсь покупать советников.
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 30 июня 2020, 16:18
+
0
Жадные смотрят фильм Брильянтовая рука
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 17:31
+
0
Жадные продают сов. Зачем покупать то, что можно взять бесплатно?
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 30 июня 2020, 17:55
+
0
Ну, сделали бесплатно. Работает?
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 30 июня 2020, 17:57
+
0
А вот это вообще не аргумент, ты же сам понимаешь.
Что заказывал — то и получил, независимо от платности или халявности заказа.
Тут всё зависит от комплекса грамотности написанного ТЗ и понятливости кодера.
Автор оформил идею в голове, но понятия не имеет о том, каковой должна быть техническая реализация. Так, чтобы идея по-настоящему работала.
Посему первая реализация — это лишь взгляд в первом приближении.
Проверка модели самолёта без какой-либо ещё начинки на аэродинамику.
И уже далее идут доработки, эксперименты, тесты, модификации, снова тесты.
И вот лишь на этапе доработок/модификаций может вставать вопрос о платности заказа, ибо не каждый кодер будет на халяву реализовывать различные придумки/изменения автора идеи, зачастую растянутые по времени на весьма продолжительные сроки.
Независимо, бредовые они или гениальные.
А пока, на данном этапе — ты не прав. От слова «совсем».
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 10:33
+
0
*drinks*  тут дело в бубенце автора. Если ты настоящий шаман понимаешь.
Смотри какая тут тема: автор сделал тех. задание, а Андрей выполнил согласно своим целям. Робот сливает (такое бывает с каждым вторым или чаще). Я предложил бесплатно идею, а мне делай. Ну я ему и ценник сразу. Типо утром деньги, а вечером деньги. А потом и жадиной обозвал. Типо того что даже сам Шаман всё бесплатно делает и робота своего скоро отправит.
Выкидыш социализма на халяву думает бургеры есть. Ну, ты понял
avatar

  13  axe44 Сообщений: 1149 - Алек

  • 1 июля 2020, 12:13
+
+1
И это тоже верно.
Твой оппонент sergs, как и многие другие, не понимают, что здесь им могут сваять как раз тот простой вариант, чтобы взглянуть на работоспособность идеи в принципе.
Конкретика уже будет сложнее в реализации и просто так возьмётся за неё от и до лишь тот, кому эта идея ну прямо каппец как по душе пришлась, редчайший случай.
И те, кто пишет за деньги или продаёт советника — действительно всего лишь ценит свой труд, ничего предосудительного.
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 13:04
+
0
Во дает! Кто кого обозвал? Если я простой трейдер, я не обязан владеть навыками программирования. Тогда с какой стати я лентяй? «Жадные смотрят фильм Брильянтовая рука» кто первый написал? Я пришел сюда, чтобы получить помощь от профессионалов, а не для того, чтобы меня поливали грязью. Наглость беспредельная.
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 1 июля 2020, 15:33
+
+2
axe44 Я стесняюсь спросить :«Выкидыш социализма», а сами то чьих будете?
Редактирован: 1 июля 2020, 18:12
avatar

  16  ssg Сообщений: 817

  • 1 июля 2020, 15:46
+
0
*good* :D :D 
avatar

  15  el12EL12 Сообщений: 84 - el12EL12

  • 1 июля 2020, 16:26
+
0
Сборище моральных уродов.*yes* :P *tipatogo* 
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 1 июля 2020, 17:42
+
0
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 18:00
+
0
Мой вопрос был задан не Вам, а вашему оппоненту.
avatar

  16  ssg Сообщений: 817

  • 1 июля 2020, 18:10
+
0
Прошу прощения. Не разобрался.
avatar

  8  sergs Автор Сообщений: 224 - Сергей

  • 2 июля 2020, 09:21
+
0
Истину глаголешь:D 
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 17:02
+
+1
axe44 Я стесняюсь спросить :«Выкидыш социализма», а сами то чьих будете?

Редактирован: 1 июля 2020, 18:12
avatar

  16  ssg Сообщений: 817

  • 1 июля 2020, 18:11
+
+1
Ребят, чё то я запутался*crazy*  как тут и куда индикатор скинуть, поделиться со всеми бесплатно, может пригодится yadi.sk/d/gqu5W3Y0lE5muA Не туда написал понимаю, но а куда? и главное как? Вроде сайт с общением живым, где могу поговорить с теми, кто любит уровни, а именно индикатор авто уровней? Спс, заранее
avatar

  1  ftonoZ Сообщений: 4

  • 30 июня 2020, 23:19
+
0
Скинуть сюда можно — www.opentraders.ru/downloads/
Но чтобы скинуть и пообщаться, лучше создать топик, там через дискетку приложить файл, написать мысли, в комментах пообщаться. Но доступно создание своих топиков с 1 уровня. Вам еще 3 дня захода до этого уровня
Редактирован: 1 июля 2020, 03:40
avatar

  45  Bishop Сообщений: 5802 - АЛЬФАХАМЕЦ-Машковод

  • 1 июля 2020, 03:40
+
0
Широкий ты человек...<img src='http://opentraders.ru/templates/skin/g6h/images/smilies/017.gif' alt=' ;) '>&nbsp;
Но…

Спасибо, не пригодится...<img src='http://opentraders.ru/templates/skin/g6h/images/smilies/003.gif' alt=' :D '>&nbsp;
Редактирован: 1 июля 2020, 10:54
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 10:53
+
0
Так он же взломанный)) Ломанули именно эту версию, но все ограничения убрали в нём. Этот индикатор авто уровней был только в закрытым доступе для вип учеников на сайте, поэтому каждая версия была с ограничением, так что не боись, будет работать8-) 
avatar

  1  ftonoZ Сообщений: 4

  • 2 июля 2020, 21:28
+
0
Спасибо)
avatar

  1  ftonoZ Сообщений: 4

  • 2 июля 2020, 21:25
+
0
Но вообще, недурной индикатор.
На троечку, но лучше прочих аналогов.
Есть нормальная версия?
Редактирован: 1 июля 2020, 10:54
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 09:30
+
0
Вообще, идея любопытная. Не скажу, что очень интересная, но любопытная.
На первый взгляд чуточку сложновато и излишне рисковано, но, возможно, это только для первого прочтения.
Благодарю за ссылку, чуть позднее подробней, внимательней ознакомлюсь.
Если что-то дельное в голову придёт, обязательно поделюсь.
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 1 июля 2020, 18:31

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий