Update param sweep results with S8_OB grid (27 combos)

S8_OB PASS: best params DISP_ATR=2.5, TP1=2.0, Window=40
(IS PF=1.39, OOS PF=1.59, Gen=1.382). S9_Filtered also PASS.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Brent Neale
2026-02-20 23:02:12 +10:00
co-authored by Claude Opus 4.6
parent ea5472b737
commit 23d8288fa3
+326 -307
View File
@@ -918,444 +918,463 @@
} }
] ]
}, },
"S10_EUR_USD": { "S8_OB": {
"pair": "EUR_USD", "pair": "GBP_USD",
"combos_tested": 18, "combos_tested": 27,
"best_params": { "best_params": {
"VWAP_SD_ENTRY": 2.5, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 2.0,
"MAX_BARS": 6 "OB_RETEST_WINDOW": 40
}, },
"is_best_metrics": { "is_best_metrics": {
"trades": 11, "trades": 67,
"wr": 63.6, "wr": 37.3,
"pf": 2.87, "pf": 1.39,
"sharpe": 5.84, "sharpe": 2.05,
"pnl_pips": 29.8, "pnl_pips": 223.4,
"expectancy": 2.71 "expectancy": 3.33
}, },
"oos_validation": { "oos_validation": {
"trades": 5, "trades": 17,
"wr": 40.0, "wr": 52.9,
"pf": 3.0, "pf": 1.59,
"sharpe": 5.28, "sharpe": 2.96,
"pnl_pips": 6.3, "pnl_pips": 89.6,
"expectancy": 1.25 "expectancy": 5.27
}, },
"generalization_score": 0.712, "generalization_score": 1.382,
"verdict": "WARN", "verdict": "PASS",
"is_results_ranked": [ "is_results_ranked": [
{ {
"rank": 1, "rank": 1,
"params": { "params": {
"VWAP_SD_ENTRY": 2.5, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 2.0,
"MAX_BARS": 6 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 11, "trades": 67,
"wr": 63.6, "wr": 37.3,
"pf": 2.87, "pf": 1.39,
"sharpe": 5.84, "sharpe": 2.05,
"pnl_pips": 29.8, "pnl_pips": 223.4,
"expectancy": 2.71 "expectancy": 3.33
} }
}, },
{ {
"rank": 2, "rank": 2,
"params": { "params": {
"VWAP_SD_ENTRY": 2.5, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 2.0,
"MAX_BARS": 8 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 11, "trades": 59,
"wr": 63.6, "wr": 37.3,
"pf": 2.75, "pf": 1.33,
"sharpe": 5.98, "sharpe": 1.78,
"pnl_pips": 31.8, "pnl_pips": 168.0,
"expectancy": 2.89 "expectancy": 2.85
} }
}, },
{ {
"rank": 3, "rank": 3,
"params": { "params": {
"VWAP_SD_ENTRY": 1.5, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 1.5,
"MAX_BARS": 6 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 64,
"wr": 61.5, "wr": 42.2,
"pf": 2.43, "pf": 1.3,
"sharpe": 5.16, "sharpe": 1.61,
"pnl_pips": 30.0, "pnl_pips": 143.9,
"expectancy": 2.31 "expectancy": 2.25
} }
}, },
{ {
"rank": 4, "rank": 4,
"params": { "params": {
"VWAP_SD_ENTRY": 2.0, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 2.0,
"MAX_BARS": 6 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 69,
"wr": 61.5, "wr": 36.2,
"pf": 2.43, "pf": 1.26,
"sharpe": 5.16, "sharpe": 1.44,
"pnl_pips": 30.0, "pnl_pips": 163.8,
"expectancy": 2.31 "expectancy": 2.37
} }
}, },
{ {
"rank": 5, "rank": 5,
"params": { "params": {
"VWAP_SD_ENTRY": 1.5, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 1.5,
"MAX_BARS": 8 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 57,
"wr": 53.8, "wr": 42.1,
"pf": 1.67, "pf": 1.25,
"sharpe": 3.17, "sharpe": 1.36,
"pnl_pips": 20.1, "pnl_pips": 105.1,
"expectancy": 1.55 "expectancy": 1.84
} }
}, },
{ {
"rank": 6, "rank": 6,
"params": { "params": {
"VWAP_SD_ENTRY": 2.0, "DISPLACEMENT_ATR": 2.5,
"MAX_ADX": 30, "TP1_ATR_MULT": 1.5,
"MAX_BARS": 8 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 66,
"wr": 53.8, "wr": 42.4,
"pf": 1.67, "pf": 1.22,
"sharpe": 3.17, "sharpe": 1.23,
"pnl_pips": 20.1, "pnl_pips": 114.6,
"expectancy": 1.55 "expectancy": 1.74
}
}
]
},
"S11_GBP_JPY": {
"pair": "GBP_JPY",
"combos_tested": 18,
"best_params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.3,
"TP_RR_MULT": 1.8
},
"is_best_metrics": {
"trades": 9,
"wr": 77.8,
"pf": 5.67,
"sharpe": 10.25,
"pnl_pips": 89.0,
"expectancy": 9.89
},
"oos_validation": {
"trades": 2,
"wr": 0.0,
"pf": 0.0,
"sharpe": -58.86,
"pnl_pips": -43.0,
"expectancy": -21.48
},
"generalization_score": 0.0,
"verdict": "FAIL",
"is_results_ranked": [
{
"rank": 1,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.3,
"TP_RR_MULT": 1.8
},
"metrics": {
"trades": 9,
"wr": 77.8,
"pf": 5.67,
"sharpe": 10.25,
"pnl_pips": 89.0,
"expectancy": 9.89
}
},
{
"rank": 2,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.3,
"TP_RR_MULT": 1.5
},
"metrics": {
"trades": 9,
"wr": 77.8,
"pf": 5.35,
"sharpe": 10.65,
"pnl_pips": 83.0,
"expectancy": 9.22
}
},
{
"rank": 3,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.5,
"TP_RR_MULT": 1.8
},
"metrics": {
"trades": 11,
"wr": 63.6,
"pf": 4.14,
"sharpe": 8.03,
"pnl_pips": 82.0,
"expectancy": 7.45
}
},
{
"rank": 4,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.5,
"TP_RR_MULT": 1.5
},
"metrics": {
"trades": 11,
"wr": 63.6,
"pf": 3.91,
"sharpe": 8.22,
"pnl_pips": 75.9,
"expectancy": 6.9
}
},
{
"rank": 5,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.2,
"TP_RR_MULT": 1.5
},
"metrics": {
"trades": 5,
"wr": 80.0,
"pf": 2.83,
"sharpe": 6.74,
"pnl_pips": 29.8,
"expectancy": 5.95
}
},
{
"rank": 6,
"params": {
"MIN_ADX": 35,
"EMA_PROXIMITY_ATR": 0.2,
"TP_RR_MULT": 1.8
},
"metrics": {
"trades": 5,
"wr": 80.0,
"pf": 2.79,
"sharpe": 6.11,
"pnl_pips": 29.1,
"expectancy": 5.81
} }
}, },
{ {
"rank": 7, "rank": 7,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.5,
"EMA_PROXIMITY_ATR": 0.5, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 16, "trades": 56,
"wr": 56.2, "wr": 46.4,
"pf": 1.68, "pf": 1.21,
"sharpe": 3.33, "sharpe": 1.17,
"pnl_pips": 55.8, "pnl_pips": 69.1,
"expectancy": 3.49 "expectancy": 1.23
} }
}, },
{ {
"rank": 8, "rank": 8,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.5,
"EMA_PROXIMITY_ATR": 0.3, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 58,
"wr": 61.5, "wr": 46.6,
"pf": 1.61, "pf": 1.1,
"sharpe": 3.13, "sharpe": 0.58,
"pnl_pips": 45.9, "pnl_pips": 36.5,
"expectancy": 3.53 "expectancy": 0.63
} }
}, },
{ {
"rank": 9, "rank": 9,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.5,
"EMA_PROXIMITY_ATR": 0.5, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 16, "trades": 50,
"wr": 56.2, "wr": 44.0,
"pf": 1.56, "pf": 1.06,
"sharpe": 2.94, "sharpe": 0.34,
"pnl_pips": 45.9, "pnl_pips": 17.4,
"expectancy": 2.87 "expectancy": 0.35
} }
}, },
{ {
"rank": 10, "rank": 10,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.3, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 107,
"wr": 61.5, "wr": 46.7,
"pf": 1.51, "pf": 1.02,
"sharpe": 2.77, "sharpe": 0.15,
"pnl_pips": 38.1, "pnl_pips": 16.4,
"expectancy": 2.93 "expectancy": 0.15
} }
}, },
{ {
"rank": 11, "rank": 11,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.3, "TP1_ATR_MULT": 1.5,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 18, "trades": 129,
"wr": 55.6, "wr": 41.9,
"pf": 1.39, "pf": 0.93,
"sharpe": 2.15, "sharpe": -0.44,
"pnl_pips": 41.4, "pnl_pips": -74.3,
"expectancy": 2.3 "expectancy": -0.58
} }
}, },
{ {
"rank": 12, "rank": 12,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.5, "TP1_ATR_MULT": 2.0,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 40
}, },
"metrics": { "metrics": {
"trades": 25, "trades": 132,
"wr": 52.0, "wr": 35.6,
"pf": 1.37, "pf": 0.92,
"sharpe": 2.02, "sharpe": -0.54,
"pnl_pips": 52.6, "pnl_pips": -113.7,
"expectancy": 2.11 "expectancy": -0.86
} }
}, },
{ {
"rank": 13, "rank": 13,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.3, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 18, "trades": 112,
"wr": 55.6, "wr": 45.5,
"pf": 1.3, "pf": 0.9,
"sharpe": 1.72, "sharpe": -0.64,
"pnl_pips": 31.1, "pnl_pips": -76.3,
"expectancy": 1.73 "expectancy": -0.68
} }
}, },
{ {
"rank": 14, "rank": 14,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.5, "TP1_ATR_MULT": 1.5,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 25, "trades": 116,
"wr": 52.0, "wr": 40.5,
"pf": 1.26, "pf": 0.88,
"sharpe": 1.53, "sharpe": -0.79,
"pnl_pips": 37.4, "pnl_pips": -117.3,
"expectancy": 1.5 "expectancy": -1.01
} }
}, },
{ {
"rank": 15, "rank": 15,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.2, "TP1_ATR_MULT": 1.5,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 135,
"wr": 46.2, "wr": 41.5,
"pf": 0.69, "pf": 0.87,
"sharpe": -2.43, "sharpe": -0.89,
"pnl_pips": -31.9, "pnl_pips": -158.0,
"expectancy": -2.45 "expectancy": -1.17
} }
}, },
{ {
"rank": 16, "rank": 16,
"params": { "params": {
"MIN_ADX": 25, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.2, "TP1_ATR_MULT": 1.0,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 13, "trades": 95,
"wr": 46.2, "wr": 43.2,
"pf": 0.67, "pf": 0.87,
"sharpe": -2.67, "sharpe": -0.89,
"pnl_pips": -33.7, "pnl_pips": -85.9,
"expectancy": -2.59 "expectancy": -0.9
} }
}, },
{ {
"rank": 17, "rank": 17,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.2, "TP1_ATR_MULT": 2.0,
"TP_RR_MULT": 1.5 "OB_RETEST_WINDOW": 30
}, },
"metrics": { "metrics": {
"trades": 8, "trades": 119,
"wr": 50.0, "wr": 34.5,
"pf": 0.63, "pf": 0.86,
"sharpe": -3.16, "sharpe": -0.93,
"pnl_pips": -26.7, "pnl_pips": -174.8,
"expectancy": -3.33 "expectancy": -1.47
} }
}, },
{ {
"rank": 18, "rank": 18,
"params": { "params": {
"MIN_ADX": 30, "DISPLACEMENT_ATR": 2.0,
"EMA_PROXIMITY_ATR": 0.2, "TP1_ATR_MULT": 2.0,
"TP_RR_MULT": 1.8 "OB_RETEST_WINDOW": 50
}, },
"metrics": { "metrics": {
"trades": 8, "trades": 139,
"wr": 50.0, "wr": 34.5,
"pf": 0.62, "pf": 0.83,
"sharpe": -3.16, "sharpe": -1.13,
"pnl_pips": -27.4, "pnl_pips": -250.2,
"expectancy": -3.42 "expectancy": -1.8
}
},
{
"rank": 19,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 2.0,
"OB_RETEST_WINDOW": 40
},
"metrics": {
"trades": 320,
"wr": 33.4,
"pf": 0.82,
"sharpe": -1.29,
"pnl_pips": -561.3,
"expectancy": -1.75
}
},
{
"rank": 20,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.5,
"OB_RETEST_WINDOW": 40
},
"metrics": {
"trades": 319,
"wr": 38.9,
"pf": 0.8,
"sharpe": -1.47,
"pnl_pips": -535.9,
"expectancy": -1.68
}
},
{
"rank": 21,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.5,
"OB_RETEST_WINDOW": 30
},
"metrics": {
"trades": 273,
"wr": 39.2,
"pf": 0.8,
"sharpe": -1.5,
"pnl_pips": -459.6,
"expectancy": -1.68
}
},
{
"rank": 22,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 2.0,
"OB_RETEST_WINDOW": 30
},
"metrics": {
"trades": 273,
"wr": 33.3,
"pf": 0.8,
"sharpe": -1.4,
"pnl_pips": -517.0,
"expectancy": -1.89
}
},
{
"rank": 23,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.0,
"OB_RETEST_WINDOW": 40
},
"metrics": {
"trades": 271,
"wr": 44.3,
"pf": 0.79,
"sharpe": -1.46,
"pnl_pips": -355.9,
"expectancy": -1.31
}
},
{
"rank": 24,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 2.0,
"OB_RETEST_WINDOW": 50
},
"metrics": {
"trades": 329,
"wr": 33.4,
"pf": 0.78,
"sharpe": -1.62,
"pnl_pips": -724.8,
"expectancy": -2.2
}
},
{
"rank": 25,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.0,
"OB_RETEST_WINDOW": 30
},
"metrics": {
"trades": 226,
"wr": 44.2,
"pf": 0.78,
"sharpe": -1.63,
"pnl_pips": -321.4,
"expectancy": -1.42
}
},
{
"rank": 26,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.5,
"OB_RETEST_WINDOW": 50
},
"metrics": {
"trades": 327,
"wr": 39.1,
"pf": 0.77,
"sharpe": -1.69,
"pnl_pips": -633.6,
"expectancy": -1.94
}
},
{
"rank": 27,
"params": {
"DISPLACEMENT_ATR": 1.5,
"TP1_ATR_MULT": 1.0,
"OB_RETEST_WINDOW": 50
},
"metrics": {
"trades": 277,
"wr": 44.0,
"pf": 0.75,
"sharpe": -1.8,
"pnl_pips": -458.7,
"expectancy": -1.66
} }
} }
] ]