A sophisticated trading bot implementing a strategy based on EMA, CCI, and MACD indicators for 15-second binary options trading.
Trading Setup:
- Timeframe: 15-second candles
- Expiry: 15 seconds
- Indicators:
- EMA (10 periods)
- CCI (7 periods)
- MACD (12, 26, 9)
Buy Signal Conditions:
- π’ Green candle (close > open)
- π Price crosses EMA upward (close > EMA)
- π CCI touches +100 (Β±10 tolerance)
- π EMA trending upward
Sell Signal Conditions:
- π΄ Red candle (close < open)
- π Price crosses EMA downward (close < EMA)
- π CCI touches -100 (Β±10 tolerance)
- π EMA trending downward
Risk Management:
- No martingale system
- Minimum 16-second interval between trades
- Trade amount configurable
RussBot/
βββ trading_bot.py # Main single-asset trading bot
βββ multi_asset_bot.py # Multi-asset trading bot with multiprocessing
βββ payout_checker.py # Asset payout verification tool
βββ test_indicators.py # Test script for indicators
βββ test_history.py # Test script for historical data loading
βββ test_simple_history.py # Simple history function test
βββ config.py # Configuration settings
βββ run_bot.py # Simple launcher script
βββ assets-otc.tested.txt # List of available assets
βββ context.txt # API usage examples
βββ README.md # This file
pip install pandas numpy BinaryOptionsToolsV2- Python 3.7 or higher
- Asyncio support required
python trading_bot.pypython multi_asset_bot.pypython payout_checker.pypython run_bot.pypython test_indicators.pyEdit config.py to customize trading parameters:
TRADING_CONFIG = {
"asset": "EURUSD_otc",
"amount": 1.0,
"expiry_time": 15,
"ema_period": 10,
"cci_period": 7,
"cci_tolerance": 10,
# ... more settings
}-
Install dependencies:
pip install pandas numpy BinaryOptionsToolsV2
-
Get your SSID:
- Log into your PocketOption account
- Extract the SSID from browser cookies/network tab
-
Test historical data loading:
python test_history.py
-
Test indicators first:
python test_indicators.py
-
Run the bot:
python trading_bot.py
-
Enter your SSID when prompted
- Concurrent processing of multiple assets using multiprocessing
- Payout filtering - only trades assets with >90% payout
- 1-second candle intervals for faster signal detection
- Automatic asset loading from
assets-otc.tested.txt - Process management with configurable concurrent limits
- Pre-loads historical candles using
api.history()before starting live trading - Immediate indicator calculation - no waiting for 26+ live candles
- Fallback support - continues with live data if historical loading fails
- Configurable history periods for different data amounts
- EMA (Exponential Moving Average): Trend direction
- CCI (Commodity Channel Index): Overbought/oversold conditions
- MACD: Momentum confirmation
- Real-time candle analysis using
subscribe_symbol_timed - Strict signal validation (all conditions must be met)
- Automatic trade execution with result tracking
- Comprehensive logging and error handling
- Trade cooldown period (prevents overtrading)
- Input validation and error handling
- Position size management
- Real-time balance monitoring
python payout_checker.py- Loads all assets from
assets-otc.tested.txt - Checks payout percentages for each asset
- Filters assets with >90% payout
- Saves valid assets to
valid_assets.txt
python multi_asset_bot.py- Prompts for SSID and trade amount
- Creates separate processes for each valid asset
- Each process runs the full trading strategy
- 1-second candle intervals for faster signals
- Concurrent trading across multiple assets
- Configurable concurrent limit (default: 10 processes)
- Graceful shutdown with Ctrl+C
- Individual process monitoring with [P{id}] tags
- Error isolation - one asset failure doesn't affect others
The bot implements a multi-indicator confluence strategy:
- Trend Identification: EMA determines the overall trend direction
- Entry Timing: CCI extreme levels (Β±100) indicate potential reversal points
- Confirmation: Candle color and price-EMA relationship confirm direction
- Execution: All conditions must align for trade execution
The bot provides real-time feedback:
- π Market analysis for each candle
- π Signal detection status
- π° Trade execution confirmations
- π Trade results after expiry
- Test thoroughly on demo accounts first
- Start with small amounts
- Monitor bot performance closely
- Understand the strategy before using
-
Import Errors:
pip install --upgrade BinaryOptionsToolsV2
-
Connection Issues:
- Verify SSID is correct
- Check internet connection
- Ensure PocketOption account is active
-
No Trading Signals:
- Strategy requires specific market conditions
- All indicators must align simultaneously
- Consider adjusting CCI tolerance in config
- Check
context.txtfor API usage examples - Test individual indicators with
test_indicators.py - Review configuration in
config.py
This project is for educational purposes. Use at your own risk.
Happy Trading! π