How murad24-cuper/bottrading works
This is a single-owner XM MetaTrader 5 trading bot. Its main workflow is to connect to the local terminal, discover and screen symbols, analyze market bars into strategy signals, apply risk rules, and execute and record trades; a localhost dashboard exposes status and controls. The repository also includes backtesting, research and a learning-oriented “brain” subsystem. Edges reflect README statements and the supplied source index or excerpts; several implementation details were not sampled, so uncertain connections are omitted.
Main entry points: scanner.py Signal scanner · bot.py Trading loop · executor.py Order execution · queries.py Dashboard queries
Components 19
Trading runtime
- Trading loop
src/bot.py - Symbol discovery
src/symbols.py - Market data
src/market_data.py
Market analysis
- Signal scanner
src/scanner.py - Indicators and features
src/indicators.py - Strategy families
src/strategies - Session analysis
src/sessions.py
Risk and execution
- Risk controls
src/risk.py - Trade rules
src/trade_rules.py - Order execution
src/executor.py
Research and learning
- Backtest engine
src/backtest/engine.py - Trading memory
src/brain/memory.py - Model evaluation
src/brain/evaluation.py - Feature analysis
src/analysis/feature_impact.py
Operations and reporting
- Trade database
src/db.py - Local dashboard
src/dashboard/app.py - Dashboard queries
src/dashboard/queries.py
Other components
- Bot owner
- MT5 terminal
Connections 21
- Bot owner → Trading loop: starts
README.md - Trading loop → MT5 terminal: connects to
README.md - Trading loop → Symbol discovery: uses
src/bot.py - Trading loop → Signal scanner: runs scans
src/bot.py - Trading loop → Order execution: manages trades
src/bot.py - Trading loop → Trade database: records trades
README.md - Symbol discovery → Market data: loads history
src/symbols.py - Signal scanner → Market data: gets market data
src/scanner.py - Signal scanner → Indicators and features: calculates features
src/scanner.py - Signal scanner → Strategy families: dispatches signals
src/scanner.py - Signal scanner → Risk controls: checks limits
src/scanner.py - Signal scanner → Session analysis: checks sessions
src/scanner.py - Order execution → Risk controls: sizes positions
src/executor.py - Order execution → Trade rules: checks rules
src/executor.py - Order execution → MT5 terminal: sends orders
README.md - Local dashboard → Dashboard queries: reads status
src/dashboard/app.py - Dashboard queries → Trade database: queries SQLite
src/dashboard/queries.py - Signal scanner → Trading memory: uses memory
src/scanner.py - Backtest engine → Risk controls: checks risk
src/backtest/engine.py - Backtest engine → Market data: uses market data
src/backtest/engine.py - Dashboard queries → Feature analysis: uses analysis
src/dashboard/queries.py