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

Рейтинг 2151



РЕКОМЕНДУЮ



советник ма тенденция

здравствуйте андрей
если ма 14 на определенное количество пунктов растет или падает,
за определенное количество свечей, то открывается лок,
закрываются сделки по наиболее выгодном алгоритмам известных вам,
локи открываются на расстоянии не чаще 10 пунктов
количество локов не ограничено
  • 0
  • Просмотров: 2606
  • 11 сентября 2017, 21:47
  • igrun
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

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

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

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

+
0
Нужно подробнее и со скринами.
avatar

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

  • 11 сентября 2017, 21:53
+
0

если ма 14 изменяется в течении 10 свечей, более переменной задаваемой в параметрах индикатора, то открывается лок, в котором ордера закрываются в зависимости от волатильности текущей свечи, но так чтобы закрыть в плюс
avatar

  23  igrun Автор Сообщений: 1689 - igrun

  • 12 сентября 2017, 18:01
+
0
Через неделю только буду смотреть.
Редактирован: 12 сентября 2017, 18:06
avatar

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

  • 12 сентября 2017, 18:01
+
0
отличие в том, что у меня одна ма, которая измеряется в пространстве 10 бар, если ее волатильность меньше определенного, то советник молчит и ни чего не делает, больше — открывает локи
avatar

  23  igrun Автор Сообщений: 1689 - igrun

  • 12 сентября 2017, 18:13
+
0
а зачем тебе это?
avatar

  3  Aristotel Сообщений: 129 - Aristotel

  • 12 сентября 2017, 18:33
+
0
быть в курсе волатильности
avatar

  23  igrun Автор Сообщений: 1689 - igrun

  • 12 сентября 2017, 18:36
+
0
опять что то придумал) зачем ты это генришь постоянно?)
avatar

  7  MasterTrade Сообщений: 90 - Станислав

  • 13 сентября 2017, 09:05
+
0
а вдруг полетит?
avatar

  23  igrun Автор Сообщений: 1689 - igrun

  • 13 сентября 2017, 09:14
+
0
В космос *neo* 
avatar

  14  beton2011 Сообщений: 895

  • 13 сентября 2017, 18:17
+
0
Так примерно. Даже в плюс после опта получилось :) 
Входы по условию, выходы по тралу и стопам.




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

//--- Inputs
extern double Lots       = 0.1;      // лот
extern int StopLoss      = 2000;     // лось
extern int TakeProfit    = 3000;     // язь
extern int TrailingStop  = 0;        // трал
extern int Slip          = 30;       // реквот
extern int Shift         = 1;        // на каком баре сигнал индикатора
extern int MAPeriod      = 14;       // период MA 
extern int Delta         = 100;      // дельта
extern int Count         = 3;        // число свечей
extern int Magic         = 123;      // магик

datetime t=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
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,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades()
  {
   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()<2) count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double MADelta()
  {

   double ma1=iMA(NULL,0,MAPeriod,0,0,0,Shift);
   double ma2=iMA(NULL,0,MAPeriod,0,0,0,Shift+Count);
   double delta=(ma1-ma2)/Point;
   return(delta);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OpenPos()
  {
   double ma=iMA(NULL,0,MAPeriod,0,0,0,Shift);

   if(MADelta()>Delta && Ask>ma)
     {
      PutOrder(0,Ask);
     }

   if(MADelta()<-Delta && Bid<ma)
     {
      PutOrder(1,Bid);
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Trailing()
  {
   bool mod;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==OP_BUY)
              {
               if(Bid-OrderOpenPrice()>TrailingStop*Point)
                 {
                  if(OrderStopLoss()<Bid-TrailingStop*Point)
                    {
                     mod=OrderModify(OrderTicket(),OrderOpenPrice(),Bid-TrailingStop*Point,OrderTakeProfit(),0,Yellow);
                     return;
                    }
                 }
              }

            if(OrderType()==OP_SELL)
              {
               if((OrderOpenPrice()-Ask)>TrailingStop*Point)
                 {
                  if((OrderStopLoss()>(Ask+TrailingStop*Point)) || (OrderStopLoss()==0))
                    {
                     mod=OrderModify(OrderTicket(),OrderOpenPrice(),Ask+TrailingStop*Point,OrderTakeProfit(),0,Yellow);
                     return;
                    }
                 }
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(t!=Time[0])
     {
      OpenPos();
      if(TrailingStop>0) Trailing();
      t=Time[0];
     }

   Comment("\n Delta: ",MADelta());
  }
//+------------------------------------------------------------------+

avatar

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

  • 17 сентября 2017, 08:41

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