Skip to content
View microprediction's full-sized avatar
Block or Report

Block or report microprediction

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
microprediction/README.md

microprediction

Greetings. First up, here's a new game where you hurl a million 11-dimensional Monte Carlo samples at my server. I encourage you to participate:

  1. Open this colab notebook or script,
  2. Change the email, at minimum,
  3. Run it. Every weekend.
  4. Check your scores at www.monteprediction.com

The notebook also describes the scoring mechanism. Ask questions in the slack.

Writings

See

If we don't know each other yet from LI or elsewhere, I'm an applied mathematician / practitioner but I like to provoke people into using market-inspired collective mechanisms for prediction. I used the options market to effortlessly beat 97% of participants in the year-long M6 contest - see the post or article. My book is a meditation on the power of markets in a very specific but surprisingly ubiquitous domain: frequently repeated prediction. Read the awards and reviews.

Some repos here ...

Derivative-free optimizer comparisons

The humpDay package is intended to help you choose a derivative-free optimizer for your use case.

Schur Complementary Portfolios

My work on unifying Hierarchical Risk Parity with minimum variance portfolio optimization sits in the precise package although I've been meaning to put it somewhere else.

Incremental time-series and benchmarking

The timemachines package enumerates online methods and makes some effort to evaluate univariate methods against the corpus of time-series drawn from the microprediction platform. It is an attempt to reduce everything to relatively pure functions:

$$ f : (y_t, state; k) \mapsto ( [\hat{y}(t+1),\hat{y}(t+2),\dots,\hat{y}(t+k) ], [\sigma(t+1),\dots,\sigma(t+k)], posterior\ state)) $$

where $\sigma(t+l)$ estimates the standard error of the prediction $\hat{y}(t+l)$.

Benchmarking overview

Topic Package Elo ratings Methods Data sources
Univariate time-series timemachines Timeseries Elo ratings Most popular packages (list) microprediction streams
Global derivative-free optimization humpday Optimizer Elo ratings Most popular packages (list) A mix of classic and new objectives
Covariance, precision, correlation precise See notebooks cov and portfolio lists Stocks, electricity etc

These packages aspire to advance online autonomous prediction in a small way, but also help me notice if anyone else does.

Winning

The winning package includes my recently published fast algorithm for inferring relative ability from win probabilities, at any scale. As explained in the paper the uses extend well beyond the pricing of quinellas!

First Down

My firstdown repo contains analysis aspiring to ruin great game of football. See Wilmott paper and for heaven's sake, don't stretch out for the first down. That's obviously nuts.

Some other repos

  • embarrassingly - A speculative approach to robust optimization that sends impure objective functions to optimizers.
  • pandemic - Ornstein-Uhlenbeck epidemic simulation (related paper)

The currently defunct real-time time-series platform

The real-time system previously maintained by yours truly has entered a trisoloran dehydrated state but will hopefully be revived at a future date, after one of my three hundred ChatGPT generated scientific grant proposals is successful. Here's how some of the open-source stuff used to propagate down into the "algo fight club".

  1. The "/skaters" provide canonical, single-line of code access to functionality drawn from packages like river, pydlm, tbats, pmdarima, statsmodels.tsa, neuralprophet, Facebook Prophet, Uber's orbit, Facebook's greykite and more.

  2. The StreamSkater makes it easy to use any "skater".

  3. Choices are sometimes advised by Elo ratings, but anyone can do what they want.

  4. It's not too hard to use my HumpDay package for offline meta-param tweaking, et cetera.

  5. It's not too hard to use my precise package for online ensembling.

Those repose are:

  • The muid identifier package is explained in this video.
  • microconventions captures things common to client and server, and may answer many of your more specific questions about prediction horizons, et cetera.
  • rediz contains server side code. For the brave.
  • There are other rats and mice like getjson, runthis and momentum.

Pinned

  1. timemachines timemachines Public

    Predict time-series with one line of code.

    Python 380 50

  2. microprediction microprediction Public

    If you can measure it, consider it predicted

    Jupyter Notebook 316 57

  3. humpday humpday Public

    Elo ratings for global black box derivative-free optimizers

    Python 121 17

  4. winning winning Public

    Inference of relative ability from winning probabilities

    Jupyter Notebook 44 13

  5. optimizer-elo-ratings optimizer-elo-ratings Public

    Assigns Elo Ratings to Python Global Optimizers

    23 6

  6. timeseries-elo-ratings timeseries-elo-ratings Public

    Elo ratings for time-series forecasting packages

    Python 22 5