2

 

Советник торгует на пробой или на отскок от уровней цены, которые определяет по свечам фракталам или устанавливает их на заданном расстоянии от текущей цены. Переменная StartOrders определяет тип уровней на который будут выставлены отложенные ордера.  По ближайшим фракталам, свечам или держит их на расстоянии в пунктах. (1-Candle  2-Fractals  3- ATR  >3-по пунктам).

Пример:

StartOrders = 1 – советник поставит BuyStop на High одной из прошлых свечей (от StartCandle до EndCandle) (не ближе минимально возможного уровня STOPLEVEL). SellStop на Low одной из прошлых свечей.

Далее открытые ордера подхватываются тралом, который также может быть осуществлен не только с фиксированным значением в пунктах, но и по свечам или фракталам. Трал идет всегда только по портфельному профиту ордеров, от общего безубытка. Таким образом серии ордеров закрываются только при общем профите.

Пример:

TrailingStop = 2 – советник поставит стоплосс ордеров Sell на подходящий верхний фрактал (только если стоплосс можно установить ниже уровня безубытка ордеров Sell и не ближе минимально возможного уровня STOPLEVEL). Стоплосс для ордеров Buy по уровню нижнего фрактала, но не ниже уровня общего безубытка ордеров Buy.

Настройки советника:

extern bool    BUY                    = true;  // торговать 
extern bool    SELL                   = true;  // торговать
 
extern string  ______________________ = "";
extern string  parameters_open_orders = "0-off  1-Candle  2-Fractals  >2-п";
extern int     startOrders_First      = 2;      // тип открытия первого ордера "-1-МА; 0-off;  1-Candle;  2-Fractals; >2-п";
extern int     startOrders_Second     = 1;      // тип открытия последующих ордеров "-1-МА; 0-off;  1-Candle;  2-Fractals; >2-п";
extern int     TF_Open_First          = 15;     // таймфрейм свечей или фракталов для открытия первого ордера
extern int     TF_Open_Second         = 15;     // таймфрейм свечей или фракталов для открытия усредняющего ордера (второго и последующих)
extern int     deltaOpen              = 5;      // отступ от фрактала или свечи при определении цены открытия ордера. (offset from the fractal or candles)
 
extern string  ____________________ = "";
extern int     StepOrders_1         = 20;     // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_2         = 40;     // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_3         = 60;     // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_4         = 80;     // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_5         = 100;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_6         = 120;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_7         = 140;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_8         = 160;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_9         = 180;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_10        = 200;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_11        = 220;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
extern int     StepOrders_12        = 250;    // шаг - выставлять ордер не ближе чем Step (step Thrall, moving not less than Step n )
 
extern string  ___________________  = "тралл одиночного ордера";
extern string  parameters_single_trailing  = "0-off  1-Candle  2-Fractals  >2-п";
extern int     single_trailingStop         = 1;      // тралл одиночного ордера, отключается, когда ордера перешли в портфельный тралл или безубыток
extern int     single_TF_Tralling          = 15;     // таймфрейм свечей или фракталов для тралла
extern int     single_deltaTralling        = 0;      // отступ от фрактала или свечи при определении стоплосса. (offset from the fractal or candles)
extern int     single_StepTralling         = 2;      // шаг - перемещать стоплосс не ближе чем Step (step Thrall, moving not less than Step n )
extern int     single_DeltaProfit          = 0;      // минимальный уровень прибыли. (отступ от безубытка в пунктах
extern bool    TrallLoss                   = false;  // тралл ордеров в убыточной зоне
 
extern string  __________________   = "Тралл по портфелю";
extern string  parameters_trailing  = "0-off  1-Candle  2-Fractals  >2-п";
extern bool    VirtualTS            = false;  // выставлять виртуальный или реальный trailingStop
extern int     trailingStop         = 2;      // тралл, если "0-off  1-Candle  2-Fractals >2-п";
extern int     TF_Tralling          = 15;     // таймфрейм свечей или фракталов для тралла
extern int     deltaTralling        = 0;      // отступ от фрактала или свечи при определении стоплосса. (offset from the fractal or candles)
extern int     StepTralling         = 1;      // шаг - перемещать стоплосс не ближе чем Step (step Thrall, moving not less than Step n )
extern int     DeltaProfit          = 0;      // минимальный уровень прибыли. (отступ от безубытка в пунктах
 
extern string  _________________    = "";
extern string  parameters_NoLoss    = "0-off  1-Candle  2-Fractals  >2-п";
extern int     NoLoss               = 1;      // тралл, если "0-off  1-Candle  2-Fractals >2-п";
extern int     TF_NoLoss            = 15;     // таймфрейм свечей или фракталов для тралла
extern int     deltaNoLoss          = 5;      // отступ от фрактала или свечи при определении стоплосса. (offset from the fractal or candles)
extern int     ProfitNoLoss         = 5;      // минимальный уровень прибыли. (отступ от безубытка в пунктах
 
extern string  ________________     = "";
extern double  StopLoss             = 0;        //начальный стоплосс, если "0-off  1-Candle  2-Fractals >2-п"
extern int     deltaStopLoss        = 0;        // отступ от фрактала или свечи при определении стоплосса.
 
extern string  _______________      = "";
extern bool    VirtualTP            = true;     //выставлять виртуальный или реальный ТП
extern double  TakeProfit           = 0;        //закрывать все ордера при получении профита в пипсах 0 (откл)
extern double  ProfitStop           = 0;        //закрывать все ордера при получении общего профита в валюте депозита 0 (откл)
extern double  LossStop             = 0;        //закрывать все ордера при получении общего убытка в валюте депозита 0 (откл)
extern double  ProfitPercentStop    = 10;       //закрывать все ордера при получении общего профита в процентах от депозита 0 (откл) (работает только при наличии встречных ордеров)
 
extern string  ______________       = "";
extern double  Line_Balance_1       = 1000;     //первая координата линейки
extern double  Line_Lot_1           = 0.01;     //первая координата линейки
extern double  Line_Balance_2       = 10000;    //вторая координата линейки
extern double  Line_Lot_2           = 1;        //вторая координата линейки
extern double  Line_Balance_3       = 100000;   //третья координата линейки
extern double  Line_Lot_3           = 5;        //третья координата линейки
extern double  MultiplyLot          = 1.5;      // умножать лот
extern int     OkrLot               = 2;
 
extern string  ____________          = "";
extern int     TimeStart            = 0 ,       //ограничение времени работы советника
               TimeEnd              = 24;       //не открываем ордера и закрываем отложки если время не между TimeStart и TimeEnd
 
extern string  ___________          = "";
extern int     StartCandle          = 1;        // первая свеча, которая учавствует в торговле
extern int     EndCandle            = 5;        // последняя свеча, которая учавствует в торговле
extern string  __________           = "";
extern int     MaxOrders            = 100;      //ограничение кол-ва ордеров
extern int     slippage             = 5;        //Максимально допустимое отклонение цены для рыночных ордеров
extern int     Magic                = -1;       //если -1 то все магики
extern bool    DrawInfo             = true;     //Выводить или нет информацию на экран.
extern bool    DrawOrders           = true;     //Выводить или нет линии ордеров на экран.
extern bool    InfoLeft             = true;     //вывод информации слева/справа
 
extern color   TextColor            = Aqua;     //цвет текста
extern color   FonColor             = DimGray;  //цвет фона
extern color   RedColor             = Red;      //цвет -
extern color   GreenColor           = Lime;     //цвет +
 
extern string  comment              = "Trailing Stop 25";
extern int     Key                  = 182468;
 
extern bool    неУвелчиватьЛот      = true;     //начальный лот увеличивается в завсмости от кол-ва противоположных ордеров (лок)

 

В последних версиях для расчета лота применена новая система «линейка лотов». Суть ее в следующем. Задается 3 координаты (баланс-лот) и в зависимости от текущего баланса определяется лот текущего ордера.

линейка лотов

Для 5 значных котировок  советник увеличивает параметры указанные в пунктах в 10 раз.    

 Рекомендации:

Желательно чтобы советник стоял сразу не нескольких валютных парах (3-9). Проверялся советник на EURGBP AUDCAD AUDJPY AUDNZD CADCHF AUDUSD EURUSD CADJPY EURJPY, но можно пробовать и любые другие. Важно, чтобы не было большого безоткатного движения, выбирайте пары, которые в течении небольшого времени 1-2 дня откатываются не менее чем 20-30%. Большое кол-во пар может привести к блокировке работы советника на некоторых ДЦ, где есть ограничение максимального кол-ва одновременно открытых ордеров. Минимальный депозит для микро лота (0,01) и 3 пар должен быть не менее 500 USD, лучше 1000 USD.

Все оперативные вопросы по советнику можно задавать в закрытом чате. Для того, чтобы в него войти, после покупки советника отправьте запрос на скайп: mqlcmillion

Чтобы получить советник, Вы оплачиваете его стоимость одним из способов, указанных на странице оплата, затем отправляете по адресу cmillion@narod.ru письмо, в котором указываете название программы и способ оплаты. Сразу после этого Вам будет отправлена заказанная Вами программа. Для входа в общий чат отправьте после оплаты запрос на скайп mqlcmillion.

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

Вот несколько тестов и стейтов с реальной торговли

ea_ts_d1_supertrend1

Снимок

 

21-1ts20 real

Благодаря линейке лотов стало возможным проводить и такие тесты, но естественно на реальном счету надеюсь Вы будете раньше снимать заработанные средства чем брокер схватится за голову.25 line 3 usdcad2011-2012 v25.3

Стоимость советника EA_TrailingStop — 500$

Оплата

========================================