From 4a7b38ea436c17bcc58349b0207ccf1e5c2d2177 Mon Sep 17 00:00:00 2001 From: 21in7 Date: Mon, 4 May 2026 09:03:03 +0900 Subject: [PATCH] =?UTF-8?q?results:=20=EB=B0=B1=ED=85=8C=EC=8A=A4=ED=8A=B8?= =?UTF-8?q?=20=EB=B0=8F=20=EC=A3=BC=EA=B0=84=20=EB=A6=AC=ED=8F=AC=ED=8A=B8?= =?UTF-8?q?=20=EA=B2=B0=EA=B3=BC=20=EC=9D=BC=EA=B4=84=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 (1M context) --- .../ml_comparison_20260321_195841.json | 44 + .../ml_comparison_20260321_200334.json | 45 + .../dogeusdt/wf_backtest_20260318_232112.json | 1054 ++ .../dogeusdt/wf_backtest_20260321_194418.json | 188 + .../ml_comparison_20260321_195841.json | 44 + .../ml_comparison_20260321_200332.json | 45 + .../solusdt/wf_backtest_20260321_194417.json | 81 + results/weekly/report_2026-03-22.html | 13407 +++++++++++++++ results/weekly/report_2026-03-22.json | 2235 +++ results/weekly/report_2026-03-29.html | 13739 ++++++++++++++++ results/weekly/report_2026-03-29.json | 1398 ++ results/weekly/report_2026-04-05.html | 13739 ++++++++++++++++ results/weekly/report_2026-04-05.json | 1401 ++ results/weekly/report_2026-04-12.html | 13739 ++++++++++++++++ results/weekly/report_2026-04-12.json | 1401 ++ results/weekly/report_2026-04-19.html | 13739 ++++++++++++++++ results/weekly/report_2026-04-19.json | 1401 ++ results/weekly/report_2026-04-26.html | 13739 ++++++++++++++++ results/weekly/report_2026-04-26.json | 1401 ++ results/weekly/report_2026-05-03.html | 13204 +++++++++++++++ results/weekly/report_2026-05-03.json | 1761 ++ results/xrpusdt/backtest_20260322_224712.json | 549 + .../ml_comparison_20260321_195840.json | 45 + .../ml_comparison_20260321_200332.json | 44 + .../strategy_sweep_20260329_142440.json | 8243 +++++++++ .../xrpusdt/wf_backtest_20260318_232111.json | 835 + .../xrpusdt/wf_backtest_20260321_194417.json | 214 + .../xrpusdt/wf_backtest_20260322_224634.json | 382 + .../xrpusdt/wf_backtest_20260322_224727.json | 838 + .../xrpusdt/wf_backtest_20260322_231113.json | 511 + .../xrpusdt/wf_backtest_20260322_231737.json | 865 + .../xrpusdt/wf_backtest_20260322_231837.json | 537 + .../xrpusdt/wf_backtest_20260322_232159.json | 3062 ++++ 33 files changed, 123930 insertions(+) create mode 100644 results/dogeusdt/ml_comparison_20260321_195841.json create mode 100644 results/dogeusdt/ml_comparison_20260321_200334.json create mode 100644 results/dogeusdt/wf_backtest_20260318_232112.json create mode 100644 results/dogeusdt/wf_backtest_20260321_194418.json create mode 100644 results/solusdt/ml_comparison_20260321_195841.json create mode 100644 results/solusdt/ml_comparison_20260321_200332.json create mode 100644 results/solusdt/wf_backtest_20260321_194417.json create mode 100644 results/weekly/report_2026-03-22.html create mode 100644 results/weekly/report_2026-03-22.json create mode 100644 results/weekly/report_2026-03-29.html create mode 100644 results/weekly/report_2026-03-29.json create mode 100644 results/weekly/report_2026-04-05.html create mode 100644 results/weekly/report_2026-04-05.json create mode 100644 results/weekly/report_2026-04-12.html create mode 100644 results/weekly/report_2026-04-12.json create mode 100644 results/weekly/report_2026-04-19.html create mode 100644 results/weekly/report_2026-04-19.json create mode 100644 results/weekly/report_2026-04-26.html create mode 100644 results/weekly/report_2026-04-26.json create mode 100644 results/weekly/report_2026-05-03.html create mode 100644 results/weekly/report_2026-05-03.json create mode 100644 results/xrpusdt/backtest_20260322_224712.json create mode 100644 results/xrpusdt/ml_comparison_20260321_195840.json create mode 100644 results/xrpusdt/ml_comparison_20260321_200332.json create mode 100644 results/xrpusdt/strategy_sweep_20260329_142440.json create mode 100644 results/xrpusdt/wf_backtest_20260318_232111.json create mode 100644 results/xrpusdt/wf_backtest_20260321_194417.json create mode 100644 results/xrpusdt/wf_backtest_20260322_224634.json create mode 100644 results/xrpusdt/wf_backtest_20260322_224727.json create mode 100644 results/xrpusdt/wf_backtest_20260322_231113.json create mode 100644 results/xrpusdt/wf_backtest_20260322_231737.json create mode 100644 results/xrpusdt/wf_backtest_20260322_231837.json create mode 100644 results/xrpusdt/wf_backtest_20260322_232159.json diff --git a/results/dogeusdt/ml_comparison_20260321_195841.json b/results/dogeusdt/ml_comparison_20260321_195841.json new file mode 100644 index 0000000..e0c8057 --- /dev/null +++ b/results/dogeusdt/ml_comparison_20260321_195841.json @@ -0,0 +1,44 @@ +{ + "timestamp": "2026-03-21T19:58:41.732033", + "symbols": [ + "DOGEUSDT" + ], + "ml_off": { + "total_trades": 322, + "total_pnl": -1547.342, + "return_pct": -154.73, + "win_rate": 31.37, + "avg_win": 44.161, + "avg_loss": -27.1837, + "payoff_ratio": 1.62, + "max_consecutive_losses": 9, + "profit_factor": 0.74, + "max_drawdown_pct": 155.09, + "sharpe_ratio": -23.72, + "total_fees": 891.5776, + "close_reasons": { + "STOP_LOSS": 198, + "REVERSE_SIGNAL": 58, + "TAKE_PROFIT": 66 + } + }, + "ml_on": { + "total_trades": 20, + "total_pnl": -173.2651, + "return_pct": -17.33, + "win_rate": 35.0, + "avg_win": 42.0257, + "avg_loss": -35.9573, + "payoff_ratio": 1.17, + "max_consecutive_losses": 3, + "profit_factor": 0.63, + "max_drawdown_pct": 18.86, + "sharpe_ratio": -40.35, + "total_fees": 77.1422, + "close_reasons": { + "STOP_LOSS": 13, + "REVERSE_SIGNAL": 4, + "TAKE_PROFIT": 3 + } + } +} \ No newline at end of file diff --git a/results/dogeusdt/ml_comparison_20260321_200334.json b/results/dogeusdt/ml_comparison_20260321_200334.json new file mode 100644 index 0000000..6fbff78 --- /dev/null +++ b/results/dogeusdt/ml_comparison_20260321_200334.json @@ -0,0 +1,45 @@ +{ + "timestamp": "2026-03-21T20:03:34.650022", + "symbols": [ + "DOGEUSDT" + ], + "ml_off": { + "total_trades": 40, + "total_pnl": 161.0802, + "return_pct": 16.11, + "win_rate": 25.0, + "avg_win": 107.1017, + "avg_loss": -30.3312, + "payoff_ratio": 3.53, + "max_consecutive_losses": 8, + "profit_factor": 1.18, + "max_drawdown_pct": 22.19, + "sharpe_ratio": 7.08, + "total_fees": 150.4991, + "close_reasons": { + "STOP_LOSS": 25, + "REVERSE_SIGNAL": 8, + "END_OF_DATA": 1, + "TAKE_PROFIT": 6 + } + }, + "ml_on": { + "total_trades": 47, + "total_pnl": -285.0131, + "return_pct": -28.5, + "win_rate": 34.04, + "avg_win": 61.4296, + "avg_loss": -40.8996, + "payoff_ratio": 1.5, + "max_consecutive_losses": 7, + "profit_factor": 0.78, + "max_drawdown_pct": 40.93, + "sharpe_ratio": -21.03, + "total_fees": 176.3033, + "close_reasons": { + "STOP_LOSS": 30, + "REVERSE_SIGNAL": 6, + "TAKE_PROFIT": 11 + } + } +} \ No newline at end of file diff --git a/results/dogeusdt/wf_backtest_20260318_232112.json b/results/dogeusdt/wf_backtest_20260318_232112.json new file mode 100644 index 0000000..7fcbb51 --- /dev/null +++ b/results/dogeusdt/wf_backtest_20260318_232112.json @@ -0,0 +1,1054 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "DOGEUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5, + "train_months": 3, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 5 + }, + "summary": { + "total_trades": 36, + "total_pnl": 90.019, + "return_pct": 9.0, + "win_rate": 55.56, + "avg_win": 52.4749, + "avg_loss": -59.9675, + "payoff_ratio": 0.88, + "max_consecutive_losses": 3, + "profit_factor": 1.09, + "max_drawdown_pct": 17.14, + "sharpe_ratio": 6.64, + "total_fees": 139.8283, + "close_reasons": { + "STOP_LOSS": 15, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-06-05", + "test_period": "2025-06-05 ~ 2025-07-05", + "summary": { + "total_trades": 11, + "total_pnl": 35.7359, + "return_pct": 3.57, + "win_rate": 54.55, + "avg_win": 53.5424, + "avg_loss": -57.1037, + "payoff_ratio": 0.94, + "max_consecutive_losses": 3, + "profit_factor": 1.13, + "max_drawdown_pct": 15.15, + "sharpe_ratio": 8.84, + "total_fees": 42.4813, + "close_reasons": { + "STOP_LOSS": 5, + "TAKE_PROFIT": 6 + } + } + }, + { + "fold": 2, + "train_period": "2025-06-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 12, + "total_pnl": 108.2619, + "return_pct": 10.83, + "win_rate": 58.33, + "avg_win": 57.332, + "avg_loss": -58.6124, + "payoff_ratio": 0.98, + "max_consecutive_losses": 2, + "profit_factor": 1.37, + "max_drawdown_pct": 11.5, + "sharpe_ratio": 22.98, + "total_fees": 46.3559, + "close_reasons": { + "TAKE_PROFIT": 7, + "REVERSE_SIGNAL": 1, + "STOP_LOSS": 4 + } + } + }, + { + "fold": 3, + "train_period": "2025-09-05 ~ 2025-12-05", + "test_period": "2025-12-05 ~ 2026-01-05", + "summary": { + "total_trades": 13, + "total_pnl": -53.9787, + "return_pct": -5.4, + "win_rate": 53.85, + "avg_win": 46.703, + "avg_loss": -63.4833, + "payoff_ratio": 0.74, + "max_consecutive_losses": 2, + "profit_factor": 0.86, + "max_drawdown_pct": 11.66, + "sharpe_ratio": -11.41, + "total_fees": 50.9911, + "close_reasons": { + "TAKE_PROFIT": 7, + "STOP_LOSS": 6 + } + } + } + ], + "trades": [ + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-09 09:45:00", + "exit_time": "2025-06-09 10:30:00", + "entry_price": 0.184312, + "exit_price": 0.186099, + "quantity": 27125.3, + "sl": 0.186099, + "tp": 0.182524, + "gross_pnl": -48.496013, + "entry_fee": 1.999803, + "exit_fee": 2.019201, + "net_pnl": -52.515016, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 67.34545854809373, + "macd_hist": 0.00045777683806403745, + "atr": 0.0008939258330681654, + "adx": 26.753579547378944 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 15:45:00", + "exit_time": "2025-06-12 16:15:00", + "entry_price": 0.185781, + "exit_price": 0.188043, + "quantity": 25443.6, + "sl": 0.188043, + "tp": 0.18352, + "gross_pnl": -57.548306, + "entry_fee": 1.890779, + "exit_fee": 1.913799, + "net_pnl": -61.352884, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.87563936239978, + "macd_hist": -6.154194236816622e-05, + "atr": 0.0011308994454790138, + "adx": 36.72844618637212 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-13 00:00:00", + "exit_time": "2025-06-13 00:30:00", + "entry_price": 0.175862, + "exit_price": 0.172419, + "quantity": 25080.8, + "sl": 0.179306, + "tp": 0.172419, + "gross_pnl": 86.371409, + "entry_fee": 1.764308, + "exit_fee": 1.729759, + "net_pnl": 82.877341, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 23.82274308710309, + "macd_hist": -0.00018936322017631762, + "atr": 0.0017218631157866595, + "adx": 49.101001050928005 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-15 08:00:00", + "exit_time": "2025-06-15 13:45:00", + "entry_price": 0.174757, + "exit_price": 0.176023, + "quantity": 27565.4, + "sl": 0.173492, + "tp": 0.176023, + "gross_pnl": 34.876091, + "entry_fee": 1.926904, + "exit_fee": 1.940854, + "net_pnl": 31.008333, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.780054637272638, + "macd_hist": -0.0002590315281965996, + "atr": 0.0006326062990674968, + "adx": 30.652243262468048 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 15:15:00", + "entry_price": 0.169793, + "exit_price": 0.167789, + "quantity": 29222.0, + "sl": 0.171797, + "tp": 0.167789, + "gross_pnl": 58.558778, + "entry_fee": 1.984677, + "exit_fee": 1.961253, + "net_pnl": 54.612848, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.547832446911734, + "macd_hist": -5.0941667818399415e-05, + "atr": 0.0010019638901851717, + "adx": 33.89821436286415 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 0.154635, + "exit_price": 0.152064, + "quantity": 31960.9, + "sl": 0.157205, + "tp": 0.152064, + "gross_pnl": 82.160178, + "entry_fee": 1.976904, + "exit_fee": 1.944039, + "net_pnl": 78.239235, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 26.457816380696, + "macd_hist": -0.00012481742306554315, + "atr": 0.001285323281513888, + "adx": 37.795973656729004 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-23 05:45:00", + "exit_time": "2025-06-23 09:15:00", + "entry_price": 0.154205, + "exit_price": 0.152478, + "quantity": 31067.9, + "sl": 0.152478, + "tp": 0.155933, + "gross_pnl": -53.668609, + "entry_fee": 1.916335, + "exit_fee": 1.894868, + "net_pnl": -57.479812, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.35056270975231, + "macd_hist": 4.524144395032638e-05, + "atr": 0.0008637308750963044, + "adx": 31.64341200149608 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 07:30:00", + "entry_price": 0.165817, + "exit_price": 0.163918, + "quantity": 29644.5, + "sl": 0.163918, + "tp": 0.167715, + "gross_pnl": -56.289792, + "entry_fee": 1.96622, + "exit_fee": 1.943704, + "net_pnl": -60.199716, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 71.91537787231637, + "macd_hist": 7.80952216130269e-05, + "atr": 0.0009494137535534953, + "adx": 33.04146955102302 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-30 14:45:00", + "exit_time": "2025-06-30 15:45:00", + "entry_price": 0.163204, + "exit_price": 0.164835, + "quantity": 30626.3, + "sl": 0.164835, + "tp": 0.161573, + "gross_pnl": -49.952474, + "entry_fee": 1.99933, + "exit_fee": 2.019311, + "net_pnl": -53.971115, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.694739395161335, + "macd_hist": -2.4481776487695294e-05, + "atr": 0.0008155159726745009, + "adx": 36.86861772419954 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-07-01 13:30:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 0.158926, + "exit_price": 0.160291, + "quantity": 29695.9, + "sl": 0.157561, + "tp": 0.160291, + "gross_pnl": 40.526071, + "entry_fee": 1.887779, + "exit_fee": 1.903989, + "net_pnl": 36.734302, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.477319427427954, + "macd_hist": -9.620625262051722e-05, + "atr": 0.0006823512797731415, + "adx": 54.80815080269273 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 13:30:00", + "exit_time": "2025-07-04 14:15:00", + "entry_price": 0.165093, + "exit_price": 0.163687, + "quantity": 29636.0, + "sl": 0.1665, + "tp": 0.163687, + "gross_pnl": 41.67986, + "entry_fee": 1.957084, + "exit_fee": 1.940412, + "net_pnl": 37.782364, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.005630053291462, + "macd_hist": -2.2292129766276537e-05, + "atr": 0.0007031964563771208, + "adx": 42.184408275078944 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-06 09:00:00", + "exit_time": "2025-09-06 12:30:00", + "entry_price": 0.214459, + "exit_price": 0.213417, + "quantity": 23312.2, + "sl": 0.2155, + "tp": 0.213417, + "gross_pnl": 24.283274, + "entry_fee": 1.9998, + "exit_fee": 1.990087, + "net_pnl": 20.293386, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.72362652968821, + "macd_hist": -4.1870994937527064e-05, + "atr": 0.0005208275826006094, + "adx": 29.251970601813117 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-08 13:00:00", + "exit_time": "2025-09-08 13:15:00", + "entry_price": 0.239354, + "exit_price": 0.237676, + "quantity": 20806.8, + "sl": 0.236511, + "tp": 0.242196, + "gross_pnl": -34.907631, + "entry_fee": 1.992076, + "exit_fee": 1.978113, + "net_pnl": -38.877819, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 77.0407640779084, + "macd_hist": 0.00030723417797429717, + "atr": 0.0014212239323279944, + "adx": 25.511092566066164 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-08 13:15:00", + "exit_time": "2025-09-08 21:00:00", + "entry_price": 0.237676, + "exit_price": 0.240614, + "quantity": 20560.0, + "sl": 0.240614, + "tp": 0.234738, + "gross_pnl": -60.405019, + "entry_fee": 1.954649, + "exit_fee": 1.978811, + "net_pnl": -64.33848, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.83918953751622, + "macd_hist": 0.00037497263875952314, + "atr": 0.001468993651447424, + "adx": 27.856072192833714 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-09 12:00:00", + "exit_time": "2025-09-09 12:15:00", + "entry_price": 0.246265, + "exit_price": 0.249434, + "quantity": 18500.9, + "sl": 0.243095, + "tp": 0.249434, + "gross_pnl": 58.645342, + "entry_fee": 1.822447, + "exit_fee": 1.845905, + "net_pnl": 54.97699, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 74.03847788480495, + "macd_hist": 0.00025518498301992164, + "atr": 0.0015849321269105327, + "adx": 33.93033682724456 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-10 16:45:00", + "exit_time": "2025-09-10 17:15:00", + "entry_price": 0.247915, + "exit_price": 0.244558, + "quantity": 19449.9, + "sl": 0.244558, + "tp": 0.251271, + "gross_pnl": -65.283338, + "entry_fee": 1.928767, + "exit_fee": 1.902654, + "net_pnl": -69.114759, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 69.86492326260483, + "macd_hist": 0.00017047619713731908, + "atr": 0.001678243537964013, + "adx": 34.14678587193939 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-12 22:15:00", + "exit_time": "2025-09-13 01:00:00", + "entry_price": 0.275988, + "exit_price": 0.279803, + "quantity": 16184.3, + "sl": 0.272173, + "tp": 0.279803, + "gross_pnl": 61.742819, + "entry_fee": 1.786666, + "exit_fee": 1.811364, + "net_pnl": 58.144789, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.58805471974998, + "macd_hist": 4.664366386725985e-05, + "atr": 0.0019074911824376896, + "adx": 44.711937954746844 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-13 09:00:00", + "exit_time": "2025-09-13 09:15:00", + "entry_price": 0.287769, + "exit_price": 0.291574, + "quantity": 16501.0, + "sl": 0.283964, + "tp": 0.291574, + "gross_pnl": 62.782388, + "entry_fee": 1.899389, + "exit_fee": 1.924502, + "net_pnl": 58.958497, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.97326146387331, + "macd_hist": 0.00012877809784102843, + "atr": 0.0019023813158768733, + "adx": 36.85858934916456 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-19 09:45:00", + "exit_time": "2025-09-19 11:15:00", + "entry_price": 0.273413, + "exit_price": 0.270525, + "quantity": 18260.2, + "sl": 0.2763, + "tp": 0.270525, + "gross_pnl": 52.721881, + "entry_fee": 1.997028, + "exit_fee": 1.975939, + "net_pnl": 48.748914, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 36.94887723496356, + "macd_hist": -2.413666691537049e-05, + "atr": 0.0014436282597533449, + "adx": 26.02356329086619 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-19 15:00:00", + "exit_time": "2025-09-20 15:15:00", + "entry_price": 0.264754, + "exit_price": 0.268271, + "quantity": 18617.2, + "sl": 0.268271, + "tp": 0.261236, + "gross_pnl": -65.492096, + "entry_fee": 1.971588, + "exit_fee": 1.997785, + "net_pnl": -69.461469, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.865956632847094, + "macd_hist": -0.0003218566897059249, + "atr": 0.0017589137003899537, + "adx": 41.170460149238615 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-22 06:00:00", + "exit_time": "2025-09-24 04:00:00", + "entry_price": 0.238686, + "exit_price": 0.232935, + "quantity": 20568.4, + "sl": 0.244438, + "tp": 0.232935, + "gross_pnl": 118.297732, + "entry_fee": 1.963757, + "exit_fee": 1.916438, + "net_pnl": 114.417538, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 16.34153124729428, + "macd_hist": -0.00028414939720653766, + "atr": 0.0028757154782821804, + "adx": 54.56661856743755 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-24 13:30:00", + "exit_time": "2025-09-24 14:15:00", + "entry_price": 0.244504, + "exit_price": 0.247008, + "quantity": 19846.5, + "sl": 0.242001, + "tp": 0.247008, + "gross_pnl": 49.68547, + "entry_fee": 1.941023, + "exit_fee": 1.960897, + "net_pnl": 45.78355, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.2906943818606, + "macd_hist": 2.5862815475293172e-05, + "atr": 0.0012517438871727342, + "adx": 36.53568933530894 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-10-04 15:15:00", + "exit_time": "2025-10-04 20:15:00", + "entry_price": 0.247425, + "exit_price": 0.249899, + "quantity": 19183.7, + "sl": 0.249899, + "tp": 0.244952, + "gross_pnl": -47.453069, + "entry_fee": 1.898613, + "exit_fee": 1.917594, + "net_pnl": -51.269276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.16773615602384, + "macd_hist": -8.582094300284889e-05, + "atr": 0.0012368070043067224, + "adx": 32.76110746771211 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-05 16:00:00", + "exit_time": "2025-12-05 16:30:00", + "entry_price": 0.140976, + "exit_price": 0.1391, + "quantity": 35463.5, + "sl": 0.142852, + "tp": 0.1391, + "gross_pnl": 66.529579, + "entry_fee": 1.9998, + "exit_fee": 1.973188, + "net_pnl": 62.556592, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.006810663086608, + "macd_hist": -6.804193426309074e-05, + "atr": 0.0009380007520786951, + "adx": 27.496704414120043 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 19:00:00", + "exit_time": "2025-12-10 20:15:00", + "entry_price": 0.147965, + "exit_price": 0.150171, + "quantity": 33230.4, + "sl": 0.150171, + "tp": 0.14576, + "gross_pnl": -73.29433, + "entry_fee": 1.966777, + "exit_fee": 1.996095, + "net_pnl": -77.257202, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 69.08474596518961, + "macd_hist": 0.00024444618170829343, + "atr": 0.0011028204610718977, + "adx": 25.335388110542468 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-11 14:45:00", + "exit_time": "2025-12-11 18:30:00", + "entry_price": 0.137106, + "exit_price": 0.138298, + "quantity": 35783.7, + "sl": 0.138298, + "tp": 0.135914, + "gross_pnl": -42.657392, + "entry_fee": 1.962468, + "exit_fee": 1.979531, + "net_pnl": -46.599392, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.48045414695715, + "macd_hist": -1.3197028545546734e-06, + "atr": 0.0005960450211185996, + "adx": 27.54410485048102 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-13 05:00:00", + "entry_price": 0.135924, + "exit_price": 0.137754, + "quantity": 34315.8, + "sl": 0.134093, + "tp": 0.137754, + "gross_pnl": 62.814779, + "entry_fee": 1.865731, + "exit_fee": 1.890857, + "net_pnl": 59.058191, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.047744351941322, + "macd_hist": -0.0005811926109814281, + "atr": 0.0009152457279255846, + "adx": 33.592136040064716 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-14 17:00:00", + "exit_time": "2025-12-14 23:30:00", + "entry_price": 0.133937, + "exit_price": 0.132554, + "quantity": 36952.7, + "sl": 0.135319, + "tp": 0.132554, + "gross_pnl": 51.096135, + "entry_fee": 1.979728, + "exit_fee": 1.959289, + "net_pnl": 47.157118, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.236488118342884, + "macd_hist": -7.410908928065952e-05, + "atr": 0.0006913721507599538, + "adx": 57.10070430535465 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-17 14:45:00", + "exit_time": "2025-12-17 15:00:00", + "entry_price": 0.134427, + "exit_price": 0.136197, + "quantity": 36874.8, + "sl": 0.136197, + "tp": 0.132656, + "gross_pnl": -65.276219, + "entry_fee": 1.982781, + "exit_fee": 2.008891, + "net_pnl": -69.267891, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.91819645062768, + "macd_hist": 0.00037594271736105997, + "atr": 0.0008851060762978883, + "adx": 25.790767933896934 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-23 13:30:00", + "exit_time": "2025-12-23 14:45:00", + "entry_price": 0.129877, + "exit_price": 0.128859, + "quantity": 37104.1, + "sl": 0.130895, + "tp": 0.128859, + "gross_pnl": 37.77032, + "entry_fee": 1.927588, + "exit_fee": 1.91248, + "net_pnl": 33.930252, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 36.510776854433274, + "macd_hist": -2.074599389111751e-05, + "atr": 0.000508977708552182, + "adx": 25.915224810205064 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:00:00", + "entry_price": 0.123402, + "exit_price": 0.124694, + "quantity": 40355.5, + "sl": 0.122111, + "tp": 0.124694, + "gross_pnl": 52.129851, + "entry_fee": 1.991985, + "exit_fee": 2.012837, + "net_pnl": 48.125028, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.956332463701127, + "macd_hist": -0.000385472424204334, + "atr": 0.0006458828497821451, + "adx": 30.989184860729928 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-29 01:30:00", + "exit_time": "2025-12-29 02:00:00", + "entry_price": 0.125557, + "exit_price": 0.126655, + "quantity": 39399.4, + "sl": 0.126655, + "tp": 0.12446, + "gross_pnl": -43.228085, + "entry_fee": 1.978755, + "exit_fee": 1.996046, + "net_pnl": -47.202887, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.93949088379718, + "macd_hist": 0.00021125843649452418, + "atr": 0.0005485881139353086, + "adx": 29.808703571101656 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-29 09:30:00", + "exit_time": "2025-12-29 12:00:00", + "entry_price": 0.124842, + "exit_price": 0.123687, + "quantity": 39767.9, + "sl": 0.123687, + "tp": 0.125998, + "gross_pnl": -45.954662, + "entry_fee": 1.985889, + "exit_fee": 1.967507, + "net_pnl": -49.908058, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.928315069400387, + "macd_hist": -0.0002477948827792159, + "atr": 0.0005777858720937434, + "adx": 25.21798449098985 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:30:00", + "exit_time": "2026-01-01 15:45:00", + "entry_price": 0.123192, + "exit_price": 0.124236, + "quantity": 38194.1, + "sl": 0.122149, + "tp": 0.124236, + "gross_pnl": 39.843971, + "entry_fee": 1.882088, + "exit_fee": 1.898025, + "net_pnl": 36.063857, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 81.91382400844881, + "macd_hist": 9.922714809708637e-05, + "atr": 0.0005215985022999254, + "adx": 39.562088065326265 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-02 03:30:00", + "exit_time": "2026-01-02 09:30:00", + "entry_price": 0.128343, + "exit_price": 0.1295, + "quantity": 37993.1, + "sl": 0.127186, + "tp": 0.1295, + "gross_pnl": 43.948281, + "entry_fee": 1.950457, + "exit_fee": 1.968036, + "net_pnl": 40.029788, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.09091369250733, + "macd_hist": 4.9930842311590165e-05, + "atr": 0.0005783718724173577, + "adx": 54.52255800580547 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-02 22:00:00", + "exit_time": "2026-01-03 07:15:00", + "entry_price": 0.143004, + "exit_price": 0.140517, + "quantity": 34867.8, + "sl": 0.140517, + "tp": 0.145491, + "gross_pnl": -86.70983, + "entry_fee": 1.994498, + "exit_fee": 1.959814, + "net_pnl": -90.664143, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.24373107208923, + "macd_hist": 3.759488327717141e-05, + "atr": 0.00124340839260955, + "adx": 44.70886575835927 + }, + "fold": 3 + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (55.6%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (55.6%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (17.1%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 5.2건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (1.09)" + } + ] + } +} \ No newline at end of file diff --git a/results/dogeusdt/wf_backtest_20260321_194418.json b/results/dogeusdt/wf_backtest_20260321_194418.json new file mode 100644 index 0000000..e59b6e3 --- /dev/null +++ b/results/dogeusdt/wf_backtest_20260321_194418.json @@ -0,0 +1,188 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "DOGEUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": true, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 2, + "total_pnl": -84.5014, + "return_pct": -8.45, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -42.2507, + "payoff_ratio": 0.0, + "max_consecutive_losses": 2, + "profit_factor": 0.0, + "max_drawdown_pct": 4.28, + "sharpe_ratio": -5831.15, + "total_fees": 7.8265, + "close_reasons": { + "STOP_LOSS": 2 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 2, + "total_pnl": -84.5014, + "return_pct": -8.45, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -42.2507, + "payoff_ratio": 0.0, + "max_consecutive_losses": 2, + "profit_factor": 0.0, + "max_drawdown_pct": 4.28, + "sharpe_ratio": -5831.15, + "total_fees": 7.8265, + "close_reasons": { + "STOP_LOSS": 2 + } + } + } + ], + "trades": [ + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-10-03 14:00:00", + "exit_time": "2025-10-03 14:30:00", + "entry_price": 0.253975, + "exit_price": 0.255986, + "quantity": 19685.0, + "sl": 0.255986, + "tp": 0.249952, + "gross_pnl": -39.591591, + "entry_fee": 1.999796, + "exit_fee": 2.015633, + "net_pnl": -43.60702, + "close_reason": "STOP_LOSS", + "ml_proba": 0.6215, + "indicators": { + "rsi": 39.31265367759862, + "macd_hist": -9.917203695834255e-06, + "atr": 0.001340837894829163, + "adx": 22.11118870853989 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-10-04 02:00:00", + "exit_time": "2025-10-04 03:00:00", + "entry_price": 0.254255, + "exit_price": 0.252284, + "quantity": 18809.6, + "sl": 0.252284, + "tp": 0.258198, + "gross_pnl": -37.083263, + "entry_fee": 1.912977, + "exit_fee": 1.898144, + "net_pnl": -40.894384, + "close_reason": "STOP_LOSS", + "ml_proba": 0.589, + "indicators": { + "rsi": 29.729826487088012, + "macd_hist": -0.0004551413936173264, + "atr": 0.0013143381729553857, + "adx": 17.29524723775582 + }, + "fold": 1 + } + ], + "validation": { + "overall": "FAIL", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (0.0%)" + }, + { + "name": "win_rate_low", + "passed": false, + "level": "WARNING", + "message": "승률 0.0% < 20% — 신호 로직 반전 의심" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (4.3%)" + }, + { + "name": "trade_frequency", + "passed": false, + "level": "WARNING", + "message": "월 평균 2.0건 < 5건 — 신호 생성 부족" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.00)" + } + ] + } +} \ No newline at end of file diff --git a/results/solusdt/ml_comparison_20260321_195841.json b/results/solusdt/ml_comparison_20260321_195841.json new file mode 100644 index 0000000..1df733c --- /dev/null +++ b/results/solusdt/ml_comparison_20260321_195841.json @@ -0,0 +1,44 @@ +{ + "timestamp": "2026-03-21T19:58:41.166218", + "symbols": [ + "SOLUSDT" + ], + "ml_off": { + "total_trades": 346, + "total_pnl": -1287.9804, + "return_pct": -128.8, + "win_rate": 33.82, + "avg_win": 35.5174, + "avg_loss": -23.7708, + "payoff_ratio": 1.49, + "max_consecutive_losses": 11, + "profit_factor": 0.76, + "max_drawdown_pct": 176.42, + "sharpe_ratio": -20.59, + "total_fees": 940.6664, + "close_reasons": { + "STOP_LOSS": 187, + "TAKE_PROFIT": 68, + "REVERSE_SIGNAL": 91 + } + }, + "ml_on": { + "total_trades": 14, + "total_pnl": 80.7573, + "return_pct": 8.08, + "win_rate": 35.71, + "avg_win": 72.906, + "avg_loss": -31.5303, + "payoff_ratio": 2.31, + "max_consecutive_losses": 4, + "profit_factor": 1.28, + "max_drawdown_pct": 11.46, + "sharpe_ratio": 18.5, + "total_fees": 51.8491, + "close_reasons": { + "STOP_LOSS": 7, + "TAKE_PROFIT": 5, + "REVERSE_SIGNAL": 2 + } + } +} \ No newline at end of file diff --git a/results/solusdt/ml_comparison_20260321_200332.json b/results/solusdt/ml_comparison_20260321_200332.json new file mode 100644 index 0000000..a62b756 --- /dev/null +++ b/results/solusdt/ml_comparison_20260321_200332.json @@ -0,0 +1,45 @@ +{ + "timestamp": "2026-03-21T20:03:32.481740", + "symbols": [ + "SOLUSDT" + ], + "ml_off": { + "total_trades": 31, + "total_pnl": -3218.5412, + "return_pct": -321.85, + "win_rate": 25.81, + "avg_win": 40.6328, + "avg_loss": -154.0697, + "payoff_ratio": 0.26, + "max_consecutive_losses": 7, + "profit_factor": 0.09, + "max_drawdown_pct": 333.12, + "sharpe_ratio": -39.57, + "total_fees": 112.8457, + "close_reasons": { + "STOP_LOSS": 21, + "TAKE_PROFIT": 5, + "REVERSE_SIGNAL": 4, + "END_OF_DATA": 1 + } + }, + "ml_on": { + "total_trades": 17, + "total_pnl": -488.3431, + "return_pct": -48.83, + "win_rate": 11.76, + "avg_win": 79.5151, + "avg_loss": -43.1582, + "payoff_ratio": 1.84, + "max_consecutive_losses": 8, + "profit_factor": 0.25, + "max_drawdown_pct": 45.94, + "sharpe_ratio": -123.73, + "total_fees": 61.1816, + "close_reasons": { + "STOP_LOSS": 14, + "REVERSE_SIGNAL": 1, + "TAKE_PROFIT": 2 + } + } +} \ No newline at end of file diff --git a/results/solusdt/wf_backtest_20260321_194417.json b/results/solusdt/wf_backtest_20260321_194417.json new file mode 100644 index 0000000..3169361 --- /dev/null +++ b/results/solusdt/wf_backtest_20260321_194417.json @@ -0,0 +1,81 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "SOLUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": true, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-18 ~ 2025-09-18", + "test_period": "2025-09-18 ~ 2025-10-18", + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + } + ], + "trades": [], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "trade_count", + "passed": true, + "level": "FAIL", + "message": "트레이드 없음 (검증 스킵)" + } + ] + } +} \ No newline at end of file diff --git a/results/weekly/report_2026-03-22.html b/results/weekly/report_2026-03-22.html new file mode 100644 index 0000000..1ae87d2 --- /dev/null +++ b/results/weekly/report_2026-03-22.html @@ -0,0 +1,13407 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-03-22) (Compounded)
9 Jun, 2025 - 4 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-03-22T03:01:42.370217 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-03-22T03:01:42.476259 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-03-22T03:01:42.582062 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:42.728372 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:42.839938 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-03-22T03:01:42.990066 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.102447 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.218057 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.342785 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.459384 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.656592 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-22T03:01:43.838869 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-03-22.json b/results/weekly/report_2026-03-22.json new file mode 100644 index 0000000..2a534e9 --- /dev/null +++ b/results/weekly/report_2026-03-22.json @@ -0,0 +1,2235 @@ +{ + "date": "2026-03-22", + "backtest": { + "summary": { + "profit_factor": 1.25, + "win_rate": 61.4, + "max_drawdown_pct": 25.7, + "total_trades": 88, + "total_pnl": 390.64 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 27, + "total_pnl": 217.5973, + "return_pct": 21.76, + "win_rate": 66.67, + "avg_win": 33.277, + "avg_loss": -42.3766, + "payoff_ratio": 0.79, + "max_consecutive_losses": 3, + "profit_factor": 1.57, + "max_drawdown_pct": 12.03, + "sharpe_ratio": 40.13, + "total_fees": 102.8956, + "close_reasons": { + "STOP_LOSS": 9, + "TAKE_PROFIT": 18 + } + }, + "TRXUSDT": { + "total_trades": 25, + "total_pnl": 72.7989, + "return_pct": 7.28, + "win_rate": 64.0, + "avg_win": 20.3512, + "avg_loss": -28.0912, + "payoff_ratio": 0.72, + "max_consecutive_losses": 3, + "profit_factor": 1.29, + "max_drawdown_pct": 7.59, + "sharpe_ratio": 18.39, + "total_fees": 96.9011, + "close_reasons": { + "STOP_LOSS": 9, + "TAKE_PROFIT": 16 + } + }, + "DOGEUSDT": { + "total_trades": 36, + "total_pnl": 100.2404, + "return_pct": 10.02, + "win_rate": 55.56, + "avg_win": 52.8959, + "avg_loss": -59.8549, + "payoff_ratio": 0.88, + "max_consecutive_losses": 3, + "profit_factor": 1.1, + "max_drawdown_pct": 16.96, + "sharpe_ratio": 8.87, + "total_fees": 140.3475, + "close_reasons": { + "STOP_LOSS": 15, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 1 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 11:15:00", + "exit_time": "2025-06-12 13:00:00", + "entry_price": 2.223978, + "exit_price": 2.237955, + "quantity": 2248.0, + "sl": 2.237955, + "tp": 2.21, + "gross_pnl": -31.420573, + "entry_fee": 1.999801, + "exit_fee": 2.012369, + "net_pnl": -35.432743, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.97199737318929, + "macd_hist": -0.0007807103280135859, + "atr": 0.006988561711463904, + "adx": 43.4578914382015 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-12 20:30:00", + "exit_time": "2025-06-13 00:00:00", + "entry_price": 2.186419, + "exit_price": 2.163885, + "quantity": 2206.0, + "sl": 2.163885, + "tp": 2.208952, + "gross_pnl": -49.708838, + "entry_fee": 1.929296, + "exit_fee": 1.909412, + "net_pnl": -53.547546, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.41519543415668, + "macd_hist": -0.005495027011351469, + "atr": 0.011266735681191995, + "adx": 35.41443548413551 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-16 22:30:00", + "exit_time": "2025-06-16 23:45:00", + "entry_price": 2.260826, + "exit_price": 2.231631, + "quantity": 2015.0, + "sl": 2.231631, + "tp": 2.290021, + "gross_pnl": -58.827937, + "entry_fee": 1.822226, + "exit_fee": 1.798695, + "net_pnl": -62.448858, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.211506920436555, + "macd_hist": -0.007666291215691772, + "atr": 0.014597503086660083, + "adx": 41.77057022158849 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 15:30:00", + "entry_price": 2.188781, + "exit_price": 2.164935, + "quantity": 1938.3, + "sl": 2.212627, + "tp": 2.164935, + "gross_pnl": 46.220126, + "entry_fee": 1.697006, + "exit_fee": 1.678518, + "net_pnl": 42.844603, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.98442517376965, + "macd_hist": -0.000473160901783975, + "atr": 0.011922851577807921, + "adx": 31.230008994240638 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-21 13:30:00", + "exit_time": "2025-06-21 15:15:00", + "entry_price": 2.119112, + "exit_price": 2.109684, + "quantity": 2103.5, + "sl": 2.109684, + "tp": 2.128539, + "gross_pnl": -19.830517, + "entry_fee": 1.783021, + "exit_fee": 1.775089, + "net_pnl": -23.388626, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.460371663394117, + "macd_hist": -0.002291006577745399, + "atr": 0.0047136955379463, + "adx": 26.139853452702802 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 2.045995, + "exit_price": 2.018384, + "quantity": 2121.1, + "sl": 2.073607, + "tp": 2.018384, + "gross_pnl": 58.566411, + "entry_fee": 1.735904, + "exit_fee": 1.712478, + "net_pnl": 55.118029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.112041978961905, + "macd_hist": -0.0015821538372272313, + "atr": 0.013805669484335523, + "adx": 47.020225174544926 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 06:00:00", + "entry_price": 2.184818, + "exit_price": 2.207587, + "quantity": 2112.8, + "sl": 2.16205, + "tp": 2.207587, + "gross_pnl": 48.105266, + "entry_fee": 1.846434, + "exit_fee": 1.865676, + "net_pnl": 44.393156, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.02163697288638, + "macd_hist": 0.0005479493365071683, + "atr": 0.011384245075129916, + "adx": 47.36536786932758 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:15:00", + "entry_price": 2.185781, + "exit_price": 2.203594, + "quantity": 2213.0, + "sl": 2.203594, + "tp": 2.167969, + "gross_pnl": -39.41825, + "entry_fee": 1.934854, + "exit_fee": 1.950621, + "net_pnl": -43.303725, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 07:30:00", + "entry_price": 2.232877, + "exit_price": 2.220445, + "quantity": 2069.4, + "sl": 2.245309, + "tp": 2.220445, + "gross_pnl": 25.726401, + "entry_fee": 1.848286, + "exit_fee": 1.837995, + "net_pnl": 22.040119, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 21:00:00", + "entry_price": 2.863514, + "exit_price": 2.839468, + "quantity": 1745.9, + "sl": 2.887559, + "tp": 2.839468, + "gross_pnl": 41.980567, + "entry_fee": 1.999763, + "exit_fee": 1.982971, + "net_pnl": 37.997832, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 13:30:00", + "entry_price": 2.831483, + "exit_price": 2.839182, + "quantity": 1749.6, + "sl": 2.823784, + "tp": 2.839182, + "gross_pnl": 13.470715, + "entry_fee": 1.981585, + "exit_fee": 1.986973, + "net_pnl": 9.502157, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 17:45:00", + "entry_price": 2.888611, + "exit_price": 2.863658, + "quantity": 1709.6, + "sl": 2.913564, + "tp": 2.863658, + "gross_pnl": 42.660044, + "entry_fee": 1.975348, + "exit_fee": 1.958284, + "net_pnl": 38.726413, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 08:30:00", + "entry_price": 3.009099, + "exit_price": 3.032748, + "quantity": 1618.0, + "sl": 3.032748, + "tp": 2.98545, + "gross_pnl": -38.264556, + "entry_fee": 1.947489, + "exit_fee": 1.962795, + "net_pnl": -42.174839, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-12 21:30:00", + "entry_price": 3.121788, + "exit_price": 3.09291, + "quantity": 1583.6, + "sl": 3.150665, + "tp": 3.09291, + "gross_pnl": 45.73009, + "entry_fee": 1.977465, + "exit_fee": 1.959173, + "net_pnl": 41.793452, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 12:30:00", + "entry_price": 3.066993, + "exit_price": 3.050039, + "quantity": 1587.7, + "sl": 3.083947, + "tp": 3.050039, + "gross_pnl": 26.917819, + "entry_fee": 1.947786, + "exit_fee": 1.937019, + "net_pnl": 23.033014, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 15:00:00", + "entry_price": 2.971603, + "exit_price": 2.984114, + "quantity": 1621.9, + "sl": 2.984114, + "tp": 2.959092, + "gross_pnl": -20.291843, + "entry_fee": 1.927857, + "exit_fee": 1.935974, + "net_pnl": -24.155673, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 21:45:00", + "entry_price": 2.976198, + "exit_price": 2.948913, + "quantity": 1637.2, + "sl": 2.948913, + "tp": 3.003482, + "gross_pnl": -44.669639, + "entry_fee": 1.949052, + "exit_fee": 1.931184, + "net_pnl": -48.549876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.81825, + "quantity": 1774.1, + "sl": 2.81825, + "tp": 2.768191, + "gross_pnl": -44.405079, + "entry_fee": 1.982181, + "exit_fee": 1.999943, + "net_pnl": -48.387203, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 02:15:00", + "entry_price": 2.850785, + "exit_price": 2.868214, + "quantity": 1732.7, + "sl": 2.833356, + "tp": 2.868214, + "gross_pnl": 30.199066, + "entry_fee": 1.975822, + "exit_fee": 1.987902, + "net_pnl": 26.235342, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 10:30:00", + "exit_time": "2025-12-10 14:30:00", + "entry_price": 2.069993, + "exit_price": 2.056326, + "quantity": 2415.2, + "sl": 2.08366, + "tp": 2.056326, + "gross_pnl": 33.009596, + "entry_fee": 1.999779, + "exit_fee": 1.986575, + "net_pnl": 29.023242, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 37.038012691554805, + "macd_hist": -9.211636302669133e-05, + "atr": 0.0068337189344636114, + "adx": 28.943927763667713 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-12 18:30:00", + "entry_price": 1.988899, + "exit_price": 2.013001, + "quantity": 2497.1, + "sl": 1.964797, + "tp": 2.013001, + "gross_pnl": 60.185505, + "entry_fee": 1.986592, + "exit_fee": 2.010666, + "net_pnl": 56.188248, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.182013495720106, + "macd_hist": -0.00643391832048344, + "atr": 0.01205108033747697, + "adx": 30.769786891839054 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-19 13:15:00", + "exit_time": "2025-12-19 13:45:00", + "entry_price": 1.878712, + "exit_price": 1.863781, + "quantity": 2592.6, + "sl": 1.893643, + "tp": 1.863781, + "gross_pnl": 38.710886, + "entry_fee": 1.9483, + "exit_fee": 1.932815, + "net_pnl": 34.829771, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.16547032772114, + "macd_hist": -4.5929936914913816e-05, + "atr": 0.007465649526915487, + "adx": 40.69667585881617 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:00:00", + "entry_price": 1.831783, + "exit_price": 1.844712, + "quantity": 2617.1, + "sl": 1.818854, + "tp": 1.844712, + "gross_pnl": 33.836648, + "entry_fee": 1.917584, + "exit_fee": 1.931119, + "net_pnl": 29.987945, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.688435627302994, + "macd_hist": -0.0034657628634239823, + "atr": 0.006464530874639477, + "adx": 30.228290924248867 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 17:15:00", + "entry_price": 1.861986, + "exit_price": 1.870892, + "quantity": 2532.5, + "sl": 1.853081, + "tp": 1.870892, + "gross_pnl": 22.552826, + "entry_fee": 1.886192, + "exit_fee": 1.895213, + "net_pnl": 18.771421, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 14:45:00", + "entry_price": 1.906991, + "exit_price": 1.92129, + "quantity": 2444.0, + "sl": 1.892691, + "tp": 1.92129, + "gross_pnl": 34.947921, + "entry_fee": 1.864274, + "exit_fee": 1.878253, + "net_pnl": 31.205393, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 01:30:00", + "entry_price": 2.041396, + "exit_price": 2.026932, + "quantity": 2233.5, + "sl": 2.05586, + "tp": 2.026932, + "gross_pnl": 32.305198, + "entry_fee": 1.823783, + "exit_fee": 1.810861, + "net_pnl": 28.670554, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 03:45:00", + "entry_price": 2.038904, + "exit_price": 2.053633, + "quantity": 2186.5, + "sl": 2.024175, + "tp": 2.053633, + "gross_pnl": 32.204983, + "entry_fee": 1.783225, + "exit_fee": 1.796107, + "net_pnl": 28.62565, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-06-11 17:00:00", + "exit_time": "2025-06-11 19:45:00", + "entry_price": 0.282968, + "exit_price": 0.280059, + "quantity": 17671.6, + "sl": 0.280059, + "tp": 0.285877, + "gross_pnl": -51.403627, + "entry_fee": 2.000201, + "exit_fee": 1.97964, + "net_pnl": -55.383467, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.310011221387928, + "macd_hist": -0.0009208923407909242, + "atr": 0.001454413485759152, + "adx": 32.474695496414746 + }, + "fold": 1 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-06-13 00:00:00", + "exit_time": "2025-06-13 00:15:00", + "entry_price": 0.268723, + "exit_price": 0.270639, + "quantity": 17574.3, + "sl": 0.270639, + "tp": 0.266808, + "gross_pnl": -33.662849, + "entry_fee": 1.889048, + "exit_fee": 1.902513, + "net_pnl": -37.454411, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.966927261980565, + "macd_hist": -1.9569743207310678e-05, + "atr": 0.0009577294352106148, + "adx": 26.838036717103265 + }, + "fold": 1 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-06-16 23:45:00", + "exit_time": "2025-06-17 04:45:00", + "entry_price": 0.273887, + "exit_price": 0.276694, + "quantity": 16562.5, + "sl": 0.27108, + "tp": 0.276694, + "gross_pnl": 46.48982, + "entry_fee": 1.814504, + "exit_fee": 1.8331, + "net_pnl": 42.842216, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.74454185909087, + "macd_hist": -0.0006231433167976357, + "atr": 0.0014034662689071044, + "adx": 28.215673425255815 + }, + "fold": 1 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-06-22 14:15:00", + "exit_time": "2025-06-22 14:45:00", + "entry_price": 0.264836, + "exit_price": 0.267254, + "quantity": 17937.5, + "sl": 0.262419, + "tp": 0.267254, + "gross_pnl": 43.356571, + "entry_fee": 1.900202, + "exit_fee": 1.917544, + "net_pnl": 39.538825, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 23.816317652581944, + "macd_hist": -0.0007482968367435475, + "atr": 0.0012085455367911535, + "adx": 28.05756581397983 + }, + "fold": 1 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-07-04 14:15:00", + "exit_time": "2025-07-04 15:30:00", + "entry_price": 0.283728, + "exit_price": 0.282103, + "quantity": 17440.0, + "sl": 0.282103, + "tp": 0.285354, + "gross_pnl": -28.347665, + "entry_fee": 1.979289, + "exit_fee": 1.96795, + "net_pnl": -32.294904, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.74105415081286, + "macd_hist": -0.0003117196058060476, + "atr": 0.0008127197629142321, + "adx": 32.363795146724236 + }, + "fold": 1 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-09-06 20:45:00", + "exit_time": "2025-09-06 21:00:00", + "entry_price": 0.321678, + "exit_price": 0.319715, + "quantity": 15541.9, + "sl": 0.323641, + "tp": 0.319715, + "gross_pnl": 30.509805, + "entry_fee": 1.999794, + "exit_fee": 1.98759, + "net_pnl": 26.522421, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 14.50979679434796, + "macd_hist": -0.0001481211181555309, + "atr": 0.0009815339390825979, + "adx": 64.7935479437538 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-06 22:00:00", + "exit_time": "2025-09-06 22:15:00", + "entry_price": 0.305541, + "exit_price": 0.31122, + "quantity": 16265.4, + "sl": 0.299861, + "tp": 0.31122, + "gross_pnl": 92.382278, + "entry_fee": 1.987896, + "exit_fee": 2.024849, + "net_pnl": 88.369533, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 7.92971732591285, + "macd_hist": -0.0020195476384628087, + "atr": 0.0028398403210786296, + "adx": 72.55182590993492 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-08 09:15:00", + "exit_time": "2025-09-08 10:00:00", + "entry_price": 0.332173, + "exit_price": 0.333369, + "quantity": 14469.5, + "sl": 0.330978, + "tp": 0.333369, + "gross_pnl": 17.297357, + "entry_fee": 1.922552, + "exit_fee": 1.929471, + "net_pnl": 13.445334, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.07783460048826, + "macd_hist": 1.5209076637119471e-05, + "atr": 0.0005977178625434464, + "adx": 29.94633147610989 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-10 12:30:00", + "exit_time": "2025-09-10 13:45:00", + "entry_price": 0.338144, + "exit_price": 0.339223, + "quantity": 14116.2, + "sl": 0.337065, + "tp": 0.339223, + "gross_pnl": 15.231826, + "entry_fee": 1.909322, + "exit_fee": 1.915415, + "net_pnl": 11.407088, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.27306940076188, + "macd_hist": 1.761110324105758e-05, + "atr": 0.0005395157903468375, + "adx": 28.042143316321827 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-09-13 05:30:00", + "exit_time": "2025-09-13 06:45:00", + "entry_price": 0.354365, + "exit_price": 0.353225, + "quantity": 13383.4, + "sl": 0.355504, + "tp": 0.353225, + "gross_pnl": 15.253983, + "entry_fee": 1.897041, + "exit_fee": 1.890939, + "net_pnl": 11.466002, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 75.09668428355302, + "macd_hist": 0.00010590971216388305, + "atr": 0.0005698844413077655, + "adx": 40.031791993546236 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-18 16:15:00", + "exit_time": "2025-09-18 17:00:00", + "entry_price": 0.349035, + "exit_price": 0.350709, + "quantity": 13500.3, + "sl": 0.34736, + "tp": 0.350709, + "gross_pnl": 22.607453, + "entry_fee": 1.88483, + "exit_fee": 1.893873, + "net_pnl": 18.82875, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.40338684709819, + "macd_hist": 2.7945430776989415e-05, + "atr": 0.0008372944810174205, + "adx": 41.403707409730266 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-09-21 08:15:00", + "exit_time": "2025-09-21 09:15:00", + "entry_price": 0.344206, + "exit_price": 0.343239, + "quantity": 13526.8, + "sl": 0.345172, + "tp": 0.343239, + "gross_pnl": 13.074428, + "entry_fee": 1.8624, + "exit_fee": 1.85717, + "net_pnl": 9.354858, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 30.782692658162308, + "macd_hist": -7.421870424645718e-05, + "atr": 0.0004832786824330342, + "adx": 31.221203425283278 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-21 23:00:00", + "exit_time": "2025-09-22 00:30:00", + "entry_price": 0.342464, + "exit_price": 0.341551, + "quantity": 13513.7, + "sl": 0.341551, + "tp": 0.343378, + "gross_pnl": -12.343878, + "entry_fee": 1.851184, + "exit_fee": 1.846246, + "net_pnl": -16.041308, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.492156959618264, + "macd_hist": -0.00011844966177527712, + "atr": 0.0004567172002937059, + "adx": 30.86524355608222 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-09-22 06:00:00", + "exit_time": "2025-09-22 11:15:00", + "entry_price": 0.334297, + "exit_price": 0.337072, + "quantity": 13987.8, + "sl": 0.337072, + "tp": 0.331521, + "gross_pnl": -38.82505, + "entry_fee": 1.870429, + "exit_fee": 1.885959, + "net_pnl": -42.581439, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 19.554287882129668, + "macd_hist": -0.00022792604366828832, + "atr": 0.0013878183290049766, + "adx": 30.760886738521233 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-27 08:00:00", + "exit_time": "2025-09-27 09:00:00", + "entry_price": 0.336534, + "exit_price": 0.335566, + "quantity": 14239.9, + "sl": 0.335566, + "tp": 0.337501, + "gross_pnl": -13.78089, + "entry_fee": 1.916882, + "exit_fee": 1.91137, + "net_pnl": -17.609142, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.90053605935814, + "macd_hist": -0.00025988593478820746, + "atr": 0.00048388294790651314, + "adx": 26.380156011508365 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-29 10:00:00", + "exit_time": "2025-09-29 10:45:00", + "entry_price": 0.332323, + "exit_price": 0.333211, + "quantity": 14544.5, + "sl": 0.331435, + "tp": 0.333211, + "gross_pnl": 12.919457, + "entry_fee": 1.93339, + "exit_fee": 1.938558, + "net_pnl": 9.047509, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 19.362378267287347, + "macd_hist": -0.0002291318308186226, + "atr": 0.00044413546950098455, + "adx": 29.645494050123773 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-09-30 03:30:00", + "exit_time": "2025-09-30 06:15:00", + "entry_price": 0.337134, + "exit_price": 0.336068, + "quantity": 14275.4, + "sl": 0.336068, + "tp": 0.3382, + "gross_pnl": -15.217667, + "entry_fee": 1.925087, + "exit_fee": 1.919, + "net_pnl": -19.061754, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 58.81934618554273, + "macd_hist": 9.633358724452359e-06, + "atr": 0.0005330031631932522, + "adx": 34.07177915564808 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-10-01 08:15:00", + "exit_time": "2025-10-01 08:45:00", + "entry_price": 0.335354, + "exit_price": 0.336308, + "quantity": 14478.1, + "sl": 0.334399, + "tp": 0.336308, + "gross_pnl": 13.818882, + "entry_fee": 1.942113, + "exit_fee": 1.94764, + "net_pnl": 9.929129, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 70.24789531394917, + "macd_hist": 4.729285330987371e-05, + "atr": 0.0004772339591884286, + "adx": 31.542285567700812 + }, + "fold": 2 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-12-08 23:15:00", + "exit_time": "2025-12-09 00:00:00", + "entry_price": 0.281402, + "exit_price": 0.28061, + "quantity": 17766.4, + "sl": 0.282193, + "tp": 0.28061, + "gross_pnl": 14.063894, + "entry_fee": 1.999799, + "exit_fee": 1.994174, + "net_pnl": 10.069921, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.36971195563758, + "macd_hist": -5.3411406416355763e-05, + "atr": 0.0003958003322855375, + "adx": 36.500835949606106 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-12-12 07:45:00", + "exit_time": "2025-12-12 08:15:00", + "entry_price": 0.278582, + "exit_price": 0.277953, + "quantity": 17907.9, + "sl": 0.279211, + "tp": 0.277953, + "gross_pnl": 11.260025, + "entry_fee": 1.995528, + "exit_fee": 1.991024, + "net_pnl": 7.273472, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.438038967517357, + "macd_hist": -2.5520992386730775e-05, + "atr": 0.0003143870866373587, + "adx": 26.711440675930646 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-12-12 15:30:00", + "exit_time": "2025-12-12 15:45:00", + "entry_price": 0.276062, + "exit_price": 0.275244, + "quantity": 18040.7, + "sl": 0.276881, + "tp": 0.275244, + "gross_pnl": 14.759968, + "entry_fee": 1.992144, + "exit_fee": 1.98624, + "net_pnl": 10.781585, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.751521638219945, + "macd_hist": -8.36146151699088e-06, + "atr": 0.00040907415881422674, + "adx": 39.02029513782675 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-12-13 10:15:00", + "exit_time": "2025-12-13 12:30:00", + "entry_price": 0.272363, + "exit_price": 0.271775, + "quantity": 18235.4, + "sl": 0.272951, + "tp": 0.271775, + "gross_pnl": 10.719921, + "entry_fee": 1.986658, + "exit_fee": 1.98237, + "net_pnl": 6.750894, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.50309030113114, + "macd_hist": -1.9348391567442782e-05, + "atr": 0.0002939316152227498, + "adx": 25.21703387256171 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2025-12-26 15:00:00", + "exit_time": "2025-12-26 19:30:00", + "entry_price": 0.277452, + "exit_price": 0.278149, + "quantity": 17867.3, + "sl": 0.278149, + "tp": 0.276756, + "gross_pnl": -12.447447, + "entry_fee": 1.982929, + "exit_fee": 1.987908, + "net_pnl": -16.418284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.51622507815984, + "macd_hist": -4.6760678561223154e-05, + "atr": 0.0003483303942996465, + "adx": 36.669526375660595 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "LONG", + "entry_time": "2025-12-27 20:00:00", + "exit_time": "2025-12-27 22:00:00", + "entry_price": 0.283318, + "exit_price": 0.284114, + "quantity": 17577.4, + "sl": 0.282523, + "tp": 0.284114, + "gross_pnl": 13.981347, + "entry_fee": 1.992, + "exit_fee": 1.997592, + "net_pnl": 9.991754, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 77.49503286668957, + "macd_hist": 3.5147071292014305e-05, + "atr": 0.00039770804019150625, + "adx": 43.053847108404184 + }, + "fold": 3 + }, + { + "symbol": "TRXUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:00:00", + "exit_time": "2026-01-04 00:45:00", + "entry_price": 0.294841, + "exit_price": 0.295553, + "quantity": 16843.7, + "sl": 0.295553, + "tp": 0.294128, + "gross_pnl": -11.997929, + "entry_fee": 1.986482, + "exit_fee": 1.991281, + "net_pnl": -15.975692, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.6678799584072, + "macd_hist": -3.2551549800375387e-05, + "atr": 0.00035615479915180313, + "adx": 74.06247870613235 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-09 09:45:00", + "exit_time": "2025-06-09 10:30:00", + "entry_price": 0.184312, + "exit_price": 0.186099, + "quantity": 27125.3, + "sl": 0.186099, + "tp": 0.182524, + "gross_pnl": -48.496013, + "entry_fee": 1.999803, + "exit_fee": 2.019201, + "net_pnl": -52.515016, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 67.34545854809373, + "macd_hist": 0.00045777683806403745, + "atr": 0.0008939258330681654, + "adx": 26.753579547378944 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 15:45:00", + "exit_time": "2025-06-12 16:15:00", + "entry_price": 0.185781, + "exit_price": 0.188043, + "quantity": 25497.4, + "sl": 0.188043, + "tp": 0.18352, + "gross_pnl": -57.669991, + "entry_fee": 1.894777, + "exit_fee": 1.917845, + "net_pnl": -61.482614, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.87563936239978, + "macd_hist": -6.154194236816622e-05, + "atr": 0.0011308994454790138, + "adx": 36.72844618637212 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-13 00:00:00", + "exit_time": "2025-06-13 00:30:00", + "entry_price": 0.175862, + "exit_price": 0.172419, + "quantity": 25187.7, + "sl": 0.179306, + "tp": 0.172419, + "gross_pnl": 86.739543, + "entry_fee": 1.771828, + "exit_fee": 1.737132, + "net_pnl": 83.230583, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 23.82274308710309, + "macd_hist": -0.00018936322017631762, + "atr": 0.0017218631157866595, + "adx": 49.101001050928005 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-15 08:00:00", + "exit_time": "2025-06-15 13:45:00", + "entry_price": 0.174757, + "exit_price": 0.176023, + "quantity": 27733.6, + "sl": 0.173492, + "tp": 0.176023, + "gross_pnl": 35.0889, + "entry_fee": 1.938662, + "exit_fee": 1.952697, + "net_pnl": 31.197541, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.780054637272638, + "macd_hist": -0.0002590315281965996, + "atr": 0.0006326062990674968, + "adx": 30.652243262468048 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 15:15:00", + "entry_price": 0.169793, + "exit_price": 0.167789, + "quantity": 29442.1, + "sl": 0.171797, + "tp": 0.167789, + "gross_pnl": 58.999842, + "entry_fee": 1.999625, + "exit_fee": 1.976025, + "net_pnl": 55.024192, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.547832446911734, + "macd_hist": -5.0941667818399415e-05, + "atr": 0.0010019638901851717, + "adx": 33.89821436286415 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 0.154635, + "exit_price": 0.152064, + "quantity": 31853.2, + "sl": 0.157205, + "tp": 0.152064, + "gross_pnl": 81.883319, + "entry_fee": 1.970242, + "exit_fee": 1.937489, + "net_pnl": 77.975589, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 26.457816380696, + "macd_hist": -0.00012481742306554315, + "atr": 0.001285323281513888, + "adx": 37.795973656729004 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-23 05:45:00", + "exit_time": "2025-06-23 09:15:00", + "entry_price": 0.154205, + "exit_price": 0.152478, + "quantity": 30869.4, + "sl": 0.152478, + "tp": 0.155933, + "gross_pnl": -53.325708, + "entry_fee": 1.904092, + "exit_fee": 1.882761, + "net_pnl": -57.11256, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.35056270975231, + "macd_hist": 4.524144395032638e-05, + "atr": 0.0008637308750963044, + "adx": 31.64341200149608 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 07:30:00", + "entry_price": 0.165817, + "exit_price": 0.163918, + "quantity": 29485.7, + "sl": 0.163918, + "tp": 0.167715, + "gross_pnl": -55.988258, + "entry_fee": 1.955687, + "exit_fee": 1.933292, + "net_pnl": -59.877237, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 71.91537787231637, + "macd_hist": 7.80952216130269e-05, + "atr": 0.0009494137535534953, + "adx": 33.04146955102302 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-06-30 14:45:00", + "exit_time": "2025-06-30 15:45:00", + "entry_price": 0.163204, + "exit_price": 0.164835, + "quantity": 30522.8, + "sl": 0.164835, + "tp": 0.161573, + "gross_pnl": -49.783662, + "entry_fee": 1.992573, + "exit_fee": 2.012487, + "net_pnl": -53.788722, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.694739395161335, + "macd_hist": -2.4481776487695294e-05, + "atr": 0.0008155159726745009, + "adx": 36.86861772419954 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-07-01 13:30:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 0.158926, + "exit_price": 0.160291, + "quantity": 30289.2, + "sl": 0.157561, + "tp": 0.160291, + "gross_pnl": 41.335749, + "entry_fee": 1.925495, + "exit_fee": 1.94203, + "net_pnl": 37.468224, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.477319427427954, + "macd_hist": -9.620625262051722e-05, + "atr": 0.0006823512797731415, + "adx": 54.80815080269273 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 13:30:00", + "exit_time": "2025-07-04 14:15:00", + "entry_price": 0.165093, + "exit_price": 0.163687, + "quantity": 30282.1, + "sl": 0.1665, + "tp": 0.163687, + "gross_pnl": 42.588531, + "entry_fee": 1.999751, + "exit_fee": 1.982716, + "net_pnl": 38.606064, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.005630053291462, + "macd_hist": -2.2292129766276537e-05, + "atr": 0.0007031964563771208, + "adx": 42.184408275078944 + }, + "fold": 1 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-06 09:00:00", + "exit_time": "2025-09-06 12:30:00", + "entry_price": 0.214459, + "exit_price": 0.213417, + "quantity": 23312.2, + "sl": 0.2155, + "tp": 0.213417, + "gross_pnl": 24.283274, + "entry_fee": 1.9998, + "exit_fee": 1.990087, + "net_pnl": 20.293386, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.72362652968821, + "macd_hist": -4.1870994937527064e-05, + "atr": 0.0005208275826006094, + "adx": 29.251970601813117 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-08 13:00:00", + "exit_time": "2025-09-08 13:15:00", + "entry_price": 0.239354, + "exit_price": 0.237676, + "quantity": 20796.5, + "sl": 0.236511, + "tp": 0.242196, + "gross_pnl": -34.89035, + "entry_fee": 1.99109, + "exit_fee": 1.977133, + "net_pnl": -38.858574, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 77.0407640779084, + "macd_hist": 0.00030723417797429717, + "atr": 0.0014212239323279944, + "adx": 25.511092566066164 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-08 13:15:00", + "exit_time": "2025-09-08 21:00:00", + "entry_price": 0.237676, + "exit_price": 0.240614, + "quantity": 20644.4, + "sl": 0.240614, + "tp": 0.234738, + "gross_pnl": -60.652985, + "entry_fee": 1.962673, + "exit_fee": 1.986934, + "net_pnl": -64.602593, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.83918953751622, + "macd_hist": 0.00037497263875952314, + "atr": 0.001468993651447424, + "adx": 27.856072192833714 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-09 12:00:00", + "exit_time": "2025-09-09 12:15:00", + "entry_price": 0.246265, + "exit_price": 0.249434, + "quantity": 18616.6, + "sl": 0.243095, + "tp": 0.249434, + "gross_pnl": 59.012095, + "entry_fee": 1.833844, + "exit_fee": 1.857449, + "net_pnl": 55.320802, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 74.03847788480495, + "macd_hist": 0.00025518498301992164, + "atr": 0.0015849321269105327, + "adx": 33.93033682724456 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-10 16:45:00", + "exit_time": "2025-09-10 17:15:00", + "entry_price": 0.247915, + "exit_price": 0.244558, + "quantity": 19608.6, + "sl": 0.244558, + "tp": 0.251271, + "gross_pnl": -65.816012, + "entry_fee": 1.944505, + "exit_fee": 1.918178, + "net_pnl": -69.678696, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 69.86492326260483, + "macd_hist": 0.00017047619713731908, + "atr": 0.001678243537964013, + "adx": 34.14678587193939 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-12 22:15:00", + "exit_time": "2025-09-13 01:00:00", + "entry_price": 0.275988, + "exit_price": 0.279803, + "quantity": 16351.5, + "sl": 0.272173, + "tp": 0.279803, + "gross_pnl": 62.380684, + "entry_fee": 1.805124, + "exit_fee": 1.830077, + "net_pnl": 58.745483, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.58805471974998, + "macd_hist": 4.664366386725985e-05, + "atr": 0.0019074911824376896, + "adx": 44.711937954746844 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-13 09:00:00", + "exit_time": "2025-09-13 09:15:00", + "entry_price": 0.287769, + "exit_price": 0.291574, + "quantity": 16702.9, + "sl": 0.283964, + "tp": 0.291574, + "gross_pnl": 63.55057, + "entry_fee": 1.922629, + "exit_fee": 1.948049, + "net_pnl": 59.679891, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.97326146387331, + "macd_hist": 0.00012877809784102843, + "atr": 0.0019023813158768733, + "adx": 36.85858934916456 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-19 09:45:00", + "exit_time": "2025-09-19 11:15:00", + "entry_price": 0.273413, + "exit_price": 0.270525, + "quantity": 18199.5, + "sl": 0.2763, + "tp": 0.270525, + "gross_pnl": 52.546625, + "entry_fee": 1.990389, + "exit_fee": 1.969371, + "net_pnl": 48.586865, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 36.94887723496356, + "macd_hist": -2.413666691537049e-05, + "atr": 0.0014436282597533449, + "adx": 26.02356329086619 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-19 15:00:00", + "exit_time": "2025-09-20 15:15:00", + "entry_price": 0.264754, + "exit_price": 0.268271, + "quantity": 18511.8, + "sl": 0.268271, + "tp": 0.261236, + "gross_pnl": -65.121317, + "entry_fee": 1.960426, + "exit_fee": 1.986474, + "net_pnl": -69.068217, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.865956632847094, + "macd_hist": -0.0003218566897059249, + "atr": 0.0017589137003899537, + "adx": 41.170460149238615 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-09-22 06:00:00", + "exit_time": "2025-09-24 04:00:00", + "entry_price": 0.238686, + "exit_price": 0.232935, + "quantity": 20944.2, + "sl": 0.244438, + "tp": 0.232935, + "gross_pnl": 120.45912, + "entry_fee": 1.999636, + "exit_fee": 1.951452, + "net_pnl": 116.508032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 16.34153124729428, + "macd_hist": -0.00028414939720653766, + "atr": 0.0028757154782821804, + "adx": 54.56661856743755 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-09-24 13:30:00", + "exit_time": "2025-09-24 14:15:00", + "entry_price": 0.244504, + "exit_price": 0.247008, + "quantity": 19637.8, + "sl": 0.242001, + "tp": 0.247008, + "gross_pnl": 49.162992, + "entry_fee": 1.920612, + "exit_fee": 1.940277, + "net_pnl": 45.302103, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.2906943818606, + "macd_hist": 2.5862815475293172e-05, + "atr": 0.0012517438871727342, + "adx": 36.53568933530894 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-10-04 15:15:00", + "exit_time": "2025-10-04 20:15:00", + "entry_price": 0.247425, + "exit_price": 0.249899, + "quantity": 18912.4, + "sl": 0.249899, + "tp": 0.244952, + "gross_pnl": -46.781978, + "entry_fee": 1.871762, + "exit_fee": 1.890475, + "net_pnl": -50.544215, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.16773615602384, + "macd_hist": -8.582094300284889e-05, + "atr": 0.0012368070043067224, + "adx": 32.76110746771211 + }, + "fold": 2 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-05 16:00:00", + "exit_time": "2025-12-05 16:30:00", + "entry_price": 0.140976, + "exit_price": 0.1391, + "quantity": 35463.5, + "sl": 0.142852, + "tp": 0.1391, + "gross_pnl": 66.529579, + "entry_fee": 1.9998, + "exit_fee": 1.973188, + "net_pnl": 62.556592, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.006810663086608, + "macd_hist": -6.804193426309074e-05, + "atr": 0.0009380007520786951, + "adx": 27.496704414120043 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 19:00:00", + "exit_time": "2025-12-10 20:15:00", + "entry_price": 0.147965, + "exit_price": 0.150171, + "quantity": 33206.9, + "sl": 0.150171, + "tp": 0.14576, + "gross_pnl": -73.242498, + "entry_fee": 1.965386, + "exit_fee": 1.994683, + "net_pnl": -77.202567, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 69.08474596518961, + "macd_hist": 0.00024444618170829343, + "atr": 0.0011028204610718977, + "adx": 25.335388110542468 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-11 14:45:00", + "exit_time": "2025-12-11 18:30:00", + "entry_price": 0.137106, + "exit_price": 0.138298, + "quantity": 35930.4, + "sl": 0.138298, + "tp": 0.135914, + "gross_pnl": -42.832272, + "entry_fee": 1.970514, + "exit_fee": 1.987646, + "net_pnl": -46.790432, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.48045414695715, + "macd_hist": -1.3197028545546734e-06, + "atr": 0.0005960450211185996, + "adx": 27.54410485048102 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-13 05:00:00", + "entry_price": 0.135924, + "exit_price": 0.137754, + "quantity": 34528.9, + "sl": 0.134093, + "tp": 0.137754, + "gross_pnl": 63.204856, + "entry_fee": 1.877317, + "exit_fee": 1.902599, + "net_pnl": 59.424941, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.047744351941322, + "macd_hist": -0.0005811926109814281, + "atr": 0.0009152457279255846, + "adx": 33.592136040064716 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-14 17:00:00", + "exit_time": "2025-12-14 23:30:00", + "entry_price": 0.133937, + "exit_price": 0.132554, + "quantity": 37252.3, + "sl": 0.135319, + "tp": 0.132554, + "gross_pnl": 51.510406, + "entry_fee": 1.995779, + "exit_fee": 1.975174, + "net_pnl": 47.539452, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.236488118342884, + "macd_hist": -7.410908928065952e-05, + "atr": 0.0006913721507599538, + "adx": 57.10070430535465 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-17 14:45:00", + "exit_time": "2025-12-17 15:00:00", + "entry_price": 0.134427, + "exit_price": 0.136197, + "quantity": 36760.2, + "sl": 0.136197, + "tp": 0.132656, + "gross_pnl": -65.073353, + "entry_fee": 1.976619, + "exit_fee": 2.002648, + "net_pnl": -69.05262, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.91819645062768, + "macd_hist": 0.00037594271736105997, + "atr": 0.0008851060762978883, + "adx": 25.790767933896934 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-23 13:30:00", + "exit_time": "2025-12-23 14:45:00", + "entry_price": 0.129877, + "exit_price": 0.128859, + "quantity": 37588.6, + "sl": 0.130895, + "tp": 0.128859, + "gross_pnl": 38.263519, + "entry_fee": 1.952758, + "exit_fee": 1.937453, + "net_pnl": 34.373308, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 36.510776854433274, + "macd_hist": -2.074599389111751e-05, + "atr": 0.000508977708552182, + "adx": 25.915224810205064 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:00:00", + "entry_price": 0.123402, + "exit_price": 0.124694, + "quantity": 40428.3, + "sl": 0.122111, + "tp": 0.124694, + "gross_pnl": 52.223891, + "entry_fee": 1.995579, + "exit_fee": 2.016468, + "net_pnl": 48.211844, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.956332463701127, + "macd_hist": -0.000385472424204334, + "atr": 0.0006458828497821451, + "adx": 30.989184860729928 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "SHORT", + "entry_time": "2025-12-29 01:30:00", + "exit_time": "2025-12-29 02:00:00", + "entry_price": 0.125557, + "exit_price": 0.126655, + "quantity": 39181.4, + "sl": 0.126655, + "tp": 0.12446, + "gross_pnl": -42.988901, + "entry_fee": 1.967807, + "exit_fee": 1.985002, + "net_pnl": -46.941709, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.93949088379718, + "macd_hist": 0.00021125843649452418, + "atr": 0.0005485881139353086, + "adx": 29.808703571101656 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2025-12-29 09:30:00", + "exit_time": "2025-12-29 12:00:00", + "entry_price": 0.124842, + "exit_price": 0.123687, + "quantity": 39950.3, + "sl": 0.123687, + "tp": 0.125998, + "gross_pnl": -46.165438, + "entry_fee": 1.994998, + "exit_fee": 1.976532, + "net_pnl": -50.136967, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.928315069400387, + "macd_hist": -0.0002477948827792159, + "atr": 0.0005777858720937434, + "adx": 25.21798449098985 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:30:00", + "exit_time": "2026-01-01 15:45:00", + "entry_price": 0.123192, + "exit_price": 0.124236, + "quantity": 39047.8, + "sl": 0.122149, + "tp": 0.124236, + "gross_pnl": 40.734548, + "entry_fee": 1.924156, + "exit_fee": 1.940449, + "net_pnl": 36.869943, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 81.91382400844881, + "macd_hist": 9.922714809708637e-05, + "atr": 0.0005215985022999254, + "adx": 39.562088065326265 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-02 03:30:00", + "exit_time": "2026-01-02 09:30:00", + "entry_price": 0.128343, + "exit_price": 0.1295, + "quantity": 38917.3, + "sl": 0.127186, + "tp": 0.1295, + "gross_pnl": 45.017343, + "entry_fee": 1.997903, + "exit_fee": 2.01591, + "net_pnl": 41.003531, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.09091369250733, + "macd_hist": 4.9930842311590165e-05, + "atr": 0.0005783718724173577, + "adx": 54.52255800580547 + }, + "fold": 3 + }, + { + "symbol": "DOGEUSDT", + "side": "LONG", + "entry_time": "2026-01-02 22:00:00", + "exit_time": "2026-01-03 07:15:00", + "entry_price": 0.143004, + "exit_price": 0.140517, + "quantity": 34622.1, + "sl": 0.140517, + "tp": 0.145491, + "gross_pnl": -86.098819, + "entry_fee": 1.980444, + "exit_fee": 1.946004, + "net_pnl": -90.025267, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.24373107208923, + "macd_hist": 3.759488327717141e-05, + "atr": 0.00124340839260955, + "adx": 44.70886575835927 + }, + "fold": 3 + } + ] + }, + "live_trades": { + "count": 12, + "net_pnl": -3.99, + "win_rate": 41.7 + }, + "trend": { + "pf": [ + 1.24, + 1.24 + ], + "win_rate": [ + 61.4, + 61.4 + ], + "mdd": [ + 17.1, + 17.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + }, + "TRXUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + }, + "DOGEUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 16, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-03-29.html b/results/weekly/report_2026-03-29.html new file mode 100644 index 0000000..8d01af8 --- /dev/null +++ b/results/weekly/report_2026-03-29.html @@ -0,0 +1,13739 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-03-29) (Compounded)
23 Jun, 2024 - 16 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-03-29T03:01:06.621923 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-03-29T03:01:06.716882 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-03-29T03:01:07.037337 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.156290 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.243531 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-03-29T03:01:07.338633 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.439521 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.545124 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.652139 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.744333 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:07.868308 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-03-29T03:01:08.014881 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-03-29.json b/results/weekly/report_2026-03-29.json new file mode 100644 index 0000000..d839a72 --- /dev/null +++ b/results/weekly/report_2026-03-29.json @@ -0,0 +1,1398 @@ +{ + "date": "2026-03-29", + "backtest": { + "summary": { + "profit_factor": 1.42, + "win_rate": 38.2, + "max_drawdown_pct": 26.1, + "total_trades": 55, + "total_pnl": 611.78 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + } + ] + }, + "live_trades": { + "count": 0, + "net_pnl": 0.0, + "win_rate": 0 + }, + "trend": { + "pf": [ + 1.24, + 1.24, + 1.25 + ], + "win_rate": [ + 61.4, + 61.4, + 61.4 + ], + "mdd": [ + 17.1, + 17.1, + 25.7 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 16, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-04-05.html b/results/weekly/report_2026-04-05.html new file mode 100644 index 0000000..05f9f3c --- /dev/null +++ b/results/weekly/report_2026-04-05.html @@ -0,0 +1,13739 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-04-05) (Compounded)
23 Jun, 2024 - 16 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-04-05T03:00:26.788997 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-04-05T03:00:26.895646 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-05T03:00:27.210592 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.330729 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.426621 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-05T03:00:27.522030 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.615870 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.734044 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.860713 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:27.962503 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:28.095294 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-05T03:00:28.265436 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-04-05.json b/results/weekly/report_2026-04-05.json new file mode 100644 index 0000000..c652708 --- /dev/null +++ b/results/weekly/report_2026-04-05.json @@ -0,0 +1,1401 @@ +{ + "date": "2026-04-05", + "backtest": { + "summary": { + "profit_factor": 1.42, + "win_rate": 38.2, + "max_drawdown_pct": 26.1, + "total_trades": 55, + "total_pnl": 611.78 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + } + ] + }, + "live_trades": { + "count": 15, + "net_pnl": -16.32, + "win_rate": 33.3 + }, + "trend": { + "pf": [ + 1.24, + 1.24, + 1.25, + 1.42 + ], + "win_rate": [ + 61.4, + 61.4, + 61.4, + 38.2 + ], + "mdd": [ + 17.1, + 17.1, + 25.7, + 26.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 31, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-04-12.html b/results/weekly/report_2026-04-12.html new file mode 100644 index 0000000..2f05dee --- /dev/null +++ b/results/weekly/report_2026-04-12.html @@ -0,0 +1,13739 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-04-12) (Compounded)
23 Jun, 2024 - 16 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-04-12T03:01:02.087947 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-04-12T03:01:02.210193 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-12T03:01:02.494716 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:02.613382 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:02.714219 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-12T03:01:02.825787 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:02.931360 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:03.057890 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:03.192600 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:03.304417 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:03.424532 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-12T03:01:03.561468 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-04-12.json b/results/weekly/report_2026-04-12.json new file mode 100644 index 0000000..deb193f --- /dev/null +++ b/results/weekly/report_2026-04-12.json @@ -0,0 +1,1401 @@ +{ + "date": "2026-04-12", + "backtest": { + "summary": { + "profit_factor": 1.42, + "win_rate": 38.2, + "max_drawdown_pct": 26.1, + "total_trades": 55, + "total_pnl": 611.78 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + } + ] + }, + "live_trades": { + "count": 0, + "net_pnl": 0.0, + "win_rate": 0 + }, + "trend": { + "pf": [ + 1.24, + 1.25, + 1.42, + 1.42 + ], + "win_rate": [ + 61.4, + 61.4, + 38.2, + 38.2 + ], + "mdd": [ + 17.1, + 25.7, + 26.1, + 26.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 31, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-04-19.html b/results/weekly/report_2026-04-19.html new file mode 100644 index 0000000..585ee18 --- /dev/null +++ b/results/weekly/report_2026-04-19.html @@ -0,0 +1,13739 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-04-19) (Compounded)
23 Jun, 2024 - 16 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-04-19T03:00:45.877166 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-04-19T03:00:45.996764 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-19T03:00:46.303253 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:46.435376 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:46.547762 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-19T03:00:46.644028 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:46.737728 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:46.837311 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:46.954590 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:47.056871 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:47.197468 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-19T03:00:47.349122 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-04-19.json b/results/weekly/report_2026-04-19.json new file mode 100644 index 0000000..eab8eea --- /dev/null +++ b/results/weekly/report_2026-04-19.json @@ -0,0 +1,1401 @@ +{ + "date": "2026-04-19", + "backtest": { + "summary": { + "profit_factor": 1.42, + "win_rate": 38.2, + "max_drawdown_pct": 26.1, + "total_trades": 55, + "total_pnl": 611.78 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + } + ] + }, + "live_trades": { + "count": 0, + "net_pnl": 0.0, + "win_rate": 0 + }, + "trend": { + "pf": [ + 1.25, + 1.42, + 1.42, + 1.42 + ], + "win_rate": [ + 61.4, + 38.2, + 38.2, + 38.2 + ], + "mdd": [ + 25.7, + 26.1, + 26.1, + 26.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 31, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-04-26.html b/results/weekly/report_2026-04-26.html new file mode 100644 index 0000000..c9fec89 --- /dev/null +++ b/results/weekly/report_2026-04-26.html @@ -0,0 +1,13739 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-04-26) (Compounded)
23 Jun, 2024 - 16 Jan, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-04-26T03:00:25.589739 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-04-26T03:00:25.703950 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-26T03:00:26.019780 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.131765 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.226172 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-04-26T03:00:26.319683 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.415743 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.511767 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.628615 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.734981 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:26.891149 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-04-26T03:00:27.046069 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-04-26.json b/results/weekly/report_2026-04-26.json new file mode 100644 index 0000000..6a7b4c8 --- /dev/null +++ b/results/weekly/report_2026-04-26.json @@ -0,0 +1,1401 @@ +{ + "date": "2026-04-26", + "backtest": { + "summary": { + "profit_factor": 1.42, + "win_rate": 38.2, + "max_drawdown_pct": 26.1, + "total_trades": 55, + "total_pnl": 611.78 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + } + ] + }, + "live_trades": { + "count": 15, + "net_pnl": -16.32, + "win_rate": 33.3 + }, + "trend": { + "pf": [ + 1.42, + 1.42, + 1.42, + 1.42 + ], + "win_rate": [ + 38.2, + 38.2, + 38.2, + 38.2 + ], + "mdd": [ + 26.1, + 26.1, + 26.1, + 26.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 46, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/weekly/report_2026-05-03.html b/results/weekly/report_2026-05-03.html new file mode 100644 index 0000000..379da0b --- /dev/null +++ b/results/weekly/report_2026-05-03.html @@ -0,0 +1,13204 @@ + + + + + + + + + Tearsheet (generated by QuantStats) + + + + + + + +
+ +

CoinTrader 주간 리포트 (2026-05-03) (Compounded)
23 Jun, 2024 - 20 Apr, 2026

+

Periods/Year: 252 • RF: 0.0% | Generated by QuantStats (v. 0.0.81)

+
+ +
+ +
+ + + + + + + + 2026-05-03T03:00:32.189051 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + 2026-05-03T03:00:32.490026 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-05-03T03:00:32.579782 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:32.683210 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:32.766005 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + + + + 2026-05-03T03:00:32.854772 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:32.952628 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:33.044822 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:33.151778 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:33.246509 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:33.371896 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + 2026-05-03T03:00:33.522754 + image/svg+xml + + + Matplotlib v3.10.8, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/results/weekly/report_2026-05-03.json b/results/weekly/report_2026-05-03.json new file mode 100644 index 0000000..6d08f2f --- /dev/null +++ b/results/weekly/report_2026-05-03.json @@ -0,0 +1,1761 @@ +{ + "date": "2026-05-03", + "backtest": { + "summary": { + "profit_factor": 1.35, + "win_rate": 37.1, + "max_drawdown_pct": 26.1, + "total_trades": 70, + "total_pnl": 623.83 + }, + "per_symbol": { + "XRPUSDT": { + "total_trades": 70, + "total_pnl": 623.8295, + "return_pct": 62.38, + "win_rate": 37.14, + "avg_win": 92.8632, + "avg_loss": -40.6958, + "payoff_ratio": 2.28, + "max_consecutive_losses": 7, + "profit_factor": 1.35, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 21.99, + "total_fees": 264.4273, + "close_reasons": { + "STOP_LOSS": 43, + "TAKE_PROFIT": 25, + "REVERSE_SIGNAL": 2 + } + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9969.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.680623, + "entry_fee": 1.878882, + "exit_fee": 1.883555, + "net_pnl": -15.443059, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9727.2, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -13.27159, + "entry_fee": 1.847983, + "exit_fee": 1.853292, + "net_pnl": -16.972865, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9486.7, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 43.155708, + "entry_fee": 1.814418, + "exit_fee": 1.83168, + "net_pnl": 39.50961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9755.0, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -23.761447, + "entry_fee": 1.893061, + "exit_fee": 1.902566, + "net_pnl": -27.557073, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9910.1, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -35.138496, + "entry_fee": 1.837942, + "exit_fee": 1.851997, + "net_pnl": -38.828435, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 9565.7, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 89.167125, + "entry_fee": 1.760295, + "exit_fee": 1.724629, + "net_pnl": 85.682201, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 10609.9, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -10.51388, + "entry_fee": 1.932044, + "exit_fee": 1.927838, + "net_pnl": -14.373762, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 13:00:00", + "entry_price": 0.454255, + "exit_price": 0.445306, + "quantity": 10472.7, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 93.720463, + "entry_fee": 1.902909, + "exit_fee": 1.865421, + "net_pnl": 89.952134, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:30:00", + "exit_time": "2024-07-05 02:45:00", + "entry_price": 0.420942, + "exit_price": 0.414826, + "quantity": 11756.2, + "sl": 0.414826, + "tp": 0.437252, + "gross_pnl": -71.904985, + "entry_fee": 1.979472, + "exit_fee": 1.95071, + "net_pnl": -75.835166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 17.542609489768573, + "macd_hist": -0.0022454007404058623, + "atr": 0.004077563875167036, + "adx": 34.8247940751274 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-07 13:15:00", + "exit_time": "2024-07-07 16:45:00", + "entry_price": 0.428157, + "exit_price": 0.431128, + "quantity": 11275.9, + "sl": 0.431128, + "tp": 0.420235, + "gross_pnl": -33.499406, + "entry_fee": 1.931143, + "exit_fee": 1.944543, + "net_pnl": -37.375092, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.391762358627556, + "macd_hist": -0.00022581763422808683, + "atr": 0.001980590227904358, + "adx": 41.16067017627275 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-10 14:45:00", + "exit_time": "2024-07-11 01:45:00", + "entry_price": 0.432843, + "exit_price": 0.441317, + "quantity": 10724.2, + "sl": 0.429666, + "tp": 0.441317, + "gross_pnl": 90.87149, + "entry_fee": 1.856759, + "exit_fee": 1.893108, + "net_pnl": 87.121623, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.9325973177463, + "macd_hist": -0.0006574880724432416, + "atr": 0.0021183745630577694, + "adx": 32.9612906514216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-11 11:15:00", + "exit_time": "2024-07-11 12:00:00", + "entry_price": 0.451145, + "exit_price": 0.448456, + "quantity": 11046.7, + "sl": 0.448456, + "tp": 0.458317, + "gross_pnl": -29.708275, + "entry_fee": 1.993466, + "exit_fee": 1.981583, + "net_pnl": -33.683323, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.27834883462336, + "macd_hist": 0.00019950300137788215, + "atr": 0.0017928898856254879, + "adx": 34.63252844733141 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-13 03:15:00", + "exit_time": "2024-07-13 03:30:00", + "entry_price": 0.487051, + "exit_price": 0.490852, + "quantity": 10077.3, + "sl": 0.490852, + "tp": 0.476917, + "gross_pnl": -38.297833, + "entry_fee": 1.963265, + "exit_fee": 1.978584, + "net_pnl": -42.239682, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.0144809670156, + "macd_hist": 0.0008114156546517991, + "atr": 0.002533604135936573, + "adx": 46.32465648331595 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8239.9, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -33.330029, + "entry_fee": 2.000189, + "exit_fee": 1.986857, + "net_pnl": -37.317074, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 21:00:00", + "exit_time": "2024-10-02 22:00:00", + "entry_price": 0.559144, + "exit_price": 0.534515, + "quantity": 8607.7, + "sl": 0.56838, + "tp": 0.534515, + "gross_pnl": 212.000508, + "entry_fee": 1.925178, + "exit_fee": 1.840378, + "net_pnl": 208.234952, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.74810937882898, + "macd_hist": -0.0007275967364531702, + "atr": 0.006157292530609686, + "adx": 36.9743073661553 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 8810.7, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -18.226892, + "entry_fee": 1.861339, + "exit_fee": 1.868629, + "net_pnl": -21.956859, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8782.4, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 86.727087, + "entry_fee": 1.887351, + "exit_fee": 1.922042, + "net_pnl": 82.917694, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 7898.9, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 79.062449, + "entry_fee": 1.778023, + "exit_fee": 1.746398, + "net_pnl": 75.538029, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 7617.3, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -24.901916, + "entry_fee": 1.650047, + "exit_fee": 1.660008, + "net_pnl": -28.21197, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2264.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 119.455273, + "entry_fee": 1.999806, + "exit_fee": 1.952024, + "net_pnl": 115.503443, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2314.2, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 153.17596, + "entry_fee": 1.921996, + "exit_fee": 1.983267, + "net_pnl": 149.270697, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1806.6, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -68.897379, + "entry_fee": 1.726054, + "exit_fee": 1.698495, + "net_pnl": -72.321928, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:30:00", + "exit_time": "2025-01-11 11:45:00", + "entry_price": 2.412659, + "exit_price": 2.430317, + "quantity": 1900.3, + "sl": 2.430317, + "tp": 2.365569, + "gross_pnl": -33.556598, + "entry_fee": 1.83391, + "exit_fee": 1.847333, + "net_pnl": -37.237841, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.41248533457599, + "macd_hist": 0.0057135807609380515, + "atr": 0.011772386203441395, + "adx": 28.672518449637955 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1748.3, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -65.277352, + "entry_fee": 1.879934, + "exit_fee": 1.906045, + "net_pnl": -69.063331, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2070.3, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.675445, + "entry_fee": 2.000193, + "exit_fee": 1.987122, + "net_pnl": -36.66276, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2303.2, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.09662, + "entry_fee": 1.92648, + "exit_fee": 1.950519, + "net_pnl": -63.973619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2151.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.338606, + "entry_fee": 1.798927, + "exit_fee": 1.781592, + "net_pnl": -46.919125, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1962.5, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.606063, + "entry_fee": 1.704693, + "exit_fee": 1.727735, + "net_pnl": -61.03849, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1961.7, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.621846, + "entry_fee": 1.58262, + "exit_fee": 1.535571, + "net_pnl": 114.503656, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 2271.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -59.372534, + "entry_fee": 1.811985, + "exit_fee": 1.788236, + "net_pnl": -62.972755, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2158.1, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 157.826274, + "entry_fee": 1.685739, + "exit_fee": 1.622609, + "net_pnl": 154.517926, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 2870.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -108.987934, + "entry_fee": 1.994683, + "exit_fee": 2.038278, + "net_pnl": -113.020895, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2120.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 79.982507, + "entry_fee": 1.769015, + "exit_fee": 1.801008, + "net_pnl": 76.412485, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2188.8, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -29.240398, + "entry_fee": 1.913695, + "exit_fee": 1.925391, + "net_pnl": -33.079484, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 2068.5, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 51.430424, + "entry_fee": 1.847482, + "exit_fee": 1.82691, + "net_pnl": 47.756032, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1916.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -43.006168, + "entry_fee": 1.943449, + "exit_fee": 1.926246, + "net_pnl": -46.875863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 1680.2, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -34.382144, + "entry_fee": 2.000243, + "exit_fee": 1.98649, + "net_pnl": -38.368876, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1721.2, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.310758, + "entry_fee": 1.923077, + "exit_fee": 1.936001, + "net_pnl": -36.169836, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 1623.3, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 56.584688, + "entry_fee": 1.851072, + "exit_fee": 1.873706, + "net_pnl": 52.85991, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1656.1, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 80.281622, + "entry_fee": 1.956845, + "exit_fee": 1.988957, + "net_pnl": 76.33582, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 15:00:00", + "exit_time": "2025-10-07 15:30:00", + "entry_price": 2.89839, + "exit_price": 2.872314, + "quantity": 1700.2, + "sl": 2.872314, + "tp": 2.967926, + "gross_pnl": -44.334744, + "entry_fee": 1.971137, + "exit_fee": 1.953403, + "net_pnl": -48.259284, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.111278771138778, + "macd_hist": -0.007352303454220775, + "atr": 0.01738412874788122, + "adx": 36.774177705854946 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1754.9, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.524435, + "entry_fee": 1.997157, + "exit_fee": 2.008567, + "net_pnl": -32.530159, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1950.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 319.185459, + "entry_fee": 1.94754, + "exit_fee": 1.819866, + "net_pnl": 315.418053, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1677.6, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -59.814561, + "entry_fee": 1.68327, + "exit_fee": 1.707196, + "net_pnl": -63.205026, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2635.5, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.602559, + "entry_fee": 1.962906, + "exit_fee": 1.955865, + "net_pnl": -21.521329, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2592.2, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 74.134206, + "entry_fee": 1.97732, + "exit_fee": 2.006974, + "net_pnl": 70.149912, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2353.6, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.865101, + "entry_fee": 1.921852, + "exit_fee": 1.919506, + "net_pnl": 2.023743, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2354.6, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.361859, + "entry_fee": 1.920321, + "exit_fee": 1.948066, + "net_pnl": 65.493471, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2264.0, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 92.115995, + "entry_fee": 1.846975, + "exit_fee": 1.883821, + "net_pnl": 88.385199, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 1985.3, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -43.741178, + "entry_fee": 1.715391, + "exit_fee": 1.697895, + "net_pnl": -47.154464, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 15:15:00", + "exit_time": "2026-01-16 19:30:00", + "entry_price": 2.042296, + "exit_price": 2.053738, + "quantity": 2191.0, + "sl": 2.053738, + "tp": 2.011783, + "gross_pnl": -25.070152, + "entry_fee": 1.789868, + "exit_fee": 1.799896, + "net_pnl": -28.659916, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.582150692482468, + "macd_hist": -0.0008808540237228157, + "atr": 0.007628222107447183, + "adx": 30.787994405176587 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-03-22 21:00:00", + "exit_time": "2026-03-22 22:15:00", + "entry_price": 1.377662, + "exit_price": 1.384774, + "quantity": 3629.0, + "sl": 1.384774, + "tp": 1.358697, + "gross_pnl": -25.809351, + "entry_fee": 1.999814, + "exit_fee": 2.010138, + "net_pnl": -29.819303, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.37700805654254, + "macd_hist": -0.00027039664731188465, + "atr": 0.004741315460870014, + "adx": 29.783355276614255 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-03-26 09:30:00", + "exit_time": "2026-03-26 13:45:00", + "entry_price": 1.370863, + "exit_price": 1.377994, + "quantity": 3538.2, + "sl": 1.377994, + "tp": 1.351846, + "gross_pnl": -25.232308, + "entry_fee": 1.940155, + "exit_fee": 1.950248, + "net_pnl": -29.122711, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.097896139742872, + "macd_hist": -0.00032866910571626926, + "atr": 0.0047542645807053625, + "adx": 52.826218923945774 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-03-26 15:00:00", + "exit_time": "2026-03-26 16:00:00", + "entry_price": 1.355464, + "exit_price": 1.363634, + "quantity": 3471.0, + "sl": 1.363634, + "tp": 1.333679, + "gross_pnl": -28.357078, + "entry_fee": 1.881927, + "exit_fee": 1.89327, + "net_pnl": -32.132275, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 22.994205473813633, + "macd_hist": -0.0006006029313345646, + "atr": 0.0054464761605698365, + "adx": 43.71445515418706 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-03-28 13:30:00", + "exit_time": "2026-03-28 17:45:00", + "entry_price": 1.350635, + "exit_price": 1.344816, + "quantity": 3365.1, + "sl": 1.344816, + "tp": 1.366153, + "gross_pnl": -19.581973, + "entry_fee": 1.818009, + "exit_fee": 1.810176, + "net_pnl": -23.210158, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.23895737179897, + "macd_hist": 0.0005563980178257999, + "atr": 0.0038794236977035194, + "adx": 26.155709130195095 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-02 11:00:00", + "exit_time": "2026-04-02 13:00:00", + "entry_price": 1.30267, + "exit_price": 1.287175, + "quantity": 3399.3, + "sl": 1.30848, + "tp": 1.287175, + "gross_pnl": 52.672295, + "entry_fee": 1.771266, + "exit_fee": 1.750197, + "net_pnl": 49.150832, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.571137921155408, + "macd_hist": -8.785814926544388e-05, + "atr": 0.003873760441841309, + "adx": 33.3090084671489 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-05 12:15:00", + "exit_time": "2026-04-05 12:45:00", + "entry_price": 1.290271, + "exit_price": 1.2793, + "quantity": 3622.4, + "sl": 1.294385, + "tp": 1.2793, + "gross_pnl": 39.739936, + "entry_fee": 1.869551, + "exit_fee": 1.853655, + "net_pnl": 36.01673, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 26.688687430143855, + "macd_hist": -0.00023227773555516617, + "atr": 0.0027426523709178103, + "adx": 26.348047209981516 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-04-05 22:45:00", + "exit_time": "2026-04-05 23:15:00", + "entry_price": 1.311831, + "exit_price": 1.329948, + "quantity": 3700.9, + "sl": 1.305037, + "tp": 1.329948, + "gross_pnl": 67.049222, + "entry_fee": 1.941982, + "exit_fee": 1.968802, + "net_pnl": 63.138438, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.84183262933406, + "macd_hist": 0.0005444708183828416, + "atr": 0.004529251141159092, + "adx": 31.25156826499328 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-06 00:00:00", + "exit_time": "2026-04-06 02:00:00", + "entry_price": 1.332867, + "exit_price": 1.341589, + "quantity": 3720.2, + "sl": 1.341589, + "tp": 1.309607, + "gross_pnl": -32.448592, + "entry_fee": 1.983412, + "exit_fee": 1.996392, + "net_pnl": -36.428396, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 81.16929334305878, + "macd_hist": 0.003036414114194217, + "atr": 0.005814847317996939, + "adx": 43.248351100512515 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-04-06 09:15:00", + "exit_time": "2026-04-06 12:30:00", + "entry_price": 1.352235, + "exit_price": 1.343535, + "quantity": 3689.1, + "sl": 1.343535, + "tp": 1.375436, + "gross_pnl": -32.096944, + "entry_fee": 1.995412, + "exit_fee": 1.982574, + "net_pnl": -36.07493, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 65.18897795123566, + "macd_hist": 1.7885981034028355e-05, + "atr": 0.0058003206610614385, + "adx": 44.280507519773664 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-07 21:00:00", + "exit_time": "2026-04-07 22:00:00", + "entry_price": 1.332867, + "exit_price": 1.342472, + "quantity": 3606.6, + "sl": 1.342472, + "tp": 1.307252, + "gross_pnl": -34.643288, + "entry_fee": 1.922847, + "exit_fee": 1.936704, + "net_pnl": -38.502839, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.3464170248231, + "macd_hist": 0.0026546517386642427, + "atr": 0.006403683593031675, + "adx": 29.967535520912094 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-07 23:15:00", + "exit_time": "2026-04-08 14:30:00", + "entry_price": 1.39536, + "exit_price": 1.354268, + "quantity": 3307.1, + "sl": 1.41077, + "tp": 1.354268, + "gross_pnl": 135.898463, + "entry_fee": 1.845839, + "exit_fee": 1.791479, + "net_pnl": 132.261145, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 87.81961427382404, + "macd_hist": 0.006641491764396613, + "atr": 0.010273235103933166, + "adx": 51.79343121285542 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-04-09 01:00:00", + "exit_time": "2026-04-09 11:45:00", + "entry_price": 1.332133, + "exit_price": 1.324416, + "quantity": 3698.5, + "sl": 1.324416, + "tp": 1.352714, + "gross_pnl": -28.543769, + "entry_fee": 1.970758, + "exit_fee": 1.95934, + "net_pnl": -32.473867, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.040502196352893, + "macd_hist": -0.0006679641321605959, + "atr": 0.00514510723445334, + "adx": 29.65614923918552 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-18 08:15:00", + "exit_time": "2026-04-18 11:00:00", + "entry_price": 1.455954, + "exit_price": 1.434386, + "quantity": 3416.0, + "sl": 1.464042, + "tp": 1.434386, + "gross_pnl": 73.676924, + "entry_fee": 1.989416, + "exit_fee": 1.959945, + "net_pnl": 69.727563, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 32.7177886410686, + "macd_hist": -0.0005701688545308779, + "atr": 0.005392046568250158, + "adx": 27.474863523841687 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-04-19 22:00:00", + "exit_time": "2026-04-20 01:30:00", + "entry_price": 1.39966, + "exit_price": 1.408502, + "quantity": 3469.1, + "sl": 1.408502, + "tp": 1.376081, + "gross_pnl": -30.673885, + "entry_fee": 1.942224, + "exit_fee": 1.954494, + "net_pnl": -34.570603, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.49884154555197, + "macd_hist": -0.0006736817061354494, + "atr": 0.005894686419551405, + "adx": 34.404306914851524 + }, + "fold": 8 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-04-20 15:15:00", + "exit_time": "2026-04-20 16:30:00", + "entry_price": 1.433843, + "exit_price": 1.421612, + "quantity": 3433.0, + "sl": 1.421612, + "tp": 1.466461, + "gross_pnl": -41.990771, + "entry_fee": 1.968954, + "exit_fee": 1.952157, + "net_pnl": -45.911882, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 63.475684476313155, + "macd_hist": 7.974806729557724e-05, + "atr": 0.008154339463292146, + "adx": 30.92820606725035 + }, + "fold": 8 + } + ] + }, + "live_trades": { + "count": 15, + "net_pnl": -16.32, + "win_rate": 33.3 + }, + "trend": { + "pf": [ + 1.42, + 1.42, + 1.42, + 1.42 + ], + "win_rate": [ + 38.2, + 38.2, + 38.2, + 38.2 + ], + "mdd": [ + 26.1, + 26.1, + 26.1, + 26.1 + ], + "pf_declining_3w": false + }, + "kill_switch": { + "XRPUSDT": { + "total_trades": 0, + "consec_loss": 0, + "recent_pf": null, + "killed": false + } + }, + "ml_trigger": { + "conditions": { + "cumulative_trades_enough": false, + "pf_below_1": false, + "pf_declining_3w": false + }, + "met_count": 0, + "recommend": false, + "cumulative_trades": 61, + "threshold": 150 + }, + "sweep": null +} \ No newline at end of file diff --git a/results/xrpusdt/backtest_20260322_224712.json b/results/xrpusdt/backtest_20260322_224712.json new file mode 100644 index 0000000..59c82d3 --- /dev/null +++ b/results/xrpusdt/backtest_20260322_224712.json @@ -0,0 +1,549 @@ +{ + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 20, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 19, + "total_pnl": -90.5608, + "return_pct": -9.06, + "win_rate": 31.58, + "avg_win": 187.773, + "avg_loss": -93.6307, + "payoff_ratio": 2.01, + "max_consecutive_losses": 8, + "profit_factor": 0.93, + "max_drawdown_pct": 39.26, + "sharpe_ratio": -6.38, + "total_fees": 130.2737, + "close_reasons": { + "STOP_LOSS": 13, + "TAKE_PROFIT": 6 + } + }, + "trades": [ + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 4140.6, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -65.350891, + "entry_fee": 4.000385, + "exit_fee": 3.974245, + "net_pnl": -73.325521, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.92729946174303, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285681, + "adx": 28.1934914013265 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 4431.1, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -115.619197, + "entry_fee": 3.706333, + "exit_fee": 3.752581, + "net_pnl": -123.07811, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 3844.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -77.446201, + "entry_fee": 3.214688, + "exit_fee": 3.183709, + "net_pnl": -83.844598, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 3568.3, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 213.952202, + "entry_fee": 2.878759, + "exit_fee": 2.793178, + "net_pnl": 208.280264, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 18:45:00", + "exit_time": "2025-04-06 20:30:00", + "entry_price": 1.994699, + "exit_price": 1.968556, + "quantity": 4653.0, + "sl": 1.968556, + "tp": 2.064416, + "gross_pnl": -121.647028, + "entry_fee": 3.712535, + "exit_fee": 3.663876, + "net_pnl": -129.023439, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 21.033027596614833, + "macd_hist": -0.006740564223060543, + "atr": 0.01742918952793266, + "adx": 42.14016267928252 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 4091.2, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 299.197837, + "entry_fee": 3.195726, + "exit_fee": 3.076047, + "net_pnl": 292.926065, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-09 01:00:00", + "exit_time": "2025-04-09 01:45:00", + "entry_price": 1.737226, + "exit_price": 1.775195, + "quantity": 5591.5, + "sl": 1.775195, + "tp": 1.635978, + "gross_pnl": -212.299611, + "entry_fee": 3.88548, + "exit_fee": 3.9704, + "net_pnl": -220.155491, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.2339289074866, + "macd_hist": -0.002023427338529095, + "atr": 0.025312183439683184, + "adx": 47.62708053828556 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 4180.2, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 157.679154, + "entry_fee": 3.487472, + "exit_fee": 3.550543, + "net_pnl": 150.641139, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-22 13:15:00", + "exit_time": "2025-04-22 14:00:00", + "entry_price": 2.105411, + "exit_price": 2.137638, + "quantity": 4726.0, + "sl": 2.093325, + "tp": 2.137638, + "gross_pnl": 152.30925, + "entry_fee": 3.980068, + "exit_fee": 4.040992, + "net_pnl": 144.28819, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 57.841977820073645, + "macd_hist": 4.316762016507922e-06, + "atr": 0.008056985291244722, + "adx": 27.486954266795543 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-24 08:30:00", + "exit_time": "2025-04-24 13:30:00", + "entry_price": 2.129213, + "exit_price": 2.178907, + "quantity": 4383.8, + "sl": 2.110578, + "tp": 2.178907, + "gross_pnl": 217.849236, + "entry_fee": 3.733617, + "exit_fee": 3.820757, + "net_pnl": 210.294862, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.016950832949433, + "macd_hist": -0.003143540248224934, + "atr": 0.012423538716450883, + "adx": 45.63982334493204 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-26 07:30:00", + "exit_time": "2025-04-26 09:00:00", + "entry_price": 2.235676, + "exit_price": 2.198258, + "quantity": 3372.4, + "sl": 2.249708, + "tp": 2.198258, + "gross_pnl": 126.188433, + "entry_fee": 3.015838, + "exit_fee": 2.965363, + "net_pnl": 120.207233, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.71113426509163, + "macd_hist": 0.005320482189513192, + "atr": 0.009354497780232585, + "adx": 30.700551675430855 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-28 07:15:00", + "exit_time": "2025-04-28 07:45:00", + "entry_price": 2.314669, + "exit_price": 2.333953, + "quantity": 2608.7, + "sl": 2.333953, + "tp": 2.263244, + "gross_pnl": -50.306622, + "entry_fee": 2.41531, + "exit_fee": 2.435433, + "net_pnl": -55.157366, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.98848696551217, + "macd_hist": 0.0034538468677465604, + "atr": 0.012856115408039817, + "adx": 27.89133838050565 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-30 07:45:00", + "exit_time": "2025-04-30 12:30:00", + "entry_price": 2.219022, + "exit_price": 2.205478, + "quantity": 3051.6, + "sl": 2.205478, + "tp": 2.255138, + "gross_pnl": -41.329913, + "entry_fee": 2.708627, + "exit_fee": 2.692095, + "net_pnl": -46.730634, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.11711659050469, + "macd_hist": -0.0028131165153663005, + "atr": 0.00902912407526822, + "adx": 27.47479838290321 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-30 13:15:00", + "exit_time": "2025-04-30 13:30:00", + "entry_price": 2.173717, + "exit_price": 2.152862, + "quantity": 3374.3, + "sl": 2.152862, + "tp": 2.229333, + "gross_pnl": -70.373501, + "entry_fee": 2.93391, + "exit_fee": 2.90576, + "net_pnl": -76.213172, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.513370415814684, + "macd_hist": -0.006240527006868588, + "atr": 0.013903822313270735, + "adx": 31.23141348514888 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-05-05 01:30:00", + "exit_time": "2025-05-05 02:15:00", + "entry_price": 2.139986, + "exit_price": 2.153598, + "quantity": 3803.3, + "sl": 2.153598, + "tp": 2.103686, + "gross_pnl": -51.77209, + "entry_fee": 3.255603, + "exit_fee": 3.276312, + "net_pnl": -58.304005, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 30.413570034116045, + "macd_hist": -0.0010637135478183844, + "atr": 0.009074941875769175, + "adx": 26.27401092812825 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-05-17 01:15:00", + "exit_time": "2025-05-17 01:45:00", + "entry_price": 2.335133, + "exit_price": 2.31116, + "quantity": 3709.9, + "sl": 2.31116, + "tp": 2.399062, + "gross_pnl": -88.937959, + "entry_fee": 3.465245, + "exit_fee": 3.42967, + "net_pnl": -95.832873, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.536979724863077, + "macd_hist": -0.004501483267526404, + "atr": 0.01598209455229851, + "adx": 51.966384578102044 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-05-18 14:30:00", + "exit_time": "2025-05-18 15:45:00", + "entry_price": 2.427557, + "exit_price": 2.442135, + "quantity": 3848.5, + "sl": 2.442135, + "tp": 2.388682, + "gross_pnl": -56.104255, + "entry_fee": 3.736982, + "exit_fee": 3.759423, + "net_pnl": -63.60066, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.26480732687115, + "macd_hist": 0.0028537582643641994, + "atr": 0.009718809144697027, + "adx": 29.42506362068419 + } + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-05-20 12:30:00", + "exit_time": "2025-05-20 17:00:00", + "entry_price": 2.330967, + "exit_price": 2.345796, + "quantity": 4149.8, + "sl": 2.345796, + "tp": 2.291423, + "gross_pnl": -61.53732, + "entry_fee": 3.869219, + "exit_fee": 3.893833, + "net_pnl": -69.300372, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.11852309537045, + "macd_hist": -0.0003174284393988123, + "atr": 0.009885989673296352, + "adx": 34.742890662078324 + } + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-05-23 12:15:00", + "exit_time": "2025-05-23 22:45:00", + "entry_price": 2.340634, + "exit_price": 2.313574, + "quantity": 4240.1, + "sl": 2.313574, + "tp": 2.412795, + "gross_pnl": -114.738573, + "entry_fee": 3.969809, + "exit_fee": 3.923914, + "net_pnl": -122.632296, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 18.100631569972105, + "macd_hist": -0.011460760086984913, + "atr": 0.018040230723781962, + "adx": 33.73789035029933 + } + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (31.6%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (31.6%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (39.3%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 10.0건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.93)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/ml_comparison_20260321_195840.json b/results/xrpusdt/ml_comparison_20260321_195840.json new file mode 100644 index 0000000..a171ea3 --- /dev/null +++ b/results/xrpusdt/ml_comparison_20260321_195840.json @@ -0,0 +1,45 @@ +{ + "timestamp": "2026-03-21T19:58:40.087843", + "symbols": [ + "XRPUSDT" + ], + "ml_off": { + "total_trades": 362, + "total_pnl": -1076.1058, + "return_pct": -107.61, + "win_rate": 36.74, + "avg_win": 30.9612, + "avg_loss": -22.681, + "payoff_ratio": 1.37, + "max_consecutive_losses": 8, + "profit_factor": 0.79, + "max_drawdown_pct": 117.67, + "sharpe_ratio": -18.8, + "total_fees": 1094.0448, + "close_reasons": { + "STOP_LOSS": 202, + "TAKE_PROFIT": 74, + "REVERSE_SIGNAL": 84, + "END_OF_DATA": 2 + } + }, + "ml_on": { + "total_trades": 14, + "total_pnl": 2.0995, + "return_pct": 0.21, + "win_rate": 35.71, + "avg_win": 38.8329, + "avg_loss": -21.3406, + "payoff_ratio": 1.82, + "max_consecutive_losses": 6, + "profit_factor": 1.01, + "max_drawdown_pct": 11.88, + "sharpe_ratio": 0.74, + "total_fees": 54.5343, + "close_reasons": { + "STOP_LOSS": 7, + "REVERSE_SIGNAL": 4, + "TAKE_PROFIT": 3 + } + } +} \ No newline at end of file diff --git a/results/xrpusdt/ml_comparison_20260321_200332.json b/results/xrpusdt/ml_comparison_20260321_200332.json new file mode 100644 index 0000000..fe04d50 --- /dev/null +++ b/results/xrpusdt/ml_comparison_20260321_200332.json @@ -0,0 +1,44 @@ +{ + "timestamp": "2026-03-21T20:03:32.712401", + "symbols": [ + "XRPUSDT" + ], + "ml_off": { + "total_trades": 53, + "total_pnl": 121.6625, + "return_pct": 12.17, + "win_rate": 43.4, + "avg_win": 39.0003, + "avg_loss": -25.8448, + "payoff_ratio": 1.51, + "max_consecutive_losses": 8, + "profit_factor": 1.16, + "max_drawdown_pct": 25.63, + "sharpe_ratio": 11.94, + "total_fees": 181.3167, + "close_reasons": { + "STOP_LOSS": 30, + "TAKE_PROFIT": 15, + "REVERSE_SIGNAL": 8 + } + }, + "ml_on": { + "total_trades": 40, + "total_pnl": -256.2189, + "return_pct": -25.62, + "win_rate": 35.0, + "avg_win": 44.2545, + "avg_loss": -33.6839, + "payoff_ratio": 1.31, + "max_consecutive_losses": 11, + "profit_factor": 0.71, + "max_drawdown_pct": 36.87, + "sharpe_ratio": -27.75, + "total_fees": 151.8982, + "close_reasons": { + "STOP_LOSS": 21, + "REVERSE_SIGNAL": 10, + "TAKE_PROFIT": 9 + } + } +} \ No newline at end of file diff --git a/results/xrpusdt/strategy_sweep_20260329_142440.json b/results/xrpusdt/strategy_sweep_20260329_142440.json new file mode 100644 index 0000000..6177257 --- /dev/null +++ b/results/xrpusdt/strategy_sweep_20260329_142440.json @@ -0,0 +1,8243 @@ +[ + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 16.558, + "return_pct": 1.66, + "win_rate": 100.0, + "avg_win": 16.558, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0086, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 16.558, + "return_pct": 1.66, + "win_rate": 100.0, + "avg_win": 16.558, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0086, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 26.8373, + "return_pct": 2.68, + "win_rate": 100.0, + "avg_win": 26.8373, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0128, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 26.8373, + "return_pct": 2.68, + "win_rate": 100.0, + "avg_win": 26.8373, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0128, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 37.1165, + "return_pct": 3.71, + "win_rate": 100.0, + "avg_win": 37.1165, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0169, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": 37.1165, + "return_pct": 3.71, + "win_rate": 100.0, + "avg_win": 37.1165, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 4.0169, + "close_reasons": { + "TAKE_PROFIT": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": 691.6443, + "return_pct": 69.16, + "win_rate": 62.5, + "avg_win": 53.0215, + "avg_loss": -42.2595, + "payoff_ratio": 1.25, + "max_consecutive_losses": 3, + "profit_factor": 2.09, + "max_drawdown_pct": 15.66, + "sharpe_ratio": 60.16, + "total_fees": 153.6844, + "close_reasons": { + "STOP_LOSS": 14, + "TAKE_PROFIT": 25, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": 555.0776, + "return_pct": 55.51, + "win_rate": 55.0, + "avg_win": 51.204, + "avg_loss": -31.745, + "payoff_ratio": 1.61, + "max_consecutive_losses": 3, + "profit_factor": 1.97, + "max_drawdown_pct": 10.79, + "sharpe_ratio": 55.49, + "total_fees": 154.9577, + "close_reasons": { + "STOP_LOSS": 17, + "TAKE_PROFIT": 22, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 57, + "total_pnl": 768.4756, + "return_pct": 76.85, + "win_rate": 59.65, + "avg_win": 51.8915, + "avg_loss": -43.2972, + "payoff_ratio": 1.2, + "max_consecutive_losses": 4, + "profit_factor": 1.77, + "max_drawdown_pct": 17.87, + "sharpe_ratio": 47.17, + "total_fees": 217.0079, + "close_reasons": { + "STOP_LOSS": 22, + "TAKE_PROFIT": 34, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 57, + "total_pnl": 590.6128, + "return_pct": 59.06, + "win_rate": 50.88, + "avg_win": 50.9724, + "avg_loss": -31.6995, + "payoff_ratio": 1.61, + "max_consecutive_losses": 4, + "profit_factor": 1.67, + "max_drawdown_pct": 15.55, + "sharpe_ratio": 42.04, + "total_fees": 219.0322, + "close_reasons": { + "STOP_LOSS": 27, + "TAKE_PROFIT": 29, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 37, + "total_pnl": 493.4331, + "return_pct": 49.34, + "win_rate": 64.86, + "avg_win": 52.4064, + "avg_loss": -58.7938, + "payoff_ratio": 0.89, + "max_consecutive_losses": 3, + "profit_factor": 1.65, + "max_drawdown_pct": 22.97, + "sharpe_ratio": 41.21, + "total_fees": 141.797, + "close_reasons": { + "TAKE_PROFIT": 24, + "STOP_LOSS": 13 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 53, + "total_pnl": 914.7723, + "return_pct": 91.48, + "win_rate": 47.17, + "avg_win": 99.7532, + "avg_loss": -56.3949, + "payoff_ratio": 1.77, + "max_consecutive_losses": 4, + "profit_factor": 1.58, + "max_drawdown_pct": 30.86, + "sharpe_ratio": 35.41, + "total_fees": 194.1886, + "close_reasons": { + "TAKE_PROFIT": 24, + "STOP_LOSS": 28, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 54, + "total_pnl": 606.8242, + "return_pct": 60.68, + "win_rate": 64.81, + "avg_win": 50.7016, + "avg_loss": -61.4596, + "payoff_ratio": 0.82, + "max_consecutive_losses": 3, + "profit_factor": 1.52, + "max_drawdown_pct": 23.69, + "sharpe_ratio": 34.35, + "total_fees": 205.3419, + "close_reasons": { + "TAKE_PROFIT": 35, + "STOP_LOSS": 19 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 37, + "total_pnl": 578.0714, + "return_pct": 57.81, + "win_rate": 43.24, + "avg_win": 109.9938, + "avg_loss": -56.2776, + "payoff_ratio": 1.95, + "max_consecutive_losses": 5, + "profit_factor": 1.49, + "max_drawdown_pct": 30.52, + "sharpe_ratio": 30.36, + "total_fees": 137.651, + "close_reasons": { + "TAKE_PROFIT": 16, + "STOP_LOSS": 21 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 55, + "total_pnl": 611.7818, + "return_pct": 61.18, + "win_rate": 38.18, + "avg_win": 98.2928, + "avg_loss": -42.7167, + "payoff_ratio": 2.3, + "max_consecutive_losses": 7, + "profit_factor": 1.42, + "max_drawdown_pct": 26.1, + "sharpe_ratio": 25.74, + "total_fees": 206.8161, + "close_reasons": { + "STOP_LOSS": 33, + "TAKE_PROFIT": 20, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 53, + "total_pnl": 513.6174, + "return_pct": 51.36, + "win_rate": 52.83, + "avg_win": 71.6708, + "avg_loss": -59.7266, + "payoff_ratio": 1.2, + "max_consecutive_losses": 4, + "profit_factor": 1.34, + "max_drawdown_pct": 31.34, + "sharpe_ratio": 24.01, + "total_fees": 197.6821, + "close_reasons": { + "TAKE_PROFIT": 27, + "STOP_LOSS": 25, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 88, + "total_pnl": 399.762, + "return_pct": 39.98, + "win_rate": 44.32, + "avg_win": 50.1106, + "avg_loss": -31.7255, + "payoff_ratio": 1.58, + "max_consecutive_losses": 6, + "profit_factor": 1.26, + "max_drawdown_pct": 23.94, + "sharpe_ratio": 18.99, + "total_fees": 337.9087, + "close_reasons": { + "STOP_LOSS": 48, + "TAKE_PROFIT": 39, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 76, + "total_pnl": 645.5248, + "return_pct": 64.55, + "win_rate": 43.42, + "avg_win": 94.0865, + "avg_loss": -57.1937, + "payoff_ratio": 1.65, + "max_consecutive_losses": 5, + "profit_factor": 1.26, + "max_drawdown_pct": 33.49, + "sharpe_ratio": 18.84, + "total_fees": 282.241, + "close_reasons": { + "TAKE_PROFIT": 31, + "STOP_LOSS": 41, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 85, + "total_pnl": 436.6287, + "return_pct": 43.66, + "win_rate": 51.76, + "avg_win": 50.1857, + "avg_loss": -43.2084, + "payoff_ratio": 1.16, + "max_consecutive_losses": 5, + "profit_factor": 1.25, + "max_drawdown_pct": 24.15, + "sharpe_ratio": 18.71, + "total_fees": 324.7782, + "close_reasons": { + "STOP_LOSS": 40, + "TAKE_PROFIT": 44, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": 263.9663, + "return_pct": 26.4, + "win_rate": 35.0, + "avg_win": 102.6348, + "avg_loss": -45.1124, + "payoff_ratio": 2.28, + "max_consecutive_losses": 5, + "profit_factor": 1.23, + "max_drawdown_pct": 35.63, + "sharpe_ratio": 14.75, + "total_fees": 152.127, + "close_reasons": { + "STOP_LOSS": 25, + "TAKE_PROFIT": 14, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 37, + "total_pnl": 259.0447, + "return_pct": 25.9, + "win_rate": 48.65, + "avg_win": 77.8488, + "avg_loss": -60.1176, + "payoff_ratio": 1.29, + "max_consecutive_losses": 4, + "profit_factor": 1.23, + "max_drawdown_pct": 33.44, + "sharpe_ratio": 16.47, + "total_fees": 140.2848, + "close_reasons": { + "TAKE_PROFIT": 18, + "STOP_LOSS": 19 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 55, + "total_pnl": 301.5913, + "return_pct": 30.16, + "win_rate": 43.64, + "avg_win": 69.9749, + "avg_loss": -44.4454, + "payoff_ratio": 1.57, + "max_consecutive_losses": 7, + "profit_factor": 1.22, + "max_drawdown_pct": 31.91, + "sharpe_ratio": 15.61, + "total_fees": 209.6941, + "close_reasons": { + "STOP_LOSS": 30, + "TAKE_PROFIT": 23, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 61, + "total_pnl": 215.7029, + "return_pct": 21.57, + "win_rate": 42.62, + "avg_win": 52.3659, + "avg_loss": -32.7374, + "payoff_ratio": 1.6, + "max_consecutive_losses": 5, + "profit_factor": 1.19, + "max_drawdown_pct": 23.66, + "sharpe_ratio": 14.1, + "total_fees": 236.082, + "close_reasons": { + "STOP_LOSS": 34, + "TAKE_PROFIT": 26, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 54, + "total_pnl": 243.4796, + "return_pct": 24.35, + "win_rate": 55.56, + "avg_win": 53.8952, + "avg_loss": -57.224, + "payoff_ratio": 0.94, + "max_consecutive_losses": 4, + "profit_factor": 1.18, + "max_drawdown_pct": 41.25, + "sharpe_ratio": 13.59, + "total_fees": 204.8468, + "close_reasons": { + "TAKE_PROFIT": 30, + "STOP_LOSS": 24 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 78, + "total_pnl": 349.815, + "return_pct": 34.98, + "win_rate": 34.62, + "avg_win": 91.8363, + "avg_loss": -41.7601, + "payoff_ratio": 2.2, + "max_consecutive_losses": 9, + "profit_factor": 1.16, + "max_drawdown_pct": 38.07, + "sharpe_ratio": 11.79, + "total_fees": 290.793, + "close_reasons": { + "STOP_LOSS": 48, + "TAKE_PROFIT": 25, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 81, + "total_pnl": 257.7042, + "return_pct": 25.77, + "win_rate": 48.15, + "avg_win": 52.6925, + "avg_loss": -42.793, + "payoff_ratio": 1.23, + "max_consecutive_losses": 5, + "profit_factor": 1.14, + "max_drawdown_pct": 31.61, + "sharpe_ratio": 10.82, + "total_fees": 305.2528, + "close_reasons": { + "STOP_LOSS": 39, + "TAKE_PROFIT": 39, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 79, + "total_pnl": 267.8766, + "return_pct": 26.79, + "win_rate": 53.16, + "avg_win": 52.8605, + "avg_loss": -52.7639, + "payoff_ratio": 1.0, + "max_consecutive_losses": 4, + "profit_factor": 1.14, + "max_drawdown_pct": 31.21, + "sharpe_ratio": 10.5, + "total_fees": 294.189, + "close_reasons": { + "TAKE_PROFIT": 42, + "STOP_LOSS": 36, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 56, + "total_pnl": 168.0683, + "return_pct": 16.81, + "win_rate": 28.57, + "avg_win": 89.4745, + "avg_loss": -31.5881, + "payoff_ratio": 2.83, + "max_consecutive_losses": 8, + "profit_factor": 1.13, + "max_drawdown_pct": 31.68, + "sharpe_ratio": 9.19, + "total_fees": 212.7298, + "close_reasons": { + "STOP_LOSS": 39, + "TAKE_PROFIT": 15, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 123, + "total_pnl": 221.9974, + "return_pct": 22.2, + "win_rate": 41.46, + "avg_win": 48.8674, + "avg_loss": -31.5311, + "payoff_ratio": 1.55, + "max_consecutive_losses": 6, + "profit_factor": 1.1, + "max_drawdown_pct": 32.44, + "sharpe_ratio": 7.75, + "total_fees": 471.9279, + "close_reasons": { + "STOP_LOSS": 71, + "TAKE_PROFIT": 51, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 59, + "total_pnl": 134.9315, + "return_pct": 13.49, + "win_rate": 49.15, + "avg_win": 51.6565, + "avg_loss": -45.4369, + "payoff_ratio": 1.14, + "max_consecutive_losses": 5, + "profit_factor": 1.1, + "max_drawdown_pct": 42.62, + "sharpe_ratio": 7.77, + "total_fees": 223.9877, + "close_reasons": { + "STOP_LOSS": 29, + "TAKE_PROFIT": 29, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 76, + "total_pnl": 240.2924, + "return_pct": 24.03, + "win_rate": 38.16, + "avg_win": 92.8767, + "avg_loss": -52.1943, + "payoff_ratio": 1.78, + "max_consecutive_losses": 9, + "profit_factor": 1.1, + "max_drawdown_pct": 64.79, + "sharpe_ratio": 7.28, + "total_fees": 269.4494, + "close_reasons": { + "TAKE_PROFIT": 26, + "STOP_LOSS": 46, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 55, + "total_pnl": 192.6767, + "return_pct": 19.27, + "win_rate": 36.36, + "avg_win": 109.5585, + "avg_loss": -57.0998, + "payoff_ratio": 1.92, + "max_consecutive_losses": 6, + "profit_factor": 1.1, + "max_drawdown_pct": 65.1, + "sharpe_ratio": 7.11, + "total_fees": 202.2632, + "close_reasons": { + "TAKE_PROFIT": 20, + "STOP_LOSS": 35 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 144, + "total_pnl": 224.636, + "return_pct": 22.46, + "win_rate": 40.28, + "avg_win": 45.5404, + "avg_loss": -28.1013, + "payoff_ratio": 1.62, + "max_consecutive_losses": 9, + "profit_factor": 1.09, + "max_drawdown_pct": 24.39, + "sharpe_ratio": 7.21, + "total_fees": 556.4555, + "close_reasons": { + "STOP_LOSS": 86, + "TAKE_PROFIT": 58 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 111, + "total_pnl": 250.3516, + "return_pct": 25.04, + "win_rate": 31.53, + "avg_win": 89.9413, + "avg_loss": -38.1262, + "payoff_ratio": 2.36, + "max_consecutive_losses": 7, + "profit_factor": 1.09, + "max_drawdown_pct": 34.48, + "sharpe_ratio": 6.41, + "total_fees": 414.2152, + "close_reasons": { + "STOP_LOSS": 74, + "TAKE_PROFIT": 33, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 104, + "total_pnl": 264.3806, + "return_pct": 26.44, + "win_rate": 37.5, + "avg_win": 89.7087, + "avg_loss": -49.7578, + "payoff_ratio": 1.8, + "max_consecutive_losses": 5, + "profit_factor": 1.08, + "max_drawdown_pct": 39.65, + "sharpe_ratio": 6.29, + "total_fees": 386.5322, + "close_reasons": { + "TAKE_PROFIT": 38, + "STOP_LOSS": 62, + "REVERSE_SIGNAL": 3, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 81, + "total_pnl": 142.2657, + "return_pct": 14.23, + "win_rate": 38.27, + "avg_win": 71.6083, + "avg_loss": -41.5519, + "payoff_ratio": 1.72, + "max_consecutive_losses": 9, + "profit_factor": 1.07, + "max_drawdown_pct": 43.44, + "sharpe_ratio": 5.25, + "total_fees": 301.5857, + "close_reasons": { + "STOP_LOSS": 47, + "TAKE_PROFIT": 30, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 81, + "total_pnl": 145.0642, + "return_pct": 14.51, + "win_rate": 58.02, + "avg_win": 47.1831, + "avg_loss": -60.9571, + "payoff_ratio": 0.77, + "max_consecutive_losses": 3, + "profit_factor": 1.07, + "max_drawdown_pct": 34.68, + "sharpe_ratio": 5.71, + "total_fees": 305.707, + "close_reasons": { + "TAKE_PROFIT": 47, + "STOP_LOSS": 34 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 93, + "total_pnl": 82.8998, + "return_pct": 8.29, + "win_rate": 39.78, + "avg_win": 51.0455, + "avg_loss": -32.2461, + "payoff_ratio": 1.58, + "max_consecutive_losses": 6, + "profit_factor": 1.05, + "max_drawdown_pct": 38.42, + "sharpe_ratio": 3.67, + "total_fees": 355.6438, + "close_reasons": { + "STOP_LOSS": 55, + "TAKE_PROFIT": 37, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": 45.966, + "return_pct": 4.6, + "win_rate": 27.5, + "avg_win": 91.5955, + "avg_loss": -33.1581, + "payoff_ratio": 2.76, + "max_consecutive_losses": 6, + "profit_factor": 1.05, + "max_drawdown_pct": 27.01, + "sharpe_ratio": 3.48, + "total_fees": 154.6448, + "close_reasons": { + "STOP_LOSS": 28, + "TAKE_PROFIT": 11, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 137, + "total_pnl": 80.4076, + "return_pct": 8.04, + "win_rate": 25.55, + "avg_win": 75.3719, + "avg_loss": -25.0746, + "payoff_ratio": 3.01, + "max_consecutive_losses": 11, + "profit_factor": 1.03, + "max_drawdown_pct": 40.13, + "sharpe_ratio": 2.19, + "total_fees": 491.8008, + "close_reasons": { + "STOP_LOSS": 101, + "REVERSE_SIGNAL": 5, + "TAKE_PROFIT": 31 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 130, + "total_pnl": 48.4624, + "return_pct": 4.85, + "win_rate": 24.62, + "avg_win": 85.3962, + "avg_loss": -27.39, + "payoff_ratio": 3.12, + "max_consecutive_losses": 10, + "profit_factor": 1.02, + "max_drawdown_pct": 42.94, + "sharpe_ratio": 1.28, + "total_fees": 495.0432, + "close_reasons": { + "STOP_LOSS": 97, + "TAKE_PROFIT": 30, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": 21.7956, + "return_pct": 2.18, + "win_rate": 40.0, + "avg_win": 72.1345, + "avg_loss": -47.1815, + "payoff_ratio": 1.53, + "max_consecutive_losses": 5, + "profit_factor": 1.02, + "max_drawdown_pct": 38.81, + "sharpe_ratio": 1.49, + "total_fees": 153.7866, + "close_reasons": { + "STOP_LOSS": 23, + "TAKE_PROFIT": 16, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 56, + "total_pnl": 9.815, + "return_pct": 0.98, + "win_rate": 33.93, + "avg_win": 64.0357, + "avg_loss": -32.6179, + "payoff_ratio": 1.96, + "max_consecutive_losses": 8, + "profit_factor": 1.01, + "max_drawdown_pct": 38.5, + "sharpe_ratio": 0.64, + "total_fees": 215.0366, + "close_reasons": { + "STOP_LOSS": 36, + "TAKE_PROFIT": 18, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 87, + "total_pnl": 31.1497, + "return_pct": 3.11, + "win_rate": 32.18, + "avg_win": 90.9298, + "avg_loss": -42.6251, + "payoff_ratio": 2.13, + "max_consecutive_losses": 11, + "profit_factor": 1.01, + "max_drawdown_pct": 59.34, + "sharpe_ratio": 0.92, + "total_fees": 317.4154, + "close_reasons": { + "STOP_LOSS": 56, + "TAKE_PROFIT": 24, + "REVERSE_SIGNAL": 7 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 79, + "total_pnl": -2.4719, + "return_pct": -0.25, + "win_rate": 45.57, + "avg_win": 67.8593, + "avg_loss": -56.8699, + "payoff_ratio": 1.19, + "max_consecutive_losses": 5, + "profit_factor": 1.0, + "max_drawdown_pct": 46.35, + "sharpe_ratio": -0.08, + "total_fees": 293.7491, + "close_reasons": { + "TAKE_PROFIT": 35, + "STOP_LOSS": 41, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 81, + "total_pnl": -18.6973, + "return_pct": -1.87, + "win_rate": 38.27, + "avg_win": 50.3995, + "avg_loss": -31.6216, + "payoff_ratio": 1.59, + "max_consecutive_losses": 5, + "profit_factor": 0.99, + "max_drawdown_pct": 25.1, + "sharpe_ratio": -0.96, + "total_fees": 310.3784, + "close_reasons": { + "STOP_LOSS": 49, + "TAKE_PROFIT": 31, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 115, + "total_pnl": -39.3194, + "return_pct": -3.93, + "win_rate": 35.65, + "avg_win": 68.6496, + "avg_loss": -38.567, + "payoff_ratio": 1.78, + "max_consecutive_losses": 7, + "profit_factor": 0.99, + "max_drawdown_pct": 38.59, + "sharpe_ratio": -1.1, + "total_fees": 432.9382, + "close_reasons": { + "STOP_LOSS": 72, + "TAKE_PROFIT": 40, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 90, + "total_pnl": -72.5942, + "return_pct": -7.26, + "win_rate": 46.67, + "avg_win": 49.906, + "avg_loss": -45.1801, + "payoff_ratio": 1.1, + "max_consecutive_losses": 6, + "profit_factor": 0.97, + "max_drawdown_pct": 59.16, + "sharpe_ratio": -2.82, + "total_fees": 339.2707, + "close_reasons": { + "STOP_LOSS": 47, + "TAKE_PROFIT": 42, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 157, + "total_pnl": -119.561, + "return_pct": -11.96, + "win_rate": 34.39, + "avg_win": 74.5678, + "avg_loss": -40.2546, + "payoff_ratio": 1.85, + "max_consecutive_losses": 7, + "profit_factor": 0.97, + "max_drawdown_pct": 64.74, + "sharpe_ratio": -2.35, + "total_fees": 575.8616, + "close_reasons": { + "STOP_LOSS": 99, + "TAKE_PROFIT": 43, + "REVERSE_SIGNAL": 14, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 57, + "total_pnl": -54.1909, + "return_pct": -5.42, + "win_rate": 29.82, + "avg_win": 99.3165, + "avg_loss": -43.5643, + "payoff_ratio": 2.28, + "max_consecutive_losses": 9, + "profit_factor": 0.97, + "max_drawdown_pct": 70.28, + "sharpe_ratio": -2.28, + "total_fees": 211.2716, + "close_reasons": { + "STOP_LOSS": 39, + "TAKE_PROFIT": 16, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 83, + "total_pnl": -102.3689, + "return_pct": -10.24, + "win_rate": 53.01, + "avg_win": 49.4075, + "avg_loss": -58.3666, + "payoff_ratio": 0.85, + "max_consecutive_losses": 4, + "profit_factor": 0.96, + "max_drawdown_pct": 57.83, + "sharpe_ratio": -3.79, + "total_fees": 311.4902, + "close_reasons": { + "TAKE_PROFIT": 44, + "STOP_LOSS": 39 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 76, + "total_pnl": -101.9726, + "return_pct": -10.2, + "win_rate": 43.42, + "avg_win": 67.175, + "avg_loss": -53.9244, + "payoff_ratio": 1.25, + "max_consecutive_losses": 9, + "profit_factor": 0.96, + "max_drawdown_pct": 74.93, + "sharpe_ratio": -3.65, + "total_fees": 271.2055, + "close_reasons": { + "TAKE_PROFIT": 32, + "STOP_LOSS": 42, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 103, + "total_pnl": -122.553, + "return_pct": -12.26, + "win_rate": 24.27, + "avg_win": 87.6984, + "avg_loss": -29.6797, + "payoff_ratio": 2.95, + "max_consecutive_losses": 12, + "profit_factor": 0.95, + "max_drawdown_pct": 39.87, + "sharpe_ratio": -3.97, + "total_fees": 395.1212, + "close_reasons": { + "STOP_LOSS": 77, + "TAKE_PROFIT": 23, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 84, + "total_pnl": -153.3459, + "return_pct": -15.33, + "win_rate": 29.76, + "avg_win": 67.2804, + "avg_loss": -31.1077, + "payoff_ratio": 2.16, + "max_consecutive_losses": 10, + "profit_factor": 0.92, + "max_drawdown_pct": 47.26, + "sharpe_ratio": -6.83, + "total_fees": 321.5675, + "close_reasons": { + "STOP_LOSS": 57, + "TAKE_PROFIT": 24, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 72, + "total_pnl": -140.2764, + "return_pct": -14.03, + "win_rate": 25.0, + "avg_win": 87.5552, + "avg_loss": -31.7828, + "payoff_ratio": 2.75, + "max_consecutive_losses": 10, + "profit_factor": 0.92, + "max_drawdown_pct": 45.29, + "sharpe_ratio": -6.31, + "total_fees": 272.8423, + "close_reasons": { + "STOP_LOSS": 53, + "TAKE_PROFIT": 16, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 40, + "total_pnl": -85.5353, + "return_pct": -8.55, + "win_rate": 32.5, + "avg_win": 64.3857, + "avg_loss": -34.1685, + "payoff_ratio": 1.88, + "max_consecutive_losses": 6, + "profit_factor": 0.91, + "max_drawdown_pct": 33.65, + "sharpe_ratio": -7.77, + "total_fees": 155.0955, + "close_reasons": { + "STOP_LOSS": 26, + "TAKE_PROFIT": 13, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 106, + "total_pnl": -228.6082, + "return_pct": -22.86, + "win_rate": 53.77, + "avg_win": 42.2374, + "avg_loss": -53.7988, + "payoff_ratio": 0.79, + "max_consecutive_losses": 6, + "profit_factor": 0.91, + "max_drawdown_pct": 54.82, + "sharpe_ratio": -7.57, + "total_fees": 400.4561, + "close_reasons": { + "TAKE_PROFIT": 57, + "STOP_LOSS": 49 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 82, + "total_pnl": -284.8007, + "return_pct": -28.48, + "win_rate": 35.37, + "avg_win": 93.871, + "avg_loss": -56.737, + "payoff_ratio": 1.65, + "max_consecutive_losses": 6, + "profit_factor": 0.91, + "max_drawdown_pct": 88.07, + "sharpe_ratio": -7.87, + "total_fees": 298.8566, + "close_reasons": { + "TAKE_PROFIT": 28, + "STOP_LOSS": 53, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 107, + "total_pnl": -240.0487, + "return_pct": -24.0, + "win_rate": 47.66, + "avg_win": 44.3052, + "avg_loss": -44.6359, + "payoff_ratio": 0.99, + "max_consecutive_losses": 6, + "profit_factor": 0.9, + "max_drawdown_pct": 58.08, + "sharpe_ratio": -8.56, + "total_fees": 398.08, + "close_reasons": { + "STOP_LOSS": 55, + "TAKE_PROFIT": 51, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 109, + "total_pnl": -306.1893, + "return_pct": -30.62, + "win_rate": 54.13, + "avg_win": 44.786, + "avg_loss": -58.9713, + "payoff_ratio": 0.76, + "max_consecutive_losses": 4, + "profit_factor": 0.9, + "max_drawdown_pct": 63.54, + "sharpe_ratio": -9.12, + "total_fees": 406.0752, + "close_reasons": { + "TAKE_PROFIT": 59, + "STOP_LOSS": 50 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 101, + "total_pnl": -265.7054, + "return_pct": -26.57, + "win_rate": 23.76, + "avg_win": 88.4381, + "avg_loss": -31.0158, + "payoff_ratio": 2.85, + "max_consecutive_losses": 10, + "profit_factor": 0.89, + "max_drawdown_pct": 65.65, + "sharpe_ratio": -8.63, + "total_fees": 379.2391, + "close_reasons": { + "STOP_LOSS": 76, + "TAKE_PROFIT": 22, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 111, + "total_pnl": -299.4146, + "return_pct": -29.94, + "win_rate": 44.14, + "avg_win": 48.268, + "avg_loss": -42.9766, + "payoff_ratio": 1.12, + "max_consecutive_losses": 4, + "profit_factor": 0.89, + "max_drawdown_pct": 53.94, + "sharpe_ratio": -9.7, + "total_fees": 417.6837, + "close_reasons": { + "STOP_LOSS": 59, + "TAKE_PROFIT": 49, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 113, + "total_pnl": -372.2948, + "return_pct": -37.23, + "win_rate": 30.97, + "avg_win": 83.1153, + "avg_loss": -42.0683, + "payoff_ratio": 1.98, + "max_consecutive_losses": 8, + "profit_factor": 0.89, + "max_drawdown_pct": 97.06, + "sharpe_ratio": -9.13, + "total_fees": 419.3874, + "close_reasons": { + "STOP_LOSS": 75, + "TAKE_PROFIT": 30, + "REVERSE_SIGNAL": 7, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 123, + "total_pnl": -329.8999, + "return_pct": -32.99, + "win_rate": 53.66, + "avg_win": 39.5784, + "avg_loss": -51.6153, + "payoff_ratio": 0.77, + "max_consecutive_losses": 4, + "profit_factor": 0.89, + "max_drawdown_pct": 55.56, + "sharpe_ratio": -9.95, + "total_fees": 458.5482, + "close_reasons": { + "TAKE_PROFIT": 66, + "STOP_LOSS": 57 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 111, + "total_pnl": -264.8097, + "return_pct": -26.48, + "win_rate": 36.04, + "avg_win": 48.711, + "avg_loss": -31.1725, + "payoff_ratio": 1.56, + "max_consecutive_losses": 5, + "profit_factor": 0.88, + "max_drawdown_pct": 53.1, + "sharpe_ratio": -10.29, + "total_fees": 426.8649, + "close_reasons": { + "STOP_LOSS": 70, + "TAKE_PROFIT": 40, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 140, + "total_pnl": -351.1404, + "return_pct": -35.11, + "win_rate": 25.0, + "avg_win": 76.6352, + "avg_loss": -28.8892, + "payoff_ratio": 2.65, + "max_consecutive_losses": 12, + "profit_factor": 0.88, + "max_drawdown_pct": 67.26, + "sharpe_ratio": -9.03, + "total_fees": 524.1252, + "close_reasons": { + "STOP_LOSS": 104, + "REVERSE_SIGNAL": 8, + "TAKE_PROFIT": 28 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 124, + "total_pnl": -292.2055, + "return_pct": -29.22, + "win_rate": 45.97, + "avg_win": 38.8326, + "avg_loss": -37.3979, + "payoff_ratio": 1.04, + "max_consecutive_losses": 7, + "profit_factor": 0.88, + "max_drawdown_pct": 48.13, + "sharpe_ratio": -10.45, + "total_fees": 460.0702, + "close_reasons": { + "STOP_LOSS": 67, + "TAKE_PROFIT": 57 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 83, + "total_pnl": -293.4867, + "return_pct": -29.35, + "win_rate": 28.92, + "avg_win": 93.2098, + "avg_loss": -42.8902, + "payoff_ratio": 2.17, + "max_consecutive_losses": 10, + "profit_factor": 0.88, + "max_drawdown_pct": 84.87, + "sharpe_ratio": -9.17, + "total_fees": 305.2047, + "close_reasons": { + "STOP_LOSS": 58, + "TAKE_PROFIT": 22, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 55, + "total_pnl": -241.8081, + "return_pct": -24.18, + "win_rate": 40.0, + "avg_win": 77.4913, + "avg_loss": -58.9884, + "payoff_ratio": 1.31, + "max_consecutive_losses": 6, + "profit_factor": 0.88, + "max_drawdown_pct": 79.26, + "sharpe_ratio": -10.79, + "total_fees": 202.7342, + "close_reasons": { + "TAKE_PROFIT": 22, + "STOP_LOSS": 33 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 126, + "total_pnl": -508.8268, + "return_pct": -50.88, + "win_rate": 37.3, + "avg_win": 72.1034, + "avg_loss": -49.3378, + "payoff_ratio": 1.46, + "max_consecutive_losses": 5, + "profit_factor": 0.87, + "max_drawdown_pct": 96.96, + "sharpe_ratio": -11.56, + "total_fees": 460.0108, + "close_reasons": { + "TAKE_PROFIT": 44, + "STOP_LOSS": 76, + "REVERSE_SIGNAL": 6 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 137, + "total_pnl": -335.8995, + "return_pct": -33.59, + "win_rate": 35.77, + "avg_win": 41.2127, + "avg_loss": -26.765, + "payoff_ratio": 1.54, + "max_consecutive_losses": 9, + "profit_factor": 0.86, + "max_drawdown_pct": 49.11, + "sharpe_ratio": -12.53, + "total_fees": 518.2027, + "close_reasons": { + "TAKE_PROFIT": 47, + "STOP_LOSS": 88, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 104, + "total_pnl": -341.0157, + "return_pct": -34.1, + "win_rate": 23.08, + "avg_win": 85.3581, + "avg_loss": -29.8701, + "payoff_ratio": 2.86, + "max_consecutive_losses": 10, + "profit_factor": 0.86, + "max_drawdown_pct": 73.27, + "sharpe_ratio": -11.12, + "total_fees": 390.6203, + "close_reasons": { + "STOP_LOSS": 80, + "TAKE_PROFIT": 21, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 125, + "total_pnl": -469.7325, + "return_pct": -46.97, + "win_rate": 52.0, + "avg_win": 45.4368, + "avg_loss": -57.0521, + "payoff_ratio": 0.8, + "max_consecutive_losses": 6, + "profit_factor": 0.86, + "max_drawdown_pct": 69.17, + "sharpe_ratio": -12.06, + "total_fees": 458.7122, + "close_reasons": { + "TAKE_PROFIT": 65, + "STOP_LOSS": 59, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 108, + "total_pnl": -432.3631, + "return_pct": -43.24, + "win_rate": 49.07, + "avg_win": 48.4949, + "avg_loss": -54.5926, + "payoff_ratio": 0.89, + "max_consecutive_losses": 4, + "profit_factor": 0.86, + "max_drawdown_pct": 62.47, + "sharpe_ratio": -12.61, + "total_fees": 401.8513, + "close_reasons": { + "TAKE_PROFIT": 53, + "STOP_LOSS": 54, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 119, + "total_pnl": -586.6853, + "return_pct": -58.67, + "win_rate": 36.97, + "avg_win": 82.8889, + "avg_loss": -56.4506, + "payoff_ratio": 1.47, + "max_consecutive_losses": 7, + "profit_factor": 0.86, + "max_drawdown_pct": 107.27, + "sharpe_ratio": -11.88, + "total_fees": 440.4617, + "close_reasons": { + "TAKE_PROFIT": 38, + "STOP_LOSS": 72, + "REVERSE_SIGNAL": 8, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 57, + "total_pnl": -221.7378, + "return_pct": -22.17, + "win_rate": 22.81, + "avg_win": 90.839, + "avg_loss": -31.8783, + "payoff_ratio": 2.85, + "max_consecutive_losses": 9, + "profit_factor": 0.84, + "max_drawdown_pct": 52.16, + "sharpe_ratio": -12.42, + "total_fees": 216.3761, + "close_reasons": { + "STOP_LOSS": 43, + "TAKE_PROFIT": 12, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 119, + "total_pnl": -450.0582, + "return_pct": -45.01, + "win_rate": 44.54, + "avg_win": 43.6338, + "avg_loss": -41.8583, + "payoff_ratio": 1.04, + "max_consecutive_losses": 5, + "profit_factor": 0.84, + "max_drawdown_pct": 56.35, + "sharpe_ratio": -14.49, + "total_fees": 441.6489, + "close_reasons": { + "STOP_LOSS": 65, + "TAKE_PROFIT": 53, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 137, + "total_pnl": -424.1177, + "return_pct": -42.41, + "win_rate": 28.47, + "avg_win": 53.7975, + "avg_loss": -25.7369, + "payoff_ratio": 2.09, + "max_consecutive_losses": 10, + "profit_factor": 0.83, + "max_drawdown_pct": 56.01, + "sharpe_ratio": -14.34, + "total_fees": 508.2193, + "close_reasons": { + "STOP_LOSS": 97, + "TAKE_PROFIT": 37, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 78, + "total_pnl": -355.7433, + "return_pct": -35.57, + "win_rate": 34.62, + "avg_win": 66.115, + "avg_loss": -41.9774, + "payoff_ratio": 1.58, + "max_consecutive_losses": 11, + "profit_factor": 0.83, + "max_drawdown_pct": 78.89, + "sharpe_ratio": -14.44, + "total_fees": 283.6497, + "close_reasons": { + "STOP_LOSS": 48, + "TAKE_PROFIT": 25, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 128, + "total_pnl": -552.832, + "return_pct": -55.28, + "win_rate": 28.91, + "avg_win": 73.3454, + "avg_loss": -35.8968, + "payoff_ratio": 2.04, + "max_consecutive_losses": 7, + "profit_factor": 0.83, + "max_drawdown_pct": 81.83, + "sharpe_ratio": -14.63, + "total_fees": 469.0881, + "close_reasons": { + "STOP_LOSS": 88, + "TAKE_PROFIT": 34, + "REVERSE_SIGNAL": 6 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 104, + "total_pnl": -618.5057, + "return_pct": -61.85, + "win_rate": 36.54, + "avg_win": 82.1105, + "avg_loss": -56.647, + "payoff_ratio": 1.45, + "max_consecutive_losses": 6, + "profit_factor": 0.83, + "max_drawdown_pct": 98.45, + "sharpe_ratio": -14.85, + "total_fees": 378.5072, + "close_reasons": { + "TAKE_PROFIT": 35, + "STOP_LOSS": 64, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 119, + "total_pnl": -488.9607, + "return_pct": -48.9, + "win_rate": 27.73, + "avg_win": 62.904, + "avg_loss": -29.8232, + "payoff_ratio": 2.11, + "max_consecutive_losses": 7, + "profit_factor": 0.81, + "max_drawdown_pct": 70.17, + "sharpe_ratio": -16.88, + "total_fees": 447.0218, + "close_reasons": { + "STOP_LOSS": 84, + "TAKE_PROFIT": 31, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 145, + "total_pnl": -574.6967, + "return_pct": -57.47, + "win_rate": 44.83, + "avg_win": 37.8157, + "avg_loss": -37.909, + "payoff_ratio": 1.0, + "max_consecutive_losses": 9, + "profit_factor": 0.81, + "max_drawdown_pct": 65.99, + "sharpe_ratio": -17.64, + "total_fees": 539.6219, + "close_reasons": { + "TAKE_PROFIT": 63, + "STOP_LOSS": 78, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 152, + "total_pnl": -752.8444, + "return_pct": -75.28, + "win_rate": 36.18, + "avg_win": 56.3712, + "avg_loss": -39.7243, + "payoff_ratio": 1.42, + "max_consecutive_losses": 7, + "profit_factor": 0.8, + "max_drawdown_pct": 88.98, + "sharpe_ratio": -17.89, + "total_fees": 558.2065, + "close_reasons": { + "STOP_LOSS": 93, + "TAKE_PROFIT": 51, + "REVERSE_SIGNAL": 7, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 105, + "total_pnl": -655.0805, + "return_pct": -65.51, + "win_rate": 40.95, + "avg_win": 59.5686, + "avg_loss": -51.8795, + "payoff_ratio": 1.15, + "max_consecutive_losses": 6, + "profit_factor": 0.8, + "max_drawdown_pct": 83.08, + "sharpe_ratio": -19.32, + "total_fees": 390.5435, + "close_reasons": { + "TAKE_PROFIT": 43, + "STOP_LOSS": 60, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 132, + "total_pnl": -533.2545, + "return_pct": -53.33, + "win_rate": 26.52, + "avg_win": 57.9727, + "avg_loss": -26.4154, + "payoff_ratio": 2.19, + "max_consecutive_losses": 9, + "profit_factor": 0.79, + "max_drawdown_pct": 71.81, + "sharpe_ratio": -18.09, + "total_fees": 499.389, + "close_reasons": { + "STOP_LOSS": 96, + "TAKE_PROFIT": 34, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 77, + "total_pnl": -429.3133, + "return_pct": -42.93, + "win_rate": 20.78, + "avg_win": 92.6443, + "avg_loss": -31.3381, + "payoff_ratio": 2.96, + "max_consecutive_losses": 11, + "profit_factor": 0.78, + "max_drawdown_pct": 77.31, + "sharpe_ratio": -18.11, + "total_fees": 288.6862, + "close_reasons": { + "STOP_LOSS": 61, + "TAKE_PROFIT": 15, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 76, + "total_pnl": -402.4364, + "return_pct": -40.24, + "win_rate": 22.37, + "avg_win": 82.4018, + "avg_loss": -30.5639, + "payoff_ratio": 2.7, + "max_consecutive_losses": 16, + "profit_factor": 0.78, + "max_drawdown_pct": 66.66, + "sharpe_ratio": -18.37, + "total_fees": 282.2704, + "close_reasons": { + "STOP_LOSS": 58, + "TAKE_PROFIT": 14, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 119, + "total_pnl": -715.6002, + "return_pct": -71.56, + "win_rate": 35.29, + "avg_win": 60.7114, + "avg_loss": -42.4088, + "payoff_ratio": 1.43, + "max_consecutive_losses": 7, + "profit_factor": 0.78, + "max_drawdown_pct": 112.79, + "sharpe_ratio": -19.96, + "total_fees": 442.3848, + "close_reasons": { + "STOP_LOSS": 74, + "TAKE_PROFIT": 38, + "REVERSE_SIGNAL": 6, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 99, + "total_pnl": -639.5341, + "return_pct": -63.95, + "win_rate": 28.28, + "avg_win": 79.1116, + "avg_loss": -40.2064, + "payoff_ratio": 1.97, + "max_consecutive_losses": 14, + "profit_factor": 0.78, + "max_drawdown_pct": 100.22, + "sharpe_ratio": -20.18, + "total_fees": 360.7262, + "close_reasons": { + "STOP_LOSS": 68, + "TAKE_PROFIT": 25, + "REVERSE_SIGNAL": 6 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 125, + "total_pnl": -886.4186, + "return_pct": -88.64, + "win_rate": 41.6, + "avg_win": 53.2676, + "avg_loss": -50.0868, + "payoff_ratio": 1.06, + "max_consecutive_losses": 7, + "profit_factor": 0.76, + "max_drawdown_pct": 90.71, + "sharpe_ratio": -23.58, + "total_fees": 458.1441, + "close_reasons": { + "TAKE_PROFIT": 52, + "STOP_LOSS": 70, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 82, + "total_pnl": -705.2883, + "return_pct": -70.53, + "win_rate": 40.24, + "avg_win": 66.5053, + "avg_loss": -59.1829, + "payoff_ratio": 1.12, + "max_consecutive_losses": 6, + "profit_factor": 0.76, + "max_drawdown_pct": 106.01, + "sharpe_ratio": -22.85, + "total_fees": 301.0918, + "close_reasons": { + "TAKE_PROFIT": 32, + "STOP_LOSS": 49, + "REVERSE_SIGNAL": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 135, + "total_pnl": -1089.3869, + "return_pct": -108.94, + "win_rate": 37.04, + "avg_win": 70.8371, + "avg_loss": -54.4852, + "payoff_ratio": 1.3, + "max_consecutive_losses": 7, + "profit_factor": 0.76, + "max_drawdown_pct": 107.39, + "sharpe_ratio": -22.68, + "total_fees": 488.8106, + "close_reasons": { + "TAKE_PROFIT": 44, + "REVERSE_SIGNAL": 9, + "STOP_LOSS": 82 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 57, + "total_pnl": -459.2486, + "return_pct": -45.92, + "win_rate": 31.58, + "avg_win": 71.269, + "avg_loss": -44.669, + "payoff_ratio": 1.6, + "max_consecutive_losses": 9, + "profit_factor": 0.74, + "max_drawdown_pct": 83.78, + "sharpe_ratio": -23.85, + "total_fees": 213.0381, + "close_reasons": { + "STOP_LOSS": 38, + "TAKE_PROFIT": 17, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 126, + "total_pnl": -657.1971, + "return_pct": -65.72, + "win_rate": 34.92, + "avg_win": 41.4175, + "avg_loss": -30.2386, + "payoff_ratio": 1.37, + "max_consecutive_losses": 7, + "profit_factor": 0.73, + "max_drawdown_pct": 68.34, + "sharpe_ratio": -25.56, + "total_fees": 478.4644, + "close_reasons": { + "STOP_LOSS": 82, + "TAKE_PROFIT": 44 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 76, + "total_pnl": -458.9288, + "return_pct": -45.89, + "win_rate": 26.32, + "avg_win": 63.1905, + "avg_loss": -30.7632, + "payoff_ratio": 2.05, + "max_consecutive_losses": 16, + "profit_factor": 0.73, + "max_drawdown_pct": 62.96, + "sharpe_ratio": -24.21, + "total_fees": 285.1479, + "close_reasons": { + "STOP_LOSS": 55, + "TAKE_PROFIT": 18, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 127, + "total_pnl": -799.5686, + "return_pct": -79.96, + "win_rate": 33.86, + "avg_win": 51.5097, + "avg_loss": -35.8867, + "payoff_ratio": 1.44, + "max_consecutive_losses": 7, + "profit_factor": 0.73, + "max_drawdown_pct": 84.56, + "sharpe_ratio": -25.92, + "total_fees": 463.749, + "close_reasons": { + "STOP_LOSS": 81, + "TAKE_PROFIT": 41, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 103, + "total_pnl": -940.5971, + "return_pct": -94.06, + "win_rate": 40.78, + "avg_win": 59.6622, + "avg_loss": -56.4985, + "payoff_ratio": 1.06, + "max_consecutive_losses": 5, + "profit_factor": 0.73, + "max_drawdown_pct": 111.97, + "sharpe_ratio": -26.83, + "total_fees": 369.6179, + "close_reasons": { + "TAKE_PROFIT": 41, + "STOP_LOSS": 59, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 133, + "total_pnl": -892.3373, + "return_pct": -89.23, + "win_rate": 50.38, + "avg_win": 33.053, + "avg_loss": -47.0741, + "payoff_ratio": 0.7, + "max_consecutive_losses": 6, + "profit_factor": 0.71, + "max_drawdown_pct": 90.27, + "sharpe_ratio": -28.54, + "total_fees": 492.3589, + "close_reasons": { + "TAKE_PROFIT": 65, + "STOP_LOSS": 64, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 125, + "total_pnl": -1124.6583, + "return_pct": -112.47, + "win_rate": 41.6, + "avg_win": 51.8844, + "avg_loss": -52.365, + "payoff_ratio": 0.99, + "max_consecutive_losses": 7, + "profit_factor": 0.71, + "max_drawdown_pct": 110.88, + "sharpe_ratio": -29.75, + "total_fees": 447.9934, + "close_reasons": { + "TAKE_PROFIT": 50, + "STOP_LOSS": 70, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 129, + "total_pnl": -864.2681, + "return_pct": -86.43, + "win_rate": 33.33, + "avg_win": 47.8978, + "avg_loss": -33.9985, + "payoff_ratio": 1.41, + "max_consecutive_losses": 10, + "profit_factor": 0.7, + "max_drawdown_pct": 89.82, + "sharpe_ratio": -29.45, + "total_fees": 471.8025, + "close_reasons": { + "STOP_LOSS": 83, + "TAKE_PROFIT": 41, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 100, + "total_pnl": -814.9178, + "return_pct": -81.49, + "win_rate": 33.0, + "avg_win": 58.0613, + "avg_loss": -40.7603, + "payoff_ratio": 1.42, + "max_consecutive_losses": 14, + "profit_factor": 0.7, + "max_drawdown_pct": 102.02, + "sharpe_ratio": -29.73, + "total_fees": 365.5436, + "close_reasons": { + "STOP_LOSS": 64, + "TAKE_PROFIT": 31, + "REVERSE_SIGNAL": 5 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 124, + "total_pnl": -779.1467, + "return_pct": -77.91, + "win_rate": 26.61, + "avg_win": 53.6382, + "avg_loss": -28.0133, + "payoff_ratio": 1.91, + "max_consecutive_losses": 12, + "profit_factor": 0.69, + "max_drawdown_pct": 82.33, + "sharpe_ratio": -29.28, + "total_fees": 463.8614, + "close_reasons": { + "STOP_LOSS": 90, + "TAKE_PROFIT": 31, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 88, + "total_pnl": -818.8387, + "return_pct": -81.88, + "win_rate": 31.82, + "avg_win": 66.195, + "avg_loss": -44.5383, + "payoff_ratio": 1.49, + "max_consecutive_losses": 10, + "profit_factor": 0.69, + "max_drawdown_pct": 111.74, + "sharpe_ratio": -29.46, + "total_fees": 328.0654, + "close_reasons": { + "STOP_LOSS": 59, + "TAKE_PROFIT": 26, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 103, + "total_pnl": -1135.4889, + "return_pct": -113.55, + "win_rate": 40.78, + "avg_win": 57.1853, + "avg_loss": -57.9881, + "payoff_ratio": 0.99, + "max_consecutive_losses": 6, + "profit_factor": 0.68, + "max_drawdown_pct": 129.87, + "sharpe_ratio": -32.52, + "total_fees": 381.8827, + "close_reasons": { + "TAKE_PROFIT": 40, + "STOP_LOSS": 60, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 83, + "total_pnl": -690.7896, + "return_pct": -69.08, + "win_rate": 24.1, + "avg_win": 63.8415, + "avg_loss": -31.2321, + "payoff_ratio": 2.04, + "max_consecutive_losses": 10, + "profit_factor": 0.65, + "max_drawdown_pct": 88.52, + "sharpe_ratio": -33.63, + "total_fees": 313.2467, + "close_reasons": { + "STOP_LOSS": 62, + "TAKE_PROFIT": 18, + "REVERSE_SIGNAL": 3 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 60, + "total_pnl": -526.2737, + "return_pct": -52.63, + "win_rate": 25.0, + "avg_win": 65.0044, + "avg_loss": -33.3631, + "payoff_ratio": 1.95, + "max_consecutive_losses": 9, + "profit_factor": 0.65, + "max_drawdown_pct": 68.52, + "sharpe_ratio": -34.09, + "total_fees": 229.6101, + "close_reasons": { + "STOP_LOSS": 44, + "TAKE_PROFIT": 14, + "REVERSE_SIGNAL": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 104, + "total_pnl": -827.5156, + "return_pct": -82.75, + "win_rate": 25.0, + "avg_win": 57.4723, + "avg_loss": -29.7666, + "payoff_ratio": 1.93, + "max_consecutive_losses": 8, + "profit_factor": 0.64, + "max_drawdown_pct": 88.21, + "sharpe_ratio": -35.36, + "total_fees": 391.1302, + "close_reasons": { + "STOP_LOSS": 77, + "TAKE_PROFIT": 23, + "REVERSE_SIGNAL": 4 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 106, + "total_pnl": -1258.4117, + "return_pct": -125.84, + "win_rate": 46.23, + "avg_win": 46.2099, + "avg_loss": -61.8017, + "payoff_ratio": 0.75, + "max_consecutive_losses": 5, + "profit_factor": 0.64, + "max_drawdown_pct": 168.25, + "sharpe_ratio": -15.45, + "total_fees": 406.3456, + "close_reasons": { + "STOP_LOSS": 55, + "TAKE_PROFIT": 49, + "REVERSE_SIGNAL": 1, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 112, + "total_pnl": -1445.9289, + "return_pct": -144.59, + "win_rate": 38.39, + "avg_win": 47.3086, + "avg_loss": -50.4376, + "payoff_ratio": 0.94, + "max_consecutive_losses": 7, + "profit_factor": 0.58, + "max_drawdown_pct": 159.62, + "sharpe_ratio": -16.94, + "total_fees": 437.0496, + "close_reasons": { + "STOP_LOSS": 67, + "TAKE_PROFIT": 43, + "REVERSE_SIGNAL": 1, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 131, + "total_pnl": -2143.0437, + "return_pct": -214.3, + "win_rate": 39.69, + "avg_win": 47.4357, + "avg_loss": -58.3506, + "payoff_ratio": 0.81, + "max_consecutive_losses": 7, + "profit_factor": 0.54, + "max_drawdown_pct": 192.59, + "sharpe_ratio": -26.53, + "total_fees": 469.9855, + "close_reasons": { + "STOP_LOSS": 72, + "TAKE_PROFIT": 50, + "REVERSE_SIGNAL": 8, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 127, + "total_pnl": -2386.0805, + "return_pct": -238.61, + "win_rate": 32.28, + "avg_win": 61.2345, + "avg_loss": -56.9383, + "payoff_ratio": 1.08, + "max_consecutive_losses": 10, + "profit_factor": 0.51, + "max_drawdown_pct": 198.82, + "sharpe_ratio": -30.08, + "total_fees": 448.1248, + "close_reasons": { + "STOP_LOSS": 78, + "TAKE_PROFIT": 36, + "REVERSE_SIGNAL": 11, + "END_OF_DATA": 2 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 129, + "total_pnl": -2315.5472, + "return_pct": -231.55, + "win_rate": 29.46, + "avg_win": 61.0729, + "avg_loss": -50.9486, + "payoff_ratio": 1.2, + "max_consecutive_losses": 10, + "profit_factor": 0.5, + "max_drawdown_pct": 221.0, + "sharpe_ratio": -21.9, + "total_fees": 461.5333, + "close_reasons": { + "STOP_LOSS": 85, + "TAKE_PROFIT": 31, + "REVERSE_SIGNAL": 12, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 107, + "total_pnl": -2052.8157, + "return_pct": -205.28, + "win_rate": 26.17, + "avg_win": 58.6052, + "avg_loss": -46.7565, + "payoff_ratio": 1.25, + "max_consecutive_losses": 10, + "profit_factor": 0.44, + "max_drawdown_pct": 210.74, + "sharpe_ratio": -24.77, + "total_fees": 411.5708, + "close_reasons": { + "STOP_LOSS": 76, + "TAKE_PROFIT": 27, + "REVERSE_SIGNAL": 3, + "END_OF_DATA": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -14.2796, + "return_pct": -1.43, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -14.2796, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9963, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 1, + "total_pnl": -19.4193, + "return_pct": -1.94, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": -19.4193, + "payoff_ratio": 0.0, + "max_consecutive_losses": 1, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 3.9942, + "close_reasons": { + "STOP_LOSS": 1 + } + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 3.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 4, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 0, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 20, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 25, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 1.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.0 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + }, + { + "params": { + "atr_sl_mult": 2.0, + "atr_tp_mult": 4.0, + "signal_threshold": 5, + "adx_threshold": 30, + "volume_multiplier": 2.5 + }, + "summary": { + "total_trades": 0, + "total_pnl": 0.0, + "return_pct": 0.0, + "win_rate": 0.0, + "avg_win": 0.0, + "avg_loss": 0.0, + "payoff_ratio": 0.0, + "max_consecutive_losses": 0, + "profit_factor": 0.0, + "max_drawdown_pct": 0.0, + "sharpe_ratio": 0.0, + "total_fees": 0.0, + "close_reasons": {} + } + } +] \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260318_232111.json b/results/xrpusdt/wf_backtest_20260318_232111.json new file mode 100644 index 0000000..c2e5922 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260318_232111.json @@ -0,0 +1,835 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 2.0, + "atr_tp_mult": 2.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5, + "train_months": 3, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 5 + }, + "summary": { + "total_trades": 27, + "total_pnl": 217.0703, + "return_pct": 21.71, + "win_rate": 66.67, + "avg_win": 33.2223, + "avg_loss": -42.3256, + "payoff_ratio": 0.78, + "max_consecutive_losses": 3, + "profit_factor": 1.57, + "max_drawdown_pct": 11.99, + "sharpe_ratio": 33.32, + "total_fees": 102.7825, + "close_reasons": { + "STOP_LOSS": 9, + "TAKE_PROFIT": 18 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-06-05", + "test_period": "2025-06-05 ~ 2025-07-05", + "summary": { + "total_trades": 9, + "total_pnl": -54.288, + "return_pct": -5.43, + "win_rate": 44.44, + "avg_win": 40.6662, + "avg_loss": -43.3906, + "payoff_ratio": 0.94, + "max_consecutive_losses": 3, + "profit_factor": 0.75, + "max_drawdown_pct": 11.99, + "sharpe_ratio": -21.46, + "total_fees": 32.8699, + "close_reasons": { + "STOP_LOSS": 5, + "TAKE_PROFIT": 4 + } + } + }, + { + "fold": 2, + "train_period": "2025-06-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 10, + "total_pnl": 13.0734, + "return_pct": 1.31, + "win_rate": 60.0, + "avg_win": 29.5084, + "avg_loss": -40.9943, + "payoff_ratio": 0.72, + "max_consecutive_losses": 3, + "profit_factor": 1.08, + "max_drawdown_pct": 10.97, + "sharpe_ratio": 5.62, + "total_fees": 39.3346, + "close_reasons": { + "TAKE_PROFIT": 6, + "STOP_LOSS": 4 + } + } + }, + { + "fold": 3, + "train_period": "2025-09-05 ~ 2025-12-05", + "test_period": "2025-12-05 ~ 2026-01-05", + "summary": { + "total_trades": 8, + "total_pnl": 258.2849, + "return_pct": 25.83, + "win_rate": 100.0, + "avg_win": 32.2856, + "avg_loss": 0.0, + "payoff_ratio": "Infinity", + "max_consecutive_losses": 0, + "profit_factor": "Infinity", + "max_drawdown_pct": 0.0, + "sharpe_ratio": 502.51, + "total_fees": 30.578, + "close_reasons": { + "TAKE_PROFIT": 8 + } + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 11:15:00", + "exit_time": "2025-06-12 13:00:00", + "entry_price": 2.223978, + "exit_price": 2.237955, + "quantity": 2248.0, + "sl": 2.237955, + "tp": 2.21, + "gross_pnl": -31.420573, + "entry_fee": 1.999801, + "exit_fee": 2.012369, + "net_pnl": -35.432743, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.97199737318929, + "macd_hist": -0.0007807103280135859, + "atr": 0.006988561711463904, + "adx": 43.4578914382015 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-12 20:30:00", + "exit_time": "2025-06-13 00:00:00", + "entry_price": 2.186419, + "exit_price": 2.163885, + "quantity": 2201.5, + "sl": 2.163885, + "tp": 2.208952, + "gross_pnl": -49.607437, + "entry_fee": 1.92536, + "exit_fee": 1.905517, + "net_pnl": -53.438315, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.41519543415668, + "macd_hist": -0.005495027011351469, + "atr": 0.011266735681191995, + "adx": 35.41443548413551 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-16 22:30:00", + "exit_time": "2025-06-16 23:45:00", + "entry_price": 2.260826, + "exit_price": 2.231631, + "quantity": 2006.6, + "sl": 2.231631, + "tp": 2.290021, + "gross_pnl": -58.582699, + "entry_fee": 1.814629, + "exit_fee": 1.791196, + "net_pnl": -62.188525, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.211506920436555, + "macd_hist": -0.007666291215691772, + "atr": 0.014597503086660083, + "adx": 41.77057022158849 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 15:30:00", + "entry_price": 2.188781, + "exit_price": 2.164935, + "quantity": 1926.0, + "sl": 2.212627, + "tp": 2.164935, + "gross_pnl": 45.926824, + "entry_fee": 1.686237, + "exit_fee": 1.667866, + "net_pnl": 42.572721, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.98442517376965, + "macd_hist": -0.000473160901783975, + "atr": 0.011922851577807921, + "adx": 31.230008994240638 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-21 13:30:00", + "exit_time": "2025-06-21 15:15:00", + "entry_price": 2.119112, + "exit_price": 2.109684, + "quantity": 2086.2, + "sl": 2.109684, + "tp": 2.128539, + "gross_pnl": -19.667423, + "entry_fee": 1.768356, + "exit_fee": 1.76049, + "net_pnl": -23.196269, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.460371663394117, + "macd_hist": -0.002291006577745399, + "atr": 0.0047136955379463, + "adx": 26.139853452702802 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 2.045995, + "exit_price": 2.018384, + "quantity": 2099.3, + "sl": 2.073607, + "tp": 2.018384, + "gross_pnl": 57.964484, + "entry_fee": 1.718063, + "exit_fee": 1.694877, + "net_pnl": 54.551543, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.112041978961905, + "macd_hist": -0.0015821538372272313, + "atr": 0.013805669484335523, + "adx": 47.020225174544926 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 06:00:00", + "entry_price": 2.184818, + "exit_price": 2.207587, + "quantity": 2087.2, + "sl": 2.16205, + "tp": 2.207587, + "gross_pnl": 47.522393, + "entry_fee": 1.824061, + "exit_fee": 1.84307, + "net_pnl": 43.855261, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.02163697288638, + "macd_hist": 0.0005479493365071683, + "atr": 0.011384245075129916, + "adx": 47.36536786932758 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:15:00", + "entry_price": 2.185781, + "exit_price": 2.203594, + "quantity": 2182.0, + "sl": 2.203594, + "tp": 2.167969, + "gross_pnl": -38.866074, + "entry_fee": 1.90775, + "exit_fee": 1.923296, + "net_pnl": -42.697121, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 07:30:00", + "entry_price": 2.232877, + "exit_price": 2.220445, + "quantity": 2036.1, + "sl": 2.245309, + "tp": 2.220445, + "gross_pnl": 25.312421, + "entry_fee": 1.818544, + "exit_fee": 1.808419, + "net_pnl": 21.685458, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 21:00:00", + "entry_price": 2.863514, + "exit_price": 2.839468, + "quantity": 1745.9, + "sl": 2.887559, + "tp": 2.839468, + "gross_pnl": 41.980567, + "entry_fee": 1.999763, + "exit_fee": 1.982971, + "net_pnl": 37.997832, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 13:30:00", + "entry_price": 2.831483, + "exit_price": 2.839182, + "quantity": 1750.6, + "sl": 2.823784, + "tp": 2.839182, + "gross_pnl": 13.478415, + "entry_fee": 1.982718, + "exit_fee": 1.988109, + "net_pnl": 9.507588, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 17:45:00", + "entry_price": 2.888611, + "exit_price": 2.863658, + "quantity": 1711.8, + "sl": 2.913564, + "tp": 2.863658, + "gross_pnl": 42.714942, + "entry_fee": 1.97789, + "exit_fee": 1.960804, + "net_pnl": 38.776248, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 08:30:00", + "entry_price": 3.009099, + "exit_price": 3.032748, + "quantity": 1621.9, + "sl": 3.032748, + "tp": 2.98545, + "gross_pnl": -38.356788, + "entry_fee": 1.952183, + "exit_fee": 1.967526, + "net_pnl": -42.276497, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-12 21:30:00", + "entry_price": 3.121788, + "exit_price": 3.09291, + "quantity": 1587.4, + "sl": 3.150665, + "tp": 3.09291, + "gross_pnl": 45.839824, + "entry_fee": 1.98221, + "exit_fee": 1.963874, + "net_pnl": 41.893739, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 12:30:00", + "entry_price": 3.066993, + "exit_price": 3.050039, + "quantity": 1594.0, + "sl": 3.083947, + "tp": 3.050039, + "gross_pnl": 27.024629, + "entry_fee": 1.955515, + "exit_fee": 1.944705, + "net_pnl": 23.124409, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 15:00:00", + "entry_price": 2.971603, + "exit_price": 2.984114, + "quantity": 1630.7, + "sl": 2.984114, + "tp": 2.959092, + "gross_pnl": -20.401941, + "entry_fee": 1.938317, + "exit_fee": 1.946478, + "net_pnl": -24.286736, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 21:45:00", + "entry_price": 2.976198, + "exit_price": 2.948913, + "quantity": 1646.2, + "sl": 2.948913, + "tp": 3.003482, + "gross_pnl": -44.915196, + "entry_fee": 1.959767, + "exit_fee": 1.941801, + "net_pnl": -48.816763, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.81825, + "quantity": 1781.8, + "sl": 2.81825, + "tp": 2.768191, + "gross_pnl": -44.597807, + "entry_fee": 1.990784, + "exit_fee": 2.008623, + "net_pnl": -48.597214, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 02:15:00", + "entry_price": 2.850785, + "exit_price": 2.868214, + "quantity": 1700.7, + "sl": 2.833356, + "tp": 2.868214, + "gross_pnl": 29.641341, + "entry_fee": 1.939332, + "exit_fee": 1.951189, + "net_pnl": 25.750821, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 10:30:00", + "exit_time": "2025-12-10 14:30:00", + "entry_price": 2.069993, + "exit_price": 2.056326, + "quantity": 2415.2, + "sl": 2.08366, + "tp": 2.056326, + "gross_pnl": 33.009596, + "entry_fee": 1.999779, + "exit_fee": 1.986575, + "net_pnl": 29.023242, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 37.038012691554805, + "macd_hist": -9.211636302669133e-05, + "atr": 0.0068337189344636114, + "adx": 28.943927763667713 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-12 18:30:00", + "entry_price": 1.988899, + "exit_price": 2.013001, + "quantity": 2498.4, + "sl": 1.964797, + "tp": 2.013001, + "gross_pnl": 60.216838, + "entry_fee": 1.987626, + "exit_fee": 2.011713, + "net_pnl": 56.2175, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.182013495720106, + "macd_hist": -0.00643391832048344, + "atr": 0.01205108033747697, + "adx": 30.769786891839054 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-19 13:15:00", + "exit_time": "2025-12-19 13:45:00", + "entry_price": 1.878712, + "exit_price": 1.863781, + "quantity": 2596.8, + "sl": 1.893643, + "tp": 1.863781, + "gross_pnl": 38.773597, + "entry_fee": 1.951456, + "exit_fee": 1.935946, + "net_pnl": 34.886195, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.16547032772114, + "macd_hist": -4.5929936914913816e-05, + "atr": 0.007465649526915487, + "adx": 40.69667585881617 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:00:00", + "entry_price": 1.831783, + "exit_price": 1.844712, + "quantity": 2624.8, + "sl": 1.818854, + "tp": 1.844712, + "gross_pnl": 33.936201, + "entry_fee": 1.923226, + "exit_fee": 1.9368, + "net_pnl": 30.076175, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.688435627302994, + "macd_hist": -0.0034657628634239823, + "atr": 0.006464530874639477, + "adx": 30.228290924248867 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 17:15:00", + "entry_price": 1.861986, + "exit_price": 1.870892, + "quantity": 2543.8, + "sl": 1.853081, + "tp": 1.870892, + "gross_pnl": 22.653457, + "entry_fee": 1.894608, + "exit_fee": 1.90367, + "net_pnl": 18.855179, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 14:45:00", + "entry_price": 1.906991, + "exit_price": 1.92129, + "quantity": 2458.8, + "sl": 1.892691, + "tp": 1.92129, + "gross_pnl": 35.159553, + "entry_fee": 1.875563, + "exit_fee": 1.889627, + "net_pnl": 31.394362, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 01:30:00", + "entry_price": 2.041396, + "exit_price": 2.026932, + "quantity": 2251.8, + "sl": 2.05586, + "tp": 2.026932, + "gross_pnl": 32.569888, + "entry_fee": 1.838726, + "exit_fee": 1.825698, + "net_pnl": 28.905464, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 03:45:00", + "entry_price": 2.038904, + "exit_price": 2.053633, + "quantity": 2209.5, + "sl": 2.024175, + "tp": 2.053633, + "gross_pnl": 32.54375, + "entry_fee": 1.801983, + "exit_fee": 1.815001, + "net_pnl": 28.926766, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 3 + } + ], + "validation": { + "overall": "FAIL", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (66.7%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (66.7%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (12.0%)" + }, + { + "name": "trade_frequency", + "passed": false, + "level": "WARNING", + "message": "월 평균 4.0건 < 5건 — 신호 생성 부족" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (1.57)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260321_194417.json b/results/xrpusdt/wf_backtest_20260321_194417.json new file mode 100644 index 0000000..e8fcd09 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260321_194417.json @@ -0,0 +1,214 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": true, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 3, + "total_pnl": -5.1514, + "return_pct": -0.52, + "win_rate": 33.33, + "avg_win": 66.3376, + "avg_loss": -35.7445, + "payoff_ratio": 1.86, + "max_consecutive_losses": 2, + "profit_factor": 0.93, + "max_drawdown_pct": 3.76, + "sharpe_ratio": -6.68, + "total_fees": 11.5694, + "close_reasons": { + "STOP_LOSS": 2, + "TAKE_PROFIT": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 3, + "total_pnl": -5.1514, + "return_pct": -0.52, + "win_rate": 33.33, + "avg_win": 66.3376, + "avg_loss": -35.7445, + "payoff_ratio": 1.86, + "max_consecutive_losses": 2, + "profit_factor": 0.93, + "max_drawdown_pct": 3.76, + "sharpe_ratio": -6.68, + "total_fees": 11.5694, + "close_reasons": { + "STOP_LOSS": 2, + "TAKE_PROFIT": 1 + } + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-24 03:15:00", + "exit_time": "2025-09-24 04:30:00", + "entry_price": 2.811019, + "exit_price": 2.828555, + "quantity": 1778.5, + "sl": 2.828555, + "tp": 2.775947, + "gross_pnl": -31.18734, + "entry_fee": 1.999759, + "exit_fee": 2.012234, + "net_pnl": -35.199332, + "close_reason": "STOP_LOSS", + "ml_proba": 0.5782, + "indicators": { + "rsi": 35.41445012242145, + "macd_hist": -0.0005539721484064007, + "atr": 0.011690503070987813, + "adx": 22.830095368917625 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1726.9, + "sl": 2.811993, + "tp": 2.755676, + "gross_pnl": -32.41776, + "entry_fee": 1.929445, + "exit_fee": 1.942412, + "net_pnl": -36.289617, + "close_reason": "STOP_LOSS", + "ml_proba": 0.724, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-26 09:30:00", + "exit_time": "2025-09-26 11:00:00", + "entry_price": 2.742026, + "exit_price": 2.700663, + "quantity": 1692.9, + "sl": 2.762707, + "tp": 2.700663, + "gross_pnl": 70.023157, + "entry_fee": 1.85679, + "exit_fee": 1.828781, + "net_pnl": 66.337586, + "close_reason": "TAKE_PROFIT", + "ml_proba": 0.8238, + "indicators": { + "rsi": 42.61073221775071, + "macd_hist": -0.0004772649982219266, + "atr": 0.013787614360953772, + "adx": 15.435644479956943 + }, + "fold": 1 + } + ], + "validation": { + "overall": "FAIL", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (33.3%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (33.3%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (3.8%)" + }, + { + "name": "trade_frequency", + "passed": false, + "level": "WARNING", + "message": "월 평균 3.0건 < 5건 — 신호 생성 부족" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.93)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_224634.json b/results/xrpusdt/wf_backtest_20260322_224634.json new file mode 100644 index 0000000..dcb0c1b --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_224634.json @@ -0,0 +1,382 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 20, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 10, + "total_pnl": -71.4118, + "return_pct": -7.14, + "win_rate": 30.0, + "avg_win": 116.5629, + "avg_loss": -60.1572, + "payoff_ratio": 1.94, + "max_consecutive_losses": 4, + "profit_factor": 0.83, + "max_drawdown_pct": 28.16, + "sharpe_ratio": -15.9, + "total_fees": 75.9924, + "close_reasons": { + "TAKE_PROFIT": 3, + "STOP_LOSS": 7 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 10, + "total_pnl": -71.4118, + "return_pct": -7.14, + "win_rate": 30.0, + "avg_win": 116.5629, + "avg_loss": -60.1572, + "payoff_ratio": 1.94, + "max_consecutive_losses": 4, + "profit_factor": 0.83, + "max_drawdown_pct": 28.16, + "sharpe_ratio": -15.9, + "total_fees": 75.9924, + "close_reasons": { + "TAKE_PROFIT": 3, + "STOP_LOSS": 7 + } + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 22:15:00", + "entry_price": 2.863514, + "exit_price": 2.815423, + "quantity": 3491.9, + "sl": 2.881548, + "tp": 2.815423, + "gross_pnl": 167.927076, + "entry_fee": 3.999641, + "exit_fee": 3.93247, + "net_pnl": 159.994965, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 10:15:00", + "entry_price": 2.831483, + "exit_price": 2.825709, + "quantity": 3310.6, + "sl": 2.825709, + "tp": 2.846882, + "gross_pnl": -19.117005, + "entry_fee": 3.749563, + "exit_fee": 3.741916, + "net_pnl": -26.608485, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 14:30:00", + "entry_price": 2.888611, + "exit_price": 2.907326, + "quantity": 3295.3, + "sl": 2.907326, + "tp": 2.838705, + "gross_pnl": -61.671288, + "entry_fee": 3.807536, + "exit_fee": 3.832205, + "net_pnl": -69.311028, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 07:15:00", + "entry_price": 3.009099, + "exit_price": 3.026836, + "quantity": 3264.0, + "sl": 3.026836, + "tp": 2.9618, + "gross_pnl": -57.893469, + "entry_fee": 3.92868, + "exit_fee": 3.951837, + "net_pnl": -65.773986, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-13 08:45:00", + "entry_price": 3.121788, + "exit_price": 3.143446, + "quantity": 3197.5, + "sl": 3.143446, + "tp": 3.064033, + "gross_pnl": -69.251372, + "entry_fee": 3.992767, + "exit_fee": 4.020467, + "net_pnl": -77.264606, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 13:45:00", + "entry_price": 3.066993, + "exit_price": 3.033085, + "quantity": 3002.8, + "sl": 3.079709, + "tp": 3.033085, + "gross_pnl": 101.818765, + "entry_fee": 3.683827, + "exit_fee": 3.643099, + "net_pnl": 94.491838, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 14:45:00", + "entry_price": 2.971603, + "exit_price": 2.980986, + "quantity": 3353.4, + "sl": 2.980986, + "tp": 2.94658, + "gross_pnl": -31.466181, + "entry_fee": 3.985989, + "exit_fee": 3.998576, + "net_pnl": -39.450746, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 3279.9, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -67.117005, + "entry_fee": 3.904652, + "exit_fee": 3.877805, + "net_pnl": -74.899463, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 3226.0, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -60.559206, + "entry_fee": 3.604372, + "exit_fee": 3.628596, + "net_pnl": -67.792174, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 2923.6, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 101.910302, + "entry_fee": 3.333822, + "exit_fee": 3.374586, + "net_pnl": 95.201894, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 1 + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (30.0%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (30.0%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (28.2%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 10.0건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.83)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_224727.json b/results/xrpusdt/wf_backtest_20260322_224727.json new file mode 100644 index 0000000..b4da273 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_224727.json @@ -0,0 +1,838 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 20, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5, + "train_months": 3, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 27, + "total_pnl": 817.0717, + "return_pct": 81.71, + "win_rate": 44.44, + "avg_win": 140.6556, + "avg_loss": -58.053, + "payoff_ratio": 2.42, + "max_consecutive_losses": 4, + "profit_factor": 1.94, + "max_drawdown_pct": 20.23, + "sharpe_ratio": 51.77, + "total_fees": 195.3719, + "close_reasons": { + "STOP_LOSS": 15, + "TAKE_PROFIT": 11, + "REVERSE_SIGNAL": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-06-05", + "test_period": "2025-06-05 ~ 2025-07-05", + "summary": { + "total_trades": 9, + "total_pnl": 454.4106, + "return_pct": 45.44, + "win_rate": 44.44, + "avg_win": 186.0558, + "avg_loss": -57.9625, + "payoff_ratio": 3.21, + "max_consecutive_losses": 2, + "profit_factor": 2.57, + "max_drawdown_pct": 8.26, + "sharpe_ratio": 73.09, + "total_fees": 60.8765, + "close_reasons": { + "STOP_LOSS": 5, + "TAKE_PROFIT": 4 + } + } + }, + { + "fold": 2, + "train_period": "2025-06-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "summary": { + "total_trades": 10, + "total_pnl": -71.4118, + "return_pct": -7.14, + "win_rate": 30.0, + "avg_win": 116.5629, + "avg_loss": -60.1572, + "payoff_ratio": 1.94, + "max_consecutive_losses": 4, + "profit_factor": 0.83, + "max_drawdown_pct": 28.16, + "sharpe_ratio": -15.9, + "total_fees": 75.9924, + "close_reasons": { + "TAKE_PROFIT": 3, + "STOP_LOSS": 7 + } + } + }, + { + "fold": 3, + "train_period": "2025-09-05 ~ 2025-12-05", + "test_period": "2025-12-05 ~ 2026-01-05", + "summary": { + "total_trades": 8, + "total_pnl": 434.073, + "return_pct": 43.41, + "win_rate": 62.5, + "avg_win": 118.7911, + "avg_loss": -53.2941, + "payoff_ratio": 2.23, + "max_consecutive_losses": 1, + "profit_factor": 3.71, + "max_drawdown_pct": 5.44, + "sharpe_ratio": 101.65, + "total_fees": 58.503, + "close_reasons": { + "STOP_LOSS": 3, + "TAKE_PROFIT": 4, + "REVERSE_SIGNAL": 1 + } + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 11:15:00", + "exit_time": "2025-06-12 12:30:00", + "entry_price": 2.223978, + "exit_price": 2.23446, + "quantity": 4496.0, + "sl": 2.23446, + "tp": 2.196023, + "gross_pnl": -47.13086, + "entry_fee": 3.999601, + "exit_fee": 4.018454, + "net_pnl": -55.148915, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.97199737318929, + "macd_hist": -0.0007807103280135859, + "atr": 0.006988561711463904, + "adx": 43.4578914382015 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-13 00:00:00", + "exit_time": "2025-06-13 00:30:00", + "entry_price": 2.149685, + "exit_price": 2.095237, + "quantity": 4394.9, + "sl": 2.170103, + "tp": 2.095237, + "gross_pnl": 239.292043, + "entry_fee": 3.77906, + "exit_fee": 3.683343, + "net_pnl": 231.829639, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 26.809985061770455, + "macd_hist": -0.0014287229374708253, + "atr": 0.01361191626294587, + "adx": 45.994286262673526 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-16 22:30:00", + "exit_time": "2025-06-16 23:45:00", + "entry_price": 2.260826, + "exit_price": 2.23893, + "quantity": 4101.6, + "sl": 2.23893, + "tp": 2.319216, + "gross_pnl": -89.809678, + "entry_fee": 3.709202, + "exit_fee": 3.673278, + "net_pnl": -97.192157, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.211506920436555, + "macd_hist": -0.007666291215691772, + "atr": 0.014597503086660083, + "adx": 41.77057022158849 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 17:00:00", + "entry_price": 2.188781, + "exit_price": 2.14109, + "quantity": 4461.0, + "sl": 2.206665, + "tp": 2.14109, + "gross_pnl": 212.751364, + "entry_fee": 3.905661, + "exit_fee": 3.82056, + "net_pnl": 205.025142, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.98442517376965, + "macd_hist": -0.000473160901783975, + "atr": 0.011922851577807921, + "adx": 31.230008994240638 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-21 13:30:00", + "exit_time": "2025-06-21 14:00:00", + "entry_price": 2.119112, + "exit_price": 2.112041, + "quantity": 3992.4, + "sl": 2.112041, + "tp": 2.137967, + "gross_pnl": -28.228437, + "entry_fee": 3.384137, + "exit_fee": 3.372846, + "net_pnl": -34.98542, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.460371663394117, + "macd_hist": -0.002291006577745399, + "atr": 0.0047136955379463, + "adx": 26.139853452702802 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 2.045995, + "exit_price": 1.990773, + "quantity": 4278.1, + "sl": 2.066704, + "tp": 1.990773, + "gross_pnl": 236.248138, + "entry_fee": 3.501189, + "exit_fee": 3.40669, + "net_pnl": 229.340259, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.112041978961905, + "macd_hist": -0.0015821538372272313, + "atr": 0.013805669484335523, + "adx": 47.020225174544926 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2879.5, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -49.171401, + "entry_fee": 2.516474, + "exit_fee": 2.496805, + "net_pnl": -54.18468, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02163697288638, + "macd_hist": 0.0005479493365071683, + "atr": 0.011384245075129916, + "adx": 47.36536786932758 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 3196.0, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -42.695683, + "entry_fee": 2.794303, + "exit_fee": 2.811381, + "net_pnl": -48.301367, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 3379.7, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 84.031619, + "entry_fee": 3.018581, + "exit_fee": 2.984969, + "net_pnl": 78.028069, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 22:15:00", + "entry_price": 2.863514, + "exit_price": 2.815423, + "quantity": 3491.9, + "sl": 2.881548, + "tp": 2.815423, + "gross_pnl": 167.927076, + "entry_fee": 3.999641, + "exit_fee": 3.93247, + "net_pnl": 159.994965, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 10:15:00", + "entry_price": 2.831483, + "exit_price": 2.825709, + "quantity": 3310.6, + "sl": 2.825709, + "tp": 2.846882, + "gross_pnl": -19.117005, + "entry_fee": 3.749563, + "exit_fee": 3.741916, + "net_pnl": -26.608485, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 14:30:00", + "entry_price": 2.888611, + "exit_price": 2.907326, + "quantity": 3295.3, + "sl": 2.907326, + "tp": 2.838705, + "gross_pnl": -61.671288, + "entry_fee": 3.807536, + "exit_fee": 3.832205, + "net_pnl": -69.311028, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 07:15:00", + "entry_price": 3.009099, + "exit_price": 3.026836, + "quantity": 3264.0, + "sl": 3.026836, + "tp": 2.9618, + "gross_pnl": -57.893469, + "entry_fee": 3.92868, + "exit_fee": 3.951837, + "net_pnl": -65.773986, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-13 08:45:00", + "entry_price": 3.121788, + "exit_price": 3.143446, + "quantity": 3197.5, + "sl": 3.143446, + "tp": 3.064033, + "gross_pnl": -69.251372, + "entry_fee": 3.992767, + "exit_fee": 4.020467, + "net_pnl": -77.264606, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 13:45:00", + "entry_price": 3.066993, + "exit_price": 3.033085, + "quantity": 3002.8, + "sl": 3.079709, + "tp": 3.033085, + "gross_pnl": 101.818765, + "entry_fee": 3.683827, + "exit_fee": 3.643099, + "net_pnl": 94.491838, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 14:45:00", + "entry_price": 2.971603, + "exit_price": 2.980986, + "quantity": 3353.4, + "sl": 2.980986, + "tp": 2.94658, + "gross_pnl": -31.466181, + "entry_fee": 3.985989, + "exit_fee": 3.998576, + "net_pnl": -39.450746, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 3279.9, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -67.117005, + "entry_fee": 3.904652, + "exit_fee": 3.877805, + "net_pnl": -74.899463, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 3226.0, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -60.559206, + "entry_fee": 3.604372, + "exit_fee": 3.628596, + "net_pnl": -67.792174, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 2923.6, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 101.910302, + "entry_fee": 3.333822, + "exit_fee": 3.374586, + "net_pnl": 95.201894, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 10:30:00", + "exit_time": "2025-12-10 18:30:00", + "entry_price": 2.069993, + "exit_price": 2.080244, + "quantity": 4830.5, + "sl": 2.080244, + "tp": 2.042658, + "gross_pnl": -49.515419, + "entry_fee": 3.99964, + "exit_fee": 4.019447, + "net_pnl": -57.534506, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.038012691554805, + "macd_hist": -9.211636302669133e-05, + "atr": 0.0068337189344636114, + "adx": 28.943927763667713 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-13 05:00:00", + "entry_price": 1.988899, + "exit_price": 2.037103, + "quantity": 4739.1, + "sl": 1.970822, + "tp": 2.037103, + "gross_pnl": 228.445099, + "entry_fee": 3.770236, + "exit_fee": 3.861614, + "net_pnl": 220.813249, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.182013495720106, + "macd_hist": -0.00643391832048344, + "atr": 0.01205108033747697, + "adx": 30.769786891839054 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-19 13:15:00", + "exit_time": "2025-12-19 15:15:00", + "entry_price": 1.878712, + "exit_price": 1.889911, + "quantity": 4978.2, + "sl": 1.889911, + "tp": 1.84885, + "gross_pnl": -55.748245, + "entry_fee": 3.741042, + "exit_fee": 3.763341, + "net_pnl": -63.252628, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.16547032772114, + "macd_hist": -4.5929936914913816e-05, + "atr": 0.007465649526915487, + "adx": 40.69667585881617 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 5284.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 136.657597, + "entry_fee": 3.872316, + "exit_fee": 3.926979, + "net_pnl": 128.858301, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.688435627302994, + "macd_hist": -0.0034657628634239823, + "atr": 0.006464530874639477, + "adx": 30.228290924248867 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 4787.6, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -31.976479, + "entry_fee": 3.565778, + "exit_fee": 3.552987, + "net_pnl": -39.095244, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 4818.6, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 137.806916, + "entry_fee": 3.67561, + "exit_fee": 3.730733, + "net_pnl": 130.400573, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 3981.9, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 9.922775, + "entry_fee": 3.251454, + "exit_fee": 3.247485, + "net_pnl": 3.423837, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 3971.2, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 116.983697, + "entry_fee": 3.238758, + "exit_fee": 3.285551, + "net_pnl": 110.459388, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 3 + } + ], + "validation": { + "overall": "FAIL", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (44.4%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (44.4%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (20.2%)" + }, + { + "name": "trade_frequency", + "passed": false, + "level": "WARNING", + "message": "월 평균 4.0건 < 5건 — 신호 생성 부족" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (1.94)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_231113.json b/results/xrpusdt/wf_backtest_20260322_231113.json new file mode 100644 index 0000000..a741073 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_231113.json @@ -0,0 +1,511 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 3.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 0, + "volume_multiplier": 1.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 15, + "total_pnl": -128.8207, + "return_pct": -12.88, + "win_rate": 26.67, + "avg_win": 38.6226, + "avg_loss": -25.7556, + "payoff_ratio": 1.5, + "max_consecutive_losses": 6, + "profit_factor": 0.55, + "max_drawdown_pct": 20.39, + "sharpe_ratio": -52.86, + "total_fees": 57.6972, + "close_reasons": { + "TAKE_PROFIT": 4, + "STOP_LOSS": 11 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "test_start": "2025-09-05T15:00:00", + "test_end": "2025-10-05T15:00:00", + "summary": { + "total_trades": 15, + "total_pnl": -128.8207, + "return_pct": -12.88, + "win_rate": 26.67, + "avg_win": 38.6226, + "avg_loss": -25.7556, + "payoff_ratio": 1.5, + "max_consecutive_losses": 6, + "profit_factor": 0.55, + "max_drawdown_pct": 20.39, + "sharpe_ratio": -52.86, + "total_fees": 57.6972, + "close_reasons": { + "TAKE_PROFIT": 4, + "STOP_LOSS": 11 + } + }, + "market_context": { + "btc_return_pct": 11.2, + "eth_return_pct": 5.8, + "btc_avg_adx": 24.6, + "market_regime": "횡보", + "ls_ratio": null + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 21:15:00", + "entry_price": 2.863514, + "exit_price": 2.827446, + "quantity": 1745.9, + "sl": 2.881548, + "tp": 2.827446, + "gross_pnl": 62.97085, + "entry_fee": 1.999763, + "exit_fee": 1.974575, + "net_pnl": 58.996512, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-06 09:00:00", + "exit_time": "2025-09-06 13:15:00", + "entry_price": 2.806619, + "exit_price": 2.812828, + "quantity": 1752.9, + "sl": 2.812828, + "tp": 2.794201, + "gross_pnl": -10.883731, + "entry_fee": 1.967889, + "exit_fee": 1.972243, + "net_pnl": -14.823863, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.00610631074574, + "macd_hist": -0.0004704685694576242, + "atr": 0.00413932368453192, + "adx": 14.008193990926515 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-06 15:45:00", + "exit_time": "2025-09-06 22:00:00", + "entry_price": 2.80062, + "exit_price": 2.807842, + "quantity": 1765.2, + "sl": 2.807842, + "tp": 2.786175, + "gross_pnl": -12.748682, + "entry_fee": 1.977462, + "exit_fee": 1.982561, + "net_pnl": -16.708704, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.58702631504332, + "macd_hist": -0.0004103175941632724, + "atr": 0.004814820425995649, + "adx": 15.495502216732291 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 10:15:00", + "entry_price": 2.831483, + "exit_price": 2.825709, + "quantity": 1754.7, + "sl": 2.825709, + "tp": 2.843032, + "gross_pnl": -10.132486, + "entry_fee": 1.987361, + "exit_fee": 1.983308, + "net_pnl": -14.103156, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 13:30:00", + "exit_time": "2025-09-07 14:00:00", + "entry_price": 2.840884, + "exit_price": 2.853506, + "quantity": 1755.1, + "sl": 2.834573, + "tp": 2.853506, + "gross_pnl": 22.153405, + "entry_fee": 1.994414, + "exit_fee": 2.003276, + "net_pnl": 18.155715, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 70.99242896973038, + "macd_hist": 0.0004291197510571344, + "atr": 0.0042074344637298, + "adx": 18.351295376801428 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 14:30:00", + "entry_price": 2.888611, + "exit_price": 2.907326, + "quantity": 1717.8, + "sl": 2.907326, + "tp": 2.851181, + "gross_pnl": -32.148496, + "entry_fee": 1.984822, + "exit_fee": 1.997682, + "net_pnl": -36.131, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 22:45:00", + "exit_time": "2025-09-08 02:15:00", + "entry_price": 2.875788, + "exit_price": 2.862379, + "quantity": 1730.8, + "sl": 2.862379, + "tp": 2.902605, + "gross_pnl": -23.207724, + "entry_fee": 1.990965, + "exit_fee": 1.981682, + "net_pnl": -27.180371, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 55.067227780514635, + "macd_hist": 0.00013194571339722526, + "atr": 0.008939112576366447, + "adx": 14.580517290441753 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-08 07:15:00", + "exit_time": "2025-09-08 09:45:00", + "entry_price": 2.90089, + "exit_price": 2.932746, + "quantity": 1669.0, + "sl": 2.884962, + "tp": 2.932746, + "gross_pnl": 53.167202, + "entry_fee": 1.936634, + "exit_fee": 1.957901, + "net_pnl": 49.272667, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 60.12434238530789, + "macd_hist": 0.00041228306459878275, + "atr": 0.010618574376478408, + "adx": 8.300763892347662 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 07:15:00", + "entry_price": 3.009099, + "exit_price": 3.026836, + "quantity": 1655.0, + "sl": 3.026836, + "tp": 2.973625, + "gross_pnl": -29.354685, + "entry_fee": 1.992024, + "exit_fee": 2.003765, + "net_pnl": -33.350474, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 23:00:00", + "exit_time": "2025-09-10 02:00:00", + "entry_price": 2.943406, + "exit_price": 2.956284, + "quantity": 1671.6, + "sl": 2.956284, + "tp": 2.917649, + "gross_pnl": -21.527774, + "entry_fee": 1.968079, + "exit_fee": 1.97669, + "net_pnl": -25.472542, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 39.53536171049937, + "macd_hist": -1.946210228058031e-05, + "atr": 0.008585695753008377, + "adx": 20.785784979630154 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-11 08:30:00", + "exit_time": "2025-09-11 11:15:00", + "entry_price": 3.017402, + "exit_price": 3.006355, + "quantity": 1588.7, + "sl": 3.006355, + "tp": 3.039494, + "gross_pnl": -17.549278, + "entry_fee": 1.917498, + "exit_fee": 1.910479, + "net_pnl": -21.377255, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 65.07990381213337, + "macd_hist": 0.0004440826925332865, + "atr": 0.007364208872183876, + "adx": 14.825623048829055 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 15:00:00", + "exit_time": "2025-09-12 16:15:00", + "entry_price": 3.019198, + "exit_price": 3.037941, + "quantity": 1552.0, + "sl": 3.037941, + "tp": 2.981711, + "gross_pnl": -29.089679, + "entry_fee": 1.874318, + "exit_fee": 1.885954, + "net_pnl": -32.849951, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.155616440178264, + "macd_hist": -0.0008867617207142038, + "atr": 0.012495566579322376, + "adx": 19.09633552921856 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-13 08:45:00", + "entry_price": 3.121788, + "exit_price": 3.143446, + "quantity": 1448.4, + "sl": 3.143446, + "tp": 3.078472, + "gross_pnl": -31.36941, + "entry_fee": 1.808639, + "exit_fee": 1.821187, + "net_pnl": -34.999235, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-13 09:15:00", + "exit_time": "2025-09-13 09:45:00", + "entry_price": 3.161284, + "exit_price": 3.177886, + "quantity": 1375.0, + "sl": 3.177886, + "tp": 3.128079, + "gross_pnl": -22.828175, + "entry_fee": 1.738706, + "exit_fee": 1.747837, + "net_pnl": -26.314718, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.37053214953528, + "macd_hist": 0.00511253369858191, + "atr": 0.011068206025146562, + "adx": 36.52494916026817 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 00:45:00", + "exit_time": "2025-09-14 01:15:00", + "entry_price": 3.109189, + "exit_price": 3.086009, + "quantity": 1355.7, + "sl": 3.120779, + "tp": 3.086009, + "gross_pnl": 31.425221, + "entry_fee": 1.686051, + "exit_fee": 1.673481, + "net_pnl": 28.065689, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 38.7433537799598, + "macd_hist": -0.0002412627790731375, + "atr": 0.007726689972056756, + "adx": 19.663365885823197 + }, + "fold": 1 + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (26.7%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (26.7%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (20.4%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 15.0건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.55)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_231737.json b/results/xrpusdt/wf_backtest_20260322_231737.json new file mode 100644 index 0000000..a11c661 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_231737.json @@ -0,0 +1,865 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 20, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 2.5, + "train_months": 3, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 27, + "total_pnl": 817.0717, + "return_pct": 81.71, + "win_rate": 44.44, + "avg_win": 140.6556, + "avg_loss": -58.053, + "payoff_ratio": 2.42, + "max_consecutive_losses": 4, + "profit_factor": 1.94, + "max_drawdown_pct": 20.23, + "sharpe_ratio": 51.77, + "total_fees": 195.3719, + "close_reasons": { + "STOP_LOSS": 15, + "TAKE_PROFIT": 11, + "REVERSE_SIGNAL": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-06-05", + "test_period": "2025-06-05 ~ 2025-07-05", + "test_start": "2025-06-05T15:00:00", + "test_end": "2025-07-05T15:00:00", + "summary": { + "total_trades": 9, + "total_pnl": 454.4106, + "return_pct": 45.44, + "win_rate": 44.44, + "avg_win": 186.0558, + "avg_loss": -57.9625, + "payoff_ratio": 3.21, + "max_consecutive_losses": 2, + "profit_factor": 2.57, + "max_drawdown_pct": 8.26, + "sharpe_ratio": 73.09, + "total_fees": 60.8765, + "close_reasons": { + "STOP_LOSS": 5, + "TAKE_PROFIT": 4 + } + }, + "market_context": { + "btc_return_pct": 3.7, + "eth_return_pct": -2.5, + "btc_avg_adx": 24.9, + "market_regime": "횡보", + "ls_ratio": null + } + }, + { + "fold": 2, + "train_period": "2025-06-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "test_start": "2025-09-05T15:00:00", + "test_end": "2025-10-05T15:00:00", + "summary": { + "total_trades": 10, + "total_pnl": -71.4118, + "return_pct": -7.14, + "win_rate": 30.0, + "avg_win": 116.5629, + "avg_loss": -60.1572, + "payoff_ratio": 1.94, + "max_consecutive_losses": 4, + "profit_factor": 0.83, + "max_drawdown_pct": 28.16, + "sharpe_ratio": -15.9, + "total_fees": 75.9924, + "close_reasons": { + "TAKE_PROFIT": 3, + "STOP_LOSS": 7 + } + }, + "market_context": { + "btc_return_pct": 11.2, + "eth_return_pct": 5.8, + "btc_avg_adx": 24.6, + "market_regime": "횡보", + "ls_ratio": null + } + }, + { + "fold": 3, + "train_period": "2025-09-05 ~ 2025-12-05", + "test_period": "2025-12-05 ~ 2026-01-05", + "test_start": "2025-12-05T15:00:00", + "test_end": "2026-01-05T15:00:00", + "summary": { + "total_trades": 8, + "total_pnl": 434.073, + "return_pct": 43.41, + "win_rate": 62.5, + "avg_win": 118.7911, + "avg_loss": -53.2941, + "payoff_ratio": 2.23, + "max_consecutive_losses": 1, + "profit_factor": 3.71, + "max_drawdown_pct": 5.44, + "sharpe_ratio": 101.65, + "total_fees": 58.503, + "close_reasons": { + "STOP_LOSS": 3, + "TAKE_PROFIT": 4, + "REVERSE_SIGNAL": 1 + } + }, + "market_context": { + "btc_return_pct": 2.6, + "eth_return_pct": 0.8, + "btc_avg_adx": 25.5, + "market_regime": "상승 추세", + "ls_ratio": null + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-12 11:15:00", + "exit_time": "2025-06-12 12:30:00", + "entry_price": 2.223978, + "exit_price": 2.23446, + "quantity": 4496.0, + "sl": 2.23446, + "tp": 2.196023, + "gross_pnl": -47.13086, + "entry_fee": 3.999601, + "exit_fee": 4.018454, + "net_pnl": -55.148915, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.97199737318929, + "macd_hist": -0.0007807103280135859, + "atr": 0.006988561711463904, + "adx": 43.4578914382015 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-13 00:00:00", + "exit_time": "2025-06-13 00:30:00", + "entry_price": 2.149685, + "exit_price": 2.095237, + "quantity": 4394.9, + "sl": 2.170103, + "tp": 2.095237, + "gross_pnl": 239.292043, + "entry_fee": 3.77906, + "exit_fee": 3.683343, + "net_pnl": 231.829639, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 26.809985061770455, + "macd_hist": -0.0014287229374708253, + "atr": 0.01361191626294587, + "adx": 45.994286262673526 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-16 22:30:00", + "exit_time": "2025-06-16 23:45:00", + "entry_price": 2.260826, + "exit_price": 2.23893, + "quantity": 4101.6, + "sl": 2.23893, + "tp": 2.319216, + "gross_pnl": -89.809678, + "entry_fee": 3.709202, + "exit_fee": 3.673278, + "net_pnl": -97.192157, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.211506920436555, + "macd_hist": -0.007666291215691772, + "atr": 0.014597503086660083, + "adx": 41.77057022158849 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-17 15:00:00", + "exit_time": "2025-06-17 17:00:00", + "entry_price": 2.188781, + "exit_price": 2.14109, + "quantity": 4461.0, + "sl": 2.206665, + "tp": 2.14109, + "gross_pnl": 212.751364, + "entry_fee": 3.905661, + "exit_fee": 3.82056, + "net_pnl": 205.025142, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 35.98442517376965, + "macd_hist": -0.000473160901783975, + "atr": 0.011922851577807921, + "adx": 31.230008994240638 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-21 13:30:00", + "exit_time": "2025-06-21 14:00:00", + "entry_price": 2.119112, + "exit_price": 2.112041, + "quantity": 3992.4, + "sl": 2.112041, + "tp": 2.137967, + "gross_pnl": -28.228437, + "entry_fee": 3.384137, + "exit_fee": 3.372846, + "net_pnl": -34.98542, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.460371663394117, + "macd_hist": -0.002291006577745399, + "atr": 0.0047136955379463, + "adx": 26.139853452702802 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-21 21:15:00", + "exit_time": "2025-06-21 21:30:00", + "entry_price": 2.045995, + "exit_price": 1.990773, + "quantity": 4278.1, + "sl": 2.066704, + "tp": 1.990773, + "gross_pnl": 236.248138, + "entry_fee": 3.501189, + "exit_fee": 3.40669, + "net_pnl": 229.340259, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 24.112041978961905, + "macd_hist": -0.0015821538372272313, + "atr": 0.013805669484335523, + "adx": 47.020225174544926 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2879.5, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -49.171401, + "entry_fee": 2.516474, + "exit_fee": 2.496805, + "net_pnl": -54.18468, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02163697288638, + "macd_hist": 0.0005479493365071683, + "atr": 0.011384245075129916, + "adx": 47.36536786932758 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 3196.0, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -42.695683, + "entry_fee": 2.794303, + "exit_fee": 2.811381, + "net_pnl": -48.301367, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:15:00", + "entry_price": 2.232877, + "exit_price": 2.208013, + "quantity": 3379.7, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 84.031619, + "entry_fee": 3.018581, + "exit_fee": 2.984969, + "net_pnl": 78.028069, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 22:15:00", + "entry_price": 2.863514, + "exit_price": 2.815423, + "quantity": 3491.9, + "sl": 2.881548, + "tp": 2.815423, + "gross_pnl": 167.927076, + "entry_fee": 3.999641, + "exit_fee": 3.93247, + "net_pnl": 159.994965, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 10:15:00", + "entry_price": 2.831483, + "exit_price": 2.825709, + "quantity": 3310.6, + "sl": 2.825709, + "tp": 2.846882, + "gross_pnl": -19.117005, + "entry_fee": 3.749563, + "exit_fee": 3.741916, + "net_pnl": -26.608485, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 14:30:00", + "entry_price": 2.888611, + "exit_price": 2.907326, + "quantity": 3295.3, + "sl": 2.907326, + "tp": 2.838705, + "gross_pnl": -61.671288, + "entry_fee": 3.807536, + "exit_fee": 3.832205, + "net_pnl": -69.311028, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 07:15:00", + "entry_price": 3.009099, + "exit_price": 3.026836, + "quantity": 3264.0, + "sl": 3.026836, + "tp": 2.9618, + "gross_pnl": -57.893469, + "entry_fee": 3.92868, + "exit_fee": 3.951837, + "net_pnl": -65.773986, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-13 08:45:00", + "entry_price": 3.121788, + "exit_price": 3.143446, + "quantity": 3197.5, + "sl": 3.143446, + "tp": 3.064033, + "gross_pnl": -69.251372, + "entry_fee": 3.992767, + "exit_fee": 4.020467, + "net_pnl": -77.264606, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 13:45:00", + "entry_price": 3.066993, + "exit_price": 3.033085, + "quantity": 3002.8, + "sl": 3.079709, + "tp": 3.033085, + "gross_pnl": 101.818765, + "entry_fee": 3.683827, + "exit_fee": 3.643099, + "net_pnl": 94.491838, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 14:45:00", + "entry_price": 2.971603, + "exit_price": 2.980986, + "quantity": 3353.4, + "sl": 2.980986, + "tp": 2.94658, + "gross_pnl": -31.466181, + "entry_fee": 3.985989, + "exit_fee": 3.998576, + "net_pnl": -39.450746, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:30:00", + "entry_price": 2.976198, + "exit_price": 2.955734, + "quantity": 3279.9, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -67.117005, + "entry_fee": 3.904652, + "exit_fee": 3.877805, + "net_pnl": -74.899463, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 3226.0, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -60.559206, + "entry_fee": 3.604372, + "exit_fee": 3.628596, + "net_pnl": -67.792174, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 22:00:00", + "exit_time": "2025-09-29 07:15:00", + "entry_price": 2.850785, + "exit_price": 2.885643, + "quantity": 2923.6, + "sl": 2.837713, + "tp": 2.885643, + "gross_pnl": 101.910302, + "entry_fee": 3.333822, + "exit_fee": 3.374586, + "net_pnl": 95.201894, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 69.94607598871028, + "macd_hist": 0.0002172037763433672, + "atr": 0.008714453238038499, + "adx": 45.96715774504039 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-10 10:30:00", + "exit_time": "2025-12-10 18:30:00", + "entry_price": 2.069993, + "exit_price": 2.080244, + "quantity": 4830.5, + "sl": 2.080244, + "tp": 2.042658, + "gross_pnl": -49.515419, + "entry_fee": 3.99964, + "exit_fee": 4.019447, + "net_pnl": -57.534506, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.038012691554805, + "macd_hist": -9.211636302669133e-05, + "atr": 0.0068337189344636114, + "adx": 28.943927763667713 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-12 16:00:00", + "exit_time": "2025-12-13 05:00:00", + "entry_price": 1.988899, + "exit_price": 2.037103, + "quantity": 4739.1, + "sl": 1.970822, + "tp": 2.037103, + "gross_pnl": 228.445099, + "entry_fee": 3.770236, + "exit_fee": 3.861614, + "net_pnl": 220.813249, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.182013495720106, + "macd_hist": -0.00643391832048344, + "atr": 0.01205108033747697, + "adx": 30.769786891839054 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-19 13:15:00", + "exit_time": "2025-12-19 15:15:00", + "entry_price": 1.878712, + "exit_price": 1.889911, + "quantity": 4978.2, + "sl": 1.889911, + "tp": 1.84885, + "gross_pnl": -55.748245, + "entry_fee": 3.741042, + "exit_fee": 3.763341, + "net_pnl": -63.252628, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.16547032772114, + "macd_hist": -4.5929936914913816e-05, + "atr": 0.007465649526915487, + "adx": 40.69667585881617 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 5284.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 136.657597, + "entry_fee": 3.872316, + "exit_fee": 3.926979, + "net_pnl": 128.858301, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.688435627302994, + "macd_hist": -0.0034657628634239823, + "atr": 0.006464530874639477, + "adx": 30.228290924248867 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 4787.6, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -31.976479, + "entry_fee": 3.565778, + "exit_fee": 3.552987, + "net_pnl": -39.095244, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 4818.6, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 137.806916, + "entry_fee": 3.67561, + "exit_fee": 3.730733, + "net_pnl": 130.400573, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 3981.9, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 9.922775, + "entry_fee": 3.251454, + "exit_fee": 3.247485, + "net_pnl": 3.423837, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 3971.2, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 116.983697, + "entry_fee": 3.238758, + "exit_fee": 3.285551, + "net_pnl": 110.459388, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 3 + } + ], + "validation": { + "overall": "FAIL", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (44.4%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (44.4%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (20.2%)" + }, + { + "name": "trade_frequency", + "passed": false, + "level": "WARNING", + "message": "월 평균 4.0건 < 5건 — 신호 생성 부족" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (1.94)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_231837.json b/results/xrpusdt/wf_backtest_20260322_231837.json new file mode 100644 index 0000000..c3e1e59 --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_231837.json @@ -0,0 +1,537 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 1.5, + "train_months": 6, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 16, + "total_pnl": -130.1928, + "return_pct": -13.02, + "win_rate": 25.0, + "avg_win": 65.5037, + "avg_loss": -32.684, + "payoff_ratio": 2.0, + "max_consecutive_losses": 5, + "profit_factor": 0.67, + "max_drawdown_pct": 19.46, + "sharpe_ratio": -34.26, + "total_fees": 61.4728, + "close_reasons": { + "TAKE_PROFIT": 4, + "STOP_LOSS": 11, + "REVERSE_SIGNAL": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2025-03-05 ~ 2025-09-05", + "test_period": "2025-09-05 ~ 2025-10-05", + "test_start": "2025-09-05T15:00:00", + "test_end": "2025-10-05T15:00:00", + "summary": { + "total_trades": 16, + "total_pnl": -130.1928, + "return_pct": -13.02, + "win_rate": 25.0, + "avg_win": 65.5037, + "avg_loss": -32.684, + "payoff_ratio": 2.0, + "max_consecutive_losses": 5, + "profit_factor": 0.67, + "max_drawdown_pct": 19.46, + "sharpe_ratio": -34.26, + "total_fees": 61.4728, + "close_reasons": { + "TAKE_PROFIT": 4, + "STOP_LOSS": 11, + "REVERSE_SIGNAL": 1 + } + }, + "market_context": { + "btc_return_pct": 11.2, + "eth_return_pct": 5.8, + "btc_avg_adx": 24.6, + "market_regime": "횡보", + "ls_ratio": null + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-05 19:45:00", + "exit_time": "2025-09-05 22:15:00", + "entry_price": 2.863514, + "exit_price": 2.815423, + "quantity": 1745.9, + "sl": 2.881548, + "tp": 2.815423, + "gross_pnl": 83.961134, + "entry_fee": 1.999763, + "exit_fee": 1.966179, + "net_pnl": 79.995191, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.8667614741176, + "macd_hist": 0.005566660638547516, + "atr": 0.012022614930199287, + "adx": 25.794325095274626 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-07 07:30:00", + "exit_time": "2025-09-07 10:15:00", + "entry_price": 2.831483, + "exit_price": 2.825709, + "quantity": 1724.2, + "sl": 2.825709, + "tp": 2.846882, + "gross_pnl": -9.956365, + "entry_fee": 1.952817, + "exit_fee": 1.948835, + "net_pnl": -13.858017, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 70.72939012092385, + "macd_hist": 0.00013947818915852105, + "atr": 0.0038496557346203194, + "adx": 25.87514662158794 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-07 14:15:00", + "exit_time": "2025-09-07 14:30:00", + "entry_price": 2.888611, + "exit_price": 2.907326, + "quantity": 1698.8, + "sl": 2.907326, + "tp": 2.838705, + "gross_pnl": -31.792912, + "entry_fee": 1.962869, + "exit_fee": 1.975586, + "net_pnl": -35.731367, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 76.27147788789821, + "macd_hist": 0.006331113894477991, + "atr": 0.012476615713124774, + "adx": 29.135371839765913 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-09 07:00:00", + "exit_time": "2025-09-09 07:15:00", + "entry_price": 3.009099, + "exit_price": 3.026836, + "quantity": 1649.5, + "sl": 3.026836, + "tp": 2.9618, + "gross_pnl": -29.257131, + "entry_fee": 1.985404, + "exit_fee": 1.997106, + "net_pnl": -33.239641, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.38194905544675, + "macd_hist": 0.006160466326798137, + "atr": 0.011824646391069867, + "adx": 28.105801823891394 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-12 20:45:00", + "exit_time": "2025-09-13 08:45:00", + "entry_price": 3.121788, + "exit_price": 3.143446, + "quantity": 1596.9, + "sl": 3.143446, + "tp": 3.064033, + "gross_pnl": -34.585619, + "entry_fee": 1.994073, + "exit_fee": 2.007907, + "net_pnl": -38.587599, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.88995114530964, + "macd_hist": 0.004793783646225545, + "atr": 0.014438649390670705, + "adx": 33.848649235778474 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-13 09:15:00", + "exit_time": "2025-09-13 09:45:00", + "entry_price": 3.161284, + "exit_price": 3.177886, + "quantity": 1516.0, + "sl": 3.177886, + "tp": 3.117011, + "gross_pnl": -25.169101, + "entry_fee": 1.917003, + "exit_fee": 1.92707, + "net_pnl": -29.013173, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.37053214953528, + "macd_hist": 0.00511253369858191, + "atr": 0.011068206025146562, + "adx": 36.52494916026817 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 11:15:00", + "exit_time": "2025-09-14 13:45:00", + "entry_price": 3.066993, + "exit_price": 3.033085, + "quantity": 1515.3, + "sl": 3.079709, + "tp": 3.033085, + "gross_pnl": 51.380703, + "entry_fee": 1.858966, + "exit_fee": 1.838414, + "net_pnl": 47.683323, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.419480021379645, + "macd_hist": -0.0003629091436070245, + "atr": 0.008476985221720718, + "adx": 31.882046477112183 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-14 23:15:00", + "exit_time": "2025-09-15 01:30:00", + "entry_price": 3.030497, + "exit_price": 3.044966, + "quantity": 1612.2, + "sl": 3.044966, + "tp": 2.991913, + "gross_pnl": -23.326699, + "entry_fee": 1.954307, + "exit_fee": 1.963638, + "net_pnl": -27.244643, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 41.86565415846166, + "macd_hist": -6.680085954976589e-05, + "atr": 0.009645907843496216, + "adx": 26.821083958033373 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-19 20:00:00", + "exit_time": "2025-09-20 06:30:00", + "entry_price": 2.988001, + "exit_price": 3.002469, + "quantity": 1589.5, + "sl": 3.002469, + "tp": 2.949422, + "gross_pnl": -22.995886, + "entry_fee": 1.899771, + "exit_fee": 1.908969, + "net_pnl": -26.804627, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.43471826247567, + "macd_hist": -0.00020348228213156426, + "atr": 0.009644913974796715, + "adx": 38.358109484089894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-20 14:00:00", + "exit_time": "2025-09-20 14:45:00", + "entry_price": 2.971603, + "exit_price": 2.980986, + "quantity": 1553.2, + "sl": 2.980986, + "tp": 2.94658, + "gross_pnl": -14.574245, + "entry_fee": 1.846197, + "exit_fee": 1.852027, + "net_pnl": -18.272469, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.09553473183674, + "macd_hist": -0.00018720159437711752, + "atr": 0.006255577606168083, + "adx": 28.84076206692945 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 14:15:00", + "exit_time": "2025-09-24 15:30:00", + "entry_price": 2.894089, + "exit_price": 2.929027, + "quantity": 1563.6, + "sl": 2.880988, + "tp": 2.929027, + "gross_pnl": 54.628771, + "entry_fee": 1.810079, + "exit_fee": 1.831931, + "net_pnl": 50.986761, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.07824522998891, + "macd_hist": 0.0002837479638076925, + "atr": 0.008734454267839082, + "adx": 33.216876327535196 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:00:00", + "entry_price": 2.976198, + "exit_price": 2.963004, + "quantity": 1606.1, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -21.190755, + "entry_fee": 1.912028, + "exit_fee": 1.903552, + "net_pnl": -25.006335, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 77.25608496751632, + "macd_hist": 0.00019635721897620986, + "atr": 0.013642083686890932, + "adx": 66.36435142210216 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-24 20:00:00", + "exit_time": "2025-09-25 01:00:00", + "entry_price": 2.963004, + "exit_price": 2.90759, + "quantity": 1570.7, + "sl": 2.983784, + "tp": 2.90759, + "gross_pnl": 87.037912, + "entry_fee": 1.861596, + "exit_fee": 1.826781, + "net_pnl": 83.349535, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.65458359619365, + "macd_hist": -7.427449332575442e-05, + "atr": 0.013853363423541577, + "adx": 67.76721468449082 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1784.3, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -33.495286, + "entry_fee": 1.993577, + "exit_fee": 2.006976, + "net_pnl": -37.495839, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149561284357, + "macd_hist": -0.0005773233003328118, + "atr": 0.012514818420656685, + "adx": 36.706433983392714 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-25 17:15:00", + "exit_time": "2025-09-25 17:30:00", + "entry_price": 2.769777, + "exit_price": 2.742807, + "quantity": 1763.4, + "sl": 2.742807, + "tp": 2.841698, + "gross_pnl": -47.559642, + "entry_fee": 1.95369, + "exit_fee": 1.934666, + "net_pnl": -51.447998, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.610683788190443, + "macd_hist": -0.006544986366080717, + "atr": 0.01798028133337769, + "adx": 26.44006928288656 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-25 17:45:00", + "exit_time": "2025-09-26 11:00:00", + "entry_price": 2.736174, + "exit_price": 2.705528, + "quantity": 1691.1, + "sl": 2.705528, + "tp": 2.817895, + "gross_pnl": -51.824893, + "entry_fee": 1.850857, + "exit_fee": 1.830127, + "net_pnl": -55.505877, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.044837785333744, + "macd_hist": -0.0090419871390266, + "atr": 0.020430446659902204, + "adx": 30.966856582892532 + }, + "fold": 1 + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (25.0%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (25.0%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (19.5%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 16.0건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.67)" + } + ] + } +} \ No newline at end of file diff --git a/results/xrpusdt/wf_backtest_20260322_232159.json b/results/xrpusdt/wf_backtest_20260322_232159.json new file mode 100644 index 0000000..d323a2f --- /dev/null +++ b/results/xrpusdt/wf_backtest_20260322_232159.json @@ -0,0 +1,3062 @@ +{ + "mode": "walk_forward", + "config": { + "symbols": [ + "XRPUSDT" + ], + "start": null, + "end": null, + "initial_balance": 1000.0, + "leverage": 10, + "fee_pct": 0.04, + "slippage_pct": 0.01, + "use_ml": false, + "ml_threshold": 0.55, + "max_daily_loss_pct": 0.05, + "max_positions": 3, + "max_same_direction": 2, + "margin_max_ratio": 0.5, + "margin_min_ratio": 0.2, + "margin_decay_rate": 0.0006, + "atr_sl_mult": 1.5, + "atr_tp_mult": 4.0, + "min_notional": 5.0, + "signal_threshold": 3, + "adx_threshold": 25.0, + "volume_multiplier": 1.5, + "train_months": 3, + "test_months": 1, + "time_weight_decay": 2.0, + "negative_ratio": 3 + }, + "summary": { + "total_trades": 113, + "total_pnl": -372.2948, + "return_pct": -37.23, + "win_rate": 30.97, + "avg_win": 83.1153, + "avg_loss": -42.0683, + "payoff_ratio": 1.98, + "max_consecutive_losses": 8, + "profit_factor": 0.89, + "max_drawdown_pct": 97.06, + "sharpe_ratio": -9.13, + "total_fees": 419.3874, + "close_reasons": { + "STOP_LOSS": 75, + "TAKE_PROFIT": 30, + "REVERSE_SIGNAL": 7, + "END_OF_DATA": 1 + } + }, + "folds": [ + { + "fold": 1, + "train_period": "2024-03-22 ~ 2024-06-22", + "test_period": "2024-06-22 ~ 2024-07-22", + "test_start": "2024-06-22T14:30:00", + "test_end": "2024-07-22T14:30:00", + "summary": { + "total_trades": 15, + "total_pnl": -88.138, + "return_pct": -8.81, + "win_rate": 26.67, + "avg_win": 62.0445, + "avg_loss": -30.5742, + "payoff_ratio": 2.03, + "max_consecutive_losses": 5, + "profit_factor": 0.74, + "max_drawdown_pct": 15.7, + "sharpe_ratio": -24.67, + "total_fees": 54.4223, + "close_reasons": { + "STOP_LOSS": 9, + "TAKE_PROFIT": 3, + "REVERSE_SIGNAL": 3 + } + }, + "market_context": { + "btc_return_pct": 4.1, + "eth_return_pct": -1.4, + "btc_avg_adx": 29.8, + "market_regime": "상승 추세", + "ls_ratio": null + } + }, + { + "fold": 2, + "train_period": "2024-06-22 ~ 2024-09-22", + "test_period": "2024-09-22 ~ 2024-10-22", + "test_start": "2024-09-22T14:30:00", + "test_end": "2024-10-22T14:30:00", + "summary": { + "total_trades": 17, + "total_pnl": -21.3407, + "return_pct": -2.13, + "win_rate": 29.41, + "avg_win": 85.9569, + "avg_loss": -37.5938, + "payoff_ratio": 2.29, + "max_consecutive_losses": 4, + "profit_factor": 0.95, + "max_drawdown_pct": 18.99, + "sharpe_ratio": -4.0, + "total_fees": 64.1155, + "close_reasons": { + "STOP_LOSS": 12, + "TAKE_PROFIT": 5 + } + }, + "market_context": { + "btc_return_pct": 7.3, + "eth_return_pct": 2.2, + "btc_avg_adx": 26.1, + "market_regime": "상승 추세", + "ls_ratio": null + } + }, + { + "fold": 3, + "train_period": "2024-09-22 ~ 2024-12-22", + "test_period": "2024-12-22 ~ 2025-01-22", + "test_start": "2024-12-22T14:30:00", + "test_end": "2025-01-22T14:30:00", + "summary": { + "total_trades": 11, + "total_pnl": -248.2025, + "return_pct": -24.82, + "win_rate": 27.27, + "avg_win": 111.3335, + "avg_loss": -72.7754, + "payoff_ratio": 1.53, + "max_consecutive_losses": 6, + "profit_factor": 0.57, + "max_drawdown_pct": 37.43, + "sharpe_ratio": -49.44, + "total_fees": 41.9402, + "close_reasons": { + "STOP_LOSS": 8, + "TAKE_PROFIT": 3 + } + }, + "market_context": { + "btc_return_pct": 9.2, + "eth_return_pct": -0.2, + "btc_avg_adx": 26.3, + "market_regime": "상승 추세", + "ls_ratio": null + } + }, + { + "fold": 4, + "train_period": "2024-12-22 ~ 2025-03-22", + "test_period": "2025-03-22 ~ 2025-04-22", + "test_start": "2025-03-22T14:30:00", + "test_end": "2025-04-22T14:30:00", + "summary": { + "total_trades": 15, + "total_pnl": -159.9161, + "return_pct": -15.99, + "win_rate": 26.67, + "avg_win": 100.5431, + "avg_loss": -51.099, + "payoff_ratio": 1.97, + "max_consecutive_losses": 5, + "profit_factor": 0.72, + "max_drawdown_pct": 25.53, + "sharpe_ratio": -27.65, + "total_fees": 54.3911, + "close_reasons": { + "TAKE_PROFIT": 4, + "STOP_LOSS": 11 + } + }, + "market_context": { + "btc_return_pct": 7.3, + "eth_return_pct": -17.3, + "btc_avg_adx": 25.4, + "market_regime": "상승 추세", + "ls_ratio": null + } + }, + { + "fold": 5, + "train_period": "2025-03-22 ~ 2025-06-22", + "test_period": "2025-06-22 ~ 2025-07-22", + "test_start": "2025-06-22T14:30:00", + "test_end": "2025-07-22T14:30:00", + "summary": { + "total_trades": 15, + "total_pnl": -371.2895, + "return_pct": -37.13, + "win_rate": 13.33, + "avg_win": 42.2656, + "avg_loss": -35.0631, + "payoff_ratio": 1.21, + "max_consecutive_losses": 8, + "profit_factor": 0.19, + "max_drawdown_pct": 34.3, + "sharpe_ratio": -158.06, + "total_fees": 51.0211, + "close_reasons": { + "STOP_LOSS": 13, + "REVERSE_SIGNAL": 1, + "TAKE_PROFIT": 1 + } + }, + "market_context": { + "btc_return_pct": 19.5, + "eth_return_pct": 68.1, + "btc_avg_adx": 23.6, + "market_regime": "횡보", + "ls_ratio": null + } + }, + { + "fold": 6, + "train_period": "2025-06-22 ~ 2025-09-22", + "test_period": "2025-09-22 ~ 2025-10-22", + "test_start": "2025-09-22T14:30:00", + "test_end": "2025-10-22T14:30:00", + "summary": { + "total_trades": 21, + "total_pnl": 186.1486, + "return_pct": 18.61, + "win_rate": 38.1, + "avg_win": 87.2209, + "avg_loss": -39.3553, + "payoff_ratio": 2.22, + "max_consecutive_losses": 3, + "profit_factor": 1.36, + "max_drawdown_pct": 17.73, + "sharpe_ratio": 19.89, + "total_fees": 80.5266, + "close_reasons": { + "TAKE_PROFIT": 6, + "REVERSE_SIGNAL": 2, + "STOP_LOSS": 12, + "END_OF_DATA": 1 + } + }, + "market_context": { + "btc_return_pct": -4.5, + "eth_return_pct": -9.2, + "btc_avg_adx": 26.7, + "market_regime": "하락 추세", + "ls_ratio": null + } + }, + { + "fold": 7, + "train_period": "2025-09-22 ~ 2025-12-22", + "test_period": "2025-12-22 ~ 2026-01-22", + "test_start": "2025-12-22T14:30:00", + "test_end": "2026-01-22T14:30:00", + "summary": { + "total_trades": 19, + "total_pnl": 330.4435, + "return_pct": 33.04, + "win_rate": 47.37, + "avg_win": 79.178, + "avg_loss": -38.2158, + "payoff_ratio": 2.07, + "max_consecutive_losses": 4, + "profit_factor": 1.86, + "max_drawdown_pct": 15.79, + "sharpe_ratio": 48.29, + "total_fees": 72.9707, + "close_reasons": { + "TAKE_PROFIT": 8, + "STOP_LOSS": 10, + "REVERSE_SIGNAL": 1 + } + }, + "market_context": { + "btc_return_pct": -0.3, + "eth_return_pct": -2.4, + "btc_avg_adx": 24.2, + "market_regime": "횡보", + "ls_ratio": null + } + } + ], + "trades": [ + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-23 20:30:00", + "exit_time": "2024-06-23 20:45:00", + "entry_price": 0.478352, + "exit_price": 0.480726, + "quantity": 10451.5, + "sl": 0.480726, + "tp": 0.472021, + "gross_pnl": -24.81444, + "entry_fee": 1.999799, + "exit_fee": 2.009725, + "net_pnl": -28.823964, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.491717143602305, + "macd_hist": -7.08330386432665e-05, + "atr": 0.0015828311892138935, + "adx": 47.4866510790048 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-26 14:30:00", + "exit_time": "2024-06-27 12:30:00", + "entry_price": 0.471153, + "exit_price": 0.473846, + "quantity": 10305.3, + "sl": 0.473846, + "tp": 0.463972, + "gross_pnl": -27.750142, + "entry_fee": 1.942149, + "exit_fee": 1.953249, + "net_pnl": -31.645539, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 38.99821353333206, + "macd_hist": -7.475713868402744e-05, + "atr": 0.0017952019348577905, + "adx": 26.899382298085538 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-28 21:00:00", + "exit_time": "2024-06-29 02:00:00", + "entry_price": 0.471253, + "exit_price": 0.473975, + "quantity": 9967.4, + "sl": 0.473975, + "tp": 0.463993, + "gross_pnl": -27.134771, + "entry_fee": 1.878866, + "exit_fee": 1.88972, + "net_pnl": -30.903358, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 35.5533806680514, + "macd_hist": -5.805707079456967e-05, + "atr": 0.0018149013328670428, + "adx": 34.42000925008125 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 02:15:00", + "exit_time": "2024-06-30 06:45:00", + "entry_price": 0.471153, + "exit_price": 0.472325, + "quantity": 9641.6, + "sl": 0.472325, + "tp": 0.468029, + "gross_pnl": -11.29633, + "entry_fee": 1.817067, + "exit_fee": 1.821586, + "net_pnl": -14.934983, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.525592632615417, + "macd_hist": -3.767931130206837e-05, + "atr": 0.0007810826673109419, + "adx": 28.240441887583405 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-06-30 07:15:00", + "exit_time": "2024-06-30 22:15:00", + "entry_price": 0.474952, + "exit_price": 0.476317, + "quantity": 9407.3, + "sl": 0.476317, + "tp": 0.471314, + "gross_pnl": -12.835125, + "entry_fee": 1.787208, + "exit_fee": 1.792342, + "net_pnl": -16.414676, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.60961611773493, + "macd_hist": 0.0005367101100488206, + "atr": 0.0009095861692836191, + "adx": 31.112468905989335 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-01 01:00:00", + "exit_time": "2024-07-01 11:00:00", + "entry_price": 0.478148, + "exit_price": 0.482697, + "quantity": 9174.6, + "sl": 0.476442, + "tp": 0.482697, + "gross_pnl": 41.735942, + "entry_fee": 1.754726, + "exit_fee": 1.77142, + "net_pnl": 38.209796, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 65.76067306211799, + "macd_hist": 6.507924242540961e-05, + "atr": 0.0011372687122450913, + "adx": 28.97199151599414 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-02 10:00:00", + "exit_time": "2024-07-02 10:15:00", + "entry_price": 0.485151, + "exit_price": 0.487587, + "quantity": 9434.1, + "sl": 0.487587, + "tp": 0.478656, + "gross_pnl": -22.979791, + "entry_fee": 1.830787, + "exit_fee": 1.839979, + "net_pnl": -26.650557, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.75641351024454, + "macd_hist": 0.0003589450063014273, + "atr": 0.0016238815322322604, + "adx": 33.831692422670095 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-03 13:00:00", + "exit_time": "2024-07-03 15:00:00", + "entry_price": 0.475448, + "exit_price": 0.472191, + "quantity": 9348.3, + "sl": 0.472191, + "tp": 0.484132, + "gross_pnl": -30.442968, + "entry_fee": 1.77785, + "exit_fee": 1.765673, + "net_pnl": -33.986492, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.87418324078447, + "macd_hist": -0.0009564603177390752, + "atr": 0.0021710163368403694, + "adx": 30.65413862217531 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-03 19:15:00", + "exit_time": "2024-07-03 23:30:00", + "entry_price": 0.463654, + "exit_price": 0.467199, + "quantity": 9217.7, + "sl": 0.467199, + "tp": 0.454198, + "gross_pnl": -32.683436, + "entry_fee": 1.709528, + "exit_fee": 1.722601, + "net_pnl": -36.115565, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.208484000188026, + "macd_hist": -8.026242908445221e-05, + "atr": 0.0023638171429734797, + "adx": 55.87468587311063 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 01:30:00", + "exit_time": "2024-07-04 01:45:00", + "entry_price": 0.460054, + "exit_price": 0.450732, + "quantity": 8897.4, + "sl": 0.46355, + "tp": 0.450732, + "gross_pnl": 82.937535, + "entry_fee": 1.637314, + "exit_fee": 1.604139, + "net_pnl": 79.696082, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.595329556138626, + "macd_hist": -0.00022715148296323807, + "atr": 0.0023303868245048856, + "adx": 35.11074783148305 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 02:00:00", + "exit_time": "2024-07-04 07:45:00", + "entry_price": 0.455246, + "exit_price": 0.454255, + "quantity": 9868.5, + "sl": 0.449522, + "tp": 0.470507, + "gross_pnl": -9.77919, + "entry_fee": 1.797036, + "exit_fee": 1.793124, + "net_pnl": -13.369351, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 23.6739827017424, + "macd_hist": -0.0011505379665372067, + "atr": 0.003815486598680227, + "adx": 40.700379377218894 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 07:45:00", + "exit_time": "2024-07-04 09:00:00", + "entry_price": 0.454255, + "exit_price": 0.450345, + "quantity": 9740.9, + "sl": 0.45761, + "tp": 0.445306, + "gross_pnl": 38.082438, + "entry_fee": 1.769939, + "exit_fee": 1.754706, + "net_pnl": 34.557792, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 33.006505136265666, + "macd_hist": -0.00010398361708049519, + "atr": 0.002237256458486821, + "adx": 53.778781916237826 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-04 09:00:00", + "exit_time": "2024-07-04 12:45:00", + "entry_price": 0.450345, + "exit_price": 0.446555, + "quantity": 10211.2, + "sl": 0.446286, + "tp": 0.461168, + "gross_pnl": -38.697283, + "entry_fee": 1.839425, + "exit_fee": 1.823946, + "net_pnl": -42.360654, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 27.371042958589918, + "macd_hist": -0.00042826397188264675, + "atr": 0.0027057702189581517, + "adx": 61.478270351672215 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-07-04 12:45:00", + "exit_time": "2024-07-04 18:15:00", + "entry_price": 0.446555, + "exit_price": 0.436457, + "quantity": 9821.5, + "sl": 0.450342, + "tp": 0.436457, + "gross_pnl": 99.183295, + "entry_fee": 1.754337, + "exit_fee": 1.714664, + "net_pnl": 95.714294, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 30.489617919092165, + "macd_hist": -4.498234515933823e-05, + "atr": 0.002524647338749928, + "adx": 54.27274226492435 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-07-05 00:15:00", + "exit_time": "2024-07-05 00:30:00", + "entry_price": 0.428443, + "exit_price": 0.423402, + "quantity": 11355.9, + "sl": 0.423402, + "tp": 0.441885, + "gross_pnl": -57.241459, + "entry_fee": 1.946142, + "exit_fee": 1.923245, + "net_pnl": -61.110846, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 23.517093170126863, + "macd_hist": -0.0017713683462980624, + "atr": 0.003360453404026037, + "adx": 31.710492542467836 + }, + "fold": 1 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-09-23 00:00:00", + "exit_time": "2024-09-23 00:30:00", + "entry_price": 0.581642, + "exit_price": 0.586007, + "quantity": 8595.5, + "sl": 0.586007, + "tp": 0.570001, + "gross_pnl": -37.523314, + "entry_fee": 1.999801, + "exit_fee": 2.01481, + "net_pnl": -41.537925, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.84444798235739, + "macd_hist": -0.0002192118027973494, + "atr": 0.0029103068847783115, + "adx": 26.778951587798336 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-26 15:30:00", + "exit_time": "2024-09-26 20:15:00", + "entry_price": 0.592659, + "exit_price": 0.589433, + "quantity": 8086.9, + "sl": 0.589433, + "tp": 0.601262, + "gross_pnl": -26.088618, + "entry_fee": 1.91711, + "exit_fee": 1.906675, + "net_pnl": -29.912404, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.74389083460167, + "macd_hist": 3.833517817369836e-05, + "atr": 0.002150689637948265, + "adx": 32.40803059538277 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-27 02:15:00", + "exit_time": "2024-09-27 06:00:00", + "entry_price": 0.584058, + "exit_price": 0.592001, + "quantity": 7949.9, + "sl": 0.58108, + "tp": 0.592001, + "gross_pnl": 63.145896, + "entry_fee": 1.857282, + "exit_fee": 1.882541, + "net_pnl": 59.406073, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 29.07012651992498, + "macd_hist": -0.00048734635309268545, + "atr": 0.001985744986357164, + "adx": 25.448207741166794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-28 07:30:00", + "exit_time": "2024-09-28 07:45:00", + "entry_price": 0.606861, + "exit_price": 0.602816, + "quantity": 8140.7, + "sl": 0.602816, + "tp": 0.617647, + "gross_pnl": -32.92877, + "entry_fee": 1.976108, + "exit_fee": 1.962937, + "net_pnl": -36.867815, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 82.85200040342998, + "macd_hist": 0.0011043234578293811, + "atr": 0.0026966370402808403, + "adx": 29.50978336553401 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-09-30 15:45:00", + "exit_time": "2024-09-30 23:30:00", + "entry_price": 0.617662, + "exit_price": 0.611388, + "quantity": 7699.9, + "sl": 0.611388, + "tp": 0.634391, + "gross_pnl": -48.305413, + "entry_fee": 1.902374, + "exit_fee": 1.883051, + "net_pnl": -52.090838, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.147106036547562, + "macd_hist": -0.0005706550748175564, + "atr": 0.00418234117076767, + "adx": 29.5492823585223 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-01 13:45:00", + "exit_time": "2024-10-01 14:30:00", + "entry_price": 0.618062, + "exit_price": 0.612527, + "quantity": 7273.4, + "sl": 0.612527, + "tp": 0.632822, + "gross_pnl": -40.257849, + "entry_fee": 1.798164, + "exit_fee": 1.782061, + "net_pnl": -43.838075, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.78631519476807, + "macd_hist": -0.0016775151566862869, + "atr": 0.00368996152038801, + "adx": 29.325570152476693 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-02 13:15:00", + "exit_time": "2024-10-02 13:45:00", + "entry_price": 0.579042, + "exit_price": 0.585994, + "quantity": 7383.5, + "sl": 0.585994, + "tp": 0.560504, + "gross_pnl": -51.327959, + "entry_fee": 1.710143, + "exit_fee": 1.730674, + "net_pnl": -54.768776, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.871000841817633, + "macd_hist": -0.00031676776837148875, + "atr": 0.004634474071640336, + "adx": 29.476520652376976 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-03 07:15:00", + "exit_time": "2024-10-03 08:45:00", + "entry_price": 0.528547, + "exit_price": 0.510478, + "quantity": 7570.8, + "sl": 0.535323, + "tp": 0.510478, + "gross_pnl": 136.798092, + "entry_fee": 1.60061, + "exit_fee": 1.545891, + "net_pnl": 133.651591, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 33.22821417290079, + "macd_hist": -0.00015560597765922664, + "atr": 0.004517293144658667, + "adx": 31.070279662805287 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-08 05:15:00", + "exit_time": "2024-10-08 13:45:00", + "entry_price": 0.528447, + "exit_price": 0.531511, + "quantity": 8836.7, + "sl": 0.531511, + "tp": 0.520276, + "gross_pnl": -27.077005, + "entry_fee": 1.867892, + "exit_fee": 1.878722, + "net_pnl": -30.823619, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.34212225136453, + "macd_hist": -3.0846921906570895e-05, + "atr": 0.0020427690090501333, + "adx": 38.24473950774181 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-09 21:00:00", + "exit_time": "2024-10-10 12:45:00", + "entry_price": 0.523552, + "exit_price": 0.532566, + "quantity": 8626.7, + "sl": 0.520172, + "tp": 0.532566, + "gross_pnl": 77.759288, + "entry_fee": 1.806612, + "exit_fee": 1.837715, + "net_pnl": 74.114961, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 31.454691492372636, + "macd_hist": -0.0007854580165568292, + "atr": 0.0022534482398293937, + "adx": 36.53130511718127 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 14:45:00", + "exit_time": "2024-10-13 17:00:00", + "entry_price": 0.528147, + "exit_price": 0.530216, + "quantity": 9251.5, + "sl": 0.530216, + "tp": 0.522631, + "gross_pnl": -19.138784, + "entry_fee": 1.954461, + "exit_fee": 1.962117, + "net_pnl": -23.055363, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.88843167709228, + "macd_hist": -0.0001630135760283223, + "atr": 0.0013791482036423013, + "adx": 47.550094533480575 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-13 18:00:00", + "exit_time": "2024-10-13 18:30:00", + "entry_price": 0.525047, + "exit_price": 0.527379, + "quantity": 9086.6, + "sl": 0.527379, + "tp": 0.51883, + "gross_pnl": -21.187547, + "entry_fee": 1.908359, + "exit_fee": 1.916834, + "net_pnl": -25.012739, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.35926176741438, + "macd_hist": -5.292246561196994e-05, + "atr": 0.0015544902422929224, + "adx": 44.325523365020985 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-15 12:00:00", + "exit_time": "2024-10-15 13:45:00", + "entry_price": 0.537254, + "exit_price": 0.547129, + "quantity": 8649.2, + "sl": 0.533551, + "tp": 0.547129, + "gross_pnl": 85.411723, + "entry_fee": 1.858726, + "exit_fee": 1.892891, + "net_pnl": 81.660107, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.29070307365847, + "macd_hist": -0.0008988275796488791, + "atr": 0.002468775246545926, + "adx": 34.09440900943998 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-15 15:00:00", + "exit_time": "2024-10-15 16:15:00", + "entry_price": 0.536846, + "exit_price": 0.542669, + "quantity": 9291.0, + "sl": 0.542669, + "tp": 0.521319, + "gross_pnl": -54.098414, + "entry_fee": 1.995136, + "exit_fee": 2.016775, + "net_pnl": -58.110325, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.18456557470589, + "macd_hist": -0.0001382342968513381, + "atr": 0.0038817790786693724, + "adx": 30.067214132155794 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-17 05:00:00", + "exit_time": "2024-10-17 07:15:00", + "entry_price": 0.562744, + "exit_price": 0.552734, + "quantity": 8465.0, + "sl": 0.566497, + "tp": 0.552734, + "gross_pnl": 84.728713, + "entry_fee": 1.90545, + "exit_fee": 1.871559, + "net_pnl": 80.951704, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 82.402697566711, + "macd_hist": 0.0016098816438824275, + "atr": 0.0025023246477621428, + "adx": 25.396911846891946 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-10-18 00:30:00", + "exit_time": "2024-10-18 01:45:00", + "entry_price": 0.541546, + "exit_price": 0.544815, + "quantity": 9156.9, + "sl": 0.544815, + "tp": 0.532828, + "gross_pnl": -29.935062, + "entry_fee": 1.983552, + "exit_fee": 1.995526, + "net_pnl": -33.914141, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.082324232763774, + "macd_hist": -6.286428097397536e-05, + "atr": 0.002179417519396399, + "adx": 32.48962700096678 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-10-19 17:00:00", + "exit_time": "2024-10-20 07:45:00", + "entry_price": 0.541654, + "exit_price": 0.539791, + "quantity": 9230.5, + "sl": 0.539791, + "tp": 0.546623, + "gross_pnl": -17.200249, + "entry_fee": 1.999895, + "exit_fee": 1.993015, + "net_pnl": -21.19316, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.157482568146705, + "macd_hist": -0.00026267552223536745, + "atr": 0.001242276438840268, + "adx": 29.510676281554773 + }, + "fold": 2 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-22 22:00:00", + "exit_time": "2024-12-22 23:00:00", + "entry_price": 2.183882, + "exit_price": 2.215103, + "quantity": 2289.3, + "sl": 2.215103, + "tp": 2.100625, + "gross_pnl": -71.474699, + "entry_fee": 1.999824, + "exit_fee": 2.028414, + "net_pnl": -75.502937, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 37.56603493199918, + "macd_hist": -0.0007085494191682515, + "atr": 0.020814134966468525, + "adx": 30.689177785970664 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-26 08:00:00", + "exit_time": "2024-12-26 12:30:00", + "entry_price": 2.207779, + "exit_price": 2.155028, + "quantity": 2093.5, + "sl": 2.227561, + "tp": 2.155028, + "gross_pnl": 110.434804, + "entry_fee": 1.848794, + "exit_fee": 1.80462, + "net_pnl": 106.78139, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 20.847634534969806, + "macd_hist": -0.002074545106989994, + "atr": 0.013187819966660519, + "adx": 36.58781816188853 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-27 00:15:00", + "exit_time": "2024-12-27 01:30:00", + "entry_price": 2.148785, + "exit_price": 2.17172, + "quantity": 2309.4, + "sl": 2.17172, + "tp": 2.087625, + "gross_pnl": -52.966391, + "entry_fee": 1.984962, + "exit_fee": 2.006148, + "net_pnl": -56.957501, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 44.49281158779735, + "macd_hist": -4.593038955999582e-05, + "atr": 0.015290087232096381, + "adx": 34.4863098126016 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2024-12-29 20:00:00", + "exit_time": "2024-12-29 22:00:00", + "entry_price": 2.131187, + "exit_price": 2.097206, + "quantity": 2285.6, + "sl": 2.14393, + "tp": 2.097206, + "gross_pnl": 77.66667, + "entry_fee": 1.948416, + "exit_fee": 1.91735, + "net_pnl": 73.800904, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.953090598025184, + "macd_hist": -0.00017778944132269044, + "atr": 0.008495216823010585, + "adx": 38.96160093666712 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2024-12-31 17:30:00", + "exit_time": "2025-01-01 05:45:00", + "entry_price": 2.076308, + "exit_price": 2.142497, + "quantity": 2378.5, + "sl": 2.051487, + "tp": 2.142497, + "gross_pnl": 157.431951, + "entry_fee": 1.975399, + "exit_fee": 2.038372, + "net_pnl": 153.41818, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 34.80163971454993, + "macd_hist": -0.006660239875255734, + "atr": 0.016547398672699016, + "adx": 28.85261165636253 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-02 00:00:00", + "exit_time": "2025-01-02 06:15:00", + "entry_price": 2.388539, + "exit_price": 2.350402, + "quantity": 1907.1, + "sl": 2.350402, + "tp": 2.490236, + "gross_pnl": -72.730096, + "entry_fee": 1.822073, + "exit_fee": 1.792981, + "net_pnl": -76.34515, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.14854348123936, + "macd_hist": 0.0003992027224582438, + "atr": 0.02542432540103756, + "adx": 38.02238241981701 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-01-07 15:45:00", + "exit_time": "2025-01-07 19:30:00", + "entry_price": 2.312531, + "exit_price": 2.268357, + "quantity": 2067.5, + "sl": 2.268357, + "tp": 2.43033, + "gross_pnl": -91.331037, + "entry_fee": 1.912463, + "exit_fee": 1.875931, + "net_pnl": -95.119431, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 24.656159507574344, + "macd_hist": -0.013730874846180265, + "atr": 0.029449749992207397, + "adx": 33.13769209387363 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-11 11:15:00", + "exit_time": "2025-01-11 11:30:00", + "entry_price": 2.393061, + "exit_price": 2.409205, + "quantity": 2074.3, + "sl": 2.409205, + "tp": 2.35001, + "gross_pnl": -33.487198, + "entry_fee": 1.98557, + "exit_fee": 1.998965, + "net_pnl": -37.471733, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.18009898180135, + "macd_hist": 0.004387496267323112, + "atr": 0.01076256975755226, + "adx": 25.515221310492333 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-14 18:00:00", + "exit_time": "2025-01-15 01:15:00", + "entry_price": 2.688231, + "exit_price": 2.725569, + "quantity": 1846.0, + "sl": 2.725569, + "tp": 2.588664, + "gross_pnl": -68.925237, + "entry_fee": 1.98499, + "exit_fee": 2.01256, + "net_pnl": -72.922787, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 77.67336537162626, + "macd_hist": 0.010612430315527378, + "atr": 0.024891743341113107, + "adx": 30.13229172873639 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-16 12:15:00", + "exit_time": "2025-01-16 12:45:00", + "entry_price": 3.252375, + "exit_price": 3.323771, + "quantity": 1413.7, + "sl": 3.323771, + "tp": 3.061984, + "gross_pnl": -100.933349, + "entry_fee": 1.839153, + "exit_fee": 1.879526, + "net_pnl": -104.652028, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.55705035368399, + "macd_hist": 0.014204772585346848, + "atr": 0.047597721867285406, + "adx": 26.491724347604592 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-01-17 17:45:00", + "exit_time": "2025-01-17 19:00:00", + "entry_price": 3.186281, + "exit_price": 3.233159, + "quantity": 1278.8, + "sl": 3.233159, + "tp": 3.061273, + "gross_pnl": -59.947727, + "entry_fee": 1.629847, + "exit_fee": 1.653826, + "net_pnl": -63.231399, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.46005824098094, + "macd_hist": -0.0015153767527016637, + "atr": 0.0312520731691356, + "adx": 31.26575263535739 + }, + "fold": 3 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-22 21:30:00", + "exit_time": "2025-03-23 03:30:00", + "entry_price": 2.360036, + "exit_price": 2.390838, + "quantity": 2118.8, + "sl": 2.348485, + "tp": 2.390838, + "gross_pnl": 65.263145, + "entry_fee": 2.000178, + "exit_fee": 2.026283, + "net_pnl": 61.236684, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.843681552166668, + "macd_hist": -0.002162544191465571, + "atr": 0.007700484363065412, + "adx": 25.694963192477328 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-03-26 13:45:00", + "exit_time": "2025-03-26 14:30:00", + "entry_price": 2.415342, + "exit_price": 2.399559, + "quantity": 2035.6, + "sl": 2.399559, + "tp": 2.457429, + "gross_pnl": -32.127777, + "entry_fee": 1.966668, + "exit_fee": 1.953817, + "net_pnl": -36.048261, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.927299461743615, + "macd_hist": -0.004175927274053651, + "atr": 0.010521967932285683, + "adx": 28.193491401330913 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-28 14:00:00", + "exit_time": "2025-03-28 23:00:00", + "entry_price": 2.182782, + "exit_price": 2.208772, + "quantity": 2277.1, + "sl": 2.208772, + "tp": 2.113475, + "gross_pnl": -59.18176, + "entry_fee": 1.988165, + "exit_fee": 2.011838, + "net_pnl": -63.181762, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.28769780364449, + "macd_hist": -0.0005853266624556361, + "atr": 0.01732664639688353, + "adx": 41.5267495654462 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-03-29 09:30:00", + "exit_time": "2025-03-29 13:00:00", + "entry_price": 2.091091, + "exit_price": 2.117184, + "quantity": 2300.0, + "sl": 2.117184, + "tp": 2.02151, + "gross_pnl": -60.013124, + "entry_fee": 1.923804, + "exit_fee": 1.947809, + "net_pnl": -63.884736, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.5299317993386, + "macd_hist": -0.0016272252554855211, + "atr": 0.017395108299016367, + "adx": 35.60495925685308 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-02 02:00:00", + "exit_time": "2025-04-02 05:45:00", + "entry_price": 2.090609, + "exit_price": 2.070463, + "quantity": 2148.2, + "sl": 2.070463, + "tp": 2.144332, + "gross_pnl": -43.278167, + "entry_fee": 1.796419, + "exit_fee": 1.779107, + "net_pnl": -46.853693, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.415272650543557, + "macd_hist": -0.0038881862305720294, + "atr": 0.013430831024751285, + "adx": 26.024817307471817 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-02 15:45:00", + "exit_time": "2025-04-02 20:15:00", + "entry_price": 2.171583, + "exit_price": 2.200936, + "quantity": 1959.8, + "sl": 2.200936, + "tp": 2.093307, + "gross_pnl": -57.526809, + "entry_fee": 1.702347, + "exit_fee": 1.725358, + "net_pnl": -60.954514, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.48489344108211, + "macd_hist": 0.006383101194273911, + "atr": 0.019568938595755286, + "adx": 28.119602262060774 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-03 12:15:00", + "exit_time": "2025-04-03 14:45:00", + "entry_price": 2.016898, + "exit_price": 1.956939, + "quantity": 1959.0, + "sl": 2.039383, + "tp": 1.956939, + "gross_pnl": 117.459957, + "entry_fee": 1.580442, + "exit_fee": 1.533458, + "net_pnl": 114.346058, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 39.0031761939588, + "macd_hist": -0.00027555783529762453, + "atr": 0.01498978519243727, + "adx": 29.63100718549373 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-06 07:45:00", + "exit_time": "2025-04-06 11:15:00", + "entry_price": 2.092709, + "exit_price": 2.078513, + "quantity": 2161.7, + "sl": 2.078513, + "tp": 2.130565, + "gross_pnl": -30.687238, + "entry_fee": 1.809524, + "exit_fee": 1.797249, + "net_pnl": -34.294011, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.245258786031886, + "macd_hist": -0.0038718874734419905, + "atr": 0.009463921412830475, + "adx": 33.35222458485207 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-06 12:45:00", + "exit_time": "2025-04-06 14:45:00", + "entry_price": 2.068593, + "exit_price": 2.08207, + "quantity": 2103.6, + "sl": 2.08207, + "tp": 2.032655, + "gross_pnl": -28.349828, + "entry_fee": 1.740597, + "exit_fee": 1.751937, + "net_pnl": -31.842362, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.44187643624886, + "macd_hist": -0.0003340793121479231, + "atr": 0.008984543305144668, + "adx": 43.8674321713198 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 12:00:00", + "exit_time": "2025-04-08 16:15:00", + "entry_price": 1.952805, + "exit_price": 1.879673, + "quantity": 2146.8, + "sl": 1.980229, + "tp": 1.879673, + "gross_pnl": 156.999882, + "entry_fee": 1.676912, + "exit_fee": 1.614112, + "net_pnl": 153.708857, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 73.41350187407278, + "macd_hist": 0.010090522420784207, + "atr": 0.01828301215814375, + "adx": 26.85765122231918 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-08 22:30:00", + "exit_time": "2025-04-09 07:00:00", + "entry_price": 1.791621, + "exit_price": 1.828212, + "quantity": 2768.8, + "sl": 1.828212, + "tp": 1.694043, + "gross_pnl": -101.314719, + "entry_fee": 1.984256, + "exit_fee": 2.024782, + "net_pnl": -105.323756, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 35.80869107403792, + "macd_hist": -0.00034717039282800705, + "atr": 0.024394375095955108, + "adx": 39.27079059977307 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-11 09:30:00", + "exit_time": "2025-04-11 13:00:00", + "entry_price": 2.013801, + "exit_price": 1.995715, + "quantity": 2202.3, + "sl": 1.995715, + "tp": 2.06203, + "gross_pnl": -39.830579, + "entry_fee": 1.773998, + "exit_fee": 1.758066, + "net_pnl": -43.362642, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 61.577008105899495, + "macd_hist": 0.00034992669366544146, + "atr": 0.012057267054504208, + "adx": 32.83129067583315 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-12 13:00:00", + "exit_time": "2025-04-12 13:30:00", + "entry_price": 2.085709, + "exit_price": 2.123429, + "quantity": 2022.4, + "sl": 2.071563, + "tp": 2.123429, + "gross_pnl": 76.2859, + "entry_fee": 1.687255, + "exit_fee": 1.717769, + "net_pnl": 72.880876, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.08975614304354, + "macd_hist": 0.0004691893650785872, + "atr": 0.009430120184239851, + "adx": 41.039203834939215 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-04-12 14:00:00", + "exit_time": "2025-04-12 14:30:00", + "entry_price": 2.148085, + "exit_price": 2.172992, + "quantity": 2132.9, + "sl": 2.172992, + "tp": 2.081668, + "gross_pnl": -53.123273, + "entry_fee": 1.83266, + "exit_fee": 1.85391, + "net_pnl": -56.809843, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 84.08793890162964, + "macd_hist": 0.008437194430039185, + "atr": 0.0166043956315617, + "adx": 50.92729938221619 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-04-20 07:30:00", + "exit_time": "2025-04-20 09:30:00", + "entry_price": 2.064906, + "exit_price": 2.057172, + "quantity": 2081.7, + "sl": 2.057172, + "tp": 2.085531, + "gross_pnl": -16.100666, + "entry_fee": 1.719406, + "exit_fee": 1.712966, + "net_pnl": -19.533038, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.266963159039623, + "macd_hist": -0.0018943961922317783, + "atr": 0.005156255506825988, + "adx": 28.339404648171026 + }, + "fold": 4 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-24 05:30:00", + "exit_time": "2025-06-24 08:00:00", + "entry_price": 2.184818, + "exit_price": 2.167742, + "quantity": 2288.7, + "sl": 2.167742, + "tp": 2.230355, + "gross_pnl": -39.082682, + "entry_fee": 2.000158, + "exit_fee": 1.984525, + "net_pnl": -43.067364, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 73.02164872104566, + "macd_hist": 0.0005479487283800086, + "atr": 0.011384244875213778, + "adx": 47.36547166014341 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-06-28 12:00:00", + "exit_time": "2025-06-28 12:15:00", + "entry_price": 2.19862, + "exit_price": 2.190106, + "quantity": 2176.4, + "sl": 2.190106, + "tp": 2.221324, + "gross_pnl": -18.529827, + "entry_fee": 1.91403, + "exit_fee": 1.906619, + "net_pnl": -22.350476, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 67.33044927774849, + "macd_hist": 0.0001002298530251482, + "atr": 0.005675986884972982, + "adx": 30.3281052083898 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-06-30 19:30:00", + "exit_time": "2025-06-30 19:45:00", + "entry_price": 2.29517, + "exit_price": 2.317366, + "quantity": 2035.8, + "sl": 2.317366, + "tp": 2.235981, + "gross_pnl": -45.186659, + "entry_fee": 1.869003, + "exit_fee": 1.887078, + "net_pnl": -48.94274, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 87.41460373938898, + "macd_hist": 0.009110137988482552, + "atr": 0.014797347142473993, + "adx": 39.20663805330044 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 13:00:00", + "exit_time": "2025-07-01 14:00:00", + "entry_price": 2.185781, + "exit_price": 2.19914, + "quantity": 2025.7, + "sl": 2.19914, + "tp": 2.150157, + "gross_pnl": -27.061528, + "entry_fee": 1.771095, + "exit_fee": 1.78192, + "net_pnl": -30.614543, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 34.25494593254047, + "macd_hist": -0.00014675405719808375, + "atr": 0.008906066514248343, + "adx": 38.40722178323835 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-01 14:45:00", + "exit_time": "2025-07-01 16:45:00", + "entry_price": 2.183582, + "exit_price": 2.200666, + "quantity": 1957.7, + "sl": 2.200666, + "tp": 2.138022, + "gross_pnl": -33.446776, + "entry_fee": 1.709919, + "exit_fee": 1.723298, + "net_pnl": -36.879993, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 40.2220939963487, + "macd_hist": -3.285310437756844e-05, + "atr": 0.011389820030766074, + "adx": 27.585747382512693 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 06:00:00", + "exit_time": "2025-07-04 08:00:00", + "entry_price": 2.232877, + "exit_price": 2.212321, + "quantity": 1831.9, + "sl": 2.242201, + "tp": 2.208013, + "gross_pnl": 37.655584, + "entry_fee": 1.636163, + "exit_fee": 1.6211, + "net_pnl": 34.398321, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 31.442919224174045, + "macd_hist": -0.00029321477558042104, + "atr": 0.0062159081353788895, + "adx": 33.56850119916028 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-04 08:00:00", + "exit_time": "2025-07-04 12:30:00", + "entry_price": 2.212321, + "exit_price": 2.240118, + "quantity": 1927.0, + "sl": 2.201897, + "tp": 2.240118, + "gross_pnl": 53.564835, + "entry_fee": 1.705257, + "exit_fee": 1.726683, + "net_pnl": 50.132895, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.965309976081716, + "macd_hist": -0.001886044986648832, + "atr": 0.006949252094970417, + "adx": 41.432310258152384 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-04 13:45:00", + "exit_time": "2025-07-05 06:00:00", + "entry_price": 2.218878, + "exit_price": 2.228992, + "quantity": 2033.9, + "sl": 2.228992, + "tp": 2.191908, + "gross_pnl": -20.570736, + "entry_fee": 1.80519, + "exit_fee": 1.813419, + "net_pnl": -24.189345, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 35.738307439788855, + "macd_hist": -0.0007373708243405827, + "atr": 0.006742624367502905, + "adx": 28.766616893316268 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-06 06:00:00", + "exit_time": "2025-07-06 06:15:00", + "entry_price": 2.227477, + "exit_price": 2.233324, + "quantity": 1971.7, + "sl": 2.233324, + "tp": 2.211886, + "gross_pnl": -11.527778, + "entry_fee": 1.756767, + "exit_fee": 1.761378, + "net_pnl": -15.045923, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 66.89764379074606, + "macd_hist": 0.0010104622617044608, + "atr": 0.003897745813860006, + "adx": 26.0290125755864 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-07-06 10:00:00", + "exit_time": "2025-07-06 10:30:00", + "entry_price": 2.263974, + "exit_price": 2.274807, + "quantity": 1906.7, + "sl": 2.274807, + "tp": 2.235085, + "gross_pnl": -20.655927, + "entry_fee": 1.726687, + "exit_fee": 1.73495, + "net_pnl": -24.117564, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 78.61127237036507, + "macd_hist": 0.0029116295821392697, + "atr": 0.007222225856292616, + "adx": 51.303708502862186 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 01:45:00", + "exit_time": "2025-07-10 04:00:00", + "entry_price": 2.430843, + "exit_price": 2.414566, + "quantity": 1726.6, + "sl": 2.414566, + "tp": 2.474249, + "gross_pnl": -28.104339, + "entry_fee": 1.678837, + "exit_fee": 1.667596, + "net_pnl": -31.450772, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 65.12443138491616, + "macd_hist": 0.0006749844052945679, + "atr": 0.010851514935522473, + "adx": 28.558343495169563 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-10 21:15:00", + "exit_time": "2025-07-11 00:15:00", + "entry_price": 2.535153, + "exit_price": 2.512714, + "quantity": 1593.5, + "sl": 2.512714, + "tp": 2.594993, + "gross_pnl": -35.758063, + "entry_fee": 1.615907, + "exit_fee": 1.601604, + "net_pnl": -38.975574, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 75.07103199423472, + "macd_hist": 0.00107125751100994, + "atr": 0.014959967913184562, + "adx": 39.89604207883821 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-16 14:45:00", + "exit_time": "2025-07-16 15:15:00", + "entry_price": 2.991399, + "exit_price": 2.967595, + "quantity": 1285.3, + "sl": 2.967595, + "tp": 3.054876, + "gross_pnl": -30.594912, + "entry_fee": 1.537938, + "exit_fee": 1.5257, + "net_pnl": -33.658551, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 65.82977793349926, + "macd_hist": 0.0008630455310918855, + "atr": 0.015869142024161655, + "adx": 31.646071545574497 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-18 08:30:00", + "exit_time": "2025-07-18 15:15:00", + "entry_price": 3.442144, + "exit_price": 3.378413, + "quantity": 1068.1, + "sl": 3.378413, + "tp": 3.612095, + "gross_pnl": -68.071494, + "entry_fee": 1.470622, + "exit_fee": 1.443393, + "net_pnl": -70.985508, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.8663234716584, + "macd_hist": -0.018254429187015375, + "atr": 0.04248759084380484, + "adx": 27.989482600196432 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-07-20 14:30:00", + "exit_time": "2025-07-20 16:15:00", + "entry_price": 3.538654, + "exit_price": 3.503607, + "quantity": 938.7, + "sl": 3.503607, + "tp": 3.632111, + "gross_pnl": -32.898169, + "entry_fee": 1.328694, + "exit_fee": 1.315534, + "net_pnl": -35.542397, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 65.25209278362466, + "macd_hist": 0.0008367608008480239, + "atr": 0.023364347245629465, + "adx": 29.651733787586366 + }, + "fold": 5 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 14:15:00", + "exit_time": "2025-09-24 15:30:00", + "entry_price": 2.894089, + "exit_price": 2.929027, + "quantity": 1727.8, + "sl": 2.880988, + "tp": 2.929027, + "gross_pnl": 60.365561, + "entry_fee": 2.000163, + "exit_fee": 2.024309, + "net_pnl": 56.341089, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.07824411693765, + "macd_hist": 0.0002837480377258254, + "atr": 0.008734454374096881, + "adx": 33.2168685663438 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-24 19:45:00", + "exit_time": "2025-09-24 20:00:00", + "entry_price": 2.976198, + "exit_price": 2.963004, + "quantity": 1654.8, + "sl": 2.955734, + "tp": 3.030766, + "gross_pnl": -21.833299, + "entry_fee": 1.970005, + "exit_fee": 1.961271, + "net_pnl": -25.764575, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 77.2560847835474, + "macd_hist": 0.00019635723257287532, + "atr": 0.013642083707702167, + "adx": 66.36434862645821 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-24 20:00:00", + "exit_time": "2025-09-25 01:00:00", + "entry_price": 2.963004, + "exit_price": 2.90759, + "quantity": 1675.1, + "sl": 2.983784, + "tp": 2.90759, + "gross_pnl": 92.823076, + "entry_fee": 1.985331, + "exit_fee": 1.948202, + "net_pnl": 88.889544, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.65458345014277, + "macd_hist": -7.427448073636655e-05, + "atr": 0.013853363442866294, + "adx": 67.76721204362747 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-25 12:15:00", + "exit_time": "2025-09-25 12:30:00", + "entry_price": 2.793221, + "exit_price": 2.811993, + "quantity": 1716.4, + "sl": 2.811993, + "tp": 2.743161, + "gross_pnl": -32.220652, + "entry_fee": 1.917714, + "exit_fee": 1.930602, + "net_pnl": -36.068967, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 27.256149560515382, + "macd_hist": -0.0005773233002478659, + "atr": 0.012514818420813034, + "adx": 36.7064339654661 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-25 17:15:00", + "exit_time": "2025-09-25 17:30:00", + "entry_price": 2.769777, + "exit_price": 2.742807, + "quantity": 1760.2, + "sl": 2.742807, + "tp": 2.841698, + "gross_pnl": -47.473337, + "entry_fee": 1.950145, + "exit_fee": 1.931155, + "net_pnl": -51.354637, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 31.610683788067163, + "macd_hist": -0.006544986366062566, + "atr": 0.017980281333413208, + "adx": 26.440069279260626 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-25 17:45:00", + "exit_time": "2025-09-26 11:00:00", + "entry_price": 2.736174, + "exit_price": 2.705528, + "quantity": 1813.6, + "sl": 2.705528, + "tp": 2.817895, + "gross_pnl": -55.578987, + "entry_fee": 1.98493, + "exit_fee": 1.962698, + "net_pnl": -59.526615, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 25.044837785243423, + "macd_hist": -0.009041987139011146, + "atr": 0.020430446659932825, + "adx": 30.966856579791155 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-09-28 20:45:00", + "exit_time": "2025-09-29 02:15:00", + "entry_price": 2.842084, + "exit_price": 2.872924, + "quantity": 1711.1, + "sl": 2.830519, + "tp": 2.872924, + "gross_pnl": 52.769536, + "entry_fee": 1.945236, + "exit_fee": 1.966344, + "net_pnl": 48.857956, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 71.49005646117895, + "macd_hist": 0.0003801310915941807, + "atr": 0.007709884911093976, + "adx": 43.71036416164099 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-09-30 15:00:00", + "exit_time": "2025-09-30 19:00:00", + "entry_price": 2.827017, + "exit_price": 2.844918, + "quantity": 1759.9, + "sl": 2.844918, + "tp": 2.779282, + "gross_pnl": -31.503455, + "entry_fee": 1.990107, + "exit_fee": 2.002708, + "net_pnl": -35.49627, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 35.05705452855853, + "macd_hist": -0.0002548676122483126, + "atr": 0.011933804787986942, + "adx": 29.373570191653968 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-01 09:15:00", + "exit_time": "2025-10-01 09:45:00", + "entry_price": 2.927107, + "exit_price": 2.946348, + "quantity": 1683.9, + "sl": 2.946348, + "tp": 2.875797, + "gross_pnl": -32.400221, + "entry_fee": 1.971582, + "exit_fee": 1.984542, + "net_pnl": -36.356346, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 80.49171298427291, + "macd_hist": 0.009335434136548462, + "atr": 0.012827452561969592, + "adx": 26.949561875482654 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-02 08:30:00", + "exit_time": "2025-10-02 11:45:00", + "entry_price": 2.986799, + "exit_price": 2.97124, + "quantity": 1589.7, + "sl": 2.97124, + "tp": 3.028288, + "gross_pnl": -24.733607, + "entry_fee": 1.899246, + "exit_fee": 1.889352, + "net_pnl": -28.522205, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 62.46190385503244, + "macd_hist": 8.670600711300179e-05, + "atr": 0.010372442214176469, + "adx": 30.82406684059269 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-04 14:45:00", + "exit_time": "2025-10-04 15:30:00", + "entry_price": 2.965903, + "exit_price": 2.949995, + "quantity": 1552.5, + "sl": 2.980328, + "tp": 2.927436, + "gross_pnl": 24.697807, + "entry_fee": 1.841826, + "exit_fee": 1.831947, + "net_pnl": 21.024034, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 30.774265889679018, + "macd_hist": -0.0008977725757183001, + "atr": 0.00961672250471438, + "adx": 34.571002805230385 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-04 15:30:00", + "exit_time": "2025-10-05 02:30:00", + "entry_price": 2.949995, + "exit_price": 2.993071, + "quantity": 1596.8, + "sl": 2.933842, + "tp": 2.993071, + "gross_pnl": 68.783532, + "entry_fee": 1.884221, + "exit_fee": 1.911734, + "net_pnl": 64.987577, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 28.796890109249013, + "macd_hist": -0.003933006166039334, + "atr": 0.010768964775093825, + "adx": 40.14601648044225 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-05 19:00:00", + "exit_time": "2025-10-06 11:15:00", + "entry_price": 2.953995, + "exit_price": 3.002472, + "quantity": 1690.3, + "sl": 2.935817, + "tp": 3.002472, + "gross_pnl": 81.939512, + "entry_fee": 1.997255, + "exit_fee": 2.030031, + "net_pnl": 77.912226, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 22.68978567945751, + "macd_hist": -0.003579814992577557, + "atr": 0.012119078271027253, + "adx": 40.35268005132035 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-07 06:15:00", + "exit_time": "2025-10-07 12:45:00", + "entry_price": 2.970703, + "exit_price": 2.984428, + "quantity": 1639.8, + "sl": 2.984428, + "tp": 2.934103, + "gross_pnl": -22.506406, + "entry_fee": 1.948543, + "exit_fee": 1.957546, + "net_pnl": -26.412496, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 36.36514777657071, + "macd_hist": -0.00010112157036563886, + "atr": 0.00915006149102373, + "adx": 26.96150579276763 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-07 14:30:00", + "exit_time": "2025-10-07 15:00:00", + "entry_price": 2.918292, + "exit_price": 2.894711, + "quantity": 1686.4, + "sl": 2.894711, + "tp": 2.981174, + "gross_pnl": -39.766947, + "entry_fee": 1.968563, + "exit_fee": 1.952656, + "net_pnl": -43.688166, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 30.060076682313365, + "macd_hist": -0.006475357368739211, + "atr": 0.015720646358489448, + "adx": 32.29090827339832 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-08 03:15:00", + "exit_time": "2025-10-08 04:30:00", + "entry_price": 2.845115, + "exit_price": 2.86137, + "quantity": 1751.5, + "sl": 2.86137, + "tp": 2.801771, + "gross_pnl": -28.469171, + "entry_fee": 1.993288, + "exit_fee": 2.004676, + "net_pnl": -32.467134, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 33.213794653506625, + "macd_hist": -0.0006662218778545467, + "atr": 0.010836110229562324, + "adx": 30.699519772993927 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-10 20:45:00", + "exit_time": "2025-10-10 21:00:00", + "entry_price": 2.49595, + "exit_price": 2.332324, + "quantity": 1967.7, + "sl": 2.55731, + "tp": 2.332324, + "gross_pnl": 321.967103, + "entry_fee": 1.964513, + "exit_fee": 1.835726, + "net_pnl": 318.166865, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 17.950089434981262, + "macd_hist": -0.010381022790605134, + "atr": 0.0409065283069771, + "adx": 56.13982003832872 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-14 03:00:00", + "exit_time": "2025-10-14 04:30:00", + "entry_price": 2.563156, + "exit_price": 2.541744, + "quantity": 1622.2, + "sl": 2.541744, + "tp": 2.620255, + "gross_pnl": -34.734751, + "entry_fee": 1.663181, + "exit_fee": 1.649287, + "net_pnl": -38.047219, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 26.674483031216496, + "macd_hist": -0.004503957428535771, + "atr": 0.01427475077016023, + "adx": 28.369313359103828 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-10-14 16:15:00", + "exit_time": "2025-10-15 08:30:00", + "entry_price": 2.508449, + "exit_price": 2.544104, + "quantity": 1723.7, + "sl": 2.544104, + "tp": 2.41337, + "gross_pnl": -61.458249, + "entry_fee": 1.729526, + "exit_fee": 1.754109, + "net_pnl": -64.941883, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.85343626442496, + "macd_hist": 0.010657476860447013, + "atr": 0.023769893751947626, + "adx": 39.4255156509299 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-20 11:30:00", + "exit_time": "2025-10-20 16:30:00", + "entry_price": 2.452445, + "exit_price": 2.436703, + "quantity": 1863.0, + "sl": 2.436703, + "tp": 2.494425, + "gross_pnl": -29.328388, + "entry_fee": 1.827562, + "exit_fee": 1.815831, + "net_pnl": -32.971781, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 47.67562909808142, + "macd_hist": -0.0037862637773882213, + "atr": 0.01049503953639744, + "adx": 30.885537035739386 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-10-21 23:30:00", + "exit_time": "2025-10-22 00:00:00", + "entry_price": 2.419142, + "exit_price": 2.432257, + "quantity": 1931.9, + "sl": 2.393709, + "tp": 2.486962, + "gross_pnl": 25.336598, + "entry_fee": 1.869416, + "exit_fee": 1.879551, + "net_pnl": 21.587631, + "close_reason": "END_OF_DATA", + "ml_proba": null, + "indicators": { + "rsi": 31.476208513505785, + "macd_hist": -0.006210705136573466, + "atr": 0.0169551042166396, + "adx": 28.138719789848572 + }, + "fold": 6 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-25 23:30:00", + "exit_time": "2025-12-26 02:15:00", + "entry_price": 1.831783, + "exit_price": 1.857641, + "quantity": 2729.9, + "sl": 1.822086, + "tp": 1.857641, + "gross_pnl": 70.590091, + "entry_fee": 2.000234, + "exit_fee": 2.02847, + "net_pnl": 66.561387, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 18.68843562723099, + "macd_hist": -0.003465762863422674, + "atr": 0.006464530874642747, + "adx": 30.22829092411884 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2025-12-26 15:30:00", + "exit_time": "2025-12-27 22:00:00", + "entry_price": 1.833383, + "exit_price": 1.863804, + "quantity": 2676.7, + "sl": 1.821976, + "tp": 1.863804, + "gross_pnl": 81.425758, + "entry_fee": 1.962967, + "exit_fee": 1.995537, + "net_pnl": 77.467254, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 25.955093256223023, + "macd_hist": -0.0051636691899538435, + "atr": 0.007605050807700872, + "adx": 27.027723831044153 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2025-12-29 02:15:00", + "exit_time": "2025-12-29 03:30:00", + "entry_price": 1.890811, + "exit_price": 1.901222, + "quantity": 2502.1, + "sl": 1.901222, + "tp": 1.863049, + "gross_pnl": -26.048474, + "entry_fee": 1.892399, + "exit_fee": 1.902819, + "net_pnl": -29.843692, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.31057200799756, + "macd_hist": 0.002904682758420408, + "atr": 0.006940429836312504, + "adx": 28.230904105175558 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 15:45:00", + "exit_time": "2026-01-01 16:15:00", + "entry_price": 1.861986, + "exit_price": 1.855307, + "quantity": 2582.2, + "sl": 1.855307, + "tp": 1.879797, + "gross_pnl": -17.246567, + "entry_fee": 1.923208, + "exit_fee": 1.91631, + "net_pnl": -21.086085, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 64.9515011671277, + "macd_hist": 8.017825296896758e-05, + "atr": 0.004452680396625609, + "adx": 29.061543249865803 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-01 23:15:00", + "exit_time": "2026-01-02 01:30:00", + "entry_price": 1.878888, + "exit_price": 1.872644, + "quantity": 2584.2, + "sl": 1.872644, + "tp": 1.895537, + "gross_pnl": -16.134688, + "entry_fee": 1.942169, + "exit_fee": 1.935715, + "net_pnl": -20.012572, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 68.72971632029694, + "macd_hist": 0.00013424156330143003, + "atr": 0.004162394030589229, + "adx": 26.89065800260644 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-02 14:30:00", + "exit_time": "2026-01-02 16:15:00", + "entry_price": 1.906991, + "exit_price": 1.93559, + "quantity": 2567.1, + "sl": 1.896266, + "tp": 1.93559, + "gross_pnl": 73.416373, + "entry_fee": 1.958174, + "exit_fee": 1.987541, + "net_pnl": 69.470657, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 68.243618769103, + "macd_hist": 0.00021763021087121363, + "atr": 0.007149738287103824, + "adx": 34.75978288472445 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-03 04:15:00", + "exit_time": "2026-01-03 05:15:00", + "entry_price": 2.053505, + "exit_price": 2.038681, + "quantity": 2306.3, + "sl": 2.038681, + "tp": 2.093036, + "gross_pnl": -34.188646, + "entry_fee": 1.8944, + "exit_fee": 1.880724, + "net_pnl": -37.96377, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 71.12261390890312, + "macd_hist": 0.0007206569611035839, + "atr": 0.009882682502362707, + "adx": 33.98655567683887 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-04 00:45:00", + "exit_time": "2026-01-04 03:00:00", + "entry_price": 2.041396, + "exit_price": 2.038904, + "quantity": 2365.7, + "sl": 2.052244, + "tp": 2.012468, + "gross_pnl": 5.895253, + "entry_fee": 1.931732, + "exit_fee": 1.929374, + "net_pnl": 2.034147, + "close_reason": "REVERSE_SIGNAL", + "ml_proba": null, + "indicators": { + "rsi": 78.42031027026397, + "macd_hist": 0.002773445174521872, + "atr": 0.007231967338050755, + "adx": 25.06146716762975 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-04 03:00:00", + "exit_time": "2026-01-04 05:15:00", + "entry_price": 2.038904, + "exit_price": 2.068362, + "quantity": 2366.8, + "sl": 2.027857, + "tp": 2.068362, + "gross_pnl": 69.721247, + "entry_fee": 1.930271, + "exit_fee": 1.95816, + "net_pnl": 65.832816, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 66.00101725582081, + "macd_hist": 4.503977849404806e-05, + "atr": 0.007364505506906315, + "adx": 30.991168735172053 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-05 16:00:00", + "exit_time": "2026-01-05 16:45:00", + "entry_price": 2.175282, + "exit_price": 2.19407, + "quantity": 2137.0, + "sl": 2.19407, + "tp": 2.125183, + "gross_pnl": -40.148091, + "entry_fee": 1.859431, + "exit_fee": 1.875491, + "net_pnl": -43.883013, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 74.33651442124638, + "macd_hist": 0.005275416866763252, + "atr": 0.0125247516035141, + "adx": 26.265195686949365 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-08 00:15:00", + "exit_time": "2026-01-08 00:45:00", + "entry_price": 2.151585, + "exit_price": 2.170461, + "quantity": 2217.8, + "sl": 2.170461, + "tp": 2.101247, + "gross_pnl": -41.864524, + "entry_fee": 1.908714, + "exit_fee": 1.92546, + "net_pnl": -45.698698, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 28.276666347799573, + "macd_hist": -0.0006596465790511593, + "atr": 0.012584400251956765, + "adx": 32.745912121373564 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-08 12:00:00", + "exit_time": "2026-01-08 15:00:00", + "entry_price": 2.080192, + "exit_price": 2.100117, + "quantity": 2343.7, + "sl": 2.100117, + "tp": 2.027058, + "gross_pnl": -46.698434, + "entry_fee": 1.950138, + "exit_fee": 1.968818, + "net_pnl": -50.61739, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 32.2700327894867, + "macd_hist": -0.00031094837031217515, + "atr": 0.013283393540576555, + "adx": 38.84331455413332 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-12 00:30:00", + "exit_time": "2026-01-12 01:00:00", + "entry_price": 2.038496, + "exit_price": 2.055335, + "quantity": 2433.7, + "sl": 2.055335, + "tp": 1.993592, + "gross_pnl": -40.981169, + "entry_fee": 1.984435, + "exit_fee": 2.000828, + "net_pnl": -44.966432, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 30.846968396259047, + "macd_hist": -0.0007889318573150606, + "atr": 0.011226025987254529, + "adx": 34.7282486688746 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-12 08:30:00", + "exit_time": "2026-01-12 15:15:00", + "entry_price": 2.039504, + "exit_price": 2.080191, + "quantity": 2420.7, + "sl": 2.024246, + "tp": 2.080191, + "gross_pnl": 98.491691, + "entry_fee": 1.974811, + "exit_fee": 2.014208, + "net_pnl": 94.502673, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 27.845720082326512, + "macd_hist": -0.00422472084809305, + "atr": 0.010171819224215985, + "adx": 25.798010340783087 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-13 22:00:00", + "exit_time": "2026-01-14 06:00:00", + "entry_price": 2.160116, + "exit_price": 2.138083, + "quantity": 2258.5, + "sl": 2.138083, + "tp": 2.218869, + "gross_pnl": -49.760464, + "entry_fee": 1.951449, + "exit_fee": 1.931545, + "net_pnl": -53.643458, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 72.9848697065162, + "macd_hist": 0.000636766936842741, + "atr": 0.014688351920839157, + "adx": 35.17311828571225 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-15 03:30:00", + "exit_time": "2026-01-15 13:45:00", + "entry_price": 2.086109, + "exit_price": 2.129845, + "quantity": 2381.3, + "sl": 2.069707, + "tp": 2.129845, + "gross_pnl": 104.149633, + "entry_fee": 1.98706, + "exit_fee": 2.02872, + "net_pnl": 100.133853, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 21.92645525183197, + "macd_hist": -0.004071137923555767, + "atr": 0.010934115058815617, + "adx": 25.971197254534513 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "SHORT", + "entry_time": "2026-01-16 14:30:00", + "exit_time": "2026-01-16 15:30:00", + "entry_price": 2.056694, + "exit_price": 2.034132, + "quantity": 2320.5, + "sl": 2.065155, + "tp": 2.034132, + "gross_pnl": 52.356232, + "entry_fee": 1.909024, + "exit_fee": 1.888081, + "net_pnl": 48.559127, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 40.58807327439594, + "macd_hist": -1.3786906040920248e-05, + "atr": 0.005640619691777436, + "adx": 29.20637560550103 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-19 00:15:00", + "exit_time": "2026-01-19 16:45:00", + "entry_price": 1.932293, + "exit_price": 2.012247, + "quantity": 2399.2, + "sl": 1.90231, + "tp": 2.012247, + "gross_pnl": 191.825435, + "entry_fee": 1.854383, + "exit_fee": 1.931113, + "net_pnl": 188.039938, + "close_reason": "TAKE_PROFIT", + "ml_proba": null, + "indicators": { + "rsi": 13.54901226600254, + "macd_hist": -0.01403438855925851, + "atr": 0.0199884789258432, + "adx": 39.319225558029224 + }, + "fold": 7 + }, + { + "symbol": "XRPUSDT", + "side": "LONG", + "entry_time": "2026-01-20 08:45:00", + "exit_time": "2026-01-20 15:00:00", + "entry_price": 1.927493, + "exit_price": 1.911725, + "quantity": 1990.5, + "sl": 1.911725, + "tp": 1.969541, + "gross_pnl": -31.386454, + "entry_fee": 1.53467, + "exit_fee": 1.522115, + "net_pnl": -34.443239, + "close_reason": "STOP_LOSS", + "ml_proba": null, + "indicators": { + "rsi": 29.163659502317238, + "macd_hist": -0.0022630153109700762, + "atr": 0.010512083710489532, + "adx": 44.76742932982954 + }, + "fold": 7 + } + ], + "validation": { + "overall": "PASS", + "checks": [ + { + "name": "exit_after_entry", + "passed": true, + "level": "FAIL", + "message": "모든 트레이드에서 청산 > 진입" + }, + { + "name": "sl_tp_direction", + "passed": true, + "level": "FAIL", + "message": "SL/TP 방향 정합" + }, + { + "name": "no_overlap", + "passed": true, + "level": "FAIL", + "message": "포지션 비중첩 확인" + }, + { + "name": "positive_fees", + "passed": true, + "level": "FAIL", + "message": "수수료 양수 확인" + }, + { + "name": "no_negative_balance", + "passed": true, + "level": "FAIL", + "message": "잔고 양수 유지" + }, + { + "name": "win_rate_high", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (31.0%)" + }, + { + "name": "win_rate_low", + "passed": true, + "level": "WARNING", + "message": "승률 정상 (31.0%)" + }, + { + "name": "mdd_nonzero", + "passed": true, + "level": "WARNING", + "message": "MDD 정상 (97.1%)" + }, + { + "name": "trade_frequency", + "passed": true, + "level": "WARNING", + "message": "월 평균 5.9건" + }, + { + "name": "profit_factor_high", + "passed": true, + "level": "WARNING", + "message": "PF 정상 (0.89)" + } + ] + } +} \ No newline at end of file