跳到主要內容

Feature Iteration Run #1037: zz_sylvain

Status: completed | Started: 2026-07-26 17:15:57 | Ended: 2026-07-26 17:19:16

📊 Iterations

Iter Y Label Model Warm Proxy Parent FS Feature DSL DSL Valid Baseline PF Modified PF Scalar Score t-stat p-value Cohen's d Result Reason
1 C8 lightgbm — — #7 k_iter1_atr_norm_price_position_i_rsi_k_close (o_div_amplitude_12 - o_div_amplitude_4… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: NaN ratio 1.000 exceeds 0.3
2 C8 lightgbm — — #7 k_loop_iter_2_7681a9 k_high.pct_change(12) * (1 - price_posi… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
3 C8 lightgbm — — #7 k_iter3_price_position_atr_norm_i_rsi_k_close o_div_amplitude_12 * (1 - price_positio… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: NaN ratio 1.000 exceeds 0.3
4 C8 lightgbm — — #7 k_loop_iter_4_f46ec1 obv_ensemble_3 / (1 + atr_norm) * (1 - … ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
5 C8 lightgbm — — #7 k_loop_iter_5_73bec8 i_macd(k_close, 12, 26, 9) / (k_close +… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
6 C8 lightgbm — — #7 k_iter6_i_atr_k_high_k_low_k_close i_atr(k_high, k_low, k_close, 20) / k_c… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: constant feature (variance < 1e-12)
7 C8 lightgbm — — #7 k_iter7_i_macd_k_close_k_high_i_ema i_macd(k_close, 12, 26, 9) / (k_close +… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: canonical duplicate: i_macd(k_close) / (k_close + 1e-10) * (k_high - i_ema(k_close)) / (i_atr(k_high,k_low,k_close) + 1e-10) * (1 - price_position)
8 C8 lightgbm — — #7 k_loop_iter_8_fc5951 obv_ensemble_3 * (1 - hl_range) / (1 + … ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
9 C8 lightgbm — — #7 k_iter9_abs_k_volume_rolling_mean abs(o_div_binary(12)) * k_volume.rollin… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT safe_eval DSL: 變數未定義: abs
10 C8 lightgbm — — #7 k_loop_iter_10_bae4df obv_ensemble_3 * (1 - hl_range) / (1 + … ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
11 C8 lightgbm — — #7 k_loop_iter_11_c4a091 k_momentum_pct_change * (1 - price_posi… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT 1-trial proxy PF=0.000 < 0.95, no improvement expected
12 C8 lightgbm — — #7 k_iter12_k_volume_pct_change_hl_range_i_atr k_volume.pct_change * (1 - hl_range) / … ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT safe_eval DSL triggered unexpected TypeError: unsupported operand type(s) for *: 'method' and 'float'
13 C8 lightgbm — — #7 k_iter13_k_close_i_ema_i_atr_k_high (k_close - i_ema(k_close, 20)) / (i_atr… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: NaN ratio 1.000 exceeds 0.3
14 C8 lightgbm — — #7 k_iter14_k_momentum_pct_chang_atr_norm_price_position (k_momentum_pct_change - obv_ensemble_3… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: constant feature (variance < 1e-12)
15 C8 lightgbm — — #7 k_iter15_return_5_hl_range_atr_norm (o_pct_change_12 - return_5) * (1 - hl_… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT quality_gate: constant feature (variance < 1e-12)

📄 Report Markdown

# AUTOLOOP: zz_sylvain (15 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**: 198.90s
> **Total accepted**: 0
> **Total rejected**: 15

## Iterations 詳情

### Iteration 1
- DSL: `(o_div_amplitude_12 - o_div_amplitude_48) / (1 + atr_norm) * (1 - price_position) * (1 + i_rsi(k_close, 14) / 100)` (feature=k_iter1_atr_norm_price_position_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: quality_gate: NaN ratio 1.000 exceeds 0.3

### Iteration 2
- DSL: `k_high.pct_change(12) * (1 - price_position) * (1 - return_5) / (1 + i_atr(k_high, k_low, k_close, 14) / k_close)` (feature=k_loop_iter_2_7681a9)
- DSL valid: True
- FeatureSet candidate id: 1375
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 3
- DSL: `o_div_amplitude_12 * (1 - price_position) / (1 + atr_norm) * i_rsi(k_close, 14) / 100` (feature=k_iter3_price_position_atr_norm_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: quality_gate: NaN ratio 1.000 exceeds 0.3

### Iteration 4
- DSL: `obv_ensemble_3 / (1 + atr_norm) * (1 - price_position)` (feature=k_loop_iter_4_f46ec1)
- DSL valid: True
- FeatureSet candidate id: 1376
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 5
- DSL: `i_macd(k_close, 12, 26, 9) / (k_close + 1e-10) * (k_high - i_ema(k_close, 20)) / (i_atr(k_high, k_low, k_close, 14) + 1e-10) * (1 - price_position)` (feature=k_loop_iter_5_73bec8)
- DSL valid: True
- FeatureSet candidate id: 1377
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 6
- DSL: `i_atr(k_high, k_low, k_close, 20) / k_close * (1 - k_close.rolling(20).min() / k_close) * (k_close.rolling(20).max() / k_close - 1)` (feature=k_iter6_i_atr_k_high_k_low_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: quality_gate: constant feature (variance < 1e-12)

### Iteration 7
- DSL: `i_macd(k_close, 12, 26, 9) / (k_close + 1e-10) * (k_high - i_ema(k_close, 20)) / (i_atr(k_high, k_low, k_close, 14) + 1e-10) * (1 - price_position)` (feature=k_iter7_i_macd_k_close_k_high_i_ema)
- 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) / (k_close + 1e-10) * (k_high - i_ema(k_close)) / (i_atr(k_high,k_low,k_close) + 1e-10) * (1 - price_position)

### Iteration 8
- DSL: `obv_ensemble_3 * (1 - hl_range) / (1 + atr_norm) * (1 - price_position)` (feature=k_loop_iter_8_fc5951)
- DSL valid: True
- FeatureSet candidate id: 1378
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 9
- DSL: `abs(o_div_binary(12)) * k_volume.rolling.mean / (1 + i_atr(k_high, k_low, k_close, 14) / k_close) * (k_close - i_ema(k_close, 20)) / (k_close + 1e-10)` (feature=k_iter9_abs_k_volume_rolling_mean)
- 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: 變數未定義: abs

### Iteration 10
- DSL: `obv_ensemble_3 * (1 - hl_range) / (1 + i_atr(k_high, k_low, k_close, 14) / k_close) * (k_close - i_ema(k_close, 20)) / (k_close + 1e-10)` (feature=k_loop_iter_10_bae4df)
- DSL valid: True
- FeatureSet candidate id: 1379
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 11
- DSL: `k_momentum_pct_change * (1 - price_position) / (1 + i_atr(k_high, k_low, k_close, 14) / k_close) * o_pct_change_12` (feature=k_loop_iter_11_c4a091)
- DSL valid: True
- FeatureSet candidate id: 1380
- 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: 1-trial proxy PF=0.000 < 0.95, no improvement expected

### Iteration 12
- DSL: `k_volume.pct_change * (1 - hl_range) / (1 + i_atr(k_high, k_low, k_close, 14) / k_close) * i_rsi(k_close, 14) / 100` (feature=k_iter12_k_volume_pct_change_hl_range_i_atr)
- 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 triggered unexpected TypeError: unsupported operand type(s) for *: 'method' and 'float'

### Iteration 13
- DSL: `(k_close - i_ema(k_close, 20)) / (i_atr(k_high, k_low, k_close, 14) + 1e-10) * (1 + hl_range) * i_rsi(k_close, 14) / 100` (feature=k_iter13_k_close_i_ema_i_atr_k_high)
- 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 14
- DSL: `(k_momentum_pct_change - obv_ensemble_3) / (1 + atr_norm) * (1 - price_position)` (feature=k_iter14_k_momentum_pct_chang_atr_norm_price_position)
- 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: constant feature (variance < 1e-12)

### Iteration 15
- DSL: `(o_pct_change_12 - return_5) * (1 - hl_range) / (1 + atr_norm)` (feature=k_iter15_return_5_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: constant feature (variance < 1e-12)

📊 Multi-Objective Metrics

Iteration 1: k_iter1_atr_norm_price_position_i_rsi_k_close

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 2: k_loop_iter_2_7681a9

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 3: k_iter3_price_position_atr_norm_i_rsi_k_close

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 4: k_loop_iter_4_f46ec1

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 5: k_loop_iter_5_73bec8

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 6: k_iter6_i_atr_k_high_k_low_k_close

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 7: k_iter7_i_macd_k_close_k_high_i_ema

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 8: k_loop_iter_8_fc5951

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 9: k_iter9_abs_k_volume_rolling_mean

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 10: k_loop_iter_10_bae4df

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 11: k_loop_iter_11_c4a091

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 12: k_iter12_k_volume_pct_change_hl_range_i_atr

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 13: k_iter13_k_close_i_ema_i_atr_k_high

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 14: k_iter14_k_momentum_pct_chang_atr_norm_price_position

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 15: k_iter15_return_5_hl_range_atr_norm

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

📁 Offline Report

Markdown backup: reports/autoloop/zz_sylvain/20260727_011916.md