Блог им. 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); 
}
 
276 | ★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:
Фото
Кандидаты на шорт: кто может стать аутсайдером рынка?
С начала текущего года Индекс МосБиржи не сформировал явного среднесрочного тренда. В таких условиях для акций характерно неоднородное...
Фото
ФинКод теперь в MAX!
💬 Мы запустили канал в новом мессенджере, чтобы быть ближе и делиться полезным там, где вам удобно. 🤖 Формат остаётся тем же — будет всё, за что...
Фото
USD/JPY: Разворот от "красной линии" — готов ли рынок к глубокому падению?
Банк Японии в очередной раз подтвердил значимость психологического уровня 160.00, не пропустив котировки выше этого рубежа. Текущий день...
Фото
Россети Волга. Отчет МСФО. Считаем дивидендную базу
Компания Россети Волга опубликовала финансовый отчет за 2025г. по МСФО. Я совсем коротко на нем остановлюсь, потому что отчет МСФО и...

теги блога ab_trader

....все тэги



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