Feature Iteration Run #918: zz_sylvain
Status: completed | Started: 2026-07-25 14:34:20 | Ended: 2026-07-25 14:40:20
⭐ Best Accepted Iteration
Iteration 1: k_momentum_pct_change * obv_ensemble_3 / (1 + atr_norm * 10…
baseline PF: 1.947 → modified PF: 2.449 | Cohen's d: 0.242 | p-value: 0.252
📊 Iterations
| Iter | Y Label | Model | Warm | Proxy | Parent FS | Feature | Baseline PF | Modified PF | Scalar Score | Result |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | C8 |
gradient_boosting |
— | — | #7 | k_loop_iter_1_d44640 | 1.947 | 2.449 | 0.8286 | ✅ ACCEPT |
| 2 | C8 |
gradient_boosting |
— | — | #1241 | k_loop_iter_2_a48a17 | 2.449 | 1.181 | -0.6402 | ❌ REJECT |
| 3 | C8 |
gradient_boosting |
— | — | #1241 | k_iter3_k_momentum_pct_chang_price_position_atr_norm | 0.000 | 0.000 | 0.0000 | ❌ REJECT |
| 4 | C8 |
gradient_boosting |
— | — | #1241 | k_loop_iter_4_5d32b4 | 2.449 | 1.301 | -0.4915 | ❌ REJECT |
| 5 | C8 |
gradient_boosting |
— | — | #1241 | k_iter5_i_macd_k_close_atr_norm | 0.000 | 0.000 | 0.0000 | ❌ REJECT |
| 6 | C8 |
gradient_boosting |
— | — | #1241 | k_loop_iter_6_2a70d2 | 2.449 | 1.181 | -4.0222 | ❌ REJECT |
| 7 | C8 |
gradient_boosting |
— | — | #1241 | k_iter7_k_high_pct_change_vol_ratio_atr_norm | 0.000 | 0.000 | 0.0000 | ❌ REJECT |
| 8 | C8 |
gradient_boosting |
— | — | #1241 | k_loop_iter_8_88fd92 | 2.449 | 1.181 | -4.0222 | ❌ REJECT |
📄 Report Markdown
# AUTOLOOP: zz_sylvain (8 iterations)
> **Phase**: Y4.7 Option B (DSL → Python code → FeatureSet candidate)
> **Target indicator**: zz_sylvain
> **Base feature_set_id**: 1241
> **Claim**: (default) Propose a new k_* feature that improves risk-adjusted returns
> **Objective mode**: scalarize
> **Metrics**: ['profit_factor', 'sharpe_ratio', 'win_rate', 'max_drawdown', 'test_accuracy']
> **Total duration**: 360.08s
> **Total accepted**: 1
> **Total rejected**: 7
## Iterations 詳情
### Iteration 1
- DSL: `k_momentum_pct_change * obv_ensemble_3 / (1 + atr_norm * 10) - i_macd(k_close, 12, 26, 9)` (feature=k_loop_iter_1_d44640)
- DSL valid: True
- FeatureSet candidate id: 1241
- baseline PF: 1.947 → modified PF: 2.449
- t_stat: 0.000, p_value: 0.252, cohens_d: 0.242
- scalar_score: 0.8286
- accepted: True, reason: accepted
**Metrics summary:**
- profit_factor: baseline=1.947, modified=2.449, diff=0.501
- sharpe_ratio: baseline=19.162, modified=24.736, diff=5.574
- win_rate: baseline=0.600, modified=0.576, diff=-0.024
- max_drawdown: baseline=0.056, modified=0.061, diff=0.005
- test_accuracy: baseline=0.992, modified=0.992, diff=-0.000
### Iteration 2
- DSL: `i_macd(k_close, 12, 26, 9) * obv_ensemble_3 / (1 + atr_norm * 10)` (feature=k_loop_iter_2_a48a17)
- DSL valid: True
- FeatureSet candidate id: 1242
- baseline PF: 2.449 → modified PF: 1.181
- t_stat: 0.000, p_value: 0.113, cohens_d: 0.358
- scalar_score: -0.6402
- accepted: False, reason: normalized_score -0.2362 <= 0.0, sharpe_delta -19.7631 < -0.1, hypothesis test not confirmed
**Metrics summary:**
- profit_factor: baseline=2.449, modified=1.181, diff=-1.268
- sharpe_ratio: baseline=24.736, modified=4.973, diff=-19.763
- win_rate: baseline=0.576, modified=0.586, diff=0.010
- max_drawdown: baseline=0.061, modified=0.187, diff=0.125
- test_accuracy: baseline=0.992, modified=0.992, diff=0.000
### Iteration 3
- DSL: `k_momentum_pct_change * (1 - price_position) * obv_ensemble_3 / (1 + atr_norm)` (feature=k_iter3_k_momentum_pct_chang_price_position_atr_norm)
- DSL valid: False
- FeatureSet candidate id: None
- baseline PF: 0.000 → modified PF: 0.000
- t_stat: 0.000, p_value: 1.000, cohens_d: 0.000
- scalar_score: 0.0000
- accepted: False, reason: quality_gate: canonical duplicate: k_momentum_pct_change * (1 - price_position) * obv_ensemble_3 / (1 + atr_norm)
### Iteration 4
- DSL: `i_macd(k_close, 12, 26, 9) * (1 - price_position) / (1 + atr_norm)` (feature=k_loop_iter_4_5d32b4)
- DSL valid: True
- FeatureSet candidate id: 1243
- baseline PF: 2.449 → modified PF: 1.301
- t_stat: 0.000, p_value: 0.002, cohens_d: 0.265
- scalar_score: -0.4915
- accepted: False, reason: normalized_score -0.2566 <= 0.0, sharpe_delta -17.2574 < -0.1, hypothesis test not confirmed
**Metrics summary:**
- profit_factor: baseline=2.449, modified=1.301, diff=-1.148
- sharpe_ratio: baseline=24.736, modified=7.479, diff=-17.257
- win_rate: baseline=0.576, modified=0.446, diff=-0.130
- max_drawdown: baseline=0.061, modified=0.097, diff=0.036
- test_accuracy: baseline=0.992, modified=0.969, diff=-0.023
### Iteration 5
- DSL: `i_macd(k_close, 12, 26, 9) * obv_ensemble_3 / (1 + atr_norm * 10)` (feature=k_iter5_i_macd_k_close_atr_norm)
- DSL valid: False
- FeatureSet candidate id: None
- baseline PF: 0.000 → modified PF: 0.000
- t_stat: 0.000, p_value: 1.000, cohens_d: 0.000
- scalar_score: 0.0000
- accepted: False, reason: quality_gate: canonical duplicate: i_macd(k_close) * obv_ensemble_3 / (1 + atr_norm * 10)
### Iteration 6
- DSL: `(i_macd(k_close, 12, 26, 9) - i_macd(k_close, 6, 13, 4)) / (1 + i_atr(k_high, k_low, k_close, 14) / k_close * 10) * vol_ratio` (feature=k_loop_iter_6_2a70d2)
- DSL valid: True
- FeatureSet candidate id: 1244
- baseline PF: 2.449 → modified PF: 1.181
- t_stat: 0.000, p_value: 0.000, cohens_d: 0.839
- scalar_score: -4.0222
- accepted: False, reason: normalized_score -0.2362 <= 0.0, sharpe_delta -19.7631 < -0.1, hypothesis test not confirmed
**Metrics summary:**
- profit_factor: baseline=2.449, modified=1.181, diff=-1.268
- sharpe_ratio: baseline=24.736, modified=4.973, diff=-19.763
- win_rate: baseline=0.576, modified=0.586, diff=0.010
- max_drawdown: baseline=0.061, modified=0.187, diff=0.125
- test_accuracy: baseline=0.992, modified=0.992, diff=0.000
### Iteration 7
- DSL: `(k_high.pct_change(12) * vol_ratio) / (1 + atr_norm * i_rsi(k_close, 14))` (feature=k_iter7_k_high_pct_change_vol_ratio_atr_norm)
- DSL valid: False
- FeatureSet candidate id: None
- baseline PF: 0.000 → modified PF: 0.000
- t_stat: 0.000, p_value: 1.000, cohens_d: 0.000
- scalar_score: 0.0000
- accepted: False, reason: quality_gate: NaN ratio 1.000 exceeds 0.3
### Iteration 8
- DSL: `(k_high.pct_change(12) - i_macd(k_close, 12, 26, 9)) * obv_ensemble_3 / (1 + atr_norm * 10)` (feature=k_loop_iter_8_88fd92)
- DSL valid: True
- FeatureSet candidate id: 1245
- baseline PF: 2.449 → modified PF: 1.181
- t_stat: 0.000, p_value: 0.000, cohens_d: 0.839
- scalar_score: -4.0222
- accepted: False, reason: normalized_score -0.2362 <= 0.0, sharpe_delta -19.7631 < -0.1, hypothesis test not confirmed
**Metrics summary:**
- profit_factor: baseline=2.449, modified=1.181, diff=-1.268
- sharpe_ratio: baseline=24.736, modified=4.973, diff=-19.763
- win_rate: baseline=0.576, modified=0.586, diff=0.010
- max_drawdown: baseline=0.061, modified=0.187, diff=0.125
- test_accuracy: baseline=0.992, modified=0.992, diff=0.000
📊 Multi-Objective Metrics
Iteration 1: k_loop_iter_1_d44640
Y Label: C8 | Parent FS: #7
Objective mode: scalarize
Scalar score: 0.8286
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.600 | 0.576 | -0.024 |
| max_drawdown | 0.056 | 0.061 | 0.005 |
| sharpe_ratio | 19.162 | 24.736 | 5.574 |
| profit_factor | 1.947 | 2.449 | 0.501 |
| test_accuracy | 0.992 | 0.992 | 0.000 |
Iteration 2: k_loop_iter_2_a48a17
Y Label: C8 | Parent FS: #1241
Objective mode: scalarize
Scalar score: -0.6402
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.576 | 0.586 | 0.010 |
| max_drawdown | 0.061 | 0.187 | 0.125 |
| sharpe_ratio | 24.736 | 4.973 | -19.763 |
| profit_factor | 2.449 | 1.181 | -1.268 |
| test_accuracy | 0.992 | 0.992 | 0.000 |
Iteration 3: k_iter3_k_momentum_pct_chang_price_position_atr_norm
Y Label: C8 | Parent FS: #1241
Objective mode: single
Scalar score: 0.0000
Iteration 4: k_loop_iter_4_5d32b4
Y Label: C8 | Parent FS: #1241
Objective mode: scalarize
Scalar score: -0.4915
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.576 | 0.446 | -0.130 |
| max_drawdown | 0.061 | 0.097 | 0.036 |
| sharpe_ratio | 24.736 | 7.479 | -17.257 |
| profit_factor | 2.449 | 1.301 | -1.148 |
| test_accuracy | 0.992 | 0.969 | -0.023 |
Iteration 5: k_iter5_i_macd_k_close_atr_norm
Y Label: C8 | Parent FS: #1241
Objective mode: single
Scalar score: 0.0000
Iteration 6: k_loop_iter_6_2a70d2
Y Label: C8 | Parent FS: #1241
Objective mode: scalarize
Scalar score: -4.0222
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.576 | 0.586 | 0.010 |
| max_drawdown | 0.061 | 0.187 | 0.125 |
| sharpe_ratio | 24.736 | 4.973 | -19.763 |
| profit_factor | 2.449 | 1.181 | -1.268 |
| test_accuracy | 0.992 | 0.992 | 0.000 |
Iteration 7: k_iter7_k_high_pct_change_vol_ratio_atr_norm
Y Label: C8 | Parent FS: #1241
Objective mode: single
Scalar score: 0.0000
Iteration 8: k_loop_iter_8_88fd92
Y Label: C8 | Parent FS: #1241
Objective mode: scalarize
Scalar score: -4.0222
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.576 | 0.586 | 0.010 |
| max_drawdown | 0.061 | 0.187 | 0.125 |
| sharpe_ratio | 24.736 | 4.973 | -19.763 |
| profit_factor | 2.449 | 1.181 | -1.268 |
| test_accuracy | 0.992 | 0.992 | 0.000 |
📁 Offline Report
Markdown backup: reports/autoloop/zz_sylvain/20260725_224020.md