ibkr-bouncybot/ibkr-trading-bot — explained in plain English
Analysis updated 2026-05-18
Automate a single long-side stock trade on Interactive Brokers with configurable entry and exit rules.
Run repeated trading cycles that reinvest positive profits automatically.
Monitor and audit past trading cycles with built-in history and reconciliation views.
Safely resume a trade cycle after a controlled shutdown using checkpoint recovery.
| ibkr-bouncybot/ibkr-trading-bot | 0311119/free_registertool | 18597990650-lab/multi-agent-game | |
|---|---|---|---|
| Stars | 24 | 24 | 24 |
| Language | Python | Python | Python |
| Setup difficulty | moderate | hard | moderate |
| Complexity | 3/5 | 4/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires an Interactive Brokers account with TWS or IB Gateway running and properly configured market-data subscriptions.
BouncyBot is a Windows desktop program written in Python that automates a single stock trading cycle at a time through Interactive Brokers. It connects to the broker via either Trader Workstation or IB Gateway, and it only trades on the long side, meaning it buys shares first and then sells them later. The program watches one confirmed stock contract, waits for a configurable price decline, enters on a rebound, and delays its normal profit-taking exit until a configured minimum-profit condition can be met. It uses Interactive Brokers' own trailing-stop or market orders, saves its state in a local SQLite database, and provides recovery, audit, and diagnostic tools. The bot follows a five-stage strategy. First, it watches for an initial percentage drop from a rising anchor price. Second, it enters the trade using a native buy trailing stop, or a market buy if the trailing amount is set to zero. Third, it waits until a sell order can protect a configured minimum gross profit relative to the actual average buy fill price. Fourth, it exits using a native sell trailing stop, or a market sell if the trailing amount is zero. Fifth, it records the completed cycle and optionally starts another one. The application offers a PySide6 desktop interface with views for connection, strategy, flowchart, history, and reconciliation. It supports connection profiles for live and paper trading endpoints, contract search and qualification through the broker API, and whole-share budget sizing. Other features include optional automatic cycle repetition with reinvestment of positive profits, portable SQLite storage with additive schema migration, atomic resume checkpoints for controlled shutdowns, and a single-instance lock to prevent two copies from using the same database. The README includes a clear caution that the software can transmit live orders. Native trailing stops trigger market-style execution and do not guarantee a stop price, fill price, or profit. Gaps, latency, insufficient liquidity, rejected orders, commissions, and broker behavior can all produce results that differ from the application's projections. Users are advised to review settings, broker permissions, market-data subscriptions, and recovery state before enabling live trading. The project is source-available under the PolyForm Noncommercial License 1.0.0. Noncommercial use, modification, and redistribution are permitted, while commercial use requires separate permission.
A Windows desktop app that automates a single long-side stock trade at a time through Interactive Brokers. It watches a stock, buys on a rebound after a price drop, and sells only when a minimum profit is reached.
Mainly Python. The stack also includes Python, PySide6, SQLite.
Noncommercial use, modification, and redistribution are permitted, commercial use requires separate permission from the author.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
double-check against the repo, no cap.