Блог им. ab_trader

Как выдержать мин количество сделок при генетической оптимизации в Ами

Беда генетического оптимизатора в Ами в том, что он находит лучшие наборы параметров, не учитывая количество сделок. Приходится либо колдовать с границами параметров, либо увеличивать сроки оптимизации.

Для себя  я нашел такое решение — посчитал новую метрику modified Recovery Factor (я обычно по нему оптимизирую): если количество трейдов меньше 50, то приравнял его -1, иначе он равен Recovery Factor по расчетам ами. Теперь, если этот modified Recovery Factor использовать в качестве цели оптимизации, то получим наборы параметров, которые дают не менее определенного количества сделок за период оптимизации.

Код, показанный ниже, надо просто добавить в конце afl скрипта стратегии:

TotalTrades = 0; 
SetCustomBacktestProc(""); 
if (Status(«action») == actionPortfolio) 

   bo = GetBacktesterObject(); //  Get backtester object 
   bo.Backtest(); //  Run backtests 

   stats = bo.GetPerformanceStats(0); //  Get Stats object for all trades 
   for (trade = bo.GetFirstTrade(); trade; trade = bo.GetNextTrade()) 
   { 
      TotalTrades++; 
   } 
   for (trade = bo.GetFirstOpenPos(); trade; trade = bo.GetNextOpenPos()) 
   { 
      TotalTrades++; 
   }    
   modRF = stats.GetValue(«RecoveryFactor»); //  Calculate new metric 
   if (TotalTrades < 50)  // Минимальное количество сделок — 50
   { 
      modRF = -1; 
   } 
   bo.AddCustomMetric(«modRF», modRF); 
   bo.AddCustomMetric(«TotalTrades», TotalTrades); 
}
 
278 | ★5
7 комментариев
Огромное спасибо за код!
avatar
День добрый.
avatar
Добрый день, Вы давеча генетическую оптимизацию в Ами упомянули. А я искал-искал таковую и не обнаружил вовсе. Где и как ее выискивать? Заранее признателен
avatar
bocha, OptimizerSetEngine(«cmae») (например)
amibroker.com/guide/afl/afl_view.php?id=359
www.amibroker.com/guide/h_optimization.html
avatar
Трудно мне здесь что-либо формулировать. Постоянно завершается процесс. Скайп Bochav мэйл 7805557@mail.ru
avatar
у меня ошибку выдает почему-то?
avatar

Читайте на SMART-LAB:
Фото
Что будет при цене нефти Brent выше $150
Игорь Галактионов Конфликт на Ближнем Востоке затягивается, что означает более высокие цены на нефть. Есть риск, что нефтяная инфраструктура...
Фото
⚡️ Когда общение с ботом вызывает негатив: Татьяна Благовещенская в экспертной колонке на РБК
Коммерческий директор ПСБ Финанс, эксперт в области финтеха, цифровой трансформации и клиентских отношений Татьяна Благовещенская...
Яндекс выходит на рынок мобильной связи
Планы Яндекса этим летом запустить виртуального оператора на сети Вымпелкома, выглядят логичным продолжением стратегии компании по углублению...
Фото
Долларовые российские облигации: ищем интересные идеи
Доходности российских долларовых облигаций, после достижения локального минимума в сентябре 2025 г., скорректировались вверх и сейчас торгуются в...

теги блога ab_trader

....все тэги



UPDONW
Новый дизайн