Добавить Sharpe, Sortino и дополнительные метрики в SessionReport #5
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
project:backtest
project:futures
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
You do not have permission to read 1 dependency
Reference
trading/tradebot-ng#5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Описание
Сейчас
domain.SessionReportсодержит минимальный набор метрик: EquityMTM, RealizedPnL, MaxDrawdownPct, WinRate, ProfitFactor, ClosedRounds. Для оптимизатора и анализа стратегий не хватает:Предлагаемое решение
Добавить поля в
core/domain/session_report.go(или аналогичный файл сSessionReport):Расчёт — при финализации отчёта в
core/domain/account.go:BuildSessionReportилиPortfolioAtMark.Затрагиваемые файлы
core/domain/session_report.go— новые поляcore/domain/account.go— расчёт новых метрикpkg/backtest/config.go— не меняется (типы SessionReport в domain)Обоснование
Оптимизатор сейчас считает
PenalizedReturnScoreкак-ret + ddWeight*dd. Sharpe/Sortino дадут более адекватную risk-adjusted оценку. Считать их в оптимизаторе (поверх SessionReport) — дублирование логики.