Multi-Asset Bot

🤖 RussBot is a free, open-source binary options trading bot for PocketOption, built on BinaryOptionsToolsV2Get it on GitLab
💬 Need help? Join the Chipa Discord · ⚡ Go no-code with ChipaEditor

multi_asset_bot.py runs the RussBot strategy across many assets simultaneously, one OS process per asset, with automatic payout filtering and 1-second candles for faster signal detection.

How It Differs from Single-Asset Mode

AspectSingle-assetMulti-asset
Assets1 (you choose)Up to max_concurrent_processes from assets-otc.tested.txt
Candle interval15 seconds1 second
Payout checkNoneSkips assets paying ≤ 90%
ConcurrencySingle asyncio loopOne multiprocessing.Process per asset, each with its own event loop
LoggingVerbose per-candle analysisCompact, tagged [P{id}] per process
StrategyEMA + CCI + MACD confluenceIdentical

1. Check asset payouts first

python payout_checker.py

Filters assets-otc.tested.txt down to assets currently paying more than 90% and saves them to valid_assets.txt. See Payout Checker.

2. Run the multi-asset bot

python multi_asset_bot.py

You’ll be prompted for:

Please enter your SSID: <your PocketOption session ID>
Enter trade amount per asset (default: 1.0):
Max concurrent processes (default: 5):

The bot then:

📊 Loaded 92 assets from file
💰 Trade amount per asset: 1.0
🔄 Max concurrent processes: 5
📈 Payout filter: >90%
⏱️ Candle interval: 1 second
🚀 Starting process 1 for 100GBP_otc
🚀 Starting process 2 for ADA-USD_otc
...
✅ Started 5 processes for assets with >90% payout
📈 Monitoring trades... Press Ctrl+C to stop all processes

Per-Process Lifecycle

Each worker process independently:

  1. Connects to PocketOption with your SSID and waits for asset initialization (retrying up to 10 times if the platform reports “not initialized”)
  2. Checks the payout for its asset — if it’s ≤ 90%, the process exits immediately:
[P3] GBPJPY_otc: Payout 92.0%          ← proceeds
[P4] AUDCAD_otc: Payout too low (80.0%), skipping
  1. Pre-loads an hour of historical candles for instant indicator readiness
  2. Subscribes to 1-second timed candles and runs the same EMA/CCI/MACD confluence checks as the single-asset bot
  3. Trades with the shared 16-second cooldown per asset:
[P3] 🟢 BUY GBPJPY_otc @ 1.0
[P3] ✅ Buy trade 7f8e9d executed for GBPJPY_otc

Process Management

  • Configurable limit — processes are spawned up to max_concurrent_processes (launcher default 10, script prompt default 5), with a 2-second stagger between starts to avoid overwhelming the API.
  • Error isolation — an exception in one asset’s process never affects the others.
  • Graceful shutdownCtrl+C sends SIGTERM to every process, waits 5 seconds, then force-kills any stragglers:
⏹️ Stopping all processes...
✅ All processes stopped
  • Windows compatible — uses the spawn start method, so it works identically on Windows, macOS, and Linux.

The Asset File

Assets come from assets-otc.tested.txt (~90 tested OTC symbols). Comment out any asset with # to exclude it:

#TSLA_otc         ← skipped
AUDCAD_otc
AUDCHF_otc
AUDJPY_otc
...

Sizing Considerations

⚠️ Each process trades independently. With 10 processes and a 1.0 stake, your worst-case simultaneous exposure is 10× the single-asset amount. Size default_amount and max_concurrent_processes together, and remember the 16-second cooldown applies per asset, not globally.

Practical guidance:

  • Start with 2–3 processes on demo to see aggregate trade frequency
  • Keep total exposure (amount × processes) under 2% of your balance
  • More processes ≠ more profit — it’s more simultaneous risk on correlated OTC markets
  • Payout Checker — pre-filter assets before spawning processes
  • Strategy — the signal logic each process runs
  • Configurationmax_concurrent_processes, min_payout_percentage, candle_interval
  • Troubleshooting — “not initialized” retries and connection issues

💬 Running multi-asset on a VPS? Share your setup in the #trading-bots channel on the Chipa Discord. Prefer managed, no-code automation? Have a look at ChipaEditor.