Battles
Battles are player-vs-player trading competitions where you and other traders face the same market scenario and compete for the best P&L. Think of it as a trading duel — same instrument, same date, same timeframe, different results.
What are battles?
A battle puts multiple traders into an identical trading scenario. Everyone gets the same historical data, starting balance, and conditions. The only variable is how each trader interprets the market and executes their trades. When the battle ends, the trader with the highest net P&L wins.
Battles test your skill in a competitive context — you cannot blame bad market conditions or data issues because everyone had the same setup.
How battles work
Battle format
Every battle has a fixed configuration:
| Setting | Description |
|---|---|
| Instrument | The futures contract or forex pair everyone trades |
| Date | The historical session date |
| Timeframe | The chart timeframe (e.g., 1m, 5m) |
| Starting balance | The simulated account balance all participants begin with |
| Duration | How much of the session participants trade (full session or a portion) |
All participants trade the same scenario independently — you cannot see other participants’ trades or positions during the battle.
Battle lifecycle
-
Create or join a battle
Either create a new battle and share the join code with friends, or enter a code you received from another trader. The battle creator selects the instrument, date, and timeframe.
-
Wait for participants
The battle lobby shows who has joined. The creator decides when to start the battle, or it starts automatically when the specified number of participants have joined.
-
Trade the scenario
Once the battle begins, all participants trade the same market replay independently. Use the standard TestMax dashboard — all order types, keyboard shortcuts, and charting tools are available.
-
Results are calculated
When the session data ends or all participants finish, each trader’s net P&L is calculated. The leaderboard populates automatically.
-
View the leaderboard
The final leaderboard ranks all participants by net P&L. You can see each trader’s total P&L, number of trades, win rate, and best single trade.
Creating a battle
To create a new battle:
- Navigate to Battles from the sidebar
- Click Create Battle
- Configure the battle settings:
- Instrument — Pick the futures contract or forex pair
- Date — Select the historical session date
- Timeframe — Choose the chart timeframe
- Click Create to generate the battle
- A unique join code is generated — share this with the traders you want to compete against
Joining a battle
To join an existing battle:
- Navigate to Battles from the sidebar
- Click Join Battle
- Enter the join code provided by the battle creator
- Review the battle settings (instrument, date, timeframe)
- Click Join to enter the battle lobby
You can also join battles through a shared link if the creator sends one.
During the battle
The battle uses the standard TestMax trading dashboard. Everything works the same as normal practice:
- Place orders using the order panel or keyboard shortcuts (B to buy, S to sell, F to flatten)
- Use any order type — market, limit, stop, or bracket
- Control playback speed to manage the session pacing
- Use chart drawing tools and indicators as needed
The key difference is that your results will be compared against other participants when the battle ends.
Battle leaderboard
After all participants complete the battle (or the session data ends), the leaderboard shows:
| Column | Description |
|---|---|
| Rank | Final position based on net P&L |
| Trader | Username |
| Net P&L | Total profit or loss |
| Trades | Number of trades placed |
| Win rate | Percentage of winning trades |
| Max drawdown | Largest peak-to-trough decline during the battle |
| Best trade | Largest single winning trade |
The leaderboard is visible to all battle participants. Results are saved permanently — you can revisit past battle results at any time.
Tips for competing
Treat it like a real session
The competitive element can push traders into risky behavior — over-leveraging, chasing trades, or abandoning their strategy. Trade the battle the same way you would trade a normal session. Consistency beats heroics.
Do not watch the clock
Worrying about how much time is left or how your competitors might be doing only distracts you. Focus on the chart and your process. The P&L takes care of itself when you trade well.
Manage risk even more carefully
In a battle, a blown account is an automatic loss. It is better to finish with a small profit than to take a huge risk chasing a big win. The trader who avoids catastrophic losses often wins by default.
Use battles for learning
After each battle, compare your results with the leaderboard. If someone significantly outperformed you on the same data:
- How many trades did they take?
- Was their win rate higher or did they have larger winners?
- Did they trade a different part of the session?
These comparisons reveal blind spots in your own trading approach.
Practice the scenario first
There is nothing wrong with practicing on the same instrument and timeframe (different date) before the battle starts. Warm up on similar conditions to get into the right mindset.
Battle requirements
- Pro subscription required — Battles are a Pro-only feature
- Minimum 2 participants — A battle needs at least two traders
- Same platform version — All participants must be using the current version of TestMax