跳到主要內容

Feature Iteration Run #827: zz_sylvain

Status: completed | Started: 2026-07-20 13:18:33 | Ended: 2026-07-20 13:21:32

⭐ Best Accepted Iteration

Iteration 2: k_high.pct_change(12) / (1 + atr_norm) * (1 - price_positio…

baseline PF: 1.286 → modified PF: 2.113 | Cohen's d: 0.478 | p-value: 0.206

📊 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 — gradient_boosting — — #7 k_loop_iter_3_87349c k_high.pct_change(12) / (1 + atr_norm) … ✅ 1.286 1.892 0.3017 0.000 0.471 0.168 ✅ ACCEPT accepted
2 — gradient_boosting — — #7 k_loop_iter_4_7be2e9 k_high.pct_change(12) / (1 + atr_norm) … ✅ 1.286 2.113 1.4199 0.000 0.206 0.478 ✅ ACCEPT accepted
3 — gradient_boosting — — #7 k_loop_iter_3_c18d35 k_high.pct_change(12) / (1 + atr_norm) … ✅ 1.286 1.461 0.1039 0.000 0.081 0.353 ✅ ACCEPT accepted
4 — gradient_boosting — — #7 k_loop_iter_4_41b5f3 k_high.pct_change(12) / (1 + atr_norm) … ✅ 1.286 2.113 1.4199 0.000 0.206 0.478 ✅ ACCEPT accepted

📄 Report Markdown

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

## Iterations 詳情

### Iteration 1
- DSL: `k_high.pct_change(12) / (1 + atr_norm) * (1 - price_position) * (1 - dist_to_high) * i_rsi(k_close, 14)` (feature=k_loop_iter_3_87349c)
- DSL valid: True
- FeatureSet candidate id: 1129
- baseline PF: 1.286 → modified PF: 1.892
- t_stat: 0.000, p_value: 0.471, cohens_d: 0.168
- scalar_score: 0.3017
- accepted: True, reason: accepted

**Metrics summary:**
  - profit_factor: baseline=1.286, modified=1.892, diff=0.606
  - sharpe_ratio: baseline=7.879, modified=19.176, diff=11.297
  - win_rate: baseline=0.553, modified=0.600, diff=0.047
  - max_drawdown: baseline=0.075, modified=0.054, diff=-0.021
  - test_accuracy: baseline=0.986, modified=0.986, diff=0.000

### Iteration 2
- DSL: `k_high.pct_change(12) / (1 + atr_norm) * (1 - price_position) * (1 + hl_range) * (1 - dist_to_high)` (feature=k_loop_iter_4_7be2e9)
- DSL valid: True
- FeatureSet candidate id: 1130
- baseline PF: 1.286 → modified PF: 2.113
- t_stat: 0.000, p_value: 0.206, cohens_d: 0.478
- scalar_score: 1.4199
- accepted: True, reason: accepted

**Metrics summary:**
  - profit_factor: baseline=1.286, modified=2.113, diff=0.827
  - sharpe_ratio: baseline=7.879, modified=21.700, diff=13.821
  - win_rate: baseline=0.553, modified=0.596, diff=0.043
  - max_drawdown: baseline=0.075, modified=0.051, diff=-0.023
  - test_accuracy: baseline=0.986, modified=0.986, diff=0.000

### Iteration 3
- DSL: `k_high.pct_change(12) / (1 + atr_norm) * (1 - price_position) * (1 + hl_range) * (1 - dist_to_high) * i_macd(k_close, 12, 26, 9)` (feature=k_loop_iter_3_c18d35)
- DSL valid: True
- FeatureSet candidate id: 1131
- baseline PF: 1.286 → modified PF: 1.461
- t_stat: 0.000, p_value: 0.081, cohens_d: 0.353
- scalar_score: 0.1039
- accepted: True, reason: accepted

**Metrics summary:**
  - profit_factor: baseline=1.286, modified=1.461, diff=0.175
  - sharpe_ratio: baseline=7.879, modified=11.792, diff=3.912
  - win_rate: baseline=0.553, modified=0.560, diff=0.007
  - max_drawdown: baseline=0.075, modified=0.051, diff=-0.023
  - test_accuracy: baseline=0.986, modified=0.987, diff=0.001

### Iteration 4
- DSL: `k_high.pct_change(12) / (1 + atr_norm) * (1 - price_position) * (1 - dist_to_high) * (1 - return_5) * (1 + hl_range)` (feature=k_loop_iter_4_41b5f3)
- DSL valid: True
- FeatureSet candidate id: 1132
- baseline PF: 1.286 → modified PF: 2.113
- t_stat: 0.000, p_value: 0.206, cohens_d: 0.478
- scalar_score: 1.4199
- accepted: True, reason: accepted

**Metrics summary:**
  - profit_factor: baseline=1.286, modified=2.113, diff=0.827
  - sharpe_ratio: baseline=7.879, modified=21.700, diff=13.821
  - win_rate: baseline=0.553, modified=0.596, diff=0.043
  - max_drawdown: baseline=0.075, modified=0.051, diff=-0.023
  - test_accuracy: baseline=0.986, modified=0.986, diff=0.000

📊 Multi-Objective Metrics

Iteration 1: k_loop_iter_3_87349c

Y Label: — | Parent FS: #7

Objective mode: scalarize

Scalar score: 0.3017

MetricBaselineModifiedDiff
win_rate 0.553 0.600 0.047
max_drawdown 0.075 0.054 -0.021
sharpe_ratio 7.879 19.176 11.297
profit_factor 1.286 1.892 0.606
test_accuracy 0.986 0.986 0.000

Iteration 2: k_loop_iter_4_7be2e9

Y Label: — | Parent FS: #7

Objective mode: scalarize

Scalar score: 1.4199

MetricBaselineModifiedDiff
win_rate 0.553 0.596 0.043
max_drawdown 0.075 0.051 -0.023
sharpe_ratio 7.879 21.700 13.821
profit_factor 1.286 2.113 0.827
test_accuracy 0.986 0.986 0.000

Iteration 3: k_loop_iter_3_c18d35

Y Label: — | Parent FS: #7

Objective mode: scalarize

Scalar score: 0.1039

MetricBaselineModifiedDiff
win_rate 0.553 0.560 0.007
max_drawdown 0.075 0.051 -0.023
sharpe_ratio 7.879 11.792 3.912
profit_factor 1.286 1.461 0.175
test_accuracy 0.986 0.987 0.001

Iteration 4: k_loop_iter_4_41b5f3

Y Label: — | Parent FS: #7

Objective mode: scalarize

Scalar score: 1.4199

MetricBaselineModifiedDiff
win_rate 0.553 0.596 0.043
max_drawdown 0.075 0.051 -0.023
sharpe_ratio 7.879 21.700 13.821
profit_factor 1.286 2.113 0.827
test_accuracy 0.986 0.986 0.000

📁 Offline Report

Markdown backup: reports/autoloop/zz_sylvain/20260720_212132.md