Обсуждение статьи "Создаем кроссплатформенный советник-сеточник (Окончание): диверсификация как способ повышения прибыльности"

 

Опубликована статья Создаем кроссплатформенный советник-сеточник (Окончание): диверсификация как способ повышения прибыльности:

В прошлых статьях данной серии мы пытались разными способами создать более-менее прибыльный советник-сеточник. Теперь же мы попробуем увеличить прибыльность торгового советника с помощью диверсификации. Нашей целью является всеми желанные 100% прибыли в год при 20% максимальной просадки по балансу.

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

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

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

Второй способ — это торговля сразу на нескольких инструментах (диверсификация). При этом размер лота по каждому инструменту уменьшается по сравнению с торговлей на одном инструменте. Благодаря чему, даже если вы попадаете в просадку или стоп лосс по одному из инструментов, максимальная просадка по балансу у вас будет меньше, чем при торговле на одном инструменте. И плюс к этому, прибыль по др

Автор: Roman Klymenko

 

ПРОблема сеток в том что оптмимзатор подбирает настройки так чтоб к неблаоприятному графику попдойти  минимальным лотом. В жизни все происходит не так. Сначала на среднем рынке накапливаются позиции, потом приходит не надолго совсем неблаоприятный участок и здравствуй Маржин Колл. 

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

 
Попробовал запустить по паре EURUSD. на М15 не совершил ни одной сделки в тестере за 2 года истории. В журнале никаких ошибок и предупреждений нет. Настроек куча. Сложно понять с первого раза какие за что отвечают и почему ничего не работает.
 
Не запускается советник, сам улыбается а сделки не открывает. Может подскажете как запустить, или описание настроек, сэты дадите?
 
Оптимизация за год с количеством сделок в районе 50-ти - это подгонка под историю.
 
itanprom:
Не запускается советник, сам улыбается а сделки не открывает. Может подскажете как запустить, или описание настроек, сэты дадите?

нужно вписать пару - что бы улыбался и открывал позиции 

Снимок

и их в настройках аж 11 пар 

 

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

Тут писали про малое количество сделок и подгонку под историю — я оптимизировал вашего робота на таймфрейме М1, что давало от 4 тысяч сделок за 3 года, лучшие экземпляры давали достаточно стабильные результаты. 

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

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

Меня также очень смутила стратегия входа по MA, где как правило рассматривается либо повышение, либо уменьшение значения МА. В коде это выглядит так:

if (buf0[0] > buf0[6]) {
   //--- МА растет
} else if (buf0[0] < buf0[6]) {
   //--- МА падает
}

Почему с текущим баром сравнивается значение именно седьмого бара? Где логика? А если это флет и между 1 и 7 баром МА то росла, то падала? Ощущение, что вы не очень заморачивались на этом моменте, возможно побыстрее хотели дописать статью. На мой взгляд, здесь необходимо рассматривать стабильный рост несколько баров подряд, чтобы было подтверждение. Я написал код, чтобы ловить подтверждаемые развороты или стабильный рост/падение значений массива на протяжении нескольких баров, делюсь с вами:

//+------------------------------------------------------------------+
//| Ловим разворот индикатора                                        |
//+------------------------------------------------------------------+
bool getReverse(double & object [], string direction, int repeatsIn, int repeatsOut) {
   bool reverseCorrect = true;
   
   if (direction == "up") {
      if (repeatsOut > 0) {
         for(int i = 0; i <= (repeatsOut - 1); i++) {
            if (!(object[i] > object[i+1])) reverseCorrect = false;
         }
      }
      
      if (repeatsIn > 0) {
         for(int i = repeatsIn; i <= (repeatsIn + repeatsOut - 1); i++) {
            if (!(object[i] < object[i+1])) reverseCorrect = false;
         }
      }   
   } else {
      if (repeatsOut > 0) {
         for(int i = 0; i <= (repeatsOut - 1); i++) {
            if (!(object[i] < object[i+1])) reverseCorrect = false;
         }
      }
      
      if (repeatsIn > 0) {
         for(int i = repeatsIn; i <= (repeatsIn + repeatsOut - 1); i++) {
            if (!(object[i] > object[i+1])) reverseCorrect = false;
         }
      }
   }
      
   return reverseCorrect;
}

Используем так:

getReverse(MA1Val, "up", 0, 7);

В данном примере функция вернет true, если на протяжении 7 баров подряд значение MA1 росло. Если заменить 0 на, например, 3, то будет будет искаться паттерн, при котором MA сначала падала 3 бара подряд, а потом 7 баров подряд росла.

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

Успехов!

 
Здравствуйте. Большое спасибо за ваш код. Хотел нарисовать линию , которая показывала бы где сетка закроется. У меня не получилось. Буду рад любым советам
 
Большое спасибо за огромную проделанную работу!
 
Anton Muzhytskyi #:
Здравствуйте. Большое спасибо за ваш код. Хотел нарисовать линию , которая показывала бы где сетка закроется. У меня не получилось. Буду рад любым советам
Новиков Александр #:
Большое спасибо за огромную проделанную работу!

Алло? Вы о чем - сетов нет. Вообще какая - то жесть!

как все эти портянки настраивать??? Названия разные и не совпадают - там понятно идет в тестере текст с описания, но все равно - это не уважение к людям....


издевательство 2 - надо отсматривать соответствие с 3-х экранов


издевательство


благо у меня два экрана - можно два смотреть и заполнять, так там вообще три надо монитора....

Это ***какая - то - сеты сложно выложить?

Плюс ко всему - не совпадают строки в коде и в предоставленных отчетах - это чисто запутывание какое-то.

как вот эту всю шляпу портяночную заполнять вручную значениями прикажете? когда плюсом ко всему еще и строки не совпадают....................????????????????


и названия и очередность строк не совпадают - сложно было предоставить сеты???

В общем смысловая нагрузка только по тексту статьи, тестить не возможно, не сообщено на каких диапазонах значений оптить!!!

невозможно на авторских настройках потестировать робота и посмотреть соответствие отчетов и каких-либо улучшений просмотреть...

файл



вообще не открывается. Похоже с отчетом.

В общем наплевательсткое отношение к членам сообщества, ИМХО!!!

В тестере одни значения - в отчетах другие - лажа какая-то


на USDCAD ТАКИЕ В общем рисуются кривулины - пользоваться в таком виде нельзя - надо править оптить и прочее...


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

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

сет, отчет во вложении.

Пользуйтесь.

Файлы:
USDCAD.zip  724 kb
 

вот вроде что то вырисовывается...только на USDCAD


на форварде и 2021 году - в плюса:


сет и отчет во вложении.

за 2021 - обычная усреднялка с ограничением их кол-тв:


надо подбирать значения параметров на истории...

Ключевое: выхода делать на просто по ТР или ТР 1 ТР 2..., но сначала перевод в безубыток с минимальным плюсом и отступом от цены например 10 пп и уже только потом закрывать части общей накопленной на усреднении позиции на откатах, например разными видами тралов  на участке профита: простой, по МА, по SAR и т.д. там есть варианты и крыть каждым например, по 5 % совокупной позиции.

Файлы:
USDCAD.zip  331 kb
Причина обращения: