Советники: ADX System

 

ADX System:

Советник ADX_System.

Author: Collector

 
Очередная публикация на тему прибыльно торгующих советников, основанных на стандартных индикаторах, вводящяя в заблуждение неискушённых новичков Forex_а. Пора бы уже фильтровать подобные вещи, чтобы не засорять библиотеку. Получается, не надо Ирану создавать собственную нефтебиржу, а вложить свои миллиарды нефтедоллларов, запустить простенький советник и пустить Америку по-миру. Вот истинные результаты тестирования на минутках за 2006 год для трёх таймфреймов (Жаль, что разработчики не предусмотрели тиковую историю в МТ4, что увеличило бы обЪём раза в три, но максимально приблизило бы тестер к реалу.) На реале результаты будут заведомо хуже из-за проскальзывания, расширения спреда при сильных движениях и невозможности открыть позицию по нужной цене.
Strategy Tester Report
ADX_System[1]

Символ USDCHF (US Dollar vs Swiss Franc)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 16:30 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=60;
Баров в истории 250907 Смоделировано тиков 790459 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль -1217.41 Общая прибыль 19218.19 Общий убыток -20435.60
Прибыльность 0.94 Матожидание выигрыша -9.74
Абсолютная просадка 3344.46 Максимальная просадка 4868.95 (42.25%) Относительная просадка 42.25% (4868.95)
Всего сделок 125 Короткие позиции (% выигравших) 59 (37.29%) Длинные позиции (% выигравших) 66 (24.24%)
Прибыльные сделки (% от всех) 38 (30.40%) Убыточные сделки (% от всех) 87 (69.60%)
Самая большая прибыльная сделка 845.41 убыточная сделка -302.55
Средняя прибыльная сделка 505.74 убыточная сделка -234.89
Максимальное количество непрерывных выигрышей (прибыль) 4 (3341.73) непрерывных проигрышей (убыток) 19 (-3626.08)
Максимальная непрерывная прибыль (число выигрышей) 3341.73 (4) непрерывный убыток (число проигрышей) -3626.08 (19)
Средний непрерывный выигрыш 2 непрерывный проигрыш 4

Strategy Tester Report
ADX_System[1]

Символ USDCHF (US Dollar vs Swiss Franc)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 16:30 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=240;
Баров в истории 250907 Смоделировано тиков 790459 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль 247.04 Общая прибыль 5486.17 Общий убыток -5239.13
Прибыльность 1.05 Матожидание выигрыша 8.82
Абсолютная просадка 1371.01 Максимальная просадка 2629.34 (23.35%) Относительная просадка 23.35% (2629.34)
Всего сделок 28 Короткие позиции (% выигравших) 13 (23.08%) Длинные позиции (% выигравших) 15 (26.67%)
Прибыльные сделки (% от всех) 7 (25.00%) Убыточные сделки (% от всех) 21 (75.00%)
Самая большая прибыльная сделка 815.03 убыточная сделка -329.12
Средняя прибыльная сделка 783.74 убыточная сделка -249.48
Максимальное количество непрерывных выигрышей (прибыль) 2 (1618.05) непрерывных проигрышей (убыток) 9 (-2598.25)
Максимальная непрерывная прибыль (число выигрышей) 1618.05 (2) непрерывный убыток (число проигрышей) -2598.25 (9)
Средний непрерывный выигрыш 1 непрерывный проигрыш 4

Strategy Tester Report
ADX_System[1]

Символ USDCHF (US Dollar vs Swiss Franc)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 16:30 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=15;
Баров в истории 250907 Смоделировано тиков 790459 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль -9154.30 Общая прибыль 16176.56 Общий убыток -25330.86
Прибыльность 0.64 Матожидание выигрыша -47.19
Абсолютная просадка 9154.30 Максимальная просадка 10882.34 (92.79%) Относительная просадка 92.79% (10882.34)
Всего сделок 194 Короткие позиции (% выигравших) 85 (23.53%) Длинные позиции (% выигравших) 109 (27.52%)
Прибыльные сделки (% от всех) 50 (25.77%) Убыточные сделки (% от всех) 144 (74.23%)
Самая большая прибыльная сделка 803.99 убыточная сделка -318.42
Средняя прибыльная сделка 323.53 убыточная сделка -175.91
Максимальное количество непрерывных выигрышей (прибыль) 3 (347.50) непрерывных проигрышей (убыток) 8 (-1979.63)
Максимальная непрерывная прибыль (число выигрышей) 1570.90 (2) непрерывный убыток (число проигрышей) -1979.63 (8)
Средний непрерывный выигрыш 1 непрерывный проигрыш 3

Для тестирования на минутках в формулах индикатора ADX 0-й таймфрейм заменён на выбираемый пользователем, чтобы значения индикаторов брались с нужного графика. Как видно, никакой монотонно возрастающей прибыли, в лучшем случае, на H4, болтанка и
возврат к исходному балансу.
//+------------------------------------------------------------------+
//|                                                   ADX_System.mq4 |
//|                                                           System |
//|                                                   work_a@ukr.net |
//+------------------------------------------------------------------+
#property copyright "System"
#property link      "work_a@ukr.net"
 
extern double TakeProfit = 100;
extern double Lots =1;
extern double TrailingStop = 0;
extern double StopLoss = 30;
extern int TimeFrame=60;   
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
  {
    double ADXP, ADXC, ADXDIPP;
    double ADXDIPC, ADXDIMP, ADXDIMC;
    int cnt, ticket, total;
    if(Bars < 100)
      {
        Print("bars less than 100");
        return(0);  
      }
    if(TakeProfit < 10)
      {
        Print("TakeProfit less than 10");
        return(0);  // check TakeProfit
      }
    ADXP = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_MAIN, 2);
    ADXC = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_MAIN, 1);
    ADXDIPP = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_PLUSDI, 2);
    ADXDIPC = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_PLUSDI, 1);  
    ADXDIMP = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_MINUSDI, 2);
    ADXDIMC = iADX(NULL, TimeFrame, 14, PRICE_CLOSE, MODE_MINUSDI, 1);  
    total = OrdersTotal();
    if(total < 1) 
      {
        // no opened orders identified
        if(AccountFreeMargin() < (1000*Lots))
          {
            Print("We have no money. Free Margin = ", AccountFreeMargin());
            return(0);  
          }
        // check for long position (BUY) possibility
        if((ADXP < ADXC) && (ADXDIPP < ADXP) && (ADXDIPC > ADXC))
          {
            ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Bid - StopLoss*Point, 
                               Ask + TakeProfit*Point, "adx sample", 16384, 0, Green);
            if(ticket > 0)
              {
                if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)) 
                    Print("BUY order opened : ", OrderOpenPrice());
              }
            else 
                Print("Error opening BUY order : ",GetLastError()); 
            return(0); 
          }
        // check for short position (SELL) possibility
        if((ADXP < ADXC) && (ADXDIMP < ADXP) && (ADXDIMC > ADXC))
          {
            ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 3, Ask + StopLoss*Point, 
                               Bid - TakeProfit*Point, "adx sample", 16384, 0, Red);
            if(ticket > 0)
              {
                if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)) 
                    Print("SELL order opened : ", OrderOpenPrice());
              }
            else 
                Print("Error opening SELL order : ",GetLastError()); 
            return(0); 
          }
        return(0);
      }
    for(cnt = 0; cnt < total; cnt++)
      {
        OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
        if(OrderType() <= OP_SELL &&   // check for opened position 
           OrderSymbol()==Symbol())  // check for symbol
          {
            if(OrderType() == OP_BUY)   // long position is opened
              {
                if(ADXP > ADXC && ADXDIPP > ADXP && ADXDIPC < ADXC)
                  {
                    OrderClose(OrderTicket(), OrderLots(), Bid, 3, Violet); // close position
                      return(0); // exit
                  }
                if(TrailingStop > 0)  
                  {                 
                    if(Bid - OrderOpenPrice() > Point*TrailingStop)
                      {
                        if(OrderStopLoss() < Bid - Point*TrailingStop)
                          {
                            OrderModify(OrderTicket(), OrderOpenPrice(), 
                                        Bid - Point*TrailingStop, OrderTakeProfit(), 
                                        0, Green);
                            return(0);
                          }
                      }
                  }
              }
            else 
              {
                if(ADXP > ADXC && ADXDIMP > ADXP && ADXDIMC < ADXC)
                  {
                    OrderClose(OrderTicket(), OrderLots(), Ask, 3, Violet); // close position
                    return(0); // exit
                  }
                if(TrailingStop > 0)  
                  {                 
                    if((OrderOpenPrice() - Ask) > (Point*TrailingStop))
                      {
                        if((OrderStopLoss() > (Ask + Point*TrailingStop)) || 
                           (OrderStopLoss() == 0))
                          {
                            OrderModify(OrderTicket(), OrderOpenPrice(), 
                                        Ask + Point*TrailingStop, OrderTakeProfit(), 
                                        0,Red);
                            return(0);
                          }
                      }
                  }
              }
          }
      }
    return(0);
  }
//+------------------------------------------------------------------+
 
То же самое для EURUSD:
Strategy Tester Report
ADX_System[1]

Символ EURUSD (Euro vs US Dollar)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 17:52 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=60;
Баров в истории 251704 Смоделировано тиков 798215 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль 2334.80 Общая прибыль 18627.20 Общий убыток -16292.40
Прибыльность 1.14 Матожидание выигрыша 27.15
Абсолютная просадка 0.00 Максимальная просадка 3553.60 (24.06%) Относительная просадка 24.06% (3553.60)
Всего сделок 86 Короткие позиции (% выигравших) 37 (27.03%) Длинные позиции (% выигравших) 49 (32.65%)
Прибыльные сделки (% от всех) 26 (30.23%) Убыточные сделки (% от всех) 60 (69.77%)
Самая большая прибыльная сделка 1028.80 убыточная сделка -358.80
Средняя прибыльная сделка 716.43 убыточная сделка -271.54
Максимальное количество непрерывных выигрышей (прибыль) 3 (1250.80) непрерывных проигрышей (убыток) 9 (-2274.00)
Максимальная непрерывная прибыль (число выигрышей) 2019.20 (2) непрерывный убыток (число проигрышей) -2491.20 (8)
Средний непрерывный выигрыш 1 непрерывный проигрыш 3

Здесь получили прибыль. Повезло!
Strategy Tester Report
ADX_System[1]

Символ EURUSD (Euro vs US Dollar)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 17:56 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=240;
Баров в истории 251708 Смоделировано тиков 798224 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль -2656.40 Общая прибыль 5884.80 Общий убыток -8541.20
Прибыльность 0.69 Матожидание выигрыша -80.50
Абсолютная просадка 4618.00 Максимальная просадка 4742.00 (46.84%) Относительная просадка 46.84% (4742.00)
Всего сделок 33 Короткие позиции (% выигравших) 19 (5.26%) Длинные позиции (% выигравших) 14 (35.71%)
Прибыльные сделки (% от всех) 6 (18.18%) Убыточные сделки (% от всех) 27 (81.82%)
Самая большая прибыльная сделка 1000.00 убыточная сделка -368.40
Средняя прибыльная сделка 980.80 убыточная сделка -316.34
Максимальное количество непрерывных выигрышей (прибыль) 2 (1961.60) непрерывных проигрышей (убыток) 15 (-4742.00)
Максимальная непрерывная прибыль (число выигрышей) 1961.60 (2) непрерывный убыток (число проигрышей) -4742.00 (15)
Средний непрерывный выигрыш 1 непрерывный проигрыш 5

Strategy Tester Report
ADX_System[1]

Символ EURUSD (Euro vs US Dollar)
Период 1 Минута (M1) 2006.01.02 00:51 - 2006.07.28 17:56 (2006.01.01 - 2006.07.29)
Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика)
Параметры TakeProfit=100; Lots=1; TrailingStop=0; StopLoss=30; TimeFrame=15;
Баров в истории 251708 Смоделировано тиков 798224 Качество моделирования 25.00%
Начальный депозит 10000.00
Чистая прибыль -6564.40 Общая прибыль 33155.20 Общий убыток -39719.60
Прибыльность 0.83 Матожидание выигрыша -23.11
Абсолютная просадка 6977.60 Максимальная просадка 9710.80 (76.26%) Относительная просадка 76.26% (9710.80)
Всего сделок 284 Короткие позиции (% выигравших) 145 (31.03%) Длинные позиции (% выигравших) 139 (39.57%)
Прибыльные сделки (% от всех) 100 (35.21%) Убыточные сделки (% от всех) 184 (64.79%)
Самая большая прибыльная сделка 1021.60 убыточная сделка -358.80
Средняя прибыльная сделка 331.55 убыточная сделка -215.87
Максимальное количество непрерывных выигрышей (прибыль) 5 (1052.00) непрерывных проигрышей (убыток) 12 (-2300.00)
Максимальная непрерывная прибыль (число выигрышей) 1770.80 (3) непрерывный убыток (число проигрышей) -2300.00 (12)
Средний непрерывный выигрыш 2 непрерывный проигрыш 3
Причина обращения: