Полуавтоматический безиндикаторный советник "Сетка"

  • Автор темы Автор темы cmillion
  • Дата начала Дата начала

iva610802

Интересующийся
Cтавим 2 ордера sell и buy, после открытия одного из них, второй удаляем, если идет в минус то через 10 пунктов открываем противоположный ордер в 2 раза большим объемом, если опять идет в минус, то открываем противоположный ордер через 20 пунктов с лотом в 2 раза больше предыдущего, если опять идет в минус, то открываем противоположный ордер через 30 пунктов с лотом в 2 раза больше предыдущего, и.т.д. при таких условиях должно будет произойти много совпадений чтоб рынок слил депозит. Ну а при положительном развитии событий поставить хороший трал, чтоб можно было рассчитывать пунктов на 300 прибыли.
На ордера не ставим стоплос и профит а закрываем по общему профиту. Этой стратегии не страшны ни тренды, ни боковики, при тренде будет тралиться общий профит.


Посмотреть вложение 111903


Параметры

PHP:
extern double  ProfitClose     = 0.5;  //закрывать все ордера при получении профита
extern double  TrailingPercent = 20;   //если 0 то ордера закрываются по ProfitClose иначе они тралятся, по TrailingProfit%
extern double  K_Profit        = 1.2;  //увеличивать профит закрытия с каждым лотом в N раз
extern double  N_Orders_NULL   = 5;    //закрывать все ордера в ноль при превышении кол-ва ордеров

extern int     Step           = 8;
extern double  K_Step         = 1.6,
               lot            = 0.01,
               K_Lot          = 1.6;
extern int     slippage       = 3,     //Максимально допустимое отклонение цены для рыночных ордеров (ордеров на покупку или продажу).
               magic          = 0;     //Магическое число ордера. Может использоваться как определяемый пользователем идентификатор.

Здравствуйте Владимир! Выложите пожалуйста советник Martini, который соответствует параметрам в Вашем сообщении (K_Step, а не Plus_Step), как во вложении. Заранее благодарен!
 
Последнее редактирование модератором:

cmillion

Гуру форума
Здравствуйте Владимир! Выложите пожалуйста советник Martini, который соответствует параметрам в Вашем сообщении (K_Step, а не Plus_Step), как во вложении. Заранее благодарен!

Это более старая версия, держите.
 

Вложения

Актёр Актёр

Местный житель
Владимир, а можете сделать в советнике Grid_Profit_Cmillion v1.2 чтобы она подтягивала оредра к цене как ползучка??

P.S. Если у вас есть на это время и желание.
 

Актёр Актёр

Местный житель
Просто есть идея выставления двух сеток стоповой и лимитной таким образом: Сначала ставится стоповая с расстоянием между ордерами 10п( к примеру) а между ордерами стоповой сетки стоят лимитники тоже с расстоянием 10п. Вопрос: можно ли подобрать лотность таким образом, чтобы при расширяющимся флете сетка выходила в плюс, ну а при тренде соответственно только в плюс????Мне кажется что при определенном закрытии по пунктам, скажем 12-13 пнктов это возможно, посчитать никак не могу =(
 

cmillion

Гуру форума
Просто есть идея выставления двух сеток стоповой и лимитной таким образом: Сначала ставится стоповая с расстоянием между ордерами 10п( к примеру) а между ордерами стоповой сетки стоят лимитники тоже с расстоянием 10п. Вопрос: можно ли подобрать лотность таким образом, чтобы при расширяющимся флете сетка выходила в плюс, ну а при тренде соответственно только в плюс????Мне кажется что при определенном закрытии по пунктам, скажем 12-13 пнктов это возможно, посчитать никак не могу =(

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

Актёр Актёр

Местный житель
Хорошо я попытаюсь.
СЛ и ТП для оредров нет , только закрытие по прибыли\убытку.

Сначала выставляется сетка стоповых ордеров , между стоповыми оредрами - сетка лимитников.

Сетка стоповых ордеров : 5 штук

Лотность регулируемый параметр для каждого лота. Первоначальный Шаг 10п.

Сетка лимитных ордеров : 5 штук

Лотность -рег. параметр для каждого лота. Первоначальный Шаг 10п

Закрытие по общему профиту/лоссу.

После того как цена пошла вверх задела бай стоп и первый селлимит и ушла от лимитника на 10 п вниз выставляется новый селл стоп. Далее она идёт вниз еще на
5 п открывается бай лимит, если еще на 5 п вниз снова селлстоп.

НУ как смог

Сейчас сижу с ручкой считаю...
 

Актёр Актёр

Местный житель
Я нашёл советник(ваш кстати) который подойдёт, вставьте пожалуйста туда параметр закрытие по общему профиту/лоссу
 

Вложения

cmillion

Гуру форума
Я нашёл советник(ваш кстати) который подойдёт, вставьте пожалуйста туда параметр закрытие по общему профиту/лоссу

Советник и закрывает ордера именно по суммарному профиту, только он еще и тралит их по этому профиту.
 

Актёр Актёр

Местный житель
А можете вывести закрытие по профиту как рег. параметр, количество ордеров(макс 10 например) и чтобы можно было ставить каждому ордеру лот? Если не затруднит , буду благодарен
 

cmillion

Гуру форума
А можете вывести закрытие по профиту как рег. параметр, количество ордеров(макс 10 например) и чтобы можно было ставить каждому ордеру лот? Если не затруднит , буду благодарен

ПАРАМЕТРЫ

PHP:
extern int    FirstStepStop      = 5;        //расстояние от текущей цены
extern int    Step               = 8;        //расстояние между ордерами

extern double Lot.1              = 0.1;      //ЛОТЫ ордеров
extern double Lot.2              = 0.2;      //ЛОТЫ ордеров
extern double Lot.3              = 0.3;      //ЛОТЫ ордеров
extern double Lot.4              = 0.4;      //ЛОТЫ ордеров
extern double Lot.5              = 0.5;      //ЛОТЫ ордеров
extern double Lot.6              = 0.6;      //ЛОТЫ ордеров
extern double Lot.7              = 0.7;      //ЛОТЫ ордеров
extern double Lot.8              = 0.8;      //ЛОТЫ ордеров
extern double Lot.9              = 0.9;      //ЛОТЫ ордеров
extern double Lot.10             = 1.0;      //ЛОТЫ ордеров

extern double ProfitClose        = 10;   //закрывать все ордера при получении профита в валюте депозита

extern int    Vhod               = 0;        //0 - как обычно 1 рыночный по тренду 
extern int    Closing_at_zero    = 8;        //после какого кол-ва ордеров закрывать ордерав при достижении нулевой прибыли

extern string Filter_Time        = "";
extern int    TimeStart          = 0 ,       //ограничение времени работы советника
              TimeEnd            = 24;       //не открываем ордера и закрываем отложки если время не между TimeStart и TimeEnd

extern string прочие.параметры   = "";
extern int    Magic              = 123;
extern bool   DrawInfo           = true;     //вывод информации на экран
extern bool   DrawOrders         = true;     //вывод линий ордеров
extern int    font_size          = 10;       //размер шрифта
extern color  text_color         = Aqua;     //цвет вывода информации
extern int    Key                = 0;

extern string расширение.канала   = "";
extern int    StepPlus           = 5;  //добавка ширины канала на каждом новом уровне level
extern int    Level.1            = 5;  //кол-во ордеров при котором канал расширяется нв StepPlus
extern int    Level.2            = 10; //кол-во ордеров при котором канал расширяется нв StepPlus х 2
extern int    Level.3            = 25; //кол-во ордеров при котором канал расширяется нв StepPlus х 3

Жду результатов тестирования.
 

Вложения

Последнее редактирование модератором:

Актёр Актёр

Местный житель
ПАРАМЕТРЫ

PHP:
extern int    FirstStepStop      = 5;        //расстояние от текущей цены
extern int    Step               = 8;        //расстояние между ордерами

extern double Lot.1              = 0.1;      //ЛОТЫ ордеров
extern double Lot.2              = 0.2;      //ЛОТЫ ордеров
extern double Lot.3              = 0.3;      //ЛОТЫ ордеров
extern double Lot.4              = 0.4;      //ЛОТЫ ордеров
extern double Lot.5              = 0.5;      //ЛОТЫ ордеров
extern double Lot.6              = 0.6;      //ЛОТЫ ордеров
extern double Lot.7              = 0.7;      //ЛОТЫ ордеров
extern double Lot.8              = 0.8;      //ЛОТЫ ордеров
extern double Lot.9              = 0.9;      //ЛОТЫ ордеров
extern double Lot.10             = 1.0;      //ЛОТЫ ордеров

extern double ProfitClose        = 10;   //закрывать все ордера при получении профита в валюте депозита

extern int    Vhod               = 0;        //0 - как обычно 1 рыночный по тренду 
extern int    Closing_at_zero    = 8;        //после какого кол-ва ордеров закрывать ордерав при достижении нулевой прибыли

extern string Filter_Time        = "";
extern int    TimeStart          = 0 ,       //ограничение времени работы советника
              TimeEnd            = 24;       //не открываем ордера и закрываем отложки если время не между TimeStart и TimeEnd

extern string прочие.параметры   = "";
extern int    Magic              = 123;
extern bool   DrawInfo           = true;     //вывод информации на экран
extern bool   DrawOrders         = true;     //вывод линий ордеров
extern int    font_size          = 10;       //размер шрифта
extern color  text_color         = Aqua;     //цвет вывода информации
extern int    Key                = 0;

extern string расширение.канала   = "";
extern int    StepPlus           = 5;  //добавка ширины канала на каждом новом уровне level
extern int    Level.1            = 5;  //кол-во ордеров при котором канал расширяется нв StepPlus
extern int    Level.2            = 10; //кол-во ордеров при котором канал расширяется нв StepPlus х 2
extern int    Level.3            = 25; //кол-во ордеров при котором канал расширяется нв StepPlus х 3

Жду результатов тестирования.

Спасибо, обязательно выложу
 
Последнее редактирование модератором:

Актёр Актёр

Местный житель
В журнале выскакивает ошибки :
2013.04.01 17:05:54 2011.02.03 17:50 _cm-ParaStop v5.1 (10ордеров) EURUSD,M1: invalid ticket for OrderDelete function

2013.04.01 17:05:54 2011.02.03 17:50 _cm-ParaStop v5.1 (10ордеров) EURUSD,M1: OrderDelete error 4051

С чем это связано?
 

cmillion

Гуру форума
В журнале выскакивает ошибки :
2013.04.01 17:05:54 2011.02.03 17:50 _cm-ParaStop v5.1 (10ордеров) EURUSD,M1: invalid ticket for OrderDelete function

2013.04.01 17:05:54 2011.02.03 17:50 _cm-ParaStop v5.1 (10ордеров) EURUSD,M1: OrderDelete error 4051

С чем это связано?

Связано с тем, что поторопился и не проверил.

Все исправил и добавил еще перевод в полный лок после 10 ордера иначе такая ограниченная 10 ордерами система обречена.

ПАРАМЕТРЫ
 

Вложения

Актёр Актёр

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

cmillion

Гуру форума
cm-PStopLock v7.1

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

Есть более новая версия этого советника. Как толсько набрали определенное кол-во ордеров советник переводит все в полный лок и начинает разруливать ордера усреднением, отсчипывая у самых убыточных небольшие куски и таким образом уменьшая их.

PHP:
extern int    FirstStepStop      = 20;       //расстояние от текущей цены
extern int    Step               = 10;       //расстояние между ордерами
extern int    TrailingStart      = 15;       //прибыль в пунктах для старта тралла (минимальный профит)
extern int    TrailingStop       = 15;       //старт тралла в пунктах от точки безубытка
extern double Lot                = 0.1;      //ЛОТЫ ордеров
extern double K_Lot              = 2.0;      //коэффициент умножения лота
extern double Plus_Lot           = 0.0;      //добавка лота
extern int    DigitsLot          = 2;        //кол-во знаков после запятой в размере лота 1 - 0.1   2 - 0.01

extern int    Orders_Lock        = 10;       //перевод всех ордеров в лок и начинаем разруливать последние если кол-во ордеров достигло Orders_Lock
extern int    StepLimit          = 10;       //шаг лимитных (разруливающих ордеров)
extern double Percent_Lot        = 20;       //какой % ЛОТА максимально убыточного ордера начинаем разруливать
extern double K_Lot_Limit        = 3.5;      //коэффициент умножения лота

extern string Filter_Time        = "";
extern int    TimeStart          = 0 ,       //ограничение времени работы советника
              TimeEnd            = 24,       //не открываем ордера и закрываем отложки если время не между TimeStart и TimeEnd
              FridayHourClose    = 16;       //час закрытия ордеров в пятницу

extern string прочие.параметры   = "";
extern int    Magic              = 123;
extern bool   DrawInfo           = true;     //вывод информации на экран
extern bool   DrawOrders         = true;     //вывод линий ордеров
extern int    font_size          = 10;       //размер шрифта
extern color  text_color         = Aqua;     //цвет вывода информации
 

Вложения

Последнее редактирование модератором:

Рашит

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

Тактика проста:

1 ставите советник CloseProfit задаете ему нужный уровень профита, например:

ProfitClose = 10 usd

И он будет закрывать все ордера при достижении профита в 10$ При этом будет удалять все отложки

Параметры:

PHP:
extern double ProfitClose     = 10;   //закрывать все ордера при получении профита в валюте депозита
extern double LossClose       = 1000; //закрывать все ордера при получении убытка
extern bool   AllSymbol       = false;//учитывать все инструменты или только тот, на котором стоит советник
extern int    Magic           = 0;    //0 - учитывать все ордера (с любым Magic номером)



2 кидаете скрипт cm_script_OpenGread

Выставляете нужную систему отроженных ордеров и ждете закрытия, потом все с ноля.

PHP:
extern datetime TimeSet        = D'2011.12.10 17:47'; //Время выставления ордеров, если текущее время больше установленного, то выставляются сразу
extern bool     Stop           = true;     //открыть стоп ордера
extern bool     Limit          = true;     //открыть лимитные ордера
extern bool     SELL           = true;     //открыть ордера SELL
extern bool     BUY            = true;     //открыть ордера BUY
extern string   __             = "";
extern double   FirstBuyStop   = 0;        //цена выставления первого BuyStop ордера, если 0 то первый BuyStop будет выставлен по цене Ask+FirstStop
extern double   FirstSellStop  = 0;        //цена выставления первого SellStop ордера, если 0 то первый SellStop будет выставлен по цене Bid-FirstStop
extern double   FirstBuyLimit  = 0;        //цена выставления первого BuyLimit ордера, если 0 то первый BuyLimit будет выставлен по цене Bid-FirstStop
extern double   FirstSellLimit = 0;        //цена выставления первого SellLimit ордера, если 0 то первый SellLimit будет выставлен по цене Ask+FirstStop
extern int      FirstStop      = 100;      //расстояние (в пунктах) от текущей цены до первого Stop ордера в случае First..Stop=0 
extern int      FirstLimit     = 50;       //расстояние (в пунктах) от текущей цены до первого Limit ордера в случае First..Limit=0
extern int      StepStop       = 30;       //расстояние (в пунктах) между Stop ордерами
extern double   K_StepStop     = 1;        //коэффициент расширения сетки
extern int      StepLimit      = 30;       //расстояние (в пунктах) между Limit ордерами
extern double   K_StepLimit    = 1;        //коэффициент расширения сетки
extern string   _              = "";
extern int      Orders         = 5;        //кол-во ордеров сетки
extern double   LotStop        = 0.5;      //объем первого Stop ордера
extern double   K_LotStop      = 1;        //умножение лота Stop ордеров 
extern double   Plus_LotStop   = 0;        //добавление лота Stop ордеров 
extern double   LotLimit       = 0.1;      //объем первого Limit ордера
extern double   K_LotLimit     = 2;        //умножение лота Limit ордеров
extern double   Plus_LotLimit  = 0;        //добавление лота Limit ордеров
extern int      stoploss       = 50;       //уровень выставления SL, если 0, то SL не выставляется
extern int      takeprofit     = 100;      //уровень выставления TP, если 0, то TP не выставляется
extern int      Expiration     = 1440;     //Срок истечения отложенного ордера в минутах, если 0, то срок не ограничен (1440 - сутки)
extern int      attempts       = 10;       //кол-во попыток открытия ордера 
extern int      Magic          = 0;        //уникальный номер ордера

И не нужно ждать никакого коннекта!
Есть и другие скрипты с другим, более простым сочетанием ордеров, если нужно выложу и их.

Удачной торговли!

очень полезные инструменты...проверим
 
Последнее редактирование модератором:

Рашит

Новичок форума
Cтавим 2 ордера sell и buy, после открытия одного из них, второй удаляем, если идет в минус то через 10 пунктов открываем противоположный ордер в 2 раза большим объемом, если опять идет в минус, то открываем противоположный ордер через 20 пунктов с лотом в 2 раза больше предыдущего, если опять идет в минус, то открываем противоположный ордер через 30 пунктов с лотом в 2 раза больше предыдущего, и.т.д. при таких условиях должно будет произойти много совпадений чтоб рынок слил депозит. Ну а при положительном развитии событий поставить хороший трал, чтоб можно было рассчитывать пунктов на 300 прибыли.
На ордера не ставим стоплос и профит а закрываем по общему профиту. Этой стратегии не страшны ни тренды, ни боковики, при тренде будет тралиться общий профит.


Посмотреть вложение 111903


Параметры

PHP:
extern double  ProfitClose     = 0.5;  //закрывать все ордера при получении профита
extern double  TrailingPercent = 20;   //если 0 то ордера закрываются по ProfitClose иначе они тралятся, по TrailingProfit%
extern double  K_Profit        = 1.2;  //увеличивать профит закрытия с каждым лотом в N раз
extern double  N_Orders_NULL   = 5;    //закрывать все ордера в ноль при превышении кол-ва ордеров

extern int     Step           = 8;
extern double  K_Step         = 1.6,
               lot            = 0.01,
               K_Lot          = 1.6;
extern int     slippage       = 3,     //Максимально допустимое отклонение цены для рыночных ордеров (ордеров на покупку или продажу).
               magic          = 0;     //Магическое число ордера. Может использоваться как определяемый пользователем идентификатор.

похоже,мартини обещает быть крепким....
 
Последнее редактирование модератором:

Рашит

Новичок форума
Cтавим 2 ордера sell и buy, после открытия одного из них, второй удаляем, если идет в минус то через 10 пунктов открываем противоположный ордер в 2 раза большим объемом, если опять идет в минус, то открываем противоположный ордер через 20 пунктов с лотом в 2 раза больше предыдущего, если опять идет в минус, то открываем противоположный ордер через 30 пунктов с лотом в 2 раза больше предыдущего, и.т.д. при таких условиях должно будет произойти много совпадений чтоб рынок слил депозит. Ну а при положительном развитии событий поставить хороший трал, чтоб можно было рассчитывать пунктов на 300 прибыли.
На ордера не ставим стоплос и профит а закрываем по общему профиту. Этой стратегии не страшны ни тренды, ни боковики, при тренде будет тралиться общий профит.


Посмотреть вложение 111903


Параметры

PHP:
extern double  ProfitClose     = 0.5;  //закрывать все ордера при получении профита
extern double  TrailingPercent = 20;   //если 0 то ордера закрываются по ProfitClose иначе они тралятся, по TrailingProfit%
extern double  K_Profit        = 1.2;  //увеличивать профит закрытия с каждым лотом в N раз
extern double  N_Orders_NULL   = 5;    //закрывать все ордера в ноль при превышении кол-ва ордеров

extern int     Step           = 8;
extern double  K_Step         = 1.6,
               lot            = 0.01,
               K_Lot          = 1.6;
extern int     slippage       = 3,     //Максимально допустимое отклонение цены для рыночных ордеров (ордеров на покупку или продажу).
               magic          = 0;     //Магическое число ордера. Может использоваться как определяемый пользователем идентификатор.
magic = 0; //Магическое число ордера. Может использоваться как определяемый пользователем идентификатор.
[/PHP]
[/QUOTE]

следовательно,будет подхватывать и ордера,выставленные вручную?
 
Последнее редактирование модератором:
Верх