Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Ваш брокер не поддерживает мобильные MetaTrader 5? Попроси приобрести их!
MetaQuotes Software Corp.
Модератор
177069
MetaQuotes Software Corp. 2007.12.04 14:31 

Binario:

Binario это не механическая торговая система, а трейдерская идея. Она заключается во входе на пробое и следовании тренду. Предлагаемый метод можно использовать во всех временных диапазонах.

Author: John Smith

MQL4 Comments
16309
MQL4 Comments 2008.05.19 07:36  
как сделать чтобы лот был постоянным
MQL4 Comments
16309
MQL4 Comments 2008.06.01 10:56  
   Здравствуйте, очень хороший советник. Только я не понимаю что такое Trailing Stop 850 напишите пожалуйста.
MQL4 Comments
16309
MQL4 Comments 2009.09.17 10:44  

burs писал(а):
   Здравствуйте, очень хороший советник. Только я не понимаю что такое Trailing Stop 850 напишите пожалуйста.

Скорее всего это для дилингового центра с 5 знаками после запятой, типа Альпари. Поэтому если у вас 4 знака, то надо убрать нули и перекомпилировать.

А вот что такое pipdifference?




Vyacheslav Barbakov
269
Vyacheslav Barbakov 2013.10.13 15:22  
тоже пробовал бинарио
#property copyright "Vyacheslav Barbakov | Penetration_Binario ver.3 | 11 мая 2012 года"
#property link      "barbakov@bk.ru"
//+-----------------------------------------------------------------------------------------------------------+
//| Внешние переменные, вводимые перед запуском советника                                                     |
//+-----------------------------------------------------------------------------------------------------------+
extern   double    MagicNumber           =     0;
extern   int       hi_binario_ma_period  =   144;
extern   int       low_binario_ma_period =   144;
extern   int       filtr_in_binario      =    15;
extern   int       filtr_out_binario     =    50;
extern   int       spread                =    15;
extern   int       takeprofit            =  1000;
extern   double    razmer_order          =  0.01;
extern   int       bezubitok             =    50;
extern   int       min_profit            =     1;
extern   int       popitki_vistavlenia   =     5;
//+-----------------------------------------------------------------------------------------------------------+
         int       popitki_buystop       =     0; 
         int       popitki_sellstop      =     0;
  static bool      buystop_go            = false;
  static bool      sellstop_go           = false;
//+-----------------------------------------------------------------------------------------------------------+
int init()
{
//+-----------------------------------------------------------------------------------------------------------+
//+-----------------------------------------------------------------------------------------------------------+
}
//+-----------------------------------------------------------------------------------------------------------+
//| Тело программы обработки каждого тика                                                                     |
//+-----------------------------------------------------------------------------------------------------------+
int start()
{
//+-----------------------------------------------------------------------------------------------------------+
//| Преверяем уровень цены ниже верхней и выше нижней линии Бинарио одновременно
//+-----------------------------------------------------------------------------------------------------------+
  double hi_binario_ma  = NormalizeDouble(iMA(NULL, 0, hi_binario_ma_period,  0, 1, 2, 1), Digits);
  double low_binario_ma = NormalizeDouble(iMA(NULL, 0, low_binario_ma_period, 0, 1, 3, 1), Digits);
  bool   close_all = false;
  
  if (((low_binario_ma + filtr_in_binario * Point) - Bid < 0) 
        && (hi_binario_ma - filtr_in_binario * Point - Ask > 0)
        && OrdersTotal() == 0)
  {
    popitki_buystop  = 0;
    popitki_sellstop = 0;
    
    buystop_go       = true;
    sellstop_go      = true;
  }
//+-----------------------------------------------------------------------------------------------------------+
//| Выставляем ордер BUYSTOP
//+-----------------------------------------------------------------------------------------------------------+
  if (buystop_go)
  {
    int res_buystop = 0;
    double buy_uroven = NormalizeDouble((hi_binario_ma + filtr_out_binario * Point + spread * Point) , Digits);
    double buy_sl_uroven = low_binario_ma;
    double buy_tp_uroven = NormalizeDouble((buy_uroven + takeprofit * Point), Digits);
    res_buystop = OrderSend(Symbol(), 
                            OP_BUYSTOP, 
                            razmer_order, 
                            buy_uroven,  
                            5, 
                            buy_sl_uroven,  
                            buy_tp_uroven,  
                            "B1", 
                            MagicNumber, 
                            0, 
                            Green); 
    if (res_buystop < 0)
    {
      Print("Ошибка выставления BUYSTOP");
      popitki_buystop = popitki_buystop + 1;
      if (popitki_buystop == popitki_vistavlenia)
      {
        buystop_go = true;
      }
    }
    else
    {
      buystop_go = false;
      Print("Выставлен BUYSTOP");
    }
  }
//+-----------------------------------------------------------------------------------------------------------+
//| Выставляем ордер SELLSTOP
//+-----------------------------------------------------------------------------------------------------------+
  if (sellstop_go)
  {
    int res_sellstop = 0;
    double sell_uroven = NormalizeDouble((low_binario_ma - filtr_out_binario * Point), Digits);
    double sell_sl_uroven = hi_binario_ma;
    double sell_tp_uroven = NormalizeDouble((sell_uroven - takeprofit * Point), Digits);
    res_sellstop = OrderSend(Symbol(), 
                            OP_SELLSTOP, 
                            razmer_order, 
                            sell_uroven,  
                            5, 
                            sell_sl_uroven,  
                            sell_tp_uroven,  
                            "S1", 
                            MagicNumber, 
                            0, 
                            Green); 
    if (res_sellstop < 0)
    {
      Print("Ошибка выставления SELLSTOP");
      popitki_sellstop = popitki_sellstop + 1;
      if (popitki_sellstop == popitki_vistavlenia)
      {
        sellstop_go = true;
      }
    }
    else
    {
      sellstop_go = false;
      Print("Выставлен SELLSTOP");
    }
  }
//+-----------------------------------------------------------------------------------------------------------+
  if (OrdersTotal() == 1 && !buystop_go && !sellstop_go)
  {
    close_all = true;
  }
    
  if (close_all)
  { //начало close_all
    for (int ord_close = 0; ord_close < OrdersTotal(); ord_close ++)
    if(OrderSelect(ord_close, SELECT_BY_POS))
    { // начало перебора открытых ордеров
      if (OrderType() == 0 && OrderMagicNumber() == MagicNumber)
      { // BUY 
        OrderClose(OrderTicket(), OrderLots(), Bid, 5, Green);
      }
      if ((OrderType() == OP_BUYSTOP) && OrderMagicNumber() == MagicNumber)
      { // BUYSTOP 
        OrderDelete(OrderTicket());
      }
      if (OrderType() == OP_SELL && OrderMagicNumber() == MagicNumber)
      { // SELL
        OrderClose(OrderTicket(), OrderLots(), Ask, 5, Red);
      }
      if ((OrderType() == OP_SELLSTOP) && OrderMagicNumber() == MagicNumber)
      { // SELLSTOP
        OrderDelete(OrderTicket());
      }
    } // конец перебора открытых ордеров
  } //конец close_all
  if (OrdersTotal() == 0)
  {
    close_all = false;
  }
//+-----------------------------------------------------------------------------------------------------------+
//| Переводим в безубыток
//+-----------------------------------------------------------------------------------------------------------+
  for (int m = 0; m < OrdersTotal(); m ++)
  if(OrderSelect(m, SELECT_BY_POS))
  { // начало перебора открытых ордеров
//+-----------------------------------------------------------------------------------------------------------+
//| Закрываем ордера при условии пересечения ценой противоположной МА бинарио
//+-----------------------------------------------------------------------------------------------------------+
    if ((OrderType() == OP_BUY) && OrderMagicNumber() == MagicNumber && (low_binario_ma - Bid) > 0)
    { 
      OrderClose(OrderTicket(), OrderLots(), Bid, 5, Green);
    }
    if ((OrderType() == OP_SELL) && OrderMagicNumber() == MagicNumber && (Ask - hi_binario_ma - spread) > 0)
    {
      OrderClose(OrderTicket(), OrderLots(), Ask, 5, Red);
    }    
//+-----------------------------------------------------------------------------------------------------------+
//| 
//+-----------------------------------------------------------------------------------------------------------+
    
//+-----------------------------------------------------------------------------------------------------------+
//| Переводим в безубыток BUY
//+-----------------------------------------------------------------------------------------------------------+
    if (OrderType() == 0 && OrderMagicNumber() == MagicNumber
        && (Bid - OrderOpenPrice() > bezubitok * Point)
        && OrderStopLoss() < OrderOpenPrice())
    
    {
      int  res_modify_buy = OrderModify( OrderTicket(), 
                                         OrderOpenPrice(), 
                                         OrderOpenPrice() + min_profit * Point,
                                         OrderTakeProfit(),
                                         0, 
                                         Orange);
    }
    
//+-----------------------------------------------------------------------------------------------------------+
//| Переводим в безубыток SELL
//+-----------------------------------------------------------------------------------------------------------+
    if (OrderType() == 1 && OrderMagicNumber() == MagicNumber
        && (OrderOpenPrice() - Ask > bezubitok * Point)
        && OrderStopLoss() > OrderOpenPrice())
    
    {
      int  res_modify_sell = OrderModify( OrderTicket(), 
                                         OrderOpenPrice(), 
                                         OrderOpenPrice() - min_profit * Point,
                                         OrderTakeProfit(),
                                         0, 
                                         Orange);
    }
  } // конец перебора открытых ордеров
  
//+-----------------------------------------------------------------------------------------------------------+
} // конец тела программы start()
//+-----------------------------------------------------------------------------------------------------------+
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий