- Added support for multi-symbol trading (XRP, TRX, DOGE) in the dashboard. - Updated bot log messages to include [SYMBOL] prefix for better tracking. - Enhanced log parser for multi-symbol state tracking and updated database schema. - Introduced new API endpoints and UI components for symbol filtering and display. - Added new model files and backtest results for multi-symbol strategies. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1267 lines
33 KiB
JSON
1267 lines
33 KiB
JSON
{
|
|
"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,
|
|
"train_months": 6,
|
|
"test_months": 1,
|
|
"time_weight_decay": 2.0,
|
|
"negative_ratio": 5
|
|
},
|
|
"summary": {
|
|
"total_trades": 47,
|
|
"total_pnl": -263.2291,
|
|
"return_pct": -26.32,
|
|
"win_rate": 34.04,
|
|
"avg_win": 33.1958,
|
|
"avg_loss": -25.6246,
|
|
"profit_factor": 0.67,
|
|
"max_drawdown_pct": 35.11,
|
|
"sharpe_ratio": -28.73,
|
|
"total_fees": 151.5182,
|
|
"close_reasons": {
|
|
"TAKE_PROFIT": 13,
|
|
"STOP_LOSS": 30,
|
|
"REVERSE_SIGNAL": 3,
|
|
"END_OF_DATA": 1
|
|
}
|
|
},
|
|
"folds": [
|
|
{
|
|
"fold": 1,
|
|
"train_period": "2025-03-05 ~ 2025-09-05",
|
|
"test_period": "2025-09-05 ~ 2025-10-05",
|
|
"summary": {
|
|
"total_trades": 47,
|
|
"total_pnl": -263.2291,
|
|
"return_pct": -26.32,
|
|
"win_rate": 34.04,
|
|
"avg_win": 33.1958,
|
|
"avg_loss": -25.6246,
|
|
"profit_factor": 0.67,
|
|
"max_drawdown_pct": 35.11,
|
|
"sharpe_ratio": -28.73,
|
|
"total_fees": 151.5182,
|
|
"close_reasons": {
|
|
"TAKE_PROFIT": 13,
|
|
"STOP_LOSS": 30,
|
|
"REVERSE_SIGNAL": 3,
|
|
"END_OF_DATA": 1
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"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": 1754.1,
|
|
"sl": 2.812828,
|
|
"tp": 2.794201,
|
|
"gross_pnl": -10.891182,
|
|
"entry_fee": 1.969236,
|
|
"exit_fee": 1.973593,
|
|
"net_pnl": -14.834011,
|
|
"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": 1767.3,
|
|
"sl": 2.807842,
|
|
"tp": 2.786175,
|
|
"gross_pnl": -12.763848,
|
|
"entry_fee": 1.979814,
|
|
"exit_fee": 1.98492,
|
|
"net_pnl": -16.728582,
|
|
"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": 1757.5,
|
|
"sl": 2.825709,
|
|
"tp": 2.843032,
|
|
"gross_pnl": -10.148655,
|
|
"entry_fee": 1.990533,
|
|
"exit_fee": 1.986473,
|
|
"net_pnl": -14.125661,
|
|
"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": 1758.2,
|
|
"sl": 2.834573,
|
|
"tp": 2.853506,
|
|
"gross_pnl": 22.192534,
|
|
"entry_fee": 1.997937,
|
|
"exit_fee": 2.006814,
|
|
"net_pnl": 18.187783,
|
|
"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": 1722.3,
|
|
"sl": 2.907326,
|
|
"tp": 2.851181,
|
|
"gross_pnl": -32.232713,
|
|
"entry_fee": 1.990022,
|
|
"exit_fee": 2.002915,
|
|
"net_pnl": -36.22565,
|
|
"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": 1709.9,
|
|
"sl": 2.862379,
|
|
"tp": 2.902605,
|
|
"gross_pnl": -22.927483,
|
|
"entry_fee": 1.966924,
|
|
"exit_fee": 1.957753,
|
|
"net_pnl": -26.852159,
|
|
"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": 1645.4,
|
|
"sl": 2.884962,
|
|
"tp": 2.932746,
|
|
"gross_pnl": 52.415407,
|
|
"entry_fee": 1.90925,
|
|
"exit_fee": 1.930216,
|
|
"net_pnl": 48.575941,
|
|
"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": 1661.1,
|
|
"sl": 3.026836,
|
|
"tp": 2.973625,
|
|
"gross_pnl": -29.46288,
|
|
"entry_fee": 1.999366,
|
|
"exit_fee": 2.011151,
|
|
"net_pnl": -33.473397,
|
|
"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": 1640.3,
|
|
"sl": 2.956284,
|
|
"tp": 2.917649,
|
|
"gross_pnl": -21.124675,
|
|
"entry_fee": 1.931227,
|
|
"exit_fee": 1.939677,
|
|
"net_pnl": -24.99558,
|
|
"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": 1555.8,
|
|
"sl": 3.006355,
|
|
"tp": 3.039494,
|
|
"gross_pnl": -17.185854,
|
|
"entry_fee": 1.877789,
|
|
"exit_fee": 1.870915,
|
|
"net_pnl": -20.934559,
|
|
"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": 1516.8,
|
|
"sl": 3.037941,
|
|
"tp": 2.981711,
|
|
"gross_pnl": -28.429913,
|
|
"entry_fee": 1.831808,
|
|
"exit_fee": 1.84318,
|
|
"net_pnl": -32.104901,
|
|
"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": 1412.6,
|
|
"sl": 3.143446,
|
|
"tp": 3.078472,
|
|
"gross_pnl": -30.594054,
|
|
"entry_fee": 1.763935,
|
|
"exit_fee": 1.776173,
|
|
"net_pnl": -34.134162,
|
|
"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": 1338.2,
|
|
"sl": 3.177886,
|
|
"tp": 3.128079,
|
|
"gross_pnl": -22.21721,
|
|
"entry_fee": 1.692172,
|
|
"exit_fee": 1.701059,
|
|
"net_pnl": -25.610441,
|
|
"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": 1316.7,
|
|
"sl": 3.120779,
|
|
"tp": 3.086009,
|
|
"gross_pnl": 30.521198,
|
|
"entry_fee": 1.637548,
|
|
"exit_fee": 1.625339,
|
|
"net_pnl": 27.258311,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 38.7433537799598,
|
|
"macd_hist": -0.0002412627790731375,
|
|
"atr": 0.007726689972056756,
|
|
"adx": 19.663365885823197
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-14 11:15:00",
|
|
"exit_time": "2025-09-14 12:45:00",
|
|
"entry_price": 3.066993,
|
|
"exit_price": 3.041562,
|
|
"quantity": 1376.6,
|
|
"sl": 3.079709,
|
|
"tp": 3.041562,
|
|
"gross_pnl": 35.008254,
|
|
"entry_fee": 1.688809,
|
|
"exit_fee": 1.674806,
|
|
"net_pnl": 31.644639,
|
|
"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": 1442.6,
|
|
"sl": 3.044966,
|
|
"tp": 3.001559,
|
|
"gross_pnl": -20.87278,
|
|
"entry_fee": 1.748718,
|
|
"exit_fee": 1.757067,
|
|
"net_pnl": -24.378565,
|
|
"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-16 00:15:00",
|
|
"exit_time": "2025-09-16 01:00:00",
|
|
"entry_price": 2.981102,
|
|
"exit_price": 2.99629,
|
|
"quantity": 1422.6,
|
|
"sl": 2.99629,
|
|
"tp": 2.950726,
|
|
"gross_pnl": -21.60639,
|
|
"entry_fee": 1.696366,
|
|
"exit_fee": 1.705009,
|
|
"net_pnl": -25.007765,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 41.05160094384107,
|
|
"macd_hist": -0.00041404528253786207,
|
|
"atr": 0.010125305661766969,
|
|
"adx": 14.882446308868005
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-17 18:30:00",
|
|
"exit_time": "2025-09-17 19:00:00",
|
|
"entry_price": 2.992401,
|
|
"exit_price": 3.020805,
|
|
"quantity": 1372.7,
|
|
"sl": 3.020805,
|
|
"tp": 2.935592,
|
|
"gross_pnl": -38.990783,
|
|
"entry_fee": 1.643067,
|
|
"exit_fee": 1.658664,
|
|
"net_pnl": -42.292514,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 39.25259976372242,
|
|
"macd_hist": -0.0011558362840888392,
|
|
"atr": 0.01893629733024997,
|
|
"adx": 23.272187763989695
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-19 02:30:00",
|
|
"exit_time": "2025-09-19 04:00:00",
|
|
"entry_price": 3.065493,
|
|
"exit_price": 3.039428,
|
|
"quantity": 1268.3,
|
|
"sl": 3.078526,
|
|
"tp": 3.039428,
|
|
"gross_pnl": 33.059404,
|
|
"entry_fee": 1.555186,
|
|
"exit_fee": 1.541962,
|
|
"net_pnl": 29.962256,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 33.99871359008638,
|
|
"macd_hist": -0.0002681182654907868,
|
|
"atr": 0.008688639420712069,
|
|
"adx": 24.71797292036319
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-19 14:30:00",
|
|
"exit_time": "2025-09-19 19:45:00",
|
|
"entry_price": 3.012199,
|
|
"exit_price": 2.982795,
|
|
"quantity": 1337.9,
|
|
"sl": 3.026901,
|
|
"tp": 2.982795,
|
|
"gross_pnl": 39.339277,
|
|
"entry_fee": 1.612008,
|
|
"exit_fee": 1.596273,
|
|
"net_pnl": 36.130996,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 35.235065832714334,
|
|
"macd_hist": -0.0007163152001312709,
|
|
"atr": 0.00980124989243235,
|
|
"adx": 22.823625663655072
|
|
},
|
|
"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": 1406.4,
|
|
"sl": 3.002469,
|
|
"tp": 2.959066,
|
|
"gross_pnl": -20.346911,
|
|
"entry_fee": 1.68093,
|
|
"exit_fee": 1.689069,
|
|
"net_pnl": -23.716909,
|
|
"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": 1371.5,
|
|
"sl": 2.980986,
|
|
"tp": 2.952836,
|
|
"gross_pnl": -12.869287,
|
|
"entry_fee": 1.630221,
|
|
"exit_fee": 1.635369,
|
|
"net_pnl": -16.134877,
|
|
"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": "SHORT",
|
|
"entry_time": "2025-09-21 16:30:00",
|
|
"exit_time": "2025-09-21 18:00:00",
|
|
"entry_price": 2.964304,
|
|
"exit_price": 2.975217,
|
|
"quantity": 1344.9,
|
|
"sl": 2.975217,
|
|
"tp": 2.942476,
|
|
"gross_pnl": -14.677628,
|
|
"entry_fee": 1.594677,
|
|
"exit_fee": 1.600548,
|
|
"net_pnl": -17.872852,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 36.66193940553714,
|
|
"macd_hist": -0.000691420739428965,
|
|
"atr": 0.007275697313372804,
|
|
"adx": 17.608255039778125
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-09-23 14:00:00",
|
|
"exit_time": "2025-09-23 17:45:00",
|
|
"entry_price": 2.868987,
|
|
"exit_price": 2.852779,
|
|
"quantity": 1355.9,
|
|
"sl": 2.852779,
|
|
"tp": 2.901403,
|
|
"gross_pnl": -21.976597,
|
|
"entry_fee": 1.556024,
|
|
"exit_fee": 1.547233,
|
|
"net_pnl": -25.079854,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 56.885444216218225,
|
|
"macd_hist": 7.817690800515685e-05,
|
|
"atr": 0.010805416957986697,
|
|
"adx": 11.486112849818282
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"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": 1336.2,
|
|
"sl": 2.828555,
|
|
"tp": 2.775947,
|
|
"gross_pnl": -23.431275,
|
|
"entry_fee": 1.502433,
|
|
"exit_fee": 1.511806,
|
|
"net_pnl": -26.445515,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 35.41445012242145,
|
|
"macd_hist": -0.0005539721484064007,
|
|
"atr": 0.011690503070987813,
|
|
"adx": 22.830095368917625
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-09-24 14:15:00",
|
|
"exit_time": "2025-09-24 14:45:00",
|
|
"entry_price": 2.894089,
|
|
"exit_price": 2.920293,
|
|
"quantity": 1249.8,
|
|
"sl": 2.880988,
|
|
"tp": 2.920293,
|
|
"gross_pnl": 32.748963,
|
|
"entry_fee": 1.446813,
|
|
"exit_fee": 1.459913,
|
|
"net_pnl": 29.842237,
|
|
"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": 1263.1,
|
|
"sl": 2.955734,
|
|
"tp": 3.017124,
|
|
"gross_pnl": -16.66524,
|
|
"entry_fee": 1.503694,
|
|
"exit_fee": 1.497028,
|
|
"net_pnl": -19.665962,
|
|
"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 00:15:00",
|
|
"entry_price": 2.963004,
|
|
"exit_price": 2.921444,
|
|
"quantity": 1232.7,
|
|
"sl": 2.983784,
|
|
"tp": 2.921444,
|
|
"gross_pnl": 51.231123,
|
|
"entry_fee": 1.460998,
|
|
"exit_fee": 1.440505,
|
|
"net_pnl": 48.32962,
|
|
"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": 1391.5,
|
|
"sl": 2.811993,
|
|
"tp": 2.755676,
|
|
"gross_pnl": -26.121555,
|
|
"entry_fee": 1.554707,
|
|
"exit_fee": 1.565155,
|
|
"net_pnl": -29.241417,
|
|
"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": 1348.0,
|
|
"sl": 2.742807,
|
|
"tp": 2.823718,
|
|
"gross_pnl": -36.356129,
|
|
"entry_fee": 1.493464,
|
|
"exit_fee": 1.478921,
|
|
"net_pnl": -39.328514,
|
|
"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-25 18:45:00",
|
|
"entry_price": 2.736174,
|
|
"exit_price": 2.797465,
|
|
"quantity": 1290.0,
|
|
"sl": 2.705528,
|
|
"tp": 2.797465,
|
|
"gross_pnl": 79.065829,
|
|
"entry_fee": 1.411866,
|
|
"exit_fee": 1.443492,
|
|
"net_pnl": 76.210471,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 25.044837785333744,
|
|
"macd_hist": -0.0090419871390266,
|
|
"atr": 0.020430446659902204,
|
|
"adx": 30.966856582892532
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-26 06:00:00",
|
|
"exit_time": "2025-09-26 06:15:00",
|
|
"entry_price": 2.746725,
|
|
"exit_price": 2.767095,
|
|
"quantity": 1420.9,
|
|
"sl": 2.767095,
|
|
"tp": 2.705986,
|
|
"gross_pnl": -28.943355,
|
|
"entry_fee": 1.561129,
|
|
"exit_fee": 1.572706,
|
|
"net_pnl": -32.07719,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 42.63524311349351,
|
|
"macd_hist": -0.00021544240843297075,
|
|
"atr": 0.013579822642527613,
|
|
"adx": 15.058919932872273
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-26 07:30:00",
|
|
"exit_time": "2025-09-26 08:00:00",
|
|
"entry_price": 2.738626,
|
|
"exit_price": 2.759971,
|
|
"quantity": 1363.7,
|
|
"sl": 2.759971,
|
|
"tp": 2.695935,
|
|
"gross_pnl": -29.1087,
|
|
"entry_fee": 1.493866,
|
|
"exit_fee": 1.505509,
|
|
"net_pnl": -32.108075,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 41.03467669582415,
|
|
"macd_hist": -0.0009930236142895272,
|
|
"atr": 0.014230256027643176,
|
|
"adx": 13.007353948110126
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-09-28 09:15:00",
|
|
"exit_time": "2025-09-28 14:45:00",
|
|
"entry_price": 2.777422,
|
|
"exit_price": 2.789412,
|
|
"quantity": 1284.2,
|
|
"sl": 2.789412,
|
|
"tp": 2.753443,
|
|
"gross_pnl": -15.397169,
|
|
"entry_fee": 1.426706,
|
|
"exit_fee": 1.432865,
|
|
"net_pnl": -18.256741,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 41.86293814530906,
|
|
"macd_hist": -3.254272255586712e-05,
|
|
"atr": 0.007993131516978757,
|
|
"adx": 11.251740683173582
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-09-28 20:45:00",
|
|
"exit_time": "2025-09-28 23:00:00",
|
|
"entry_price": 2.842084,
|
|
"exit_price": 2.865214,
|
|
"quantity": 1220.6,
|
|
"sl": 2.830519,
|
|
"tp": 2.865214,
|
|
"gross_pnl": 28.232057,
|
|
"entry_fee": 1.387619,
|
|
"exit_fee": 1.398912,
|
|
"net_pnl": 25.445525,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 71.49005646117895,
|
|
"macd_hist": 0.0003801310915941807,
|
|
"atr": 0.007709884911093976,
|
|
"adx": 43.71036416164099
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-09-29 19:45:00",
|
|
"exit_time": "2025-09-29 23:00:00",
|
|
"entry_price": 2.89649,
|
|
"exit_price": 2.878667,
|
|
"quantity": 1239.2,
|
|
"sl": 2.878667,
|
|
"tp": 2.932134,
|
|
"gross_pnl": -22.085523,
|
|
"entry_fee": 1.435732,
|
|
"exit_fee": 1.426898,
|
|
"net_pnl": -24.948153,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 62.371751812927755,
|
|
"macd_hist": 0.000604537726911425,
|
|
"atr": 0.011881602545444488,
|
|
"adx": 16.11683294921096
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"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": 1222.7,
|
|
"sl": 2.844918,
|
|
"tp": 2.791216,
|
|
"gross_pnl": -21.887195,
|
|
"entry_fee": 1.382638,
|
|
"exit_fee": 1.391392,
|
|
"net_pnl": -24.661225,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 35.05705452855853,
|
|
"macd_hist": -0.0002548676122483126,
|
|
"atr": 0.011933804787986942,
|
|
"adx": 29.373570191653968
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-10-01 09:00:00",
|
|
"exit_time": "2025-10-01 09:30:00",
|
|
"entry_price": 2.913009,
|
|
"exit_price": 2.931791,
|
|
"quantity": 1141.9,
|
|
"sl": 2.931791,
|
|
"tp": 2.875443,
|
|
"gross_pnl": -21.448088,
|
|
"entry_fee": 1.330546,
|
|
"exit_fee": 1.339125,
|
|
"net_pnl": -24.117759,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 77.7272248054173,
|
|
"macd_hist": 0.008532879910510178,
|
|
"atr": 0.012521871989813377,
|
|
"adx": 23.859752794228857
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-10-01 17:45:00",
|
|
"exit_time": "2025-10-01 19:45:00",
|
|
"entry_price": 2.919792,
|
|
"exit_price": 2.95444,
|
|
"quantity": 1095.9,
|
|
"sl": 2.902468,
|
|
"tp": 2.95444,
|
|
"gross_pnl": 37.971023,
|
|
"entry_fee": 1.27992,
|
|
"exit_fee": 1.295108,
|
|
"net_pnl": 35.395995,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 41.616224842361845,
|
|
"macd_hist": -0.004025355218082835,
|
|
"atr": 0.011549418564190499,
|
|
"adx": 20.526778707785404
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"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": 1128.4,
|
|
"sl": 2.97124,
|
|
"tp": 3.017916,
|
|
"gross_pnl": -17.556396,
|
|
"entry_fee": 1.348121,
|
|
"exit_fee": 1.341099,
|
|
"net_pnl": -20.245616,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 62.46190385503244,
|
|
"macd_hist": 8.670600711300179e-05,
|
|
"atr": 0.010372442214176469,
|
|
"adx": 30.82406684059269
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-10-02 16:45:00",
|
|
"exit_time": "2025-10-02 19:00:00",
|
|
"entry_price": 3.043496,
|
|
"exit_price": 3.072056,
|
|
"quantity": 1071.7,
|
|
"sl": 3.072056,
|
|
"tp": 2.986374,
|
|
"gross_pnl": -30.608416,
|
|
"entry_fee": 1.304686,
|
|
"exit_fee": 1.316929,
|
|
"net_pnl": -33.23003,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 71.02488223286082,
|
|
"macd_hist": 0.0071798725012925295,
|
|
"atr": 0.019040412778860028,
|
|
"adx": 22.728066983657875
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-10-03 08:45:00",
|
|
"exit_time": "2025-10-03 13:00:00",
|
|
"entry_price": 3.051195,
|
|
"exit_price": 3.01341,
|
|
"quantity": 1012.4,
|
|
"sl": 3.070087,
|
|
"tp": 3.01341,
|
|
"gross_pnl": 38.253435,
|
|
"entry_fee": 1.235612,
|
|
"exit_fee": 1.22031,
|
|
"net_pnl": 35.797512,
|
|
"close_reason": "TAKE_PROFIT",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 65.68465492243061,
|
|
"macd_hist": 0.00346599387050241,
|
|
"atr": 0.012594967261402289,
|
|
"adx": 12.329103531390693
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "SHORT",
|
|
"entry_time": "2025-10-04 08:15:00",
|
|
"exit_time": "2025-10-04 08:45:00",
|
|
"entry_price": 3.006199,
|
|
"exit_price": 2.9997,
|
|
"quantity": 1085.1,
|
|
"sl": 3.017102,
|
|
"tp": 2.984394,
|
|
"gross_pnl": 7.05251,
|
|
"entry_fee": 1.304811,
|
|
"exit_fee": 1.30199,
|
|
"net_pnl": 4.445709,
|
|
"close_reason": "REVERSE_SIGNAL",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 32.18935028498804,
|
|
"macd_hist": -0.0006595483423006182,
|
|
"atr": 0.007268324559455461,
|
|
"adx": 14.256879091102421
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-10-04 08:45:00",
|
|
"exit_time": "2025-10-04 10:30:00",
|
|
"entry_price": 2.9997,
|
|
"exit_price": 2.987882,
|
|
"quantity": 1092.9,
|
|
"sl": 2.987882,
|
|
"tp": 3.023335,
|
|
"gross_pnl": -12.915292,
|
|
"entry_fee": 1.311349,
|
|
"exit_fee": 1.306183,
|
|
"net_pnl": -15.532823,
|
|
"close_reason": "STOP_LOSS",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 28.956061044244322,
|
|
"macd_hist": -0.0021290743040946426,
|
|
"atr": 0.007878300257897824,
|
|
"adx": 19.288672894026686
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"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": 1076.7,
|
|
"sl": 2.980328,
|
|
"tp": 2.937053,
|
|
"gross_pnl": 17.128585,
|
|
"entry_fee": 1.277355,
|
|
"exit_fee": 1.270504,
|
|
"net_pnl": 14.580726,
|
|
"close_reason": "REVERSE_SIGNAL",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 30.774265889679018,
|
|
"macd_hist": -0.0008977725757183001,
|
|
"atr": 0.00961672250471438,
|
|
"adx": 34.571002805230385
|
|
},
|
|
"fold": 1
|
|
},
|
|
{
|
|
"symbol": "XRPUSDT",
|
|
"side": "LONG",
|
|
"entry_time": "2025-10-04 15:30:00",
|
|
"exit_time": "2025-10-05 00:00:00",
|
|
"entry_price": 2.949995,
|
|
"exit_price": 2.961704,
|
|
"quantity": 1105.3,
|
|
"sl": 2.933842,
|
|
"tp": 2.982302,
|
|
"gross_pnl": 12.94177,
|
|
"entry_fee": 1.304252,
|
|
"exit_fee": 1.309428,
|
|
"net_pnl": 10.32809,
|
|
"close_reason": "END_OF_DATA",
|
|
"ml_proba": null,
|
|
"indicators": {
|
|
"rsi": 28.796890109249013,
|
|
"macd_hist": -0.003933006166039334,
|
|
"atr": 0.010768964775093825,
|
|
"adx": 40.14601648044225
|
|
},
|
|
"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": "승률 정상 (34.0%)"
|
|
},
|
|
{
|
|
"name": "win_rate_low",
|
|
"passed": true,
|
|
"level": "WARNING",
|
|
"message": "승률 정상 (34.0%)"
|
|
},
|
|
{
|
|
"name": "mdd_nonzero",
|
|
"passed": true,
|
|
"level": "WARNING",
|
|
"message": "MDD 정상 (35.1%)"
|
|
},
|
|
{
|
|
"name": "trade_frequency",
|
|
"passed": true,
|
|
"level": "WARNING",
|
|
"message": "월 평균 47.0건"
|
|
},
|
|
{
|
|
"name": "profit_factor_high",
|
|
"passed": true,
|
|
"level": "WARNING",
|
|
"message": "PF 정상 (0.67)"
|
|
}
|
|
]
|
|
}
|
|
} |