Strategy Edge Lab

Mesure l'edge d'un filtre de contexte appliqué aux trades exécutés d'une stratégie. Filter Attribution Mode

V1 : biais de sélection assumé — on compare les trades passés avec/sans la condition, pas les signaux pré-filter. Pour la vraie contribution prédictive, V2 ajoutera un strategy replay.

📖 Available features (35 features across 7 groups)

Ce catalog est la source de vérité unique partagée entre : la condition builder ci-dessous, l'agent LLM (`app:dispatch-edge-discovery`), le chatbot (`edge_list_features`), et le resolver SQL Python. Modifier via python/src/tnt_python/edge/features.yaml.

Source table : market_context_snapshots
Join : pivot trade_context_snapshots WHERE tf='1d'
Path (clique pour copier) Type Range / Values Notes
context.1d.trend_direction categorical
up down neutral
—
context.1d.trend_phase categorical
pullback early_expansion mature_trend exhaustion reversal consolidation
—
context.1d.momentum_score numeric [0, 1] —
Source table : market_context_snapshots
Join : pivot trade_context_snapshots WHERE tf='1h'
Path (clique pour copier) Type Range / Values Notes
context.1h.trend_direction categorical
up down neutral
—
context.1h.trend_phase categorical
pullback early_expansion mature_trend exhaustion reversal consolidation
—
context.1h.momentum_score numeric [0, 1] 1h momentum intensity (scored by MomentumScorer).
context.1h.btc_correlation numeric [-1, 1] —
context.1h.btc_outperformance numeric [-0.3, 0.3] —
context.1h.tradability_score numeric [0, 1] —
context.1h.volatility_regime categorical
compression normal expansion volatile_reversal
—
Source table : market_context_snapshots
Join : pivot trade_context_snapshots WHERE tf='4h'
Path (clique pour copier) Type Range / Values Notes
context.4h.trend_direction categorical
up down neutral
—
context.4h.trend_phase categorical
pullback early_expansion mature_trend exhaustion reversal consolidation
—
context.4h.momentum_score numeric [0, 1] —
context.4h.tradability_score numeric [0, 1] —
Source table : derivatives_features_1h
Join : (trading_pair_id, floor_hour(start_at))
Path (clique pour copier) Type Range / Values Notes
derivatives.oi_change_zscore_7d numeric [-4, 4] —
derivatives.oi_change_1h numeric [-0.3, 0.3] —
derivatives.oi_change_4h numeric [-0.5, 0.5] —
derivatives.funding_current numeric [-0.01, 0.01] —
derivatives.funding_percentile_7d numeric [0, 1] —
derivatives.price_oi_state categorical
diverging_bullish diverging_bearish converging neutral
—
Source table : coin_quality_scores
Join : trades.quality_score_id
Path (clique pour copier) Type Range / Values Notes
quality.score numeric [0, 1] Composite quality score at trade entry (base TF depends on strategy).
quality.momentum_score numeric [0, 1] —
quality.rank_norm_sma_8h numeric [0, 1] Stability of this coin's rank over last 8h.
Source table : market_regimes
Join : trades.market_regime_id
Path (clique pour copier) Type Range / Values Notes
regime.primary_bias categorical
bull bear range
BTC 1D bias snapshot at trade entry.
regime.current_phase categorical
bull_expansion bull_pullback bull_consolidation bear_expansion range_bound range_breakout_attempt range_breakdown_risk
Fine-grained BTC regime phase (bias × dynamics).
regime.breadth_state categorical
expanding recovering stable contracting deteriorating insufficient_history
Breadth dynamic state derived from delta_breadth_1h + level.
regime.breadth_score numeric [0, 1] Multi-TF breadth aggregate — pct coins bullish-aligned.
regime.delta_breadth_1h numeric [-0.5, 0.5] —
regime.delta_breadth_24h numeric [-0.5, 0.5] —
regime.participation_state categorical
broad_risk_on btc_led_risk_on alt_rotation alt_capitulation broad_risk_off btc_defensive btc_led_risk_off mixed_dispersion
Who leads the market : BTC vs alts.
regime.dispersion_score numeric [0, 2] —
Source table : trades
Join : direct col / derived SQL
Path (clique pour copier) Type Range / Values Notes
trade.direction categorical
long short
trade_type column (long|short).
trade.hour_of_day_utc numeric [0, 23] UTC hour at entry — captures session effects (Asia/EU/US).
trade.weekday_utc numeric [0, 6] 0=Mon, 6=Sun UTC.
trade.initial_risk_pct numeric [0, 20] Planned risk % at entry (SL distance / entry).
Operators autorisés : >= <= == (scalaire) · in not_in (liste, pour categorical).
Combinaison : 1 condition OU 2 conditions en AND (pas d'OR, pas de NOT, pas de nesting).
Threshold hygiene : viser 20-50% de trades inside. Éviter 50/50 (pas d'edge) et <10% (power issue).
+ New experiment
Condition 1 *
Condition 2 (optional — AND)
Feature catalog JSON ↗
Advanced: paste raw spec JSON
# Name / Spec Strategy Target N inside N outside Edge vs matched Verdict Created
#26 breadth_expanding_positive_delta_v2
regime.breadth_state AND regime.delta_breadth_24h
momentum_rotation_v2 pnl_r 0 0 — no data 3 minutes ago
#25 breadth_score_high_v1
regime.breadth_score
momentum_rotation_v2 pnl_r 3079 5658 -0.0034 overfit suspect 5 minutes ago
#24 pav_daily_alignment_high_4h_mom_v1
context.1d.trend_direction AND context.4h.momentum_score
pav_long_momentum_4h pnl_r 0 0 — no data 52 minutes ago
#23 pav_4h_up_and_tradable_v1
context.4h.trend_direction AND context.4h.tradability_score
pav_long_momentum_4h pnl_r 0 0 — no data 52 minutes ago
#21 us_session_entry_hours_v2
trade.hour_of_day_utc AND trade.hour_of_day_utc
momentum_rotation_v2 pnl_r 0 0 — no data 52 minutes ago
#22 high_dispersion_opportunity_v1
regime.dispersion_score
momentum_rotation_v2 pnl_r 0 0 — no data 52 minutes ago
#20 oi_build_high_funding_risk_v1
derivatives.oi_change_zscore_7d AND derivatives.funding_percentile_7d
momentum_rotation_v2 pnl_r 0 0 — no data 52 minutes ago
#19 alt_rotation_low_btc_corr_v1
regime.participation_state AND context.1h.btc_correlation
momentum_rotation_v2 pnl_r 0 0 — no data 52 minutes ago
#18 4h_up_and_tradable_pav_filter_v1
context.4h.trend_direction AND context.4h.tradability_score
pav_long_momentum_4h pnl_r 0 0 — no data 54 minutes ago
#17 alt_rotation_diverging_oi_v1
regime.participation_state AND derivatives.price_oi_state
momentum_rotation_v2 pnl_r 0 0 — no data 54 minutes ago
#16 breadth_expanding_positive_delta_v1
regime.breadth_state AND regime.delta_breadth_24h
momentum_rotation_v2 pnl_r 0 0 — no data 54 minutes ago
#15 high_breadth_score_v1
regime.breadth_score
momentum_rotation_v2 pnl_r 0 0 — no data 54 minutes ago
#14 bull_expansion_phase_v1
regime.current_phase
momentum_rotation_v2 pnl_r 0 0 — no data 54 minutes ago
#13 bull_bias_entries_v1
regime.primary_bias
momentum_rotation_v2 pnl_r 0 0 — no data 54 minutes ago
#12 us_session_entry_hours_v1
trade.hour_of_day_utc
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#11 1d_up_and_4h_tradable_v1
context.1d.trend_direction AND context.4h.tradability_score
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#10 low_btc_corr_high_1h_mom_v1
context.1h.btc_correlation AND context.1h.momentum_score
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#8 btc_led_with_diverging_oi_v1
regime.participation_state AND derivatives.price_oi_state
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#9 high_dispersion_cross_section_v1
regime.dispersion_score
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#7 breadth_expanding_positive_delta_v1
regime.breadth_state AND regime.delta_breadth_24h
momentum_rotation_v2 pnl_r 0 0 — no data 55 minutes ago
#5 us_session_hours_v1
trade.hour_of_day_utc
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago
#6 breadth_expanding_v1
regime.breadth_state
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago
#4 oi_build_and_high_funding_v1
derivatives.oi_change_zscore_7d AND derivatives.funding_percentile_7d
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago
#3 alt_rotation_4h_up_v1
regime.participation_state AND context.4h.trend_direction
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago
#2 bull_expansion_pullback_phase_v1
regime.current_phase
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago
#1 bull_breadth_high_filter_v1
regime.primary_bias AND regime.breadth_score
momentum_rotation_v2 pnl_r 0 0 — no data 1 hour ago