Cambridge Sports Analytics

Predict Analyze Deploy

Cutting-edge research, made accessible.

yhat yhat_linear fit adjusted_fit kfit weights relevance similarity agreement asymmetry info_theta info_x variable_importance variable_importance_on_yhat contribution_to_prediction contribution_to_conviction component_contribution_to_prediction outlier_influence r_star r_star_percent ysolo_sigma ysolo_skewness ysolo_kurtosis ysolo_pearson_modality_index ysolo_bimodality_coefficient yhat yhat_linear fit adjusted_fit kfit weights relevance similarity agreement asymmetry info_theta info_x variable_importance variable_importance_on_yhat contribution_to_prediction contribution_to_conviction component_contribution_to_prediction outlier_influence r_star r_star_percent ysolo_sigma ysolo_skewness ysolo_kurtosis ysolo_pearson_modality_index ysolo_bimodality_coefficient

A new way to reason about uncertainty.

Relevance-Based Prediction (RBP) is novel mathematical research developed by the founders of Cambridge Sports Analytics. RBP treats every prediction as an information problem — weighting historical observations by how much they actually inform the present.

Most prediction systems hand you a number. Our method tells the story behind every prediction.

By grounding forecasts in information theory, we surface which observations drove the result, how much each one mattered, and where the model is least confident.

No black boxes. Just transparent math, served at production speed.

↳ 01

Advanced Insights

Forecasts derived from relevance weighting grounded in formal information theory.

↳ 02

Transparent by design

Every prediction comes with evidence behind it. Understand the story behind every prediction.

↳ 03

Built to ship

Designed for production from day one — three deployment shapes that match how real teams work.

Three solutions,
one engine.

POST /v1/predict { "x": [[ ... ]] "y": [[ ... ]] "theta": [[ ... ]] }
/01  FOR DEVELOPERS

API

$ pip install csa_prediction_engine

A straightforward REST API with a first-class Python client. Submit predictions, pull results and analyze your results all within your existing stack.

  • RESTful endpoints with full OpenAPI spec
  • Python SDK with managed I/O
  • Per-prediction relevance attribution
  • Async batch submission
Read the docs
csa/engine
/02  FOR ENTERPRISE

Container

$ docker pull csa/engine

A shippable Docker image of the full Prediction Engine. Deploy inside your VPC or on bare metal. Built for teams who need privacy, low latency, or raw throughput at scale.

  • Fully on-premise — your data never leaves
  • Performance-optimized runtimes
  • Horizontal scaling, no rate limits
  • Offline support
Contact Us
"Forecast next week's passing yards..." MCP → predict 287.4 yds σ ± 12.1
/03  FOR ANALYSTS

MCP

Plug into Claude, ChatGPT, Cursor & more

An MCP server that turns the Prediction Engine into a conversation. Non-technical users can design experiments, submit predictions, and analyze results — all in natural language.

  • Works with any MCP-compatible client
  • Natural-language experiment design
  • Auto-generated analysis & visuals
  • No code, no setup, no friction
Connect the MCP

Built for professionals.

/01
Quantitative researchers
Prototype models against the engine through the Python SDK. Inspect relevance weights, validate hypotheses, and ship findings without wrestling with infrastructure.
API + SDK
/02
Engineering teams in regulated industries
Run the full engine inside your VPC. Meet privacy, residency, and latency requirements without compromising on the math.
Docker
/03
Analysts & domain experts
Ask the engine for a forecast in plain English through your favorite AI tool. The MCP handles experiment design, submission, and analysis for you.
MCP
/04
Sports & media organizations
Produce transparent, audience-facing forecasts. Every published number is backed by evidence you can show on screen.
API or MCP

Three lines to your first RBP prediction.

The Python SDK is designed to allow users to focus on experiment design and analysis. Pass features, get back predictions with full attribution — which historical observations mattered, and by how much.

View full documentation
predict.py — Python 3.11
from csa_prediction_engine import predict_grid, GridOptions, PredictionResults

# Submit y, X, theta — predictions come back with full attribution
yhat, output_details = predict_grid(y=y, X=X, theta=theta, options=GridOptions())

# Every insight packaged in one results object
Results = PredictionResults(output_details)

Start building with the
Prediction Engine