d25d897fd1
Origine: gioco "Blind Traders" (100 agenti ciechi su BTC/ETH anonimizzati) -> vincitore = spread ETH/BTC reversion a 15m. Testato sul serio col gate PORT06: non duplicato (corr 1h vs 15m = 0.37), robusto (16/16 celle Sharpe>1), edge NON artefatto delle candele flat ETH 15m (filtrandole resta l'83% dello Sharpe). Percorso live costruito e validato: - pairs_research.pairs_sim_flat: engine generalizzato con exit LIVE-REALIZABLE (arma exit_ready, esce alla 1a barra pulita); regression-lock a pairs_sim. - PairsWorker: flat_skip + exit_ready + rilevamento flat da OHLC (1h byte-exact). - runner: fetch diretto dei timeframe sub-orari + override position_size per-sleeve. - validate_worker_pairs: replay worker == backtest a 15m (8452 vs 8453 trade). - _defs/build_everything: sleeve PR_ETHBTC_15M (mezza size, pos 0.10) -> PORT06 FULL 6.43->7.20, OOS 8.58->9.66, DD giu'. Rischio bilanciato col 1h. - smoke live: Cerbero serve candele 15m fresche; worker ticca. Diari docs/diary/2026-06-09-*. Caveat slippage: mezza size = blend-tilt prudente. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
17 lines
889 B
Python
17 lines
889 B
Python
import pytest
|
|
from scripts.portfolios._defs import PORTFOLIOS
|
|
|
|
|
|
def test_port06_cap_backtest_numbers_locked():
|
|
r = PORTFOLIOS["PORT06"].backtest()
|
|
# regression-lock dei numeri del default (cap pairs 0.33) — vedi report_families.
|
|
# Aggiornato 2026-05-31: il recupero dati BNB/DOGE/XRP (29 mag) ha ampliato la
|
|
# copertura storica -> metriche migliorate (Sharpe 6.07->6.47, OOS 8.19->8.82,
|
|
# DD 4.9%->4.1%). Nuovo baseline atteso, non una regressione.
|
|
# Aggiornato 2026-06-09: aggiunto lo sleeve BLEND PR_ETHBTC_15M (ETH/BTC pairs 15m
|
|
# flat-skip, mezza size) -> miglioria attesa: FULL 6.47->7.20, OOS 8.82->9.66,
|
|
# DD 4.1%->3.7%. Vedi docs/diary/2026-06-09-pairs15m-live-path.md.
|
|
assert r.full["sharpe"] == pytest.approx(7.20, abs=0.15)
|
|
assert r.oos["sharpe"] == pytest.approx(9.66, abs=0.25)
|
|
assert r.full["dd"] == pytest.approx(3.68, abs=0.5)
|