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

Рейтинг 2147



РЕКОМЕНДУЮ




Лучшее от ZEYTO



Исправить индикатор Комментариев 3
2016-09-03 18:54:09Рейтинг 0

Исправить советник. Комментариев 5
2016-11-28 12:29:47Рейтинг 0

Советник Треллинг по индикатору

Можно написать советник треллинг по индикатору.GoFX-3MA-MTF-Non-H1.ex4 (13 Kb)
  • 0
  • Просмотров: 5593
  • 3 марта 2016, 21:47
  • ZEYTO
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

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

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

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

+
0
Нужен файл индикатора mq4 и подробное ТЗ.
avatar

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

  • 3 марта 2016, 21:49
+
0
По нулевому буферу индикатора.
avatar

  12  ZEYTO Автор Сообщений: 41

  • 3 марта 2016, 22:56
+
0
Напишите подробное ТЗ, если получится получить значения индикатора, сделаю.

avatar

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

  • 4 марта 2016, 10:19
+
0
Есть подобный код трала по МА, это будет почти тоже самое что и по вашему индикатору. Если нужно именно по вашему, переделаю.


//+---------------------------------------------------------------------------+
//|Трейлинг стоп по МА                                                TrallMA |
//|                                      Copyright © 2011, http://cmillion.ru |
//|---------------------------------------------------------------------------+
#property copyright "Copyright © 2014, http://cmillion.ru"
#property link      "cmillion@narod.ru"
//+------------------------------------------------------------------ 
extern int    Период_МА                 = 14;
extern bool   Тралить_только_прибыльные = true;
extern int    таймфрейм                 = 15;
extern int    отступ                    = 5;
//-------------------------------------------------------------------
int init()
  {
   int err;
   if(IsTesting())
     {
      err=OrderSend(Symbol(),OP_BUY, 0.1,Ask,3,0,0,"TrallMA",0,0,Blue);
      err=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,0,0,"TrallMA",0,0,Red);
     }
   return(0);
  }
//-------------------------------------------------------------------
int deinit()
  {
   return(0);
  }
//-------------------------------------------------------------------
int start()
  {
   int tip,Ticket,STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL);
   double OSL,OOP,StL=iMA(NULL,таймфрейм,Период_МА,0,MODE_SMA,PRICE_CLOSE,0),
   StLoB=NormalizeDouble(StL-отступ*Point,Digits),
   StLoS=NormalizeDouble(StL+отступ*Point,Digits);
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect(i,SELECT_BY_POS))
        {
         tip=OrderType();
         if(tip<2 && OrderSymbol()==Symbol())
           {
            OSL   = OrderStopLoss();
            OOP   = OrderOpenPrice();
            Ticket= OrderTicket();
            if(tip==OP_BUY)
              {
               if(StLoB<OOP && Тралить_только_прибыльные) continue;
               if(StLoB>NormalizeDouble(Bid-STOPLEVEL*Point,Digits)) continue;
               if(StLoB>OSL)
                 {
                  if(!OrderModify(Ticket,OOP,NormalizeDouble(StLoB,Digits),OrderTakeProfit(),0,White)) Print("Error order ",Ticket);
                 }
              }
            if(tip==OP_SELL)
              {
               if(StLoS>OOP && Тралить_только_прибыльные) continue;
               if(StLoS<NormalizeDouble(Ask+STOPLEVEL*Point,Digits)) continue;
               if(StLoS<OSL || OSL==0)
                 {
                  if(!OrderModify(Ticket,OOP,NormalizeDouble(StLoS,Digits),OrderTakeProfit(),0,White)) Print("Error order ",Ticket);
                 }
              }
           }
        }
     }
   return(0);
  }
//--------------------------------------------------------------------

avatar

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

  • 4 марта 2016, 11:55
+
0
а можете добавить сетку, бу и чтоб тралил сетку
avatar

  2  wawaer Сообщений: 7

  • 8 марта 2016, 17:26
+
0
Андрей, можно по моему индикатору.
avatar

  12  ZEYTO Автор Сообщений: 41

  • 11 марта 2016, 19:18
+
0
Вот трал по вашему индикатору:




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

input int Buffer=0;
input string IndName="GoFX-3MA-MTF-Non-H1";
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   int r=0;
   bool m;
   
   if(IsTesting() && OrdersTotal()<1)
     {
      //r = OrderSend(NULL,0,0.1,Ask,30,Ask-500*Point,0,"",0,0,Blue);
      r = OrderSend(NULL,1,0.1,Bid,30,Ask+500*Point,0,"",0,0,Red);
     }
     
   double StopLevel=MarketInfo(Symbol(),MODE_STOPLEVEL);     
   double sl=NormalizeDouble(iCustom(NULL,0,IndName,Buffer,0),Digits);

   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol())
           {
            if(OrderType()==OP_BUY)
              {
               if(sl>OrderOpenPrice() && sl!=OrderStopLoss())
                 {                  
                  if(sl<Bid-StopLevel) m=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(sl,Digits),OrderTakeProfit(),0,White);
                 }
              }
            if(OrderType()==OP_SELL)
              {
               if(sl<OrderOpenPrice() && sl!=OrderStopLoss())
                 {
                  if(sl>Ask+StopLevel) m=OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(sl,Digits),OrderTakeProfit(),0,White);
                 }
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+

avatar

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

  • 14 марта 2016, 08:24
+
0
Андрей большое спасибо!
avatar

  12  ZEYTO Автор Сообщений: 41

  • 14 марта 2016, 11:28

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