⚠ INTERNAL — Operator UX mock · Design preview of V2 development path · demo-wired ≠ production-live · back to dev guide
Polygon · pUSD 10
📓 Developer Guide 📋 Reason Codes 📈 Shadow Mode
JD John Doe · Admin

CalendarCompression

strat.calendarcompression
Strategy planned Spec started frozen

CalendarCompression identifies pairs of related Polymarket markets resolving on different dates (e.

What it does

CalendarCompression identifies pairs of related Polymarket markets resolving on different dates (e.g. 'Will X happen by June?' vs 'Will X happen by December?') and trades the price differential when it deviates from the fair time-decay spread. The bot buys the underpriced near-expiry leg and/or sells the overpriced far-expiry leg to capture calendar compression.

Pipeline placement

runs after: Resolution tracker / Market scanner CalendarCompression runs before: Risk guardrail pipeline

Applies to: Pairs of Polymarket markets that share the same underlying event and resolve on different calendar dates, where the time

Why it matters

If this failsConsequence
Resolution sources differ between pair legsEven if markets look related, different oracle sources produce independent resolution paths; the calendar spread is not a true arbitrage.
Near-expiry market resolves unexpectedly earlyA market may resolve before the expected calendar date (breaking news), collapsing the calendar spread before the far-expiry leg adjusts.
Both legs resolve YES simultaneouslyIf both legs are correlated, a calendar long/short pair may both move adversely on news, doubling losses instead of creating a hedged position.

Inputs

Polymarket inputs

InputSourceRequiredUse
CLOB mid and depth for both legsws_marketrequiredMeasure calendar spread and available depth per leg.
Market metadata (resolution date, source)clob_publicrequiredIdentify calendar pairs and verify shared resolution source.
Market status (open, resolved)clob_publicrequiredSkip resolved legs.

Internal inputs

InputSourceRequiredUse
KillSwitch active flagKillSwitchrequiredAbort all intent emission if KillSwitch active.
Calendar pair catalog (approved near/far pairs)internal configrequiredRestrict trading to pre-approved related-market pairs.
Builder code bytes32internal configrequiredInjected into builder field on every signed V2 OrderIntent.

Authority

What this bot is permitted to do

Trade

State

Readiness

Spec started

Status

planned

Class

Alpha Strategy

Default mode

shadow_only

Developer owner

Polytraders core — Strategy pod

Capital impact

Direct

Reason codes emitted

CodeSeverityMeaningAction
CAL_SPREAD_TRADEINFOgap_bps >= min_gap_bps, sources match, within date limits. IOC OrderIntent emitted.Emit IOC OrderIntent.
CAL_NO_GAPINFOgap_bps < 25 bps hard floor.Skip; emit sampled DecisionReport.
CAL_GAP_MARGINALWARNgap_bps 25–75 bps; size halved.Emit at 50% size; log warning.
CAL_SOURCE_MISMATCHHARD_REJECTCalendar pair legs resolve from different sources.Skip; no OrderIntent.
CAL_PAIR_TOO_LONG_DATEDHARD_REJECTFar-expiry leg is beyond max_days_to_resolve hard limit.Skip; no OrderIntent.

Used by

Reverse index — strategies that currently reference strat.calendarcompression. If you change this bot's authority or reason codes, these strategies must re-pass shadow.

StrategyStateActivity
AI Frontier — release-day takerfrozenlast triggered 8m ago

Showing 1 of 1 · demo-wired ≠ production-live

Why this matters

Strategy bots does NOT sign, route, or directly submit orders to the chain. Understanding the authority boundary prevents misuse and makes promotion-gate reviews faster and more reliable. View raw spec JSON →
Polytraders Operator UX Mock · INTERNAL · demo-wired ≠ production-live · the plan · reason codes · shadow-mode pipeline
⚙ Page Configuration
Current page settings
Loading configuration…