Jump to content
Programmer

Советник: Seregin

Recommended Posts

sergey1294
Я не про то будет или не будет работать твой вариант - работать он будет, я про изящество исполнения...

Почему нельзя при выполнении условий (нет рыночных, но есть отложенные) запустить удаление отложенников в int start??? :casha:

 

А смысл в этом какой. Изящество как раз состоит в том что бы как можно меньше было кода в программе. То есть зачем прописывать доплнительные условия вызова функции, когда ее можно вызвать из предыдущей.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
sergey1294
а на какой паре проходит тест? просто почти 400 уе в неделю с депозита 5000 это лихо... у меня оптимизация на фунтобаксе выдавала с депозита 5000 профит 2400 за полгода. а тут за неделю почти 400 получается...

 

Тест проходит на EURUSD

 

Вот поганяй с такими настройками

ProfitNorm=25 Lot=0.1 Delta=253 MA_period=34 Magic=1000001 SeriesNorm=8 SeriesMax=6 ProfitDanger=0 K=2 slip=3 MODE=2 Type=0 NumberOfSeries=5 MA_timeframe=0 MA_shift=0 MA_method=0 MA_applied_price=1

Edited by sergey1294
дополнения

Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
TarasBY
А смысл в этом какой. Изящество как раз состоит в том что бы как можно меньше было кода в программе. То есть зачем прописывать доплнительные условия вызова функции, когда ее можно вызвать из предыдущей.

 

Если посчитать количество значёчков в коде, то в моём варианте их меньше будет... ;)

Посмотри мной подправленный вариант 4.2.3.

Смотрю, что расстояние (Delta) м\у ордерами у тебя приличное. Я при оптимизации больше 150 не ставлю (50-150). Забавненько... :casha:

И таймфрейм для Машки ставлю 30 для более точного определения движения цены.

Edited by TarasBY
Дополнение

Человек тогда готов ЗАРАБАТЫВАТЬ, когда он готов ЗАПЛАТИТЬ (в той или иной форме) за свою удачу... :yes:

Мои наработки - www.plati.ru/asp/seller.asp?id_s=178687. :cowboy:

Share this post


Link to post
Share on other sites
sergey1294
Если посчитать количество значёчков в коде, то в моём варианте их меньше будет... ;)

Посмотри мной подправленный вариант 4.2.3.

Смотрю, что расстояние (Delta) м\у ордерами у тебя приличное. Я при оптимизации больше 150 не ставлю (50-150). Забавненько... :casha:

И таймфрейм для Машки ставлю 30 для более точного определения движения цены.

 

Глянул, а куда вот это условие потерял

 

if (OrderType() == OP_BUY || OrderType() == OP_SELL)

{

if (PrintCom == true)

Print ("Есть рыночные ордера, продолжаем серию");

break;

 

Смотрю, что расстояние (Delta) м\у ордерами у тебя приличное. Я при оптимизации больше 150 не ставлю (50-150). Забавненько... :casha:

 

На Альпари минималка 100.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
Tevez
Тест проходит на EURUSD

 

Вот поганяй с такими настройками

ProfitNorm=25 Lot=0.1 Delta=253 MA_period=34 Magic=1000001 SeriesNorm=8 SeriesMax=6 ProfitDanger=0 K=2 slip=3 MODE=2 Type=0 NumberOfSeries=5 MA_timeframe=0 MA_shift=0 MA_method=0 MA_applied_price=1

эээ... а ты бэк тест с такими параметрами делал? я сделал с 1 февраля тест, максимальная просадка с такими параметрами в районе 25000 получается... депо как минимум 50000 нужен.

Share this post


Link to post
Share on other sites
TarasBY
Глянул, а куда вот это условие потерял

 

if (OrderType() == OP_BUY || OrderType() == OP_SELL)

{

if (PrintCom == true)

Print ("Есть рыночные ордера, продолжаем серию");

break;

 

 

 

На Альпари минималка 100.

 

В моём видении FindSymbolOrder() только даёт информацию о наличии или отсутствии открытых рыночных ордеров и всё. Как эта функция выглядит с учётом замечаний:

 

int FindSymbolOrder()
{
   int i, total;
   FoundOpenedOrder = false;
   total = OrdersTotal();
   for (i = 0; i < total; i++)
   {
       OrderSelect (i, SELECT_BY_POS, MODE_TRADES);
       // Мы ищем заказ относительно нашей валюты
       if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
       {
           if (OrderType() <= 1)
           FoundOpenedOrder = True;
           if (PrintCom) {Print ("Есть рыночные ордера, продолжаем работу");}
           break;         
       }
   }
   return (0);
}

 

А закрытие оставшихся отложек я прописал в int start:

 

int start()
{
   if (Delta < STOPLEVEL)
   {
       error (130);
       return;
   }
   FindSymbolOrder();
   if (FoundOpenedOrder == false)
   {CloseSeries();}     
   ManageSeries();          //Профит проверяется на каждом тике!!!
   PrintComment2();

   if (IsSeries() == false)
   {
       int T = -1;
       if (MODE == 1 && DONE == false)
       {
           T = Type;
           SeriesCalc();
           if (series_calc > NumberOfSeries)
           {
               seriesdone = "Закрылась последняя серия: Начните заново.";
               DONE = true;
               T = -1;
           }
       }

       if (MODE == 2)
       T = GetSignal();
       SeriesCalc();
       NewSeries(T);

   }
   return (0);
}

Так мне кажется должно работать и изящно выглядит... :no:

Edited by TarasBY
Редактирование

Человек тогда готов ЗАРАБАТЫВАТЬ, когда он готов ЗАПЛАТИТЬ (в той или иной форме) за свою удачу... :yes:

Мои наработки - www.plati.ru/asp/seller.asp?id_s=178687. :cowboy:

Share this post


Link to post
Share on other sites
sergey1294
эээ... а ты бэк тест с такими параметрами делал? я сделал с 1 февраля тест, максимальная просадка с такими параметрами в районе 25000 получается... депо как минимум 50000 нужен.

 

бэк еще не проводил у меня еще оптимизация идет провожу на последнем месяце с начальным депо 1000 баков. при оптимизации выдал +2109 баков


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
TarasBY

Ну, и как мне кажется, вариант грамотнее и изящнее...

Я, как правило, тестирую стратегию, а точнее её оптимизирую, под начальный депозит 2000 ипросадку до минимума 700.

Это условия мягкого риска (имхо). :crazy:

Seregin v2.4.4.rar


Человек тогда готов ЗАРАБАТЫВАТЬ, когда он готов ЗАПЛАТИТЬ (в той или иной форме) за свою удачу... :yes:

Мои наработки - www.plati.ru/asp/seller.asp?id_s=178687. :cowboy:

Share this post


Link to post
Share on other sites
Tevez

блин... не могу разобраться. на тестере иногда не ставит нужное количество ордеров... иначе говоря: в настройках стоит сериес норм 8, сериес макс 8, к = 3, а ордера он выставляет 0,01; 0,03; 0,09; 0,27; 0,81 и все!

Share this post


Link to post
Share on other sites
sergey1294
блин... не могу разобраться. на тестере иногда не ставит нужное количество ордеров... иначе говоря: в настройках стоит сериес норм 8, сериес макс 8, к = 3, а ордера он выставляет 0,01; 0,03; 0,09; 0,27; 0,81 и все!

 

А какой максимальный лот пишет на графке? если 1 то все понятно больше нельзя.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
Tevez

ой, точно... я же совсем забыл про это ограничение в 1 лот! придется в другом ДЦ потестить.

Share this post


Link to post
Share on other sites
sergey1294
ой, точно... я же совсем забыл про это ограничение в 1 лот! придется в другом ДЦ потестить.

 

Если ты на альпари тестишь, открой счет демо-классик там диапазон лотов от 0.1 до 1000


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
Lev050
Если я правильно понял, ты хочешь увеличивать начальный лот в каждой последующей выставляемой серии.

Согласно ММ, мы имеем 5 циклов, по 7 серий в каждом цикле.

Очередной цикл заканчивается, если только ВСЕ серии внутри цикла подряд закончились с профитом. Если внутри цикла хоть на какой серии получили убыток, то начинаем с первой серии в этом же цикле.

При этом мы каждый раз рискуем только 1% депо!

Share this post


Link to post
Share on other sites
sergey1294
Согласно ММ, мы имеем 5 циклов, по 7 серий в каждом цикле.

Очередной цикл заканчивается, если только ВСЕ серии внутри цикла подряд закончились с профитом. Если внутри цикла хоть на какой серии получили убыток, то начинаем с первой серии в этом же цикле.

При этом мы каждый раз рискуем только 1% депо!

 

Примерно понял, как раз сейчас этим занимаюсь. может не совсем точно получиться как в твоей ММ но что-то подобное.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
item

Приветствую! Сергей, почему то когда тестирую он сливает... если ставлю баланс 200 то сразу резкая кривая вниз... Ставлю баланс большой 5000 он сперва вверх идет затем все равно вниз.... В чем причина ?

post-54212-1404212081,2662_thumb.jpg


Есть у меня одна идейка... :lamp:

Share this post


Link to post
Share on other sites
sergey1294
Приветствую! Сергей, почему то когда тестирую он сливает... если ставлю баланс 200 то сразу резкая кривая вниз... Ставлю баланс большой 5000 он сперва вверх идет затем все равно вниз.... В чем причина ?

 

какую версию прогоняете и с какими параметрами, на каком интервале?


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
item

версия 2.4.2 параметры меняю только мэджик на 1000001 , лот соответственно 0.01, профитнорм = 100 ставлю, вместо 8ки - 21 в настройках сетап МА. и тестирую на 30мин.


Есть у меня одна идейка... :lamp:

Share this post


Link to post
Share on other sites
sergey1294
версия 2.4.2 параметры меняю только мэджик на 1000001 , лот соответственно 0.01, профитнорм = 100 ставлю, вместо 8ки - 21 в настройках сетап МА. и тестирую на 30мин.

 

Эта версия правленная TarasBY, Она возможно работает с ошибками, используйте версию 2.4 и поставте профитнорм от 2 до 5 и будете сильно удевлены, а при таком профите у вас срабатывают последние ордера в серии с большим лотом на которые нужно очень большое депо и пробуйте менять параметр дельта.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
item

Спасибо, Сергей ! Сейчас протестирую! :)


Есть у меня одна идейка... :lamp:

Share this post


Link to post
Share on other sites
item

Установил версию 2.4 изменил тейк профит норм на 2, баланс взяли 1000, ТФ 30 мин. Вопрос: почему в конце у всех такой слив , встречается очень часто и не только в Вашем советнике при тесте... ??

post-54212-1404212081,3004_thumb.gif


Есть у меня одна идейка... :lamp:

Share this post


Link to post
Share on other sites
sergey1294
Установил версию 2.4 изменил тейк профит норм на 2, баланс взяли 1000, ТФ 30 мин. Вопрос: почему в конце у всех такой слив , встречается очень часто и не только в Вашем советнике при тесте... ??

 

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


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
item

ясно. спасибо.


Есть у меня одна идейка... :lamp:

Share this post


Link to post
Share on other sites
Tevez
Согласно ММ, мы имеем 5 циклов, по 7 серий в каждом цикле.

Очередной цикл заканчивается, если только ВСЕ серии внутри цикла подряд закончились с профитом. Если внутри цикла хоть на какой серии получили убыток, то начинаем с первой серии в этом же цикле.

При этом мы каждый раз рискуем только 1% депо!

что-то я не совсем понимаю... каким образом ты собираешься ограничить убыток 1%? там же целая серия, если будет минус, то открываются другие ордера... можно попробовать ограничить всю серию, НО... исходя из примера: депо 200, риск 2, получается соотношение профит к убытку 1 к 1? при заданном профите 2 просадка будет абсолютно точно больше двух хотя бы один раз из семи! советник не откроется 7 раз подряд по тренду... или я не так понял?

Share this post


Link to post
Share on other sites
sergey1294
что-то я не совсем понимаю... каким образом ты собираешься ограничить убыток 1%? там же целая серия, если будет минус, то открываются другие ордера... можно попробовать ограничить всю серию, НО... исходя из примера: депо 200, риск 2, получается соотношение профит к убытку 1 к 1? при заданном профите 2 просадка будет абсолютно точно больше двух хотя бы один раз из семи! советник не откроется 7 раз подряд по тренду... или я не так понял?

 

Сообщение от Lev050 viewpost.gif

Согласно ММ, мы имеем 5 циклов, по 7 серий в каждом цикле.

Очередной цикл заканчивается, если только ВСЕ серии внутри цикла подряд закончились с профитом. Если внутри цикла хоть на какой серии получили убыток, то начинаем с первой серии в этом же цикле.

При этом мы каждый раз рискуем только 1% депо!

 

Почти закончил это реализовывать. Может не совсем так у меня получилось. Алгоритм такой:

 

через n серий увеличиваеться лот, пока что сделал на шаг 0.01, а так же увеличиваеться уровень профита при котором закрыается серия на шаг который мы задаем в в настройках советника. весь этот процесс повторяеться через n циклов, параметр которого мы то же задаем в настройках перед запуском. то есть 1 цикл равен одному увеличению лота. Могу сделать что бы весь процесс (назовем его полный цикл) повторялся при достижении максимального начального лота в серии который мы будем задавать в настройках. и сделать счетчик полных циклов для статистики.


Конструктор портфеля ПАММ-Счетов:

http://kpps.info/

Share this post


Link to post
Share on other sites
TarasBY

Seregin в моём варианте корректно удаляет отложенные ордера, если случайно насильственным образом удалён рыночный ордер. :)


Человек тогда готов ЗАРАБАТЫВАТЬ, когда он готов ЗАПЛАТИТЬ (в той или иной форме) за свою удачу... :yes:

Мои наработки - www.plati.ru/asp/seller.asp?id_s=178687. :cowboy:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×