Build / Prediction markets

Prediction-market research board

A watchlist of the questions you follow, with forecast data next to your own notes.

Pythonpandasrisk dataset
Prediction-market research board: illustrative mockup with sample data
Example build (illustrative). Sample data, not a real product, not real results.

What it does

Keep a list of questions, each tied to a place. The script pulls the free county forecast for each place and prints a table beside your notes. It does not predict prices and says nothing about any market.

  • Never present forecast data as a prediction of any price or outcome.
  • No profit, return, edge or accuracy claims. Your strategy is yours.

GetFixn sells data, not trading advice. Nothing here is investment advice. Forecasts can be wrong. You are responsible for your own strategies and for following the rules of any exchange or market you use. No profit, return or accuracy is promised, and nothing on this page shows trading results.

API calls

Set your key once: export TFX_KEY=tfx_live_.... Free previews need no key.

Free: county forecast grade and storm types

request
curl "https://data.truefixr.com/v1/data?dataset=risk&county=Dallas&state=TX"

Code (Python)

Cut down on purpose. Print the real response keys on your first call before you map fields.

market-research-dashboard.py
import requests
import pandas as pd

API = "https://data.truefixr.com/v1/data"

WATCH = [
    {"question": "Sample question 1", "county": "Dallas", "state": "TX"},
    {"question": "Sample question 2", "county": "Harris", "state": "TX"},
]


def preview(county: str, state: str) -> dict:
    r = requests.get(API, params={"dataset": "risk", "county": county, "state": state}, timeout=30)
    r.raise_for_status()
    return r.json()


rows = []
for w in WATCH:
    d = preview(w["county"], w["state"])
    rows.append({
        "question": w["question"],
        "grade": d.get("grade"),
        "grade_label": d.get("grade_label"),
        "storm_types": d.get("storm_types"),
        "total_leads": d.get("total_leads"),
        "my_notes": "",  # your own reasoning goes here
    })

print(pd.DataFrame(rows).to_string(index=False))