- Dark mode: class-based theme toggle with localStorage persistence and flash prevention - Trade History (/trades): paginated table, stats cards, equity curve chart with DB API endpoints - Backtest Viewer (/backtests): log parser for 35 backtest results, sidebar + detail + comparison tabs - Model Insights: dashboard card + dialog showing feature importance, regime distribution, training history - Alert/Signal Log (/alerts): signal stats, filterable table with execution tracking - API: 8 new endpoints with psycopg2 DB connection pool - Dark mode sweep across books page, about dialog, and all dashboard components - Architecture docs rewritten with Mermaid diagrams (23 docs) - README and FEATURES.md rewritten bilingual (Indonesian + English) - main_live.py: write model_metrics.json on startup and retrain Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
999 lines
23 KiB
TypeScript
999 lines
23 KiB
TypeScript
// AUTO-GENERATED — do not edit manually.
|
|
// Run: node scripts/generate-backtests.js
|
|
|
|
export interface ExitReason {
|
|
reason: string;
|
|
count: number;
|
|
pct: number;
|
|
}
|
|
|
|
export interface DirectionBreakdown {
|
|
direction: string;
|
|
trades: number;
|
|
winRate: number;
|
|
pnl: number;
|
|
}
|
|
|
|
export interface SessionBreakdown {
|
|
session: string;
|
|
trades: number;
|
|
winRate: number;
|
|
pnl: number;
|
|
}
|
|
|
|
export interface BacktestResult {
|
|
id: number;
|
|
slug: string;
|
|
name: string;
|
|
logFile: string;
|
|
generatedAt: string | null;
|
|
period: string | null;
|
|
strategy: string | null;
|
|
totalTrades: number;
|
|
wins: number;
|
|
losses: number;
|
|
winRate: number;
|
|
totalProfit: number;
|
|
totalLoss: number;
|
|
netPnl: number;
|
|
profitFactor: number;
|
|
maxDrawdown: number;
|
|
maxDrawdownUsd: number;
|
|
avgWin: number;
|
|
avgLoss: number;
|
|
expectancy: number;
|
|
sharpeRatio: number;
|
|
exitReasons: ExitReason[];
|
|
directionBreakdown: DirectionBreakdown[];
|
|
sessionBreakdown: SessionBreakdown[];
|
|
tradeCount: number;
|
|
}
|
|
|
|
export const backtestResults: BacktestResult[] = [
|
|
{
|
|
"id": 1,
|
|
"slug": "01_smc_only",
|
|
"name": "Smc Only",
|
|
"logFile": "smc_only_synced_20260207_062658.log",
|
|
"generatedAt": "2026-02-07 06:26:58",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + SmartRiskManager + SmartPositionManager",
|
|
"totalTrades": 686,
|
|
"wins": 495,
|
|
"losses": 191,
|
|
"winRate": 72.2,
|
|
"totalProfit": 4908.74,
|
|
"totalLoss": 3458.88,
|
|
"netPnl": 1449.86,
|
|
"profitFactor": 1.42,
|
|
"maxDrawdown": 5.4,
|
|
"maxDrawdownUsd": 300.84,
|
|
"avgWin": 9.92,
|
|
"avgLoss": 18.11,
|
|
"expectancy": 2.11,
|
|
"sharpeRatio": 1.98,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 2,
|
|
"slug": "02_earlycut_improved",
|
|
"name": "Earlycut Improved",
|
|
"logFile": "earlycut_improved_20260207_080155.log",
|
|
"generatedAt": "2026-02-07 08:01:55",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + SmartRiskManager + SmartPositionManager",
|
|
"totalTrades": 665,
|
|
"wins": 490,
|
|
"losses": 175,
|
|
"winRate": 73.7,
|
|
"totalProfit": 4961.49,
|
|
"totalLoss": 3542.6,
|
|
"netPnl": 1418.89,
|
|
"profitFactor": 1.4,
|
|
"maxDrawdown": 7,
|
|
"maxDrawdownUsd": 415.72,
|
|
"avgWin": 10.13,
|
|
"avgLoss": 20.24,
|
|
"expectancy": 2.13,
|
|
"sharpeRatio": 1.85,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 3,
|
|
"slug": "03_sellfilter_pullback",
|
|
"name": "Sellfilter Pullback",
|
|
"logFile": "sellfilter_pullback_20260207_082203.log",
|
|
"generatedAt": "2026-02-07 08:22:03",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Sell Filter Strict + Pullback Filter",
|
|
"totalTrades": 452,
|
|
"wins": 318,
|
|
"losses": 134,
|
|
"winRate": 70.4,
|
|
"totalProfit": 3103.92,
|
|
"totalLoss": 2345.08,
|
|
"netPnl": 758.84,
|
|
"profitFactor": 1.32,
|
|
"maxDrawdown": 3.1,
|
|
"maxDrawdownUsd": 168.97,
|
|
"avgWin": 9.76,
|
|
"avgLoss": 17.5,
|
|
"expectancy": 1.68,
|
|
"sharpeRatio": 1.57,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 4,
|
|
"slug": "04_pullback_only",
|
|
"name": "Pullback Only",
|
|
"logFile": "pullback_only_20260207_083527.log",
|
|
"generatedAt": "2026-02-07 08:35:27",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Pullback Filter (no sell filter)",
|
|
"totalTrades": 635,
|
|
"wins": 438,
|
|
"losses": 197,
|
|
"winRate": 69,
|
|
"totalProfit": 4169.73,
|
|
"totalLoss": 3833.96,
|
|
"netPnl": 335.77,
|
|
"profitFactor": 1.09,
|
|
"maxDrawdown": 8.6,
|
|
"maxDrawdownUsd": 456.21,
|
|
"avgWin": 9.52,
|
|
"avgLoss": 19.46,
|
|
"expectancy": 0.53,
|
|
"sharpeRatio": 0.45,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 5,
|
|
"slug": "05_sellfilter_only",
|
|
"name": "Sellfilter Only",
|
|
"logFile": "sellfilter_only_20260207_085852.log",
|
|
"generatedAt": "2026-02-07 08:58:52",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Sell Filter Strict (no pullback)",
|
|
"totalTrades": 495,
|
|
"wins": 363,
|
|
"losses": 132,
|
|
"winRate": 73.3,
|
|
"totalProfit": 3615.15,
|
|
"totalLoss": 2370.3,
|
|
"netPnl": 1244.85,
|
|
"profitFactor": 1.53,
|
|
"maxDrawdown": 3.7,
|
|
"maxDrawdownUsd": 217.83,
|
|
"avgWin": 9.96,
|
|
"avgLoss": 17.96,
|
|
"expectancy": 2.51,
|
|
"sharpeRatio": 2.35,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 6,
|
|
"slug": "06_stochastic",
|
|
"name": "Stochastic",
|
|
"logFile": "stochastic_20260207_092515.log",
|
|
"generatedAt": "2026-02-07 09:25:15",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Stochastic Filter (K=14, OB=75, OS=25)",
|
|
"totalTrades": 580,
|
|
"wins": 440,
|
|
"losses": 140,
|
|
"winRate": 75.9,
|
|
"totalProfit": 3799.56,
|
|
"totalLoss": 2450.75,
|
|
"netPnl": 1348.81,
|
|
"profitFactor": 1.55,
|
|
"maxDrawdown": 3.8,
|
|
"maxDrawdownUsd": 253.54,
|
|
"avgWin": 8.64,
|
|
"avgLoss": 17.51,
|
|
"expectancy": 2.33,
|
|
"sharpeRatio": 2.44,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 7,
|
|
"slug": "07_ema_stack",
|
|
"name": "Ema Stack",
|
|
"logFile": "ema_stack_20260207_092409.log",
|
|
"generatedAt": "2026-02-07 09:24:09",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + EMA 50 Trend Filter + Stack Tracking",
|
|
"totalTrades": 640,
|
|
"wins": 445,
|
|
"losses": 195,
|
|
"winRate": 69.5,
|
|
"totalProfit": 4690.91,
|
|
"totalLoss": 3407.04,
|
|
"netPnl": 1283.87,
|
|
"profitFactor": 1.38,
|
|
"maxDrawdown": 4.5,
|
|
"maxDrawdownUsd": 231.44,
|
|
"avgWin": 10.54,
|
|
"avgLoss": 17.47,
|
|
"expectancy": 2.01,
|
|
"sharpeRatio": 1.75,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 8,
|
|
"slug": "08_stoch_sell",
|
|
"name": "Stoch Sell",
|
|
"logFile": "stoch_sell_20260207_094541.log",
|
|
"generatedAt": "2026-02-07 09:45:41",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Stochastic (K=14) + Sell Filter (ML >= 55%)",
|
|
"totalTrades": 416,
|
|
"wins": 319,
|
|
"losses": 97,
|
|
"winRate": 76.7,
|
|
"totalProfit": 3046.86,
|
|
"totalLoss": 1726.45,
|
|
"netPnl": 1320.41,
|
|
"profitFactor": 1.76,
|
|
"maxDrawdown": 2.8,
|
|
"maxDrawdownUsd": 169.3,
|
|
"avgWin": 9.55,
|
|
"avgLoss": 17.8,
|
|
"expectancy": 3.17,
|
|
"sharpeRatio": 3.17,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 9,
|
|
"slug": "09_h4_zone",
|
|
"name": "H4 Zone",
|
|
"logFile": "h4_zone_20260207_115528.log",
|
|
"generatedAt": "2026-02-07 11:55:28",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 22,
|
|
"wins": 18,
|
|
"losses": 4,
|
|
"winRate": 81.8,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 361.45,
|
|
"profitFactor": 4.6,
|
|
"maxDrawdown": 0.9,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 25.65,
|
|
"avgLoss": 25.08,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 8.34,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 10,
|
|
"slug": "10_h4_zone_tight_sl",
|
|
"name": "H4 Zone Tight Sl",
|
|
"logFile": "h4_zone_tight_sl_20260207_115533.log",
|
|
"generatedAt": "2026-02-07 11:55:33",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 22,
|
|
"wins": 18,
|
|
"losses": 4,
|
|
"winRate": 81.8,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 403.11,
|
|
"profitFactor": 5.02,
|
|
"maxDrawdown": 0.9,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 27.97,
|
|
"avgLoss": 25.08,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 7.6,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 11,
|
|
"slug": "11_broker_sl",
|
|
"name": "Broker Sl",
|
|
"logFile": "broker_sl_20260207_125534.log",
|
|
"generatedAt": "2026-02-07 12:55:34",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Broker SL Only Exit (simplified)",
|
|
"totalTrades": 421,
|
|
"wins": 274,
|
|
"losses": 147,
|
|
"winRate": 65.1,
|
|
"totalProfit": 5167.19,
|
|
"totalLoss": 3807.22,
|
|
"netPnl": 1359.97,
|
|
"profitFactor": 1.36,
|
|
"maxDrawdown": 6.7,
|
|
"maxDrawdownUsd": 379.43,
|
|
"avgWin": 18.86,
|
|
"avgLoss": 25.9,
|
|
"expectancy": 3.23,
|
|
"sharpeRatio": 1.73,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 12,
|
|
"slug": "12_stoch_sell_broker_sl",
|
|
"name": "Stoch Sell Broker Sl",
|
|
"logFile": "stoch_sell_broker_sl_20260207_130300.log",
|
|
"generatedAt": "2026-02-07 13:03:00",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Stochastic (K=14) + Sell Filter (ML >= 55%) + Broker SL Only Exit",
|
|
"totalTrades": 294,
|
|
"wins": 185,
|
|
"losses": 109,
|
|
"winRate": 62.9,
|
|
"totalProfit": 3109.56,
|
|
"totalLoss": 2601.98,
|
|
"netPnl": 507.59,
|
|
"profitFactor": 1.2,
|
|
"maxDrawdown": 4.1,
|
|
"maxDrawdownUsd": 214.76,
|
|
"avgWin": 16.81,
|
|
"avgLoss": 23.87,
|
|
"expectancy": 1.73,
|
|
"sharpeRatio": 1.03,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 13,
|
|
"slug": "13_patient_exit",
|
|
"name": "Patient Exit",
|
|
"logFile": "patient_exit_20260207_134440.log",
|
|
"generatedAt": "2026-02-07 13:44:40",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Patient Exit (BE=80, Trail=100/60, Timeout=6h/8h/12h)",
|
|
"totalTrades": 602,
|
|
"wins": 371,
|
|
"losses": 231,
|
|
"winRate": 61.6,
|
|
"totalProfit": 4736.93,
|
|
"totalLoss": 3764.01,
|
|
"netPnl": 972.92,
|
|
"profitFactor": 1.26,
|
|
"maxDrawdown": 6,
|
|
"maxDrawdownUsd": 352.41,
|
|
"avgWin": 12.77,
|
|
"avgLoss": 16.29,
|
|
"expectancy": 1.62,
|
|
"sharpeRatio": 1.3,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 14,
|
|
"slug": "14_stoch_sell_patient",
|
|
"name": "Stoch Sell Patient",
|
|
"logFile": "stoch_sell_patient_20260207_135336.log",
|
|
"generatedAt": "2026-02-07 13:53:36",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": "SMC-Only v4 + Stochastic (K=14) + Sell Filter (ML >= 55%) + Patient Exit",
|
|
"totalTrades": 375,
|
|
"wins": 232,
|
|
"losses": 143,
|
|
"winRate": 61.9,
|
|
"totalProfit": 2728.58,
|
|
"totalLoss": 2158.28,
|
|
"netPnl": 570.3,
|
|
"profitFactor": 1.26,
|
|
"maxDrawdown": 5,
|
|
"maxDrawdownUsd": 270.07,
|
|
"avgWin": 11.76,
|
|
"avgLoss": 15.09,
|
|
"expectancy": 1.52,
|
|
"sharpeRatio": 1.33,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 15,
|
|
"slug": "15_compression",
|
|
"name": "Compression",
|
|
"logFile": "compression_20260207_143411.log",
|
|
"generatedAt": null,
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 566,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 71,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.32,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 9.33,
|
|
"avgLoss": 17.34,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 1.46,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 16,
|
|
"slug": "16_quasimodo",
|
|
"name": "Quasimodo",
|
|
"logFile": "quasimodo_20260207_144520.log",
|
|
"generatedAt": null,
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 693,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 71.3,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.26,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 1.28,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 17,
|
|
"slug": "17_liquidity_sweep",
|
|
"name": "Liquidity Sweep",
|
|
"logFile": "liq_sweep_20260207_173839.log",
|
|
"generatedAt": "2026-02-07 17:38:39",
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 649,
|
|
"wins": 462,
|
|
"losses": 187,
|
|
"winRate": 71.2,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 1251.66,
|
|
"profitFactor": 1.39,
|
|
"maxDrawdown": 5.4,
|
|
"maxDrawdownUsd": 300.84,
|
|
"avgWin": 9.67,
|
|
"avgLoss": 17.19,
|
|
"expectancy": 1.93,
|
|
"sharpeRatio": 1.83,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 18,
|
|
"slug": "18_multi_confirm",
|
|
"name": "Multi Confirm",
|
|
"logFile": "multi_confirm_20260207_180210.log",
|
|
"generatedAt": null,
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 581,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 69,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 800.21,
|
|
"profitFactor": 1.22,
|
|
"maxDrawdown": 6.6,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 1.15,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 19,
|
|
"slug": "19_session_optimize",
|
|
"name": "Session Optimize",
|
|
"logFile": "session_opt_20260207_173705.log",
|
|
"generatedAt": null,
|
|
"period": "2025-08-01 to 2026-02-07",
|
|
"strategy": null,
|
|
"totalTrades": 683,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 73.4,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 1794.94,
|
|
"profitFactor": 1.54,
|
|
"maxDrawdown": 5.2,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 10.22,
|
|
"avgLoss": 18.26,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.41,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 20,
|
|
"slug": "20_early_cut",
|
|
"name": "Early Cut",
|
|
"logFile": "early_cut_20260207_192032.log",
|
|
"generatedAt": "2026-02-07 19:20:32.439516",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 685,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 72.4,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.42,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 1.97,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 21,
|
|
"slug": "21_combined",
|
|
"name": "Combined",
|
|
"logFile": "combined_20260207_211844.log",
|
|
"generatedAt": "2026-02-07 21:18:44.623588",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 679,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 74.4,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.56,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.46,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 22,
|
|
"slug": "22_atr_adaptive",
|
|
"name": "Atr Adaptive",
|
|
"logFile": "atr_adaptive_20260207_220928.log",
|
|
"generatedAt": "2026-02-07 22:09:28.783855",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 0,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 0,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 23,
|
|
"slug": "23_confidence_weight",
|
|
"name": "Confidence Weight",
|
|
"logFile": "conf_weight_20260207_220909.log",
|
|
"generatedAt": "2026-02-07 22:09:09.940414",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 0,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 0,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 24,
|
|
"slug": "24_final_combined",
|
|
"name": "Final Combined",
|
|
"logFile": "final_combined_20260207_222406.log",
|
|
"generatedAt": "2026-02-07 22:24:06.260094",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.63,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.56,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 26,
|
|
"slug": "26_sell_improvement",
|
|
"name": "Sell Improvement",
|
|
"logFile": "sell_improve_20260207_233806.log",
|
|
"generatedAt": "2026-02-07 23:38:06.417970",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.77,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.87,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 27,
|
|
"slug": "27_regime_aware",
|
|
"name": "Regime Aware",
|
|
"logFile": "regime_aware_20260208_053630.log",
|
|
"generatedAt": "2026-02-08 05:36:30.925686",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.74,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.75,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 28,
|
|
"slug": "28_smart_breakeven",
|
|
"name": "Smart Breakeven",
|
|
"logFile": "smart_be_20260208_060756.log",
|
|
"generatedAt": "2026-02-08 06:07:56.973899",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.7,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.69,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 29,
|
|
"slug": "29_confluence_scoring",
|
|
"name": "Confluence Scoring",
|
|
"logFile": "confluence_20260208_064829.log",
|
|
"generatedAt": "2026-02-08 06:48:29.232714",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.49,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.21,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 30,
|
|
"slug": "30_dynamic_rr",
|
|
"name": "Dynamic Rr",
|
|
"logFile": "dynamic_rr_20260208_071602.log",
|
|
"generatedAt": "2026-02-08 07:16:02.652327",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.8,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 3.17,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 31,
|
|
"slug": "31_multi_tf_h1",
|
|
"name": "Multi Tf H1",
|
|
"logFile": "multi_tf_20260208_091856.log",
|
|
"generatedAt": "2026-02-08 09:18:56.106348",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 1.64,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 2.49,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 32,
|
|
"slug": "32_ml_exit",
|
|
"name": "Ml Exit",
|
|
"logFile": "ml_exit_20260208_102500.log",
|
|
"generatedAt": "2026-02-08 10:25:00.005539",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 2.19,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 3.97,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 33,
|
|
"slug": "33_impulse_trail",
|
|
"name": "Impulse Trail",
|
|
"logFile": "impulse_trail_20260208_114314.log",
|
|
"generatedAt": "2026-02-08 11:43:14.406433",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 2.21,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 4.02,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 34,
|
|
"slug": "34_ml_v2d",
|
|
"name": "Ml V2d",
|
|
"logFile": "ml_v2d_time_filter_20260208_221541.log",
|
|
"generatedAt": "2026-02-08 22:15:41.592688",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 625,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 81.9,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 2.22,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 4.04,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 34,
|
|
"slug": "34_time_filter",
|
|
"name": "Time Filter",
|
|
"logFile": "time_filter_20260208_124324.log",
|
|
"generatedAt": "2026-02-08 12:43:24.700789",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 2.43,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 4.41,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
},
|
|
{
|
|
"id": 35,
|
|
"slug": "35_fix_sl_bug",
|
|
"name": "Fix Sl Bug",
|
|
"logFile": "fix_sl_bug_20260208_184506.log",
|
|
"generatedAt": "2026-02-08 18:45:06.641730",
|
|
"period": null,
|
|
"strategy": null,
|
|
"totalTrades": 0,
|
|
"wins": 0,
|
|
"losses": 0,
|
|
"winRate": 0,
|
|
"totalProfit": 0,
|
|
"totalLoss": 0,
|
|
"netPnl": 0,
|
|
"profitFactor": 2.43,
|
|
"maxDrawdown": 0,
|
|
"maxDrawdownUsd": 0,
|
|
"avgWin": 0,
|
|
"avgLoss": 0,
|
|
"expectancy": 0,
|
|
"sharpeRatio": 4.41,
|
|
"exitReasons": [],
|
|
"directionBreakdown": [],
|
|
"sessionBreakdown": [],
|
|
"tradeCount": 0
|
|
}
|
|
];
|