LogoLogo
TournamentsHedge FundDiscordGitHubForumDocs
  • Numerai Tournament
    • Overview
    • Data
    • Models
    • Submissions
      • Model Uploads
      • Compute Heavy
      • NGROK Example
      • CRON Example
    • Scoring
      • Definitions
      • Correlation (CORR)
      • Meta Model Contribution (MMC)
      • Feature Neutral Correlation (FNC)
      • Grandmasters & Seasons
    • Staking
    • Bounties
  • Numerai Signals
    • Overview
    • Data
    • Models
    • Submissions
    • Scoring
      • Definitions
    • Staking
    • Signals + QuantConnect
  • Numerai Crypto
    • Overview
    • Data
    • Submissions
    • Scoring
      • Definitions
    • Staking
  • Community
    • Discord
    • Forum
    • Twitter
    • Youtube
    • Apps & Content
      • Office Hours with Arbitrage
        • Office Hours Recaps: Season 1
          • OHwA S01E01
          • OHwA S01E02
          • OHwA S01E03
          • OHwA S01E04
          • OHwA S01E05
          • OHwA S01E06
          • OHwA S01E07
          • OHwA S01E08
          • OHwA S01E09
          • OHwA S01E10
          • OHwA S01E11
          • OHwA S01E12
        • Office Hours Recaps: Season 2
          • OHwA S02E01
          • OHwA S02E02
          • OHwA S02E03
          • OHwA S02E04
          • OHwA S02E05
          • OHwA S02E06
          • OHwA S02E07
          • OHwA S02E08
          • OHwA S02E09
          • OHwA S02E10
          • OHwA S02E11
        • Office Hours Recaps: Season 3
          • OHwA S03E01
          • OHwA S03E02
          • OHwA S03E03
          • OHwA S03E04
        • Office Hours Season 4
        • FAQ in Office Hours
        • Cited resources
      • Structure of Numerai by Wigglemuse
  • NMR
    • Coinbase
    • Uniswap
    • Etherscan
    • Github
  • Connect
    • Index
Powered by GitBook
On this page
  • What are Submissions?
  • Rounds
  • Making a Submission
  • Multiple Submissions
  • Late Submissions
  • Automation
  • Model Uploads
  • Numerai-CLI
  • Local Server
  • Queued and Delayed Submissions
  1. Numerai Tournament

Submissions

Submitting your predictions to Numerai

PreviousModelsNextModel Uploads

Last updated 8 months ago

What are Submissions?

Submissions are a vector of floats attempting to predict ranked . Predictions must be between 0 and 1 where 0 means lowest return, 0.5 means average return, and 1 means highest return. The targets in our data are meant to train your model to predict these returns.

Submissions are combined into a that Numerai uses to trade.

Rounds

Each submission is associated with a "Round" of the tournament.

Each round goes through 4 stages over the span of a month:

  • Open: the start of a new round and new live features are released

  • Close: the cutoff for when live predictions must be submitted

  • Score: the days that submissions are given scores

  • Resolve: when final scores and payouts are resolved

A new round starts each day Tuesday through Saturday. Each round spans about one month, so with 5 new rounds starting each week, we end up with an overlapping round schedule. At any given time, we can have up to 25 overlapping rounds.

Here is a visualization of the schedule of tournament rounds:

Notice that rounds starting Saturday occupy the full weekend - opening on Saturday and closing on Monday - whereas Rounds starting Tuesday through Friday are open only for 1 hour. Also notice that there are no scores released on Sundays and Mondays.

We generally expect rounds to follow this schedule:

Round
Open Time*
Close Time*
Scores Start
Resolve Time

Tue

Tue 13:00 UTC

Tue 14:00 UTC

Next Sat.

~31 days later (Fri.)

Wed

Wed 13:00 UTC

Wed 14:00 UTC

Next Tue.

~31 days later (Sat.)

Thu

Thu 13:00 UTC

Thu 14:00 UTC

Next Wed.

~33 days later (Tue.)

Fri

Fri 13:00 UTC

Fri 14:00 UTC

Next Thu.

~33 days later (Wed.)

Sat

Sat 13:00 UTC

Mon 14:00 UTC

Next Fri.

~33 days later (Thu.)

*Actual open and close times may vary from round to round, but we will always maintain a minimum 1 hour submission window and guarantee that Rounds will open no earlier than 13:00 UTC and end no earlier than 14:00 UTC.

Making a Submission

To properly compete in the tournament you should submit live predictions in every round.

from numerapi import NumerAPI
import pandas as pd

# Authenticate
napi = NumerAPI("[your api public id]", "[your api secret key]")

# Get current round
current_round = napi.get_current_round()

# Download latest live features
napi.download_dataset(f"v5.0/live_{current_round}.parquet")
live_data = pd.read_parquet(f"v5.0/live_{current_round}.parquet")
live_features = live_data[[f for f in live_data.columns if "feature" in f]]

# Generate live predictions
live_predictions = model.predict(live_features)

# Format submission
submission = pd.Series(live_predictions, index=live_features.index).to_frame("prediction")
submission.to_csv(f"prediction_{current_round}.csv")

# Upload submission 
napi.upload_predictions(f"prediction_{current_round}.csv", model_id="your-model-id")

Multiple Submissions

You can upload as many submissions as you would like during this submission window, but only the latest valid submission will be "selected" for scoring and payouts.

Late Submissions

If you miss the submission window of the current round, you are still allowed to upload your submission but it will be considered "late" - it still gets scored, but you cannot stake on it. Late submissions do not impact the Meta Model, the "at-risk" NMR of a late submission is 0, and its does not impact the payout factor for other users (see.

Automation

Model Uploads

The simplest (and most restrictive) way to automate your submissions is to upload your trained model to Numerai. Once uploaded, Numerai will handle generating and submitting predictions for you every day. Use this if you don't like dealing with infrastructure.

Numerai-CLI

Also known as "Compute Heavy", this is an official self-hosted cloud solution that supports AWS, GCP, or Azure. If you prefer to run your own automation or have a more complex model or pipeline, we recommend using Numerai CLI. We actively support this framework and directly respond to any bug reports / support issues. We have also engineered it to be highly reliable and very low cost.

Local Server

If you prefer to keep things on-premises you can go with one of these. They are relatively simple and cheap, but running your own local computer comes with the burden of ensuring reliability and running your own tech support.

Queued and Delayed Submissions

If you miss the submission window of the current round, your submission will be automatically "queued" for the upcoming round.

Queued submissions turn into on-time submissions immediately after the upcoming round opens. Since the ids of the live data changes every round, Numerai will automatically map your prediction's ids from the previous round to the latest round's ids.

If your pipeline takes too long to run (ie over 24 hours), you may use your predictions generated for the previous round to submit in the current round. Again, since the ids of the live data changes every round, Numerai will automatically map your delayed prediction's ids from the previous round to the latest round's ids.

Here is an example of how to make a submission in Python using :

See section for more details.

Read more about this on the .

- scheduling your script to run regularly and detect when to submit

- setup a webhook for Numerai to notify you when to submit

NumerAPI
model upload
Numerai-CLI Github page
CRON example
NGROK example
returns
Meta Model
Visual representation of Rounds 453 - 477 overlapping