All projects

Quant / Prediction Markets

Market Signal Engines

Sentiment pipelines, arbitrage scanners, and prediction-market tooling for crypto and equities.

PythonPineScriptPolymarket APIKalshiPostgres

The problem

Discretionary trading decisions are hard to audit. I wanted the signal generation written down as code — reproducible, testable, and comparable across venues.

How it's built

  • Ingestion of price, social, and news data into a Postgres store
  • Sentiment scoring pipelines in Python with per-source weighting
  • Arbitrage scanner comparing funding and spreads across venues
  • Prediction-market probability feeds used as an independent signal against price
  • PineScript indicators for the discretionary layer on top

Outcome

Signals live in code instead of in my head, which makes them reviewable — and it turned into the data backbone that Frameworx was built on.

At a glance

Cross-venue
Arbitrage spreads compared per cycle
2 markets
Polymarket and Kalshi as signal feeds
Backbone
Became the data layer under Frameworx

Decisions & tradeoffs

Considered: Trading on discretionary reads

Chose: Writing signal generation as code

Why: A rule in code can be reviewed, replayed, and falsified; a hunch cannot.

Tradeoff: Slower to act, and every edge case has to be handled explicitly.

Considered: Price data only

Chose: Adding prediction-market probabilities as an independent signal

Why: Prediction markets disagree with price often enough to be informative.

Tradeoff: Thin-liquidity markets need filtering or they add noise.

More case studies