Skip to main content

Command-line submitter for IMC Prosperity 3 algorithms

Project description

IMC Prosperity 3 Submitter

Build Status PyPI Version

This repository contains a command-line submitter for IMC Prosperity 3 algorithms, based on my submitter for Prosperity 2. It uploads the algorithm, monitors its progress, downloads the logs, logs the final profit / loss, and optionally opens the submission in my Prosperity 3 Visualizer, all in one command.

Usage

Basic usage:

# Install the latest version of the submitter
$ pip install -U prosperity3submit

# Submit an algorithm
$ prosperity3submit <path to algorithm file>

Run pip install -U prosperity3submit again when you want to update the submitter to the latest version.

Submitting requires your Prosperity ID token that is stored in the local storage item with the CognitoIdentityServiceProvider.<some id>.<email>.idToken key on the Prosperity website. You can inspect the local storage items of a website by having the website open in the active tab, pressing F12 to open the browser's developer tools, and going to the Application (Chrome) or Storage (Firefox) tab. From there, click on Local Storage in the sidebar and select the website that appears underneath the sidebar entry.

The submitter will prompt you for the token when it needs it. The token is then stored in your system's credentials store for convenience. ID tokens are short-lived, so you'll be prompted somewhat regularly and old tokens persisted in the credentials store do not pose much of a security risk.

By default, the submitter automatically downloads the submission's logs after simulation is done to submissions/<timestamp>.log. You can change this file using the --out <path to log file> option, or disable downloading logs altogether using the --no-logs flag.

If you use my Prosperity 3 Visualizer, the --vis flag will automatically open the submission in the visualizer after the simulation ends successfully.

Development

Follow these steps if you want to make changes to the backtester:

  1. Install uv.
  2. Clone (or fork and clone) this repository.
  3. Open a terminal in your clone of the repository.
  4. Create a venv with uv venv and activate it.
  5. Run uv sync.
  6. Any changes you make are now automatically taken into account the next time you run prosperity3submit inside the venv.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prosperity3submit-0.1.1.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prosperity3submit-0.1.1-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file prosperity3submit-0.1.1.tar.gz.

File metadata

  • Download URL: prosperity3submit-0.1.1.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for prosperity3submit-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b7325234724bc678e2188d21f1e6e021b1d258512dc93ab5512c0edb06827ff3
MD5 b3f3c264741488668f6ead8120558084
BLAKE2b-256 cfddd22917a81989891c70b212bd96815e4898e2912a2d7325093baf60d4e207

See more details on using hashes here.

Provenance

The following attestation bundles were made for prosperity3submit-0.1.1.tar.gz:

Publisher: build.yml on jmerle/imc-prosperity-3-submitter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file prosperity3submit-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for prosperity3submit-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a1c48f76ae37cb9043b553ae1044713b543144759fd090a53d033f682b7c9017
MD5 4f60de9301396625903ebc538f92f5a6
BLAKE2b-256 d8baae2eac9d94a5c01f8f1138155e9f73cab45c2ab348264fe86d64b6402df6

See more details on using hashes here.

Provenance

The following attestation bundles were made for prosperity3submit-0.1.1-py3-none-any.whl:

Publisher: build.yml on jmerle/imc-prosperity-3-submitter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page