Cassandra-Risk converts prediction market probabilities into a daily forward-looking risk score for portfolios.
Cassandra-Risk is a governed macro-fragility signal API built for investors, allocators, macro traders, quantitative researchers, and risk platforms that want a forward-looking overlay rather than a purely backward-looking volatility trigger.
Instead of waiting for realized volatility or drawdown to fully reveal fragility, Cassandra-Risk transforms event-implied risk from prediction markets into a live Regime Stress Index (RSI) and an auditable event-family signal book. The result is a clean API layer for consuming live macro-risk signals that are explainable, governed, and tied to named contracts rather than opaque latent factors.
This API is backed by a three-paper public research program and a fully versioned GitHub codebase:
Paper 1
Beyond Value-at-Risk: Quantifying Regime Fragility via Prediction Market Event Forecasting
DOI: 10.13140/RG.2.2.21272.05124
Paper 2
Cassandra-Risk Paper 2: Beyond the Backtest - Expansion, Calibration, and the Boundary Conditions of Forecast-Based Risk Overlays
DOI: 10.13140/RG.2.2.17209.12644
Paper 3
Cassandra-Risk Paper 3: Cross-Platform Prediction Market Ensembles and Governed Signal Infrastructure
DOI: 10.13140/RG.2.2.22910.75848
What makes Cassandra-Risk different is not only the signal. It is the governance architecture around the signal.
The API is built on:
- a governed event registry rather than uncontrolled scraping
- explicit structural-theme classification
- promotion-gated live admission with a decision audit trail
- deterministic family selection rules
- bounded calibration logic where empirically justified
- public versus operator route separation
- rate-limited delivery suitable for commercial API packaging
Current output layers include:
- live Regime Stress Index (RSI)
- governed event-family signal snapshots
- governed registry visibility for admitted families
- source-status monitoring across live adapters
This allows users to answer questions such as:
- Is the current macro regime risk-on or risk-off?
- Which event family is dominating fragility right now?
- Is the live signal being driven by geopolitical escalation, monetary stress, electoral uncertainty, or another structural theme?
- How many governed signals are active right now?
- Which exact event contracts are contributing to the live published risk state?
Why this matters:
Traditional overlays are usually reactive. Cassandra-Risk is designed to be anticipatory. It treats prediction-market probabilities as event-space sensors and converts them into a governed macro-risk layer that can sit above discretionary or systematic portfolios.
Research highlights from the Cassandra program include:
- Paper 1 established a public governed baseline for prediction-market-driven regime fragility signals
- Paper 2 showed that naive event-universe expansion can degrade signal quality in interpretable ways, then recovered performance through calibration, pruning, and concentration governance
- Paper 3 converted the framework into governed signal infrastructure with typed boundaries, live API delivery, and auditable promotion controls
This API is especially suited for:
- macro overlay dashboards
- discretionary portfolio risk monitoring
- allocator reporting layers
- internal quant research tooling
- systematic strategy regime filters
- event-driven risk monitoring systems
Core public endpoints:
- /v1/meta
- /v1/registry/governed
- /v1/rsi/latest
- /v1/signals/latest
- /v1/signals/latest/{event_family_id}
- /v1/sources/status
Cassandra-Risk is not a generic sentiment feed. It is a governed macro-fragility engine with a published research lineage, a live event registry, and an auditable signal path from event contract to API response.
Important note:
This API provides research and risk-monitoring signals. It does not constitute investment advice, brokerage activity, or a solicitation to trade securities or event contracts.
Returns high-level metadata for the live Cassandra Risk service, including current version, governed family count, active signal count, and the latest published RSI snapshot metadata.
This endpoint does not require any input parameters.
Test Endpoint
{
"version": "0.6.4",
"governed_families": 54,
"active_signals": 3,
"rsi_asof": "2026-03-26",
"current_rsi": 0.09873728734627346
}
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23072/get+live+api+metadata' --header 'Authorization: Bearer YOUR_API_KEY'
Returns the latest live Cassandra Risk Regime Stress Index, including current RSI level, total hazard, dominant theme, dominant event family, and the active governed signals contributing to the current macro-fragility state.
This endpoint does not require any input parameters.
Test Endpoint
{
"asof": "2026-03-26",
"rsi": 0.09873728734627346,
"total_hazard": 9.127886099331267,
"event_count": 3,
"dominant_theme": "geopolitical",
"dominant_event_family_id": "geopolitical_another_israeli_military_action_against_iran_in_2024_2025",
"theme_hazard_shares": {
"geopolitical": 0.9535310006726501,
"monetary_policy": 0.04646899932734992
},
"signal_count_by_source": {
"polymarket": 3
},
"events": [
{
"event_family_id": "geopolitical_another_israeli_military_action_against_iran_in_2024_2025",
"title": "Another Israeli military action against Iran in 2024?",
"source": "polymarket",
"market_id": "1551490",
"structural_theme": "geopolitical",
"category": "Kinetic",
"selected_probability_governed": 0.88,
"hazard_contribution": 8.654548793630235,
"theme_cap_applied": true,
"calibration_applied": "none"
},
{
"event_family_id": "monetary_policy_fed_emergency_rate_cut_in_2024_2025",
"title": "Fed emergency rate cut in 2024?",
"source": "polymarket",
"market_id": "616903",
"structural_theme": "monetary_policy",
"category": "Monetary",
"selected_probability_governed": 0.26,
"hazard_contribution": 0.42416373300995136,
"theme_cap_applied": false,
"calibration_applied": "becker"
},
{
"event_family_id": "geopolitical_russia_x_ukraine_ceasefire_in_2024_2025",
"title": "Russia x Ukraine Ceasefire in 2024?",
"source": "polymarket",
"market_id": "561829",
"structural_theme": "geopolitical",
"category": "Kinetic",
"selected_probability_governed": 0.005,
"hazard_contribution": 0.04917357269108088,
"theme_cap_applied": true,
"calibration_applied": "none"
}
]
}
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23073/get+latest+regime+stress+index' --header 'Authorization: Bearer YOUR_API_KEY'
Returns the governed Cassandra Risk signal registry currently admitted into the live service, allowing users to inspect the approved event-family layer behind the public API.
This endpoint does not require any input parameters.
Test Endpoint
{
"count": 54,
"families": [
{
"event_family_id": "electoral_trump_sentenced_to_house_arrest_2024",
"title": "Trump sentenced to house arrest?",
"structural_theme": "electoral",
"theme": "electoral",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "polymarket_electoral_trump_sentenced_to_house_arrest_2024",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "polymarket",
"market_id": "",
"title": "Trump sentenced to house arrest?",
"resolution_date": "2024-11-05",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Approved from the final curated Polymarket universe as a capped electoral governance signal.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "electoral_will_cyril_ramaphosa_be_the_next_president_of_south_africa_2024",
"title": "Will Cyril Ramaphosa be the next President of South Africa?",
"structural_theme": "electoral",
"theme": "electoral",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "polymarket_electoral_will_cyril_ramaphosa_be_the_next_president_of_south_africa_2024",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "polymarket",
"market_id": "",
"title": "Will Cyril Ramaphosa be the next President of South Africa?",
"resolution_date": "2024-06-15",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Approved from the final curated Polymarket universe as a capped electoral governance signal.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "electoral_will_nigel_farage_win_election_to_uk_parliament_2024",
"title": "Will Nigel Farage win election to UK parliament?",
"structural_theme": "electoral",
"theme": "electoral",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "polymarket_electoral_will_nigel_farage_win_election_to_uk_parliament_2024",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "polymarket",
"market_id": "",
"title": "Will Nigel Farage win election to UK parliament?",
"resolution_date": "2024-07-05",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Approved from the final curated Polymarket universe as a capped electoral governance signal.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "electoral_will_u_s_supreme_court_vote_to_reinstate_trump_on_colorado_s_2024_ballot_2024",
"title": "Will U.S. Supreme Court vote to reinstate Trump on Colorado's 2024 ballot?",
"structural_theme": "electoral",
"theme": "electoral",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "polymarket_electoral_will_u_s_supreme_court_vote_to_reinstate_trump_on_colorado_s_2024_ballot_2024",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "polymarket",
"market_id": "",
"title": "Will U.S. Supreme Court vote to reinstate Trump on Colorado's 2024 ballot?",
"resolution_date": "2024-03-04",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Approved from the final curated Polymarket universe as a capped electoral governance signal.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "fiscal_debt_us_debt_ceiling_hike_by_july_1_2023",
"title": "US debt ceiling hike by July 1?",
"structural_theme": "fiscal_debt",
"theme": "fiscal_debt",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "polymarket_fiscal_debt_us_debt_ceiling_hike_by_july_1_2023",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "polymarket",
"market_id": "",
"title": "US debt ceiling hike by July 1?",
"resolution_date": "2023-06-03",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Approved from the final curated Polymarket universe for fiscal-debt stress coverage.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "metaculus_debt_ceiling_2023",
"title": "US debt ceiling resolution risk in 2023",
"structural_theme": "fiscal_debt",
"theme": "fiscal_debt",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "metaculus_debt_ceiling_2023",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "metaculus",
"market_id": "",
"title": "US debt ceiling resolution risk in 2023",
"resolution_date": "2023-06-01",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Manual Metaculus fiscal-debt anchor requested for 2023 debt-ceiling coverage.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "metaculus_debt_default_risk_2023",
"title": "US debt default risk in 2023",
"structural_theme": "fiscal_debt",
"theme": "fiscal_debt",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "metaculus_debt_default_risk_2023",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "metaculus",
"market_id": "",
"title": "US debt default risk in 2023",
"resolution_date": "2023-06-30",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Manual Metaculus fiscal-debt anchor requested for debt-default risk monitoring.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "metaculus_government_shutdown_2025",
"title": "US government shutdown risk in 2025",
"structural_theme": "fiscal_debt",
"theme": "fiscal_debt",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "metaculus_government_shutdown_2025",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "metaculus",
"market_id": "",
"title": "US government shutdown risk in 2025",
"resolution_date": "2025-12-31",
"quality_score": null,
"aggregation_policy": "max"
}
],
"discovered": false,
"notes": "Manual Metaculus fiscal-debt anchor requested for 2025 shutdown coverage.",
"approval_status": "APPROVED",
"approval_reason": "Bootstrap imported from legacy governed universe.",
"decided_by": "bootstrap",
"decided_at": "2026-03-25T22:03:29+00:00",
"aggregation_policy": "max",
"_policy_backfilled": true
},
{
"event_family_id": "us_debt_ceiling_2023",
"title": "Will the US debt ceiling be raised by the end of May 2023?",
"structural_theme": "fiscal_debt",
"theme": "fiscal_debt",
"category": "Sovereign",
"governance_source": "signal_registry_bootstrap",
"proxy_family_id": "us_debt_ceiling_2023",
"source_candidates": [
{
"link_type": "governed_reference",
"source": "Manifold",
"market_id": "69D7abJaaEexCxQ2BOZB",
"title": "Will the US debt ceiling be raised by the end of May 2023?",
"resolution_date": "2023-05-31",
"quality_score": null,
"aggregation_policy": "max"
},
{
"link_type": "governed_reference",
"source": "Manifold",
"market_id": "69D7abJaaEexCxQ2BOZB"}]}],"_note":"Response truncated for documentation purposes"}
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23074/get+governed+signal+registry' --header 'Authorization: Bearer YOUR_API_KEY'
Returns the latest live governed signal snapshots across all active event families, exposing the event-level view underneath the headline RSI.
This endpoint does not require any input parameters.
Test Endpoint
[
{
"asof": "2026-03-26",
"event_family_id": "geopolitical_another_israeli_military_action_against_iran_in_2024_2025",
"title": "Another Israeli military action against Iran in 2024?",
"structural_theme": "geopolitical",
"category": "Kinetic",
"selected_source": "polymarket",
"selected_market_id": "1551490",
"selected_probability_raw": 0.88,
"selected_probability_governed": 0.88,
"quality_score": 0.425129,
"source_priority": 3,
"candidate_count": 15,
"source_options": [
"polymarket"
],
"calibration_applied": "none",
"notes": "Bootstrap imported from legacy governed universe."
},
{
"asof": "2026-03-26",
"event_family_id": "geopolitical_russia_x_ukraine_ceasefire_in_2024_2025",
"title": "Russia x Ukraine Ceasefire in 2024?",
"structural_theme": "geopolitical",
"category": "Kinetic",
"selected_source": "polymarket",
"selected_market_id": "561829",
"selected_probability_raw": 0.005,
"selected_probability_governed": 0.005,
"quality_score": 0.660989,
"source_priority": 3,
"candidate_count": 1,
"source_options": [
"polymarket"
],
"calibration_applied": "none",
"notes": "Bootstrap imported from legacy governed universe."
},
{
"asof": "2026-03-26",
"event_family_id": "monetary_policy_fed_emergency_rate_cut_in_2024_2025",
"title": "Fed emergency rate cut in 2024?",
"structural_theme": "monetary_policy",
"category": "Monetary",
"selected_source": "polymarket",
"selected_market_id": "616903",
"selected_probability_raw": 0.26,
"selected_probability_governed": 0.26,
"quality_score": 0.638627,
"source_priority": 3,
"candidate_count": 1,
"source_options": [
"polymarket"
],
"calibration_applied": "becker",
"notes": "Bootstrap imported from legacy governed universe."
}
]
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23075/get+latest+governed+signal+snapshots' --header 'Authorization: Bearer YOUR_API_KEY'
Returns the latest governed signal snapshot for a single event family, useful for monitoring one specific macro-risk family or validating a single live governed signal.
This endpoint does not require any input parameters.
Test Endpoint
{
"asof": "2026-03-26",
"event_family_id": "geopolitical_another_israeli_military_action_against_iran_in_2024_2025",
"title": "Another Israeli military action against Iran in 2024?",
"structural_theme": "geopolitical",
"category": "Kinetic",
"selected_source": "polymarket",
"selected_market_id": "1551490",
"selected_probability_raw": 0.88,
"selected_probability_governed": 0.88,
"quality_score": 0.425129,
"source_priority": 3,
"candidate_count": 15,
"source_options": [
"polymarket"
],
"calibration_applied": "none",
"notes": "Bootstrap imported from legacy governed universe."
}
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23076/get+latest+signal+snapshot+by+event+family' --header 'Authorization: Bearer YOUR_API_KEY'
Returns the current status of the configured live source adapters used by Cassandra Risk, including reachability and live source health monitoring.
This endpoint does not require any input parameters.
Test Endpoint
[
{
"source": "kalshi",
"display_name": "Kalshi",
"enabled": true,
"has_credentials": true,
"reachable": true,
"auth_mode": "public_market_data",
"quality_tier": "A",
"role": "regulated_market",
"notes": "Public live catalog fetched from Kalshi /trade-api/v2/events with nested markets.",
"market_count": 519,
"fetched_at": "2026-03-26T12:48:21Z"
},
{
"source": "manifold",
"display_name": "Manifold",
"enabled": true,
"has_credentials": true,
"reachable": true,
"auth_mode": "public_get",
"quality_tier": "C",
"role": "longtail_coverage",
"notes": "Public live catalog fetched from /v0/markets.",
"market_count": 13,
"fetched_at": "2026-03-26T12:48:30Z"
},
{
"source": "metaculus",
"display_name": "Metaculus",
"enabled": true,
"has_credentials": false,
"reachable": false,
"auth_mode": "token",
"quality_tier": "A",
"role": "primary_calibrated",
"notes": "Missing credentials in env var METACULUS_API_TOKEN.",
"market_count": 0,
"fetched_at": "2026-03-26T12:48:19Z"
},
{
"source": "polymarket",
"display_name": "Polymarket",
"enabled": true,
"has_credentials": true,
"reachable": true,
"auth_mode": "public",
"quality_tier": "B",
"role": "liquidity_coverage",
"notes": "Public live catalog fetched from Gamma /events ordered by 24h volume.",
"market_count": 275,
"fetched_at": "2026-03-26T12:48:29Z"
}
]
curl --location --request GET 'https://zylalabs.com/api/12289/cassandra+risk+-+governed+macro-fragility+signal+api/23077/get+source+status' --header 'Authorization: Bearer YOUR_API_KEY'
| Header | Description |
|---|---|
Authorization
|
[Required] Should be Bearer access_key. See "Your API Access Key" above when you are subscribed. |
No long-term commitment. Upgrade, downgrade, or cancel anytime. Free Trial includes up to 50 requests.
Each endpoint returns specific data related to macro-fragility signals. For example, the `/v1/rsi/latest` endpoint provides the latest Regime Stress Index, including current RSI level and dominant themes, while the `/v1/registry/governed` endpoint lists approved event families and their attributes.
Key fields vary by endpoint. For `/v1/rsi/latest`, important fields include `rsi`, `dominant_theme`, and `total_hazard`. The `/v1/registry/governed` endpoint features fields like `event_family_id`, `title`, and `approval_status`, which provide insights into the event families.
Response data is structured in JSON format, with key-value pairs. For instance, the `/v1/rsi/latest` endpoint returns a single object containing the latest RSI details, while the `/v1/signals/latest` endpoint returns an array of objects, each representing a governed signal snapshot.
Each endpoint provides distinct information. The `/v1/meta` endpoint offers metadata about the API service, while `/v1/sources/status` gives the health status of data sources. The `/v1/signals/latest/{event_family_id}` endpoint focuses on specific event family signals.
Data is sourced from prediction markets, specifically platforms like Polymarket and Kalshi. Each signal is linked to a specific market contract, ensuring transparency and traceability of the information used to generate risk scores.
Data accuracy is upheld through a governed event registry and explicit structural classifications. The API employs calibration and pruning techniques to enhance signal quality, as detailed in the research papers backing the API.
Typical use cases include macro overlay dashboards for risk assessment, discretionary portfolio risk monitoring, and systematic strategy regime filters. Users can leverage the API to anticipate market movements based on live macro-risk signals.
Users can analyze the returned data to identify macro regime trends, assess risk contributions from specific event families, and monitor the health of data sources. For example, by examining the `dominant_theme` and `hazard_contribution`, users can make informed decisions about portfolio adjustments.
To obtain your API key, you first need to sign in to your account and subscribe to the API you want to use. Once subscribed, go to your Profile, open the Subscription section, and select the specific API. Your API key will be available there and can be used to authenticate your requests.
You can’t switch APIs during the free trial. If you subscribe to a different API, your trial will end and the new subscription will start as a paid plan.
If you don’t cancel before the 7th day, your free trial will end automatically and your subscription will switch to a paid plan under the same plan you originally subscribed to, meaning you will be charged and gain access to the API calls included in that plan.
The free trial ends when you reach 50 API requests or after 7 days, whichever comes first.
No, the free trial is available only once, so we recommend using it on the API that interests you the most. Most of our APIs offer a free trial, but some may not include this option.
Yes, we offer a 7-day free trial that allows you to make up to 50 API calls at no cost, so you can test our APIs without any commitment.
Zyla API Hub is like a big store for APIs, where you can find thousands of them all in one place. We also offer dedicated support and real-time monitoring of all APIs. Once you sign up, you can pick and choose which APIs you want to use. Just remember, each API needs its own subscription. But if you subscribe to multiple ones, you'll use the same key for all of them, making things easier for you.
Please have a look at our Refund Policy: https://zylalabs.com/terms#refund
Service Level:
100%
Response Time:
854ms
Service Level:
100%
Response Time:
820ms
Service Level:
100%
Response Time:
133ms
Service Level:
100%
Response Time:
645ms
Service Level:
100%
Response Time:
1,311ms
Service Level:
100%
Response Time:
85ms
Service Level:
100%
Response Time:
596ms
Service Level:
100%
Response Time:
2,350ms
Service Level:
100%
Response Time:
124ms
Service Level:
100%
Response Time:
13,968ms