Skip to main content
Glama

MarketTrace agent-feed

get_conditional_outcomes

Read-only

Measured HISTORY of forward returns after a stated condition — the base rate from this feed's own data, replacing folklore like "high funding = squeeze". Answers: "What happened historically after funding above the 90th percentile?", "When OBI stayed bid-heavy while funding was positive, what did the next 24h look like?". Condition fields AND together (state at least one). Funding (multi-year series): funding_pct_gte/lte (AS-OF percentile 0..100 — the rank the live endpoint showed at that moment, no look-ahead), streak_h_gte (hours funding kept its sign), funding_sign (positive|negative). Archive (v2, 15-min state archive — YOUNG series, growing daily): archive_feature ∈ obi_skew (−1..+1) | oi_chg_1h_pct (%) | taker_buy_ratio (0..1) | basis_bps, with archive_gte/lte (raw value, no sample floor) and archive_pct_gte/lte (as-of percentile). An archive condition shrinks the match window to the INTERSECTION of the series' spans — the response window and coverage.archive.{window_days,n_samples} disclose exactly how thin the evidence is; weight accordingly. horizons: ["4h","24h","72h"] default, each 1h..168h. Per horizon: n_matches (raw), n_effective (overlap-collapsed — overlapping forward windows are NOT independent samples; all stats use the collapsed set), median/p10/p90 forward return in PERCENT, hit_rate_up (RATIO 0..1), max_dd_median_pct (median worst drawdown before the horizon resolves, ≤0). verdict=history_silent means the condition matched too rarely to measure (n_effective<12 on every horizon): a first-class answer — you are trading on belief, size accordingly; stats are null, never noise. warnings flag overlap collapse, 14-day clustering and silenced horizons. matches_sample = up to 50 audit timestamps. current = where the LAST hour of the same series sits on the condition axes (funding_pct as-of percentile, null below the floor; streak_h; sign) — read the band it falls in, then ask about that band; null only when there is no funding series. Percentile-form conditions exist only once the ranked series has coverage.warmup_samples (12) points — a STRUCTURAL floor (a rank among 2 points is degenerate), not a maturity gate; nothing time-based is withheld. Prices: Binance 1h closes (coverage.price_src). REPORTS HISTORY, NOT PREDICTIONS — past conditional distributions do not imply future returns. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
symbolYesAsset symbol: BTC, ETH, SOL, BNB, XRP, DOGE, HYPE, ZEC or ENA (case-insensitive; a `USDT` suffix is accepted).
horizonsNoForward horizons as `<hours>h` labels, each 1h..=168h (default `["4h","24h","72h"]`).
archive_gteNoMatch hours where the archive feature's RAW value ≥ this (raw thresholds have no sample floor — they exist from the first point).
archive_lteNoMatch hours where the archive feature's RAW value ≤ this.
funding_signNoFunding sign filter: `positive` (longs pay shorts) or `negative`.
streak_h_gteNoMatch hours where funding had kept its sign for at least this many hours.
archive_featureNov2: condition on ONE archived state feature (15-min archive): `obi_skew` (−1..+1), `oi_chg_1h_pct` (%), `taker_buy_ratio` (0..1), `basis_bps`. ANDs with the funding fields; the match window becomes the INTERSECTION of the constrained series' spans. Needs at least one archive threshold below.
archive_pct_gteNoMatch hours where the feature's AS-OF percentile ≥ this (0..=100; the rank exists only once its series has warmup_samples points).
archive_pct_lteNoMatch hours where the feature's as-of percentile ≤ this (0..=100).
funding_pct_gteNoMatch hours where the AS-OF funding percentile was ≥ this (0..=100). "As-of" = the rank the live endpoint reported at that moment — computed only from data available then, no look-ahead.
funding_pct_lteNoMatch hours where the as-of funding percentile was ≤ this (0..=100).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
symbolYesUppercase asset symbol, e.g. `BTC`.
windowYes
currentNoThe last hour of the matched series on the condition axes; `null` only when there is no funding series at all.
verdictYes
coverageYes
horizonsYesKeyed by horizon label (`"4h"`, `"24h"`, `"72h"`).
warningsYesHonest caveats: overlap collapse counts, clustering, silenced horizons.
conditionYesThe condition as parsed — verify the server understood your hypothesis.
matches_sampleYesUp to 50 raw match timestamps, oldest first, RFC3339 UTC — the audit trail: any episode can be checked by hand.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.