Советники: VLT_TRADER

 

VLT_TRADER:

Система основана на сжатии волатильности

Author: Юрий

 
Да такую ровную линию я давно невидел
 
Муха, Главное стабильность! :)
 
//Советник немного доработан.
 
//+------------------------------------------------------------------+
//|                                                   VLT_TRADER.mq4 |
//|                                                     FORTRADER.RU |
//|                                          http://www.fortrader.ru |
//+------------------------------------------------------------------+
#property copyright "FORTRADER.RU"
#property link      "http://www.fortrader.ru"
 
extern int profit = 200;
extern int stop = 100;
extern int otstup = 1;
extern int PriceType = 1;//1 - от close ордера устанавливаются. 2 - от High и Low
 
double OpenPrice,Profit,Stop,sup,sup1;
int okbuy,oksell,onepossell,oneposbuy,i;
double value=100;
 
int start()
  {
  double VLT,VSE,ULTRA;
 
   /*история изменений:
   -Добавлен параметр otstup - расстояние отступа от PriceType
   -Добавлен параметр PriceType - Выбор точки установки ордера, 1 - от close ордера устанавливаются. 2 - от High и Low
   */
  
  
  VLT=MathAbs(iHigh(NULL,0,1)-iLow(NULL,0,1));
 
  
  for(int i=2;i<10;i++)
  {
  
  if (MathAbs(iHigh(NULL,0,i)-iLow(NULL,0,i))<value && MathAbs(iHigh(NULL,0,i)-iLow(NULL,0,i))>0){value=MathAbs(iHigh(NULL,0,i)-iLow(NULL,0,i));}
  }  
  
  
  okbuy=0;oksell=0;
  for(int cnt=0;cnt<OrdersTotal();cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
       
         if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP)
         {
         okbuy=1;
         }
        
         if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP)
         {
         oksell=1;
         }
      }
    
  
 
  if(VLT<value && okbuy==0)
  {
   if(PriceType==1){   OpenPrice=Close[1]+otstup*Point;}
   if(PriceType==2){   OpenPrice=High[1]+otstup*Point;}
   Profit=OpenPrice+profit*Point;
   Stop=OpenPrice-stop*Point;
  OrderSend(Symbol(),OP_BUYSTOP,0.1,OpenPrice,3,Stop,Profit,"My order #",16384,0,Green);
  okbuy=1;
  }
  
      if(VLT<value && oksell==0)
  {
   if(PriceType==1){ OpenPrice=Close[1]-otstup*Point;}
   if(PriceType==2){ OpenPrice=Low[1]-otstup*Point;}
   Profit=OpenPrice-profit*Point;
   Stop=OpenPrice+stop*Point;
  OrderSend(Symbol(),OP_SELLSTOP,0.1,OpenPrice,3,Stop,Profit,"My order #",16384,0,Green);
  oksell=1;
  }
 
 
 
 
  
value=100;
   return(0);
  }
 

Выражаю искреннюю благодарность создателям и опубликовавшим данный продукт.

 

а как он определяет когда в лонг, когда в шорт?

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

 
ultimate:

а как он определяет когда в лонг, когда в шорт?

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


В зависимости от того какой ордер сработает..