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

Рейтинг 2146



РЕКОМЕНДУЮ



советник SBS Grid

Прошу написать советник SBS Grid — кидаем сети и ловим прибыль

SBS Grid — торговая стратегия построенная на основе одного из лучших без индикаторных методов торговли на форекс. Суть этого метода заключается в том, что ордера выставляются не по одному, а сразу большим количеством. При этом из ордеров получается сетка, окружающая цену сразу вверху и внизу, благодаря чему прибыль берется лавинообразно независимо от того, в какую сторону пойдет цена.
Так, на месте закрывшихся по тейк-профиту сделок, выставляются новые ордера, например, если цена идет вверх и сработавший ордер BuyStop закрывается с прибылью, то на его месте, по цене открытия этого ордера, выставляется новый ордер, но уже SellStop, так как он оказывается ниже цены и будет ждать её на случай разворота. Поэтому цена всегда находится в сети.

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



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



extern double Lots = 0.01; // лот
extern int StopLoss = 15; // лось
extern int TakeProfit = 30; // язь
extern int Profit = 50; // Профит в валюте
extern int BULevel = 0; // уровень БУ
extern int BUPoint = 0; // пункты БУ
extern int TrailingStop = 0; // трал
extern int TrailingStep = 0; // шаг трала
extern int Slip = 3; // реквот

— Расстояние между ордерами = 20 // Расстояние между ордерами

extern int Magic = 123; // магик
  • +4
  • Просмотров: 2680
  • 13 августа 2020, 23:25
  • cashyra
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

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

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

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

+
0
на 19-е
avatar

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

  • 14 августа 2020, 18:07
+
0
Спасибо. *hi* 
avatar

  15  cashyra Автор Сообщений: 392 - Юра

  • 14 августа 2020, 18:20
+
+1
"… если цена идет вверх и сработавший ордер BuyStop закрывается с прибылью, то на его месте, по цене открытия этого ордера, выставляется новый ордер, но уже SellStop"
У брокеров типа Альпари стоит лимит на 100 ордеров, значит, максимум будут 50 BuyStop и 50 SellStop, и брокер начинает присылать гневные письма *war*  При шаге в 20 пунктов, этого хватит на движение в 1000 пунктов вверх и 1000 вниз, на пятизнаке!!! По старым будет всего 100 пунктов!!! Когда, например BuyStop закончатся, а внизу цены будут стоять 100 SellStop, что будет делать советник?! Можно конечно, сделать перезапуск совы… Чтобы сова была всегда в рынке, надо, чтобы при срабатывании нижнего BuyStop, вверху добавлялся новый BuyStop. На месте сработавшего BuyStop, выставлялся SellStop, а нижний SellStop удалялся, так вся сеть будет двигаться за ценой, а количество отложек BuyStop и SellStop, будет равным и постоянным.
Или, при срабатывании BuyStop, вверху добавляется новый BuyStop, а все отложенные ордера SellStop просто подтягиваются за ценой на N пунктов. Андрей где-то уже писал подобную функцию по подтягиванию отложек за ценой.
Эта стратегия хороша на новостях при резких скачках цены и хорошо сливает во флете на StopLoss-ах. Поэтому, сюда бы еще добавить время начала и конца торговли.
"… но в данном случае такие сделки моментально перекрываются сделками закрывшимися по тейк-профиту и вместо убытка получается ноль....." Ноля не будет, будет минус от каждой сделки из-за спреда!!!*pardon*  Потери из-за спреда можно уменьшить, если сделать встречное закрытие сделок. *hi* 
avatar

  8  39mail Сообщений: 48 - fenix74

  • 15 августа 2020, 04:52
+
+1
На хер Вам такой дебильный брокер. Люди давно уже поняли, что Альпари это отстой. Пользуйтесь проверенным честным и все разрешающим брокером.

trader.fortfs.com/registration/?d0b460a
avatar

  15  cashyra Автор Сообщений: 392 - Юра

  • 15 августа 2020, 17:59
+
0
делал я подобные системы, только сейчас искать надо. сделал набросок и даже по нему видно что идет слив и дальше искать или писать не стоит:




//+------------------------------------------------------------------+
//|                                                     Grider21.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  Lots        = 1;        // объем первого ордера
extern int     StopLoss    = 15;       // стоплосс
extern int     TakeProfit  = 30;       // тейкпрофит
extern int     Step        = 20;       // шаг ордеров
extern int     Count       = 25;       // количество ордеров
extern int     Type        = 1;        // 1-Stop 2-Limit
extern int     Slip        = 3;        // проскальзывание
extern int     Exp         = 23;       // истечение
extern int     Magic       = 123;      // магик
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

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

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

   r=OrderSend(NULL,type,Lots,NormalizeDouble(price,_Digits),Slip,sl,tp,"",Magic,TimeCurrent()+Exp*3600,clr);
  }
//+------------------------------------------------------------------+
//| Подсчет ордеров по типу                                          |
//+------------------------------------------------------------------+
int CountOrders(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 || (OrderType()>=0 && type==-1))
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
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()
  {
   if(CountOrders()<1)
     {
      if(Type==1)
        {
         if(CountOrders(4)<1)
            for(int i=1; i<=Count; i++)
               PutOrder(4,Bid+Step*_Point*i);//buystop
         if(CountOrders(5)<1)
            for(int i=1; i<=Count; i++)
               PutOrder(5,Bid-Step*_Point*i);//sellstop
        }
      if(Type==2)
        {
         if(CountOrders(3)<1)
            for(int i=1; i<=Count; i++)
               PutOrder(3,Bid+Step*_Point*i);//selllimit
         if(CountOrders(2)<1)
            for(int i=1; i<=Count; i++)
               PutOrder(2,Bid-Step*_Point*i);//buylimit
        }
     }
  }
//+------------------------------------------------------------------+

avatar

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

  • 15 августа 2020, 18:58
+
0
Верю, не стоит. Спасибо. Будем дальше искать.
Может истечение ордеров надо убрать. Тогда всё наладится. Ордерам надо время на закрытие дать.
Как убрать истечение ордеров?
И где вот это условие? —

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

Может истечение ордеров убрать а это условие добавить и всё наладится.
Редактирован: 15 августа 2020, 22:31
avatar

  15  cashyra Автор Сообщений: 392 - Юра

  • 15 августа 2020, 21:59
+
0
найдите вариант с выставлением ордера на место закрытого. оксана писала и я тоже
avatar

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

  • 15 августа 2020, 23:27
+
0
Я бы нашёл, но на сайте пропал поиск. Раньше год назад работал, теперь нет. На главной странице есть поиск но он не ищет на сайте. Я пмсал в админку, но так и не получил ответ. Если есть возможность скажи администрации пусть поставят поиск имено чтоб искал здесь где советники индикаторы скрипты. Спасибо.
avatar

  15  cashyra Автор Сообщений: 392 - Юра

  • 16 августа 2020, 17:20
+
0
при желании все можно найти <img src='http://opentraders.ru/templates/skin/g6h/images/smilies/002.gif' alt=' :) '>&nbsp; 

так например

zakaz.opentraders.ru/21762.html
Редактирован: 16 августа 2020, 20:34
avatar

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

  • 16 августа 2020, 20:29
+
0
там и близко нет такого. Тоже, что и у Вас, закрываются по истечению времени, потом опять открываются. Поэтому и будет минус. А попробуйте сделать, как написано у меня в задании, тогда будет плюс.

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

А старые ордера не закрываются, там нет параметра истечение ордеров. Сетка растёт по мере движение рынка по тренду. Типа есть подтягивает ордера, а тут открывает ордер.
Ну если не получиться, тогда лодно.
avatar

  15  cashyra Автор Сообщений: 392 - Юра

  • 16 августа 2020, 22:36
+
0
я показал как искать. повторно я не буду писать, тем более мы убедились что это слив
avatar

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

  • 17 августа 2020, 20:14
+
0
идея очень интересная и я не помню такого советника который бы срал за собой по следам сработавших в профит обратными ордерами я голосую за написание такого варианта*za* *help* 
avatar

  9  Borg Сообщений: 88 - Borg

  • 30 октября 2020, 08:04
+
0
Посмотрим, может у вас получится сделать заказ на грааль
avatar

  12  Slava78 Сообщений: 598

  • 31 октября 2020, 05:23

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