ETH BB squeeze exit management task C
Run command: rtk .venv/bin/python /home/lxy/okx-codex-trader/scripts/search_eth_bb_squeeze_exit_management.py --bar 15m --years 10.0 --output-dir reports/eth-exploration
Aligned local history: 2019-12-25 00:00 to 2026-05-20 15:15.
Entry logic is fixed to the current live baseline: ETH 15m, band 96, bandwidth 960 q0.25, 1% stop, 3% take, middle exit 0.1% x1, vol cap 0.006, cooldown 24, BTC-up, NY weekday entries, skip US-open middle exits, both sides.
Exit priority: pending middle exit at next open, then entry fill; while holding, open gaps are checked before intrabar checks, protected stop/stop-loss is conservative before take-profit, then middle exit can schedule next-open exit. Dynamic protection uses MFE confirmed before the current candle.
Baseline
| name |
trades |
win_rate |
avg_return_pct |
payoff_ratio |
profit_factor |
net_total_return |
net_annualized_return |
net_max_drawdown |
net_calmar |
| benone-trailnone |
458 |
0.31441 |
0.456326 |
2.70113 |
1.23874 |
0.737524 |
0.0900513 |
0.631785 |
0.142535 |
Top 5 by full maker_taker Calmar
| name |
trades |
win_rate |
avg_return_pct |
payoff_ratio |
profit_factor |
net_total_return |
net_annualized_return |
net_max_drawdown |
net_calmar |
| be0.008-0.001-trailnone |
469 |
0.567164 |
0.449519 |
1.04199 |
1.36536 |
1.0854 |
0.121546 |
0.538717 |
0.225622 |
| be0.008-0-trailnone |
469 |
0.206823 |
0.453273 |
2.86379 |
1.36841 |
1.07583 |
0.120741 |
0.554637 |
0.217695 |
| be0.01-0-trailnone |
466 |
0.227468 |
0.477047 |
2.85896 |
1.34689 |
1.21153 |
0.131872 |
0.606408 |
0.217465 |
| be0.005-0.001-trailnone |
478 |
0.612971 |
0.411953 |
0.895307 |
1.41797 |
0.909032 |
0.106185 |
0.496816 |
0.21373 |
| be0.01-0.001-trailnone |
466 |
0.517167 |
0.433214 |
1.22771 |
1.31501 |
0.850053 |
0.10078 |
0.579416 |
0.173934 |
Top 5 horizons
| name |
horizon |
trades |
win_rate |
avg_return_pct |
payoff_ratio |
profit_factor |
net_total_return |
net_annualized_return |
net_max_drawdown |
net_calmar |
| be0.008-0.001-trailnone |
full |
469 |
0.567164 |
0.449519 |
1.04199 |
1.36536 |
1.0854 |
0.122099 |
0.538717 |
0.226647 |
| be0.008-0-trailnone |
full |
469 |
0.206823 |
0.453273 |
2.86379 |
1.36841 |
1.07583 |
0.12129 |
0.554637 |
0.218684 |
| be0.01-0-trailnone |
full |
466 |
0.227468 |
0.477047 |
2.85896 |
1.34689 |
1.21153 |
0.132475 |
0.606408 |
0.218458 |
| be0.005-0.001-trailnone |
full |
478 |
0.612971 |
0.411953 |
0.895307 |
1.41797 |
0.909032 |
0.106664 |
0.496816 |
0.214695 |
| be0.01-0.001-trailnone |
full |
466 |
0.517167 |
0.433214 |
1.22771 |
1.31501 |
0.850053 |
0.101234 |
0.579416 |
0.174717 |
| be0.008-0.001-trailnone |
3y |
197 |
0.548223 |
0.388206 |
1.07378 |
1.30302 |
0.20999 |
0.0655376 |
0.538717 |
0.121655 |
| be0.01-0.001-trailnone |
3y |
195 |
0.502564 |
0.352488 |
1.2365 |
1.24925 |
0.111747 |
0.0359083 |
0.579416 |
0.0619732 |
| be0.008-0-trailnone |
3y |
197 |
0.218274 |
0.333383 |
2.60837 |
1.26022 |
0.0820363 |
0.0266054 |
0.554637 |
0.047969 |
| be0.01-0-trailnone |
3y |
195 |
0.235897 |
0.317104 |
2.58153 |
1.22423 |
0.0337452 |
0.011114 |
0.606408 |
0.0183276 |
| be0.005-0.001-trailnone |
3y |
201 |
0.61194 |
0.190077 |
0.753776 |
1.18865 |
-0.144542 |
-0.0506636 |
0.496816 |
-0.101977 |
| be0.008-0.001-trailnone |
1y |
64 |
0.640625 |
0.820553 |
0.995372 |
1.77436 |
0.400628 |
0.400628 |
0.17705 |
2.2628 |
| be0.01-0.001-trailnone |
1y |
64 |
0.609375 |
0.723148 |
1.04493 |
1.63009 |
0.314747 |
0.314747 |
0.198293 |
1.58728 |
| be0.008-0-trailnone |
1y |
64 |
0.25 |
0.703366 |
2.39167 |
1.66377 |
0.299365 |
0.299365 |
0.191502 |
1.56325 |
| be0.01-0-trailnone |
1y |
64 |
0.25 |
0.615336 |
2.40024 |
1.53615 |
0.227037 |
0.227037 |
0.212842 |
1.0667 |
| be0.005-0.001-trailnone |
1y |
64 |
0.65625 |
0.251292 |
0.677539 |
1.29348 |
-0.00528428 |
-0.00528428 |
0.16686 |
-0.0316689 |
| be0.008-0.001-trailnone |
6m |
33 |
0.636364 |
1.03818 |
1.1337 |
1.98397 |
0.273263 |
0.627704 |
0.0924258 |
6.79144 |
| be0.01-0.001-trailnone |
6m |
33 |
0.606061 |
0.938176 |
1.18213 |
1.81865 |
0.231283 |
0.521296 |
0.0924258 |
5.64016 |
| be0.008-0-trailnone |
6m |
33 |
0.242424 |
0.919994 |
2.80794 |
1.87196 |
0.224533 |
0.504524 |
0.0970462 |
5.1988 |
| be0.01-0-trailnone |
6m |
33 |
0.242424 |
0.829085 |
2.80063 |
1.72346 |
0.18772 |
0.414707 |
0.0970462 |
4.27329 |
| be0.005-0.001-trailnone |
6m |
33 |
0.636364 |
0.420912 |
0.844301 |
1.47753 |
0.0513299 |
0.106212 |
0.117857 |
0.901196 |
| be0.008-0.001-trailnone |
3m |
18 |
0.722222 |
1.9381 |
1.31692 |
3.42399 |
0.336641 |
2.28702 |
0.0916089 |
24.965 |
| be0.008-0-trailnone |
3m |
18 |
0.333333 |
1.82143 |
2.73173 |
3.27807 |
0.308848 |
2.01562 |
0.0970462 |
20.7697 |
| be0.01-0.001-trailnone |
3m |
18 |
0.666667 |
1.75477 |
1.40806 |
2.81612 |
0.292572 |
1.86476 |
0.0916089 |
20.3557 |
| be0.01-0-trailnone |
3m |
18 |
0.333333 |
1.65477 |
2.71262 |
2.71262 |
0.2695 |
1.66079 |
0.0970462 |
17.1134 |
| be0.005-0.001-trailnone |
3m |
18 |
0.666667 |
1.02154 |
1.19704 |
2.39408 |
0.142114 |
0.724544 |
0.0705036 |
10.2767 |
| be0.005-0.001-trailnone |
21d |
4 |
0.75 |
0.09645 |
0.387098 |
1.16129 |
-0.00506551 |
-0.0844837 |
0.026019 |
-3.247 |
| be0.01-0.001-trailnone |
21d |
4 |
0.75 |
0.09645 |
0.387098 |
1.16129 |
-0.00506551 |
-0.0844837 |
0.026019 |
-3.247 |
| be0.008-0.001-trailnone |
21d |
4 |
0.75 |
0.09645 |
0.387098 |
1.16129 |
-0.00506551 |
-0.0844837 |
0.026019 |
-3.247 |
| be0.01-0-trailnone |
21d |
4 |
0.25 |
-0.05355 |
0.910448 |
0.910448 |
-0.0110208 |
-0.175201 |
0.0280644 |
-6.24283 |
| be0.008-0-trailnone |
21d |
4 |
0.25 |
-0.05355 |
0.910448 |
0.910448 |
-0.0110208 |
-0.175201 |
0.0280644 |
-6.24283 |
Exit reason distribution
| name |
exit_reason |
trades |
wins |
losses |
sum_return_pct |
avg_return_pct |
payoff_ratio |
profit_factor |
| be0.005-0.001-trailnone |
breakeven |
214 |
214 |
0 |
64.2 |
0.3 |
0 |
0 |
| be0.005-0.001-trailnone |
breakeven_gap |
35 |
7 |
28 |
-15.362 |
-0.438914 |
0.363529 |
0.0908822 |
| be0.005-0.001-trailnone |
signal_middle |
22 |
7 |
15 |
-10.9244 |
-0.496564 |
1.31329 |
0.612869 |
| be0.005-0.001-trailnone |
stop |
142 |
0 |
142 |
-426 |
-3 |
0 |
0 |
| be0.005-0.001-trailnone |
take_profit |
65 |
65 |
0 |
585 |
9 |
0 |
0 |
| be0.008-0-trailnone |
breakeven |
169 |
0 |
0 |
0 |
0 |
0 |
0 |
| be0.008-0-trailnone |
breakeven_gap |
6 |
0 |
6 |
-4.2721 |
-0.712017 |
0 |
0 |
| be0.008-0-trailnone |
signal_middle |
30 |
13 |
17 |
0.8573 |
0.0285767 |
1.34192 |
1.02617 |
| be0.008-0-trailnone |
stop |
180 |
0 |
180 |
-540 |
-3 |
0 |
0 |
| be0.008-0-trailnone |
take_profit |
84 |
84 |
0 |
756 |
9 |
0 |
0 |
| be0.008-0.001-trailnone |
breakeven |
171 |
171 |
0 |
51.3 |
0.3 |
0 |
0 |
| be0.008-0.001-trailnone |
breakeven_gap |
10 |
4 |
6 |
-3.3329 |
-0.33329 |
0.329768 |
0.219845 |
| be0.008-0.001-trailnone |
signal_middle |
30 |
13 |
17 |
0.8573 |
0.0285767 |
1.34192 |
1.02617 |
| be0.008-0.001-trailnone |
stop |
180 |
0 |
180 |
-540 |
-3 |
0 |
0 |
| be0.008-0.001-trailnone |
take_profit |
78 |
78 |
0 |
702 |
9 |
0 |
0 |
| be0.01-0-trailnone |
breakeven |
135 |
0 |
0 |
0 |
0 |
0 |
0 |
| be0.01-0-trailnone |
breakeven_gap |
5 |
0 |
5 |
-4.142 |
-0.8284 |
0 |
0 |
| be0.01-0-trailnone |
signal_middle |
35 |
14 |
21 |
-4.554 |
-0.130114 |
1.32798 |
0.885323 |
| be0.01-0-trailnone |
stop |
199 |
0 |
199 |
-597 |
-3 |
0 |
0 |
| be0.01-0-trailnone |
take_profit |
92 |
92 |
0 |
828 |
9 |
0 |
0 |
| be0.01-0.001-trailnone |
breakeven |
140 |
140 |
0 |
42 |
0.3 |
0 |
0 |
| be0.01-0.001-trailnone |
breakeven_gap |
7 |
2 |
5 |
-3.5685 |
-0.509786 |
0.346149 |
0.13846 |
| be0.01-0.001-trailnone |
signal_middle |
35 |
14 |
21 |
-4.554 |
-0.130114 |
1.32798 |
0.885323 |
| be0.01-0.001-trailnone |
stop |
199 |
0 |
199 |
-597 |
-3 |
0 |
0 |
| be0.01-0.001-trailnone |
take_profit |
85 |
85 |
0 |
765 |
9 |
0 |
0 |
| benone-trailnone |
signal_middle |
73 |
29 |
44 |
-16.0027 |
-0.219215 |
1.14618 |
0.75544 |
| benone-trailnone |
stop |
270 |
0 |
270 |
-810 |
-3 |
0 |
0 |
| benone-trailnone |
take_profit |
115 |
115 |
0 |
1035 |
9 |
0 |
0 |
Recommendation
Do not update live from this task unless a candidate beats the baseline on full-window Calmar and does not degrade 1y, 6m, 3m, and 21d net total return versus baseline. See CSV outputs for the strict comparison.