If you push new code, please notify in the Discord first.
We use a custom Git pre-push hook in our project to ensure code pushed to the main branch has been properly updated and rebased. This section guides you through setting up this hook.
Make sure you have the latest version of the repository:
git pull origin main
Execute the setup_hooks.sh script to install the pre-push hook:
sh git_hooks/setup_hooks.sh
Do inspec on your IMC prosperity page, and check for CognitoIdentityServiceProvider...idToken. Copy to your clipboard and then execute the following command
pbpaste | poetry run prosperity2submit Tutorial/Trader.py
Welcome to the SeaShells Trader Challenge! In this competition, you'll develop a Python-based trading algorithm to compete against bots in a simulated island exchange environment. The aim is to accrue as many SeaShells, the island's virtual currency, as you can through strategic trading.
Your task is to create a Trader
class that contains your trading logic. This class interacts with a variety of other classes provided within the simulation environment, which together facilitate your interaction with the market.
Trader
is your main class where the algorithm resides.
- run: The heart of your strategy, which processes the
TradingState
to make trading decisions. - result: A dictionary output of your orders, keyed by product.
- traderData: A string to maintain state across the algorithm's execution calls.
Provides a snapshot of the current market situation.
- Attributes: Includes trader data, timestamp, listings, order depths, trades, position data, and observations.
Describes how orders are placed and executed within the simulation.
Details outstanding market orders, influencing trading decisions.
Represents an individual trade, providing insights into market activities.
Defines a trading order's structure.
Contains metadata for tradable products.
Encapsulates market insights and conditions impacting trading decisions.
Offers data relevant to product conversions, essential for strategies involving asset conversion.
Describes how the algorithm should place orders using the Order
class.
- Understanding Position Limits: Manage your exposure to products, and strategize within the set position limits.
- Enhancing Trading Strategies: Utilize the provided data classes to tailor strategies, exploit opportunities, and adapt to market conditions.
- Clone this repository.
- Navigate to the cloned directory.
- Implement your
Trader
class logic. - Test your algorithm using the simulation environment.
- Submit your
Trader
class as instructed within the challenge platform.