max_concurrent_trades

๐Ÿฆ‰ AthenaAI is an AI-powered ensemble machine-learning trading bot for PocketOption, built on BinaryOptionsToolsV2 โ†’ Get it on GitLab
๐Ÿ’ฌ Need help? Join the Chipa Discord ยท โšก Go no-code with ChipaEditor

Caps how many trades can be pending (placed but not yet resolved) at once. While the cap is reached, the trade loop skips every cycle.

This field has no environment variable โ€” to change it, edit the default in src/config.py or construct BotConfig yourself.

Typeint
Default1
FieldBotConfig.max_concurrent_trades
Consumed insrc/bot.py (AITradingBot._trade_loop)

What it does

Every iteration of _trade_loop in src/bot.py runs a series of gate checks before considering a trade. One of the first gates is:

elif len(self.pending_trades) >= self.cfg.max_concurrent_trades:
    reason = f"Max trades open ({len(self.pending_trades)}/{self.cfg.max_concurrent_trades})"

self.pending_trades is a dict of TradeRecord objects for trades that have been placed but whose result has not yet come back from check_win() in _result_checker. A trade is removed from pending_trades when its result (win/loss/draw) is parsed, or when it is abandoned as stale after expiry * 5 seconds of failed result checks.

With the default of 1, the bot is strictly sequential: it never places a second trade until the first has resolved. The gate produces a diagnostic log line (at most every 30 seconds) like:

โธ Max trades open (1/1)

Valid values

Any positive integer. 1 (default) is the safest. Values above 1 allow overlapping trades โ€” note that all pending trades share the same daily loss accounting in MoneyManager, so several simultaneous losses can overshoot max_daily_loss before the limit gate reacts. 0 or negative values block trading entirely.

Examples

# src/config.py
max_concurrent_trades: int = 2          # allow two overlapping trades
from src.config import BotConfig
cfg = BotConfig(ssid="...", max_concurrent_trades=2)

Interactions

  • min_wait_between_trades also spaces trades out in time; both gates must pass.
  • PO_MAX_DAILY_LOSS โ€” more concurrent trades means more money at risk before the daily limit can trigger.
  • Trade resolution timing depends on the AI-selected expiry (PO_EXPIRY_OPTIONS); longer expiries keep the slot occupied longer.

Risk note: binary options trading can lose money. Raising this value multiplies the capital simultaneously at risk.

See also

๐Ÿ’ฌ Unsure how this interacts with the rest of the configuration? Ask in the Chipa Discord โ€” or prototype strategies no-code with ChipaEditor.