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.0.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.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: prosperity3submit-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 619df4034ea05e5b84bd474b75f8ffcf0c9b2d1ab71f53fb5f606f018b2c9267
MD5 6f0777c9b9ff63c886905afa198e9f6e
BLAKE2b-256 34e70e3fd00f5a8720b0b377d8772189e51b6cc8422cfcec7300ad321daac04c

See more details on using hashes here.

Provenance

The following attestation bundles were made for prosperity3submit-0.1.0.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.0-py3-none-any.whl.

File metadata

File hashes

Hashes for prosperity3submit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8738f0ec8d2419db9708d388c40e0a47de3647ef25d32cad54f22180a9d5c093
MD5 053d78c11d008118c1b31eb91875c910
BLAKE2b-256 e26c49867c6efa45cd2dceb3d1ed79f2380994fe7fbfbf6fc7f9e163439056fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for prosperity3submit-0.1.0-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