Вопрос к любителям мартини

 
Тема обсуждалась много раз.. У меня вопрос другого рода: в какой данный момент цены/времени определяется что доливать нет смысла? (Хотелось бы видеть статистические модели от юзеров форума в поддержку своих аргументов) Видел несколько стратегий в которых вкручен мартин, но они тупо выглядят ( т.е. открылась сделка бай, потом через всего лишь 2-3 пипса еще бай и т..д) . Укажите на ваши самые любимые советники из паблика основанные на мартине
 
eura:
Тема обсуждалась много раз.. У меня вопрос другого рода: в какой данный момент цены/времени определяется что доливать нет смысла? (Хотелось бы видеть статистические модели от юзеров форума в поддержку своих аргументов) Видел несколько стратегий в которых вкручен мартин, но они тупо выглядят ( т.е. открылась сделка бай, потом через всего лишь 2-3 пипса еще бай и т..д) . Укажите на ваши самые любимые советники из паблика основанные на мартине


3 месяца торговал ручным мартином.. все было хорошо. Доливался на уровнях. Предыдущую четверг - пятница почти слит.... по EUR, думаю забросить мартин.. =)
 
eura:
Тема обсуждалась много раз.. У меня вопрос другого рода: в какой данный момент цены/времени определяется что доливать нет смысла? (Хотелось бы видеть статистические модели от юзеров форума в поддержку своих аргументов) Видел несколько стратегий в которых вкручен мартин, но они тупо выглядят ( т.е. открылась сделка бай, потом через всего лишь 2-3 пипса еще бай и т..д) . Укажите на ваши самые любимые советники из паблика основанные на мартине


См. прицеп...
Файлы:
tritlrps.zip  347 kb
 
eura:
Тема обсуждалась много раз.. У меня вопрос другого рода: в какой данный момент цены/времени определяется что доливать нет смысла? (Хотелось бы видеть статистические модели от юзеров форума в поддержку своих аргументов) Видел несколько стратегий в которых вкручен мартин, но они тупо выглядят ( т.е. открылась сделка бай, потом через всего лишь 2-3 пипса еще бай и т..д) . Укажите на ваши самые любимые советники из паблика основанные на мартине


https://forum.mql4.com/ru/20265/page93
 
Roman.:

См. прицеп...


Клевый прицеп.. спасибо.. что из этого гонял на демо? что больше всего приглянулось?
 
butthead:

3 месяца торговал ручным мартином.. все было хорошо. Доливался на уровнях. Предыдущую четверг - пятница почти слит.... по EUR, думаю забросить мартин.. =)


СКолько первоначальное депо и на сколько нагнал до момента слива?
 
eura:


Клевый прицеп.. спасибо.. что из этого гонял на демо? что больше всего приглянулось?


Всем заинтересованным лицам - выкладываю в прицеп и самого советника по Лавине, и отчет о его работе с одними из возможных вх параметрах, мной написанного на основе Av02.mq4 - варианты неттинговой лавины (см. предыдущий прицеп моего поста - специально оставил текущие настройки... ранее оптимизированных параметрах код также закомментирован + описание его работы. Вышел я на этот вариант после многочисленных изысканий и исследований в данном направлении. Итак, Демо - недавно - там показывать еще нечего. Тестер - в архиве - в нем см. сет файлы для тестирования и оптимизации. Описание переменных и особенности его работы:

#property copyright "Copyright © 18 июля, 2011, Roman Shiredchenko"

#include <stdlib.mqh>
#include <stderror.mqh>
//#include <dynamic_channel.mqh>             // динамический канал
#include <TrailingByFractals.mqh>          // trailing

//
// Внешние переменные (оптимизируются)
//

extern double Lots = 0.1;         // Стартовый лот
extern  double MaxRisk = 0;       // риск на капитал в %
                                  // рассчитываем объем позиции взависимости от размера стопа, при заданном риске
                                  // например при депо 10 000 риск 1% при стопе 100 пп это будет примерно лот 0.1,
                                  // при стопе 200 пп уже лот должен быть 0.05, для того чтобы риск 1% остался на том же уровне
extern int MaxLoss = 90;          // Максимально допустимая просадка в процентах от баланса

extern double StopLoss = 0;      // Стоплосс в пипсах - для пятизнака - для инструментов XXXYPY, металлов.
extern int TakeProfitPips = 220;  // Тейкпрофит в пипсах для начальных ордеров (без исп-ия трала), для пятизнака

extern int Period_ATR = 30; // значение АТР для расчета динамического канала, использовать валютах XXXUSD, USDCAD, USDCHF, КРОМЕ XXXJPY
//extern int divider = 3;

//extern double KMartin_Mul = 2;    // Коэф. наращивания (умножения) начального лота - постоянный - равен 2
extern int Max_Iteration = 10;     // Максимальное количество итераций (ордеров) в мартине 
extern int k = 2;                 // с какой итерации тралим

extern double Delta_Sum_Loss = 8; // минимальный допуск в "настоящих" пунктах для расчета расстояния от безубытка (буфер), 
          // включается функция трала после очередной итерации, при котором начиная с к, если прибыль по текущей позиции больше 
          // суммы суммарного последовательного убытка предыдущих итераций и допуска Delta_Sum_Loss,  то тралим...
       

extern int t_trend_period =6;        // 1-М1, 2-М5, 3-М15, 4-М30, 5-Н1...-для старшего фильтра, внутри которого работаем
extern int s_trend_period = 5;       //  PERIOD_M1      1       1 минута
                                     //  PERIOD_M5      5       5 минут
                                     //  PERIOD_M15     15      15 минут
                                     //  PERIOD_M30     30      30 минут
                                     //  PERIOD_H1      60      1 час
                                     //  PERIOD_H4      240     4 часа
                                     //  PERIOD_D1      1440    1 день
                                     //  PERIOD_W1      10080   1 неделя
                                     //  PERIOD_MN1     43200   1 месяц
                                     //  0 (ноль)       0       Период текущего графика 
                                     
//extern int Filter.Hour=0;            //  Д-Фильтр: торговля по часам, вне этих часовых рамок новые сделки не открываем, но текущие инетации завершаем
extern int     Start=9;
extern int      End=20;
                                        
extern int Period_MA = 20;           // Период МА                          
extern int Period_ADX = 40;           
extern int ADXOpenLevel = 12;   
//---- входные параметры индикатора iVAR
extern int n = 5;
extern int nBars = 100000;
 

Стоп-лосс используется только для обозначенных инструментов, т.к. пока еще не нашел формулу для расчета динамически меняющегося канала, для остальных инструментов ширина канала получается от величины АТР - т.е. каждый день - разная (меняется как правило медленно, в зависимости от периода дневного АТР), т.е. когда оптимизируются инструменты с йеной или металлы галочку убирай с оптимизации Period_ATR, ставь "0" и все - этот параметор не используется, когда торги по другим инструментам, то значение постоянного уровня StopLoss не используется - ставь там 0 и снимай галочку оптимизации.

Вот эта конструкция в коде:

 if (Symbol() == "GBPJPY" || Symbol() == "EURJPY" || Symbol() == "USDPY" || Symbol() == "CHFJPY" || 
            Symbol() == "XAUUSD" || Symbol() == "XAGUSD" || Symbol() == "EURGBP")   StopLossPips = StopLoss;
              else
               {
                  channel = 10* (iATR(Symbol(),PERIOD_D1,Period_ATR,1)*10000/3);
                  //Print(" channel ATR ", iATR(Symbol(),PERIOD_D1,Period_ATR,1) ," равен ",channel);
                  StopLossPips = NormalizeDouble(channel,0);
                 //Print("стоплосс ордера № ",OrderTicket()," равен ",  StopLossPips);               
                  if (Lot(StopLossPips)==false) //Функции мoжно передавать любой параметр - все расчеты - внутри нее 
                        {
                          Comment(" Пополните счет. Не хватает средств на минимальный лот. Советник остановлен.");// Если средств не хватает на мин, то выход
                          Print  ("Не хватает средств на минимальный лот. Lots_New = ",Lots_New, " AccountFreeMargin() = ", AccountFreeMargin()); 
                                                                                                   // Если средств не хватает на мин, то выход
                          return (0);
                        }
           
               }              

Переменные t_trend_period =6; s_trend_period = 5; для оптимизации рабочих таймфреймов.

Описание торговых условий: Вход в рынок по пробою фрактала на сигнальном (как правило меньшем) таймфрейме, чем трендовый. Естественно, при этом АДХ, МА и индикатор iVAR должны на старшем глобальном ТФ показывать в одну сторону - что тренд начался... Лавина же трендовая ТС.

Вот сигнальная часть эксперта.

// ----------------------------Считаем параметры технических индикаторов:------------------------------------
   
   double MA_1 = iMA(Symbol(),trend_period,Period_MA,0,MODE_EMA,PRICE_TYPICAL,1);
   
   double ADX1_1 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_MAIN,0);           // рассчет ADX - торгуем по тренду
   double ADX1_2 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_MAIN,1);
   double ADX_PLUS1_1 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_PLUSDI,0);
   double ADX_PLUS1_2 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_PLUSDI,1);
   double ADX_MINUS1_1 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_MINUSDI,0);
   double ADX_MINUS1_2 = iADX(Symbol(), trend_period, Period_ADX, PRICE_OPEN, MODE_MINUSDI,1);
   
   double iVAR_1 = iCustom (Symbol(),trend_period, "iVAR", n, nBars, 0, 1);                    // расчет индикатора iVAR
   
   // определение входа в рынок по пробою фрaктала        
      F1=iFractals(Symbol(), signal_period, MODE_UPPER, 2); 
        if (F1>0) F11 = F1; //Print (" F11 = ",   F11);}   
      // if (F1 == 0)  Print (" F11 = ",   F11);
      
             
      F2=iFractals(Symbol(), signal_period, MODE_LOWER, 2); 
        if (F2>0) F22 = F2; // Print (" F22 = ",   F22);}
       // if (F2 == 0) Print (" F22 = ",   F22);        

При этом, в эксперте, допустим, получились их (этих переменных, отвечающих за значения используемых ТФ-ов в торговле)значения 5 и 3, то последующий тест (форвард) или постановку на торговый счет эксперта необходимо ставить именно на меньшем таймфрейме из полученных, т.е. если 5 и 3, то тестируем и торгуем на М15, т.к. значение 3 = таймфрейму М15.

В эксперте организован контроль за образованием нового бара, поэтому тестировать и оптить по модели: "По ценам открытия...", кроме этого в эксперте ведется виртуальный учет уровней тейка и стопа, с последующим переворотом (если стоп-лосс), дабы не показывать брокеру своих уровней закрытия поз - это неттинговая лавина, т.е. при сработке споп-лосса - поза кроется и открывается новая увеличенным объемом, в соответствие, с числами ФИБО, т.е. при переворотах будут следующие множители объемов позиций 1 переворот - 1, 2 переворот - 2, 3-3, 4-5, 5-8... т.д. - вот эта конструкция:

 switch(Iteration)                                  // Заголовок switch 
                   {                                              // Начало тела switch     
                     case 1 : Lots_New = lastLots * 1; lots = lastLots; Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );break; //расчет нового объема       
                     case 2 : Lots_New = lots * 2;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;   
                     case 3 : Lots_New = lots * 3;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 4 : Lots_New = lots * 5;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;  
                     case 5 : Lots_New = lots * 8;    Print("Iteration = ", Iteration,  " Lots_New = ", Lots_New );  break;     
                     case 6 : Lots_New = lots * 13;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;      
                     case 7 : Lots_New = lots * 21;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New);  break;     
                     case 8 : Lots_New = lots * 34;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New);  break;         
                     case 9 : Lots_New = lots * 55;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New);  break;           
                     case 10: Lots_New = lots * 89;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break; 
                     case 11: Lots_New = lots * 144;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 12: Lots_New = lots * 233;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New);  break;               
                     case 13: Lots_New = lots * 377;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     case 14: Lots_New = lots * 610;    Print("Iteration = ", Iteration, " Lots_New = ", Lots_New );  break;               
                     default: Print ("Более четырнадцати переворотов = ну, куда, на хуй - ", Iteration, "переворотов");      // С case не совпало   
                   }                                              // Конец тела switch  
                   

Ограничение работы сова по времени внутри суток - переменные Start, End - вне времени определенного этими переменными советник в рынок не входит. Вход в рынок - рыночными ордерами при пробое фрактала на сигнал таймфрейме, отложенники не используются. В данном сове используется трал по фракталом на сигнал таймфрейме на расстоянии indent от текущего фрактала. Особенности при оптимизации переменной k ( extern int k = 2; // с какой итерации тралим ) - ее значение ставить от 1 до 3 шаг 1, т.е. производим перебор оптимизируемых вариантов и перебираем эти значения, т.е. трал включать либо с первого переворота (итерации), либо со второго, либо с третьего... бОльшие ее значения я не пробовал использовать... Окончательный выход из позы, либо из цикла переворотов - либо ТР, либо тралом.

Код закоментирован, на экране торгуемого инструмента слева вверху также комментарии о ходе торгов.

При вылетании терминала, падении Винды и т.д. после перезагрузки компа и запуска терминала, перед запуском сова на инструменте, вбить вручную в его внешние переменные значения переменных отвечающих за:

extern  int Iteration = 0;                     // счетчик для подсчета итераций, колен лавины
extern  int Sum_Loss = 0;                      // суммарный убыток по предыдущим итерациям

Пока, вроде все.

П.С. В прицепе - два сова - второй - со входами по методу Пуриа - посмотрите через поиск описание входов данного метода...

Будут интересные результаты по улучшению ТС или лучшие критерии на вход в сделку и т.д. - делитесь.

Вот такие картинки рисуются, да, кстати, если будешьторговать не постоянным лотом, а по переменной MaxRisk = 1; // риск на капитал в % - детальное описание данного варианта ММ - см. здесь - я его завернул в ф-ию эксперта, то значение переменной extern double Lots = 0,1; // Стартовый лот, необходимо сделать равным нулю.

Тестируйте, дорабатывайте, т.д. высказывайте предложения и вопросы в ветке Лавина - также описание этой ТС с этой страничке...

Благодарю.

Файлы:
cknble.zip  1297 kb
 
eura:


СКолько первоначальное депо и на сколько нагнал до момента слива?

Депо было 700 у.е. в январе этого года - нарвался на жесточайший флет по евробаксу на другом варианте ТС с ММ по мартину - было 6 переворотов - это для депа было уже слишком. с 700 разогнал до 1200 после чего счет был слит. Т.е. для старта по той ТС - она вошла в просадку - это уже на демо и тестере - причем нормально сделки били один в один - на 2400, т.е. для старта необходим деп 3000 у.е. на стартовом лоте 0,01 и комфортной работе. Готовлюсь.
 
Roman.:

т.е. для старта необходим деп 3000 у.е. на стартовом лоте 0,01 и комфортной работе. Готовлюсь.

а потом надо будет 6тыс, а потом 12тыс, а потом - деньги закончатся
 
eura:
Тема обсуждалась много раз.. У меня вопрос другого рода: в какой данный момент цены/времени определяется что доливать нет смысла? (Хотелось бы видеть статистические модели от юзеров форума в поддержку своих аргументов) Видел несколько стратегий в которых вкручен мартин, но они тупо выглядят ( т.е. открылась сделка бай, потом через всего лишь 2-3 пипса еще бай и т..д) . Укажите на ваши самые любимые советники из паблика основанные на мартине


На форуме МТ5.сом есть здоровенная ветка по советникам основанным на мартине. Называется Советник Ilan, настройки и оптимизация. Присутствует много народу. Ведется активное обсуждение. Часто появляются новые, свежие варианты советников. Есть большое хранилище советников основанных на мартине. Я и сам там часто кручусь.
Причина обращения: