跳到主要內容

Feature Iteration Run #845: zz_sylvain

Status: completed | Started: 2026-07-23 13:13:06 | Ended: 2026-07-23 13:14:26

⭐ Best Accepted Iteration

Iteration 2: i_macd(k_close, 12, 26, 9) / k_close.rolling(20).mean() * (…

baseline PF: 1.947 → modified PF: 2.037 | Cohen's d: 0.635 | p-value: 0.010

📊 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 gradient_boosting — — #7 k_iter1_k_macd_div_norm_i_macd_k_close_i_atr k_macd_div_norm = i_macd(k_close, 12, 2… ❌ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT safe_eval DSL: 語法錯誤: invalid syntax (<unknown>, line 1)
2 C8 gradient_boosting — — #7 k_loop_iter_2_5335df i_macd(k_close, 12, 26, 9) / k_close.ro… ✅ 1.947 2.037 0.4076 0.000 0.010 0.635 ✅ ACCEPT accepted
3 C8 gradient_boosting — — #1197 k_iter3_i_macd_k_close_rolling_mean i_macd(k_close, 12, 26, 9) / k_close.ro… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT generate unexpected error: value too long for type character varying(100)
4 C8 gradient_boosting — — #1197 k_iter4_i_macd_k_close_rolling_mean i_macd(k_close, 12, 26, 9) / k_close.ro… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT generate unexpected error: value too long for type character varying(100)
5 C8 gradient_boosting — — #1197 k_iter5_i_macd_k_close_rolling_mean i_macd(k_close, 12, 26, 9) / (k_close.r… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT generate unexpected error: value too long for type character varying(100)
6 C8 gradient_boosting — — #1197 k_iter6_i_macd_k_close_rolling_mean i_macd(k_close, 12, 26, 9) / k_close.ro… ✅ 0.000 0.000 0.0000 0.000 1.000 0.000 ❌ REJECT generate unexpected error: value too long for type character varying(100)

📄 Report Markdown

# AUTOLOOP: zz_sylvain (6 iterations)

> **Phase**: Y4.7 Option B (DSL → Python code → FeatureSet candidate)
> **Target indicator**: zz_sylvain
> **Base feature_set_id**: 1197
> **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**: 79.60s
> **Total accepted**: 1
> **Total rejected**: 5

## Iterations 詳情

### Iteration 1
- DSL: `k_macd_div_norm = i_macd(k_close, 12, 26, 9) / (1 + i_atr(k_high, k_low, k_close, 14))` (feature=k_iter1_k_macd_div_norm_i_macd_k_close_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: 語法錯誤: invalid syntax (<unknown>, line 1)

### Iteration 2
- DSL: `i_macd(k_close, 12, 26, 9) / k_close.rolling(20).mean() * (1 - price_position)` (feature=k_loop_iter_2_5335df)
- DSL valid: True
- FeatureSet candidate id: 1197
- baseline PF: 1.947 → modified PF: 2.037
- t_stat: 0.000, p_value: 0.010, cohens_d: 0.635
- scalar_score: 0.4076
- accepted: True, reason: accepted

**Metrics summary:**
  - profit_factor: baseline=1.947, modified=2.037, diff=0.090
  - sharpe_ratio: baseline=19.162, modified=20.733, diff=1.571
  - win_rate: baseline=0.600, modified=0.613, diff=0.013
  - max_drawdown: baseline=0.056, modified=0.098, diff=0.042
  - test_accuracy: baseline=0.992, modified=0.992, diff=-0.000

### Iteration 3
- DSL: `i_macd(k_close, 12, 26, 9) / k_close.rolling(20).mean() * (1 - price_position) * (1 + hl_range)` (feature=k_iter3_i_macd_k_close_rolling_mean)
- DSL valid: True
- 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: generate unexpected error: value too long for type character varying(100)


### Iteration 4
- DSL: `i_macd(k_close, 12, 26, 9) / k_close.rolling(20).mean() * (1 - price_position) * vol_ratio` (feature=k_iter4_i_macd_k_close_rolling_mean)
- DSL valid: True
- 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: generate unexpected error: value too long for type character varying(100)


### Iteration 5
- DSL: `i_macd(k_close, 12, 26, 9) / (k_close.rolling(20).mean() + i_atr(k_high, k_low, k_close, 14)) * (1 - price_position)` (feature=k_iter5_i_macd_k_close_rolling_mean)
- DSL valid: True
- 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: generate unexpected error: value too long for type character varying(100)


### Iteration 6
- DSL: `i_macd(k_close, 12, 26, 9) / k_close.rolling(20).mean() * (1 - dist_to_high)` (feature=k_iter6_i_macd_k_close_rolling_mean)
- DSL valid: True
- 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: generate unexpected error: value too long for type character varying(100)


📊 Multi-Objective Metrics

Iteration 1: k_iter1_k_macd_div_norm_i_macd_k_close_i_atr

Y Label: C8 | Parent FS: #7

Objective mode: single

Scalar score: 0.0000

Iteration 2: k_loop_iter_2_5335df

Y Label: C8 | Parent FS: #7

Objective mode: scalarize

Scalar score: 0.4076

MetricBaselineModifiedDiff
win_rate 0.600 0.613 0.013
max_drawdown 0.056 0.098 0.042
sharpe_ratio 19.162 20.733 1.571
profit_factor 1.947 2.037 0.090
test_accuracy 0.992 0.992 0.000

Iteration 3: k_iter3_i_macd_k_close_rolling_mean

Y Label: C8 | Parent FS: #1197

Objective mode: single

Scalar score: 0.0000

Iteration 4: k_iter4_i_macd_k_close_rolling_mean

Y Label: C8 | Parent FS: #1197

Objective mode: single

Scalar score: 0.0000

Iteration 5: k_iter5_i_macd_k_close_rolling_mean

Y Label: C8 | Parent FS: #1197

Objective mode: single

Scalar score: 0.0000

Iteration 6: k_iter6_i_macd_k_close_rolling_mean

Y Label: C8 | Parent FS: #1197

Objective mode: single

Scalar score: 0.0000

📁 Offline Report

Markdown backup: reports/autoloop/zz_sylvain/20260723_211426.md