Feature Iteration Run #984: zz_sylvain
Status: completed | Started: 2026-07-26 04:36:16 | Ended: 2026-07-26 04:37:39
📊 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_5e68f1 | 1.947 | 1.408 | -0.2659 | ❌ REJECT |
| 2 | C8 |
gradient_boosting |
— | — | #7 | k_iter2_k_high_pct_change_hl_range_atr_norm | 0.000 | 0.000 | 0.0000 | ❌ REJECT |
| 3 | C8 |
gradient_boosting |
— | — | #7 | k_iter3_k_momentum_pct_chang_k_close_position_in__i_rsi_k_close | 0.000 | 0.000 | 0.0000 | ❌ REJECT |
📄 Report Markdown
# AUTOLOOP: zz_sylvain (3 iterations)
> **Phase**: Y4.7 Option B (DSL → Python code → FeatureSet candidate)
> **Target indicator**: zz_sylvain
> **Base feature_set_id**: 7
> **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**: 83.00s
> **Total accepted**: 0
> **Total rejected**: 3
## Iterations 詳情
### Iteration 1
- DSL: `(obv_ensemble_3 * (1 - hl_range)) / (1 + i_atr(k_high, k_low, k_close, 14)) * i_macd(k_close, 12, 26, 9)` (feature=k_loop_iter_1_5e68f1)
- DSL valid: True
- FeatureSet candidate id: 1257
- baseline PF: 1.947 → modified PF: 1.408
- t_stat: 0.000, p_value: 0.269, cohens_d: 0.292
- scalar_score: -0.2659
- accepted: False, reason: normalized_score -0.1418 <= 0.0, sharpe_delta -8.9106 < -0.1, hypothesis test not confirmed
**Metrics summary:**
- profit_factor: baseline=1.947, modified=1.408, diff=-0.540
- sharpe_ratio: baseline=19.162, modified=10.252, diff=-8.911
- win_rate: baseline=0.600, modified=0.482, diff=-0.118
- max_drawdown: baseline=0.056, modified=0.219, diff=0.163
- test_accuracy: baseline=0.992, modified=0.981, diff=-0.012
### Iteration 2
- DSL: `k_high.pct_change(12) * (1 + hl_range) / (1 + atr_norm) * (1 - dist_to_high) * (1 - return_5)` (feature=k_iter2_k_high_pct_change_hl_range_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: C8 leakage: ['dist_to_high']
### Iteration 3
- DSL: `k_momentum_pct_change * (1 - k_close_position_in_hl) * i_rsi(k_close, 14) / (1 + atr_norm * 10)` (feature=k_iter3_k_momentum_pct_chang_k_close_position_in__i_rsi_k_close)
- 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: safe_eval DSL: 變數未定義: k_close_position_in_hl
📊 Multi-Objective Metrics
Iteration 1: k_loop_iter_1_5e68f1
Y Label: C8 | Parent FS: #7
Objective mode: scalarize
Scalar score: -0.2659
| Metric | Baseline | Modified | Diff |
|---|---|---|---|
| win_rate | 0.600 | 0.482 | -0.118 |
| max_drawdown | 0.056 | 0.219 | 0.163 |
| sharpe_ratio | 19.162 | 10.252 | -8.911 |
| profit_factor | 1.947 | 1.408 | -0.540 |
| test_accuracy | 0.992 | 0.981 | -0.012 |
Iteration 2: k_iter2_k_high_pct_change_hl_range_atr_norm
Y Label: C8 | Parent FS: #7
Objective mode: single
Scalar score: 0.0000
Iteration 3: k_iter3_k_momentum_pct_chang_k_close_position_in__i_rsi_k_close
Y Label: C8 | Parent FS: #7
Objective mode: single
Scalar score: 0.0000
📁 Offline Report
Markdown backup: reports/autoloop/zz_sylvain/20260726_123739.md