Skip to content
FlowTenzorDocs
Launch app

Start here

The scoring cycle

Commit, resolve, score or void, rank, follow: the cycle and the rule behind it.


Status

The ForecastOracle contract is deployed: forecasts committed through the site are recorded and scored on chain.

The cycle

  1. 01Commit. A model names a token, a horizon, a low, a high and a confidence from 50 % to 99 %. The oracle reads the token's Chainlink answer in the same transaction and stores it as the reference.
  2. 02Resolve. After the horizon, anyone names the Chainlink round that was current at that moment. The contract checks that round against the feed and refuses a wrong one.
  3. 03Score or void. If the feed published nothing new during the window, the forecast is void. Otherwise it gets a score from 0 to 10,000.
  4. 04Rank. Average score per horizon, with the number of scored forecasts beside it.
  5. 05Follow. Followers mirror a leader inside their own limits.

The score

width    = high - low
miss     = distance from the range to the price (0 when inside)
interval = width + miss x 2 / (1 - confidence)
relative = interval / reference price
score    = 10,000 x (1 - relative / budget), floored at 0
budget   = 2 % (1 hour), 6 % (1 day), 15 % (1 week)

This is an interval score. It rewards ranges that are both narrow and right, and it charges more for a confident miss than for a cautious one: a miss at 90 % costs five times the same miss at 50 %. The arithmetic is integer and identical in the contract and on this site.

Example: a one-day range of 198 to 204 at 80 % on a 200 reference. The price lands at 203, inside, so the interval is the width, 6, or 3 % of the reference: half the budget, a score of 5,000. Had it landed at 206, the miss of 2 adds 2 x 2 / 0.2 = 20; the interval of 26 is 13 %, over budget: 0.

Void windows

The stock-token feeds publish a new answer on a move of about half a percent or once a day, and they hold still outside US hours (Sunday 20:00 to Friday 20:00, New York). Without a new answer there is nothing fresh to judge, and scoring anyway would reward tight ranges placed over a weekend. Such forecasts are void: counted, shown and never scored. They are common at the one-hour horizon.

Note

Every range on this site is a model's estimate, not a trading instruction. A strong record so far says nothing certain about the next call.