A CLI submitter for the IMC Prosperity 4 competition
Project description
ip4-submitter
A CLI tool for submitting and evaluating trading algorithms in the IMC Prosperity 4 competition. Submit your algorithm, monitor its progress, and download results — all from the terminal.
Installation
pip install ip4-submitter
Quick Start
# 1. Copy your token to clipboard (see Authentication below), then:
ip4submitter auth
# 2. Submit your algorithm and wait for results
ip4submitter submit algo.py
That's it. The tool uploads your file, waits for the backtest to finish, and saves the result log to submissions/<id>.log.
Commands
| Command | Description |
|---|---|
ip4submitter auth |
Save your session token from clipboard |
ip4submitter submit <file> |
Submit an algorithm and download results |
ip4submitter history |
List all submissions for the current round |
ip4submitter download |
Download logs for a past submission |
ip4submitter guide |
Show a detailed usage guide in the terminal |
Usage
Submit an algorithm
ip4submitter submit my_algo.py
# Save logs to a custom directory
ip4submitter submit my_algo.py --output results/
View submission history
ip4submitter history
Download logs
# Download the most recent submission
ip4submitter download
# Download a specific submission by ID
ip4submitter download --id 46284
# Download to a custom directory
ip4submitter download --filepath results/
Development
If you want to modify the tool locally:
# Clone the repo
git clone https://github.com/monoclonalAb/ip4-submitter.git
cd ip4-submitter
# Install dependencies with uv
uv sync
# Run the CLI locally
uv run ip4submitter --help
# Build the package
uv build
Authentication
Your token is stored securely in your system's credential store (macOS Keychain, Windows Credential Manager, or Linux secret store).
Option A — Bookmarklet (recommended)
- Create a new browser bookmark and set its URL to:
javascript:void function(){if("prosperity.imc.com"!==window.location.hostname)alert("This bookmarklet should only be used on prosperity.imc.com");else{const c=document.cookie.split(";").map(c=>c.trim()).find(c=>/\.idToken=/.test(c));c===undefined?alert("ID token not found, are you sure you are logged in?"):(navigator.clipboard.writeText(c.split("=").slice(1).join("=")),alert("Successfully copied ID token to clipboard!"))}}();
- Navigate to prosperity.imc.com while logged in
- Click the bookmark — your token is copied to your clipboard
- Run
ip4submitter auth
Option B — Manual extraction
- Go to prosperity.imc.com and log in
- Press F12 to open developer tools
- Open the Application tab (Chrome) or Storage tab (Firefox)
- Select Local Storage → the Prosperity site
- Copy the value for the key matching
CognitoIdentityServiceProvider.<id>.<email>.idToken - Run
ip4submitter auth
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ip4_submitter-1.0.1.tar.gz.
File metadata
- Download URL: ip4_submitter-1.0.1.tar.gz
- Upload date:
- Size: 344.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
022710f032631c9ef30372cef3922f487081bfdbdf21a9e664f75d8d72b8ffc2
|
|
| MD5 |
a7ae079ddd17c493ab01492e421d3483
|
|
| BLAKE2b-256 |
dc1fce59c55267f5c83b8e711bcd54942100ed62fc15406dca0d21918e3cc360
|
File details
Details for the file ip4_submitter-1.0.1-py3-none-any.whl.
File metadata
- Download URL: ip4_submitter-1.0.1-py3-none-any.whl
- Upload date:
- Size: 362.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8a2cb2c54360238f4118ae3fadcbac5b30d26755537674b97059ababc744571f
|
|
| MD5 |
1a3a41c09d935f027fe93f228e03c970
|
|
| BLAKE2b-256 |
9133b88af0795cb9725eb5d59a1d79cffc6c8bbf7b527f61f61bb1c0dac72c82
|