+1
Добавил в условие для входа ТФ Н1: www.opentraders.ru/downloads/548/
avatar

AM2

  • 6 января 2015, 17:26
0
Попробую переписать. С индикаторами я мало имею дело.
avatar

AM2

  • 6 января 2015, 15:16
+4
найти закономерность — автоматизировать это не получится


Простейшая реализация данной ТС может выглядеть так:



Файл в базе: www.opentraders.ru/downloads/546/
avatar

AM2

  • 5 января 2015, 19:12
0
Когда советник, кроет серию усредняющих ордеров всегда такой всплеск по эквити, так что закрытие по средствам тут вряд ли поможет. Для меня сложно разбираться в чужом коде, то что могу делаю.
avatar

AM2

  • 3 января 2015, 22:49
0
Сейчас в советнике есть следующие настройки:


extern int    StopLoss    = 1900;//Стоплосс ордера
extern int    TakeProfit  = 350; //Тейкпрофит ордера 
extern int    Profit      = 30;  //Профит в долларах
extern int    StartHour   = 9;   //Час начала торговли(терминальное время)
extern int    EndHour     = 23;  //Час после которoго закрываем все позиции
extern int    StopDist    = 250; //Расстояние от цены для установки ордера Stop Orders
extern int    LimitDist   = 250; //Расстояние от цены для установки ордера Limit Orders
extern int    StopStep    = 250; //Шаг установки ордеров Stop Orders
extern int    LimitStep   = 250; //Шаг установки ордеров Limit Orders
extern int    Count       = 10;  //Количество устанавливаемых ордеров
extern int    StopLimit   = 0;   //0 - Только стоповые ордера, 1 - только лимитные, 2 - и стоп и лимит
extern int    Expiration  = 14;  //Время истечения ордера
extern bool   BU          = true;//Bключение вывода позиций в безубыток
extern int    BUCount     = 3;   //Количество открытых позиций когда нужно выводить в БУ
extern double StopLots    = 0.1; //Лот Stop Orders
extern double LimitLots   = 0.1; //Лот Limit Orders
extern double KLotStop    = 1;   //Коэффициент умножения лота Stop Orders
extern double KLotLimit   = 1;   //Коэффициент умножения лота Limit Orders
 




Файл в базе: www.opentraders.ru/downloads/544/
avatar

AM2

  • 2 января 2015, 11:47
0
Что пишет в журнале? Нужны скрины журнала и графика где стоит советник. Эксперт должен быть включен, т.е. стоять галочки разрешить советнику торговать и зеленая кнопка автоторговля.

У меня усреднился:



Посмотрите как сейчас шаг увеличивается:

www.opentraders.ru/downloads/534/

avatar

AM2

  • 31 декабря 2014, 18:06
0
Да я изменял условия, чтобы на демо не ждать до самого утра. Поправил, обновил :) 

www.opentraders.ru/downloads/534/

avatar

AM2

  • 31 декабря 2014, 13:46
0
Посмотрите такая примерно штука нужна?
www.opentraders.ru/downloads/543/

avatar

AM2

  • 31 декабря 2014, 13:32
0
Информация о размере лота хранилась в локальных переменных, при перезагрузке терминала они обнулялись, поэтому в журнале была ошибка «неправильный объем» и следовательно не выставлялись усредняюшие ордера. Сейчас лот и шаг рассчитываются в функциях сразу перед выставлением ордера. Размер лота считаем предыдущий умножаем на коэффициент. Шаг — по формуле: шаг в настройках * на коэффициент * количество открытых позиций.



Обновил советник в базе: www.opentraders.ru/downloads/534/
avatar

AM2

  • 31 декабря 2014, 12:48
0
Поставил на демо. Наблюдаю.
avatar

AM2

  • 30 декабря 2014, 21:10
0
Ссылку на топик дайте пожалуйста или на файл в базе?
avatar

AM2

  • 30 декабря 2014, 19:04
0
Готово:


//+------------------------------------------------------------------+
//|                                                     DeltaPro.mq4 |
//|                                              Copyright 2014, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+

#property copyright "Copyright © 2014, AM2"
#property link      "http://www.forexsystems.biz"
#property description "Forex expert advisor"

//--- Inputs
extern int    SL     = 200;  // cтоплосс ордера
extern int    TP     = 200;  // тейкпрофит ордера
extern int    Delta  = 200;  // расстояние от цены до ордера 
extern int    Slip   = 30;   // проскальзывание ордера
extern int    Try    = 5;    // количество попыток выставить ордер
extern double Lots   = 0.1;  // объем позиции
extern int    MAGIC  = 333;  // магик
//+------------------------------------------------------------------+
//| Check for open order conditions                                  |
//+------------------------------------------------------------------+
void PutOrder()
  {
   int    res,b,s,err;
   double price;   
   for(int i=OrdersTotal()-1;i>=0;i--)
    {
     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      {
       if(OrderSymbol()==Symbol() && OrderMagicNumber()==MAGIC)
        {
         if(OrderType()==OP_BUYSTOP)b++;
         if(OrderType()==OP_SELLSTOP)s++; 
        }
      }
    }
    
   //--- buy
   if(b<1)
    {
     price=Ask+Delta*Point;
     res=OrderSend(Symbol(),OP_BUYSTOP,Lots,fND(price),Slip,fND(price-SL*Point),fND(price+TP*Point),"",MAGIC,0,Blue);
      if(res<0)
        {
         Print("Ошибка: ",GetLastError());
         err++;
         Sleep(500);
         RefreshRates();
        }
      else
         Print("OK Order BUYSTOP");     
    }             
                    
   //--- sell 
   if(s<1)
    {
     price=Bid-Delta*Point;
     res=OrderSend(Symbol(),OP_SELLSTOP,Lots,fND(price),Slip,fND(price+SL*Point),fND(price-TP*Point),"",MAGIC,0,Red);
      if(res<0)
        {
         Print("Ошибка: ",GetLastError());
         err++;
         Sleep(500);
         RefreshRates();
        }
      else
         Print("OK Order SELLSTOP");     
    }
   if (err>Try) return;  
  }
//+------------------------------------------------------------------+
void DelOrder()
  {
   bool del; 
   for (int i=OrdersTotal()-1; i>=0; i--) 
    {
     if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; 
     if (OrderType()==OP_BUYSTOP)  del=OrderDelete(OrderTicket()); 
     if (OrderType()==OP_SELLSTOP) del=OrderDelete(OrderTicket());       
    }    
  }
//+------------------------------------------------------------------+
bool NewBar()
  {
   static datetime lastbar = 0;
   datetime curbar = Time[0];
   if(lastbar!=curbar)
   {
      lastbar=curbar;
      return (true);
   }
   else
   {
      return(false);
   }
  }
//+------------------------------------------------------------------+
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()==OP_BUY || OrderType()==OP_SELL)
          count++;
        }
      }
    }
    return(count);
  }
//+------------------------------------------------------------------+
double fND(double d,int n=-1)
  {
   if(n<0) return(NormalizeDouble(d, Digits));
   return(NormalizeDouble(d, n));
  }
//+------------------------------------------------------------------+
//| OnTick function                                                  |
//+------------------------------------------------------------------+
void OnTick()
  {
//--- check for history and trading
   if(Bars<100 || IsTradeAllowed()==false)
      return;
   if(NewBar()==true)
    {    
     if(CountTrades()<1)PutOrder();
     if(CountTrades()>0)DelOrder();
    }
//---
  }
//+------------------------------------------------------------------+

avatar

AM2

  • 28 декабря 2014, 23:28
0
Набросал вот такой вариант: www.opentraders.ru/downloads/542/

avatar

AM2

  • 28 декабря 2014, 18:45
0
т.е. если цена выше ниже машки, то ставим соответственно только ордера бай или сел?
avatar

AM2

  • 28 декабря 2014, 17:56
0
Где то есть что то подобное? Чтобы не с нуля писать, а какая то основа была.
avatar

AM2

  • 26 декабря 2014, 21:52
0
Полный аналог это илан обычный. Можете здесь скачать: www.mql5.com/ru/code/9697
avatar

AM2

  • 26 декабря 2014, 21:33
+1
Да мы молока не видали пока. :D 
(С) Сергей Владимирович Михалков. «Как старик корову продавал».
avatar

AM2

  • 26 декабря 2014, 11:38
0
Исправил ошибки компиляции. Остальное при наличии свободного времени.



Файл в базе: www.opentraders.ru/downloads/541/
avatar

AM2

  • 25 декабря 2014, 11:24
0
Немного подправил.



Посмотрите: www.opentraders.ru/downloads/540/
avatar

AM2

  • 25 декабря 2014, 01:10