A professional Smart Money Concepts (SMC) trading, analysis, and automated execution platform for MetaTrader 4, developed in MQL4.
Smart Money Concepts (SMC) is a price-action and liquidity-based trading approach focused on market structure, liquidity behavior, displacement, and institutional-style reaction zones. This project translates those concepts into a structured chart-based environment for discretionary analysis, quantitative research, and fully configurable automated execution.
SMC Pro combines multiple trading tools in one workspace so the trader can monitor market structure, liquidity, timing, currency strength, watchlists, open positions, and news context from a single chart view.
The platform is organized around three connected layers:
- Analysis Layer: market structure, liquidity, order blocks, timing, strength analytics, and watchlist monitoring
- Research Layer: feature extraction, dataset generation, and model development
- Execution Layer: live market evaluation, strategy filtering, risk control, and both manual and automated trade execution
This design reduces workflow friction, improves situational awareness, and supports discretionary analysis, quantitative research, and fully automated multi-strategy trade execution across multiple timeframes.
The platform analyzes market structure across lower and higher timeframes and summarizes the results through compact dashboards and chart annotations.
Main capabilities:
- multi-timeframe structure detection
- internal and external structure interpretation
- change of character (ChoCh) detection
- market structure shift identification
- displacement and continuation context
- structure summaries across monitored timeframes
- rule-based visual annotations for analysis and execution
The system calculates and visualizes key SMC concepts directly on the chart.
Included concepts:
- internal and external liquidity
- multiple order block variations
- breaker blocks
- fair value gaps (FVG)
- liquidity sweeps
- premium and discount zones
- displacement behavior
- structure shifts
- refine and no-refine structural modes
The platform includes a dedicated watchlist panel for monitoring multiple symbols from one place.
This module provides:
- watchlist monitoring across selected instruments
- symbol visibility inside the main dashboard
- relative pair strength display beside each watched symbol
- strength evaluation based on the selected timeframe
- faster symbol comparison and trade selection support
The framework includes pure and relative currency strength analysis across multiple timeframes.
This module supports:
- directional bias estimation
- cross-symbol filtering
- instrument comparison and ranking
- stronger-versus-weaker currency analysis
- trade selection support
The project includes timing tools inspired by ICT-oriented workflows and session-based market context.
Supported concepts include:
- ICT kill zones
- Asian, London, and New York session timing
- CLS timing references
- quarterly timing references
- daily, weekly, and monthly cycle context
- intraday timing windows
The platform includes dedicated panels for structured risk and trade management.
Included functions:
- risk-based lot sizing
- dynamic and fixed sizing modes
- daily and total P&L tracking
- margin monitoring
- time-based and condition-based close logic
- position monitoring utilities
The system includes tools for active trade handling and position control.
Features include:
- manual buy and sell controls
- multi-target take-profit handling
- break-even and risk-free management logic
- regular and step trailing stop workflows
- position add-on logic
- symbol-level and account-level close functions
A core part of the project is a fully configurable auto-trading engine designed for rule-based execution of SMC-style strategies.
A dedicated setup configuration panel with hundreds of parameters is used to define entry logic, filters, confirmations, invalidation rules, risk settings, trade management rules, and exit behavior for a specific trading idea.
Each setup can be:
- created through the main setup panel
- saved under a unique name
- loaded later as a reusable configuration
- enabled or disabled individually from the execution inputs
The platform supports dozens of saved setups running in parallel. Through the Load Sets workflow, multiple named setups can be activated at the same time, allowing the engine to scan, validate, and execute different strategy models simultaneously on live market data.
This design allows the project to operate as a multi-strategy automated execution engine, not just a single fixed expert advisor.
The automated execution engine is driven by a large structured input framework where each setup is built from configurable components rather than hard-coded trade rules.
The setup inputs allow the user to define and combine multiple categories of conditions, confirmations, filters, timing rules, liquidity logic, structural context, trigger models, and trade management parameters into a named strategy configuration.
Typical setup building blocks include:
- momentum conditions
- speed and acceleration filters
- directional alignment rules
- live and pre-structure conditions
- liquidity and stop-hunt logic
- break and no-break structural states
- order flow and double order flow conditions
- point of interest (POI) filters
- order block conditions
- confirmed MSU and wait-for-confirmation logic
- trigger definitions such as candle-based confirmations
- time-of-trade windows
- BSL/SSL and liquidity-side conditions
- setup activation and multi-setup loading controls
- money management and execution parameters
This structure makes it possible to design, save, load, compare, and run many distinct strategy models using the same execution engine.
The platform includes integrated Forex Factory news monitoring for event-aware trade filtering and chart-based visibility.
Main capabilities:
- display of Forex Factory news events inside the platform
- filtering by impact level such as high, medium, and low importance
- chart-level display of news title and description
- countdown timer to upcoming news releases
- configurable no-trade window before and after scheduled news events
- support for avoiding trade entries during sensitive high-volatility periods
A major objective of this project is structured feature engineering for quantitative trading research.
The framework has been used to generate datasets across multiple instruments and timeframes using features derived from:
- market structure states
- liquidity behavior
- order block logic
- timing models
- currency strength
- watchlist context
- news-event context
- session context
- multi-timeframe alignment
These datasets have been used in:
- classical machine learning workflows
- deep learning workflows
- time series forecasting experiments
The platform is connected to Python-based research workflows through structured data export.
General workflow:
- MetaTrader 4 processes market data and computes structured analytical features
- selected features are exported through CSV files
- external Python pipelines consume the exported data
- research models analyze directional bias or movement expectations
- outputs are used in research, validation, and system development workflows
SMC Pro supports both manual trading workflows and fully automated trade execution within the same chart environment.
In manual mode, the trader uses the analysis panels, risk tools, and position controls to make and manage discretionary decisions. In automated mode, the built-in setup engine evaluates and executes trades automatically based on one or more active saved setups.
This allows the same platform to support discretionary analysis and systematic multi-strategy execution without switching tools.
- Attach the compiled toolset to an MT4 chart
- Configure market structure, watchlist, timing, news, and setup settings
- Use the panels for manual analysis, or define named setups for automated execution
- Load one or multiple saved setups and activate them via the Load Sets interface
- Monitor positions, P&L, and market conditions from the unified dashboard
- Language: MQL4
- Platform: MetaTrader 4
- Research Environment: Python
- Data Interface: CSV-based structured feature export
- Version Control: Git, GitHub
Typical requirements for the broader workflow include:
- MetaTrader 4 (recent build recommended)
- Compiled MQL4 components such as Expert Advisors and Indicators
- Permission for CSV file export/import between MT4 and external tools
- Python 3.8+ (optional, for external research pipelines only)
- Common libraries:
pandas,numpy,scikit-learn,matplotlib
- Common libraries:
This repository is intended for documentation and portfolio presentation, so runnable private components may not be included.
These screenshots show different views of the overall platform environment, including the integrated analysis, execution, and monitoring workspace.
This view shows the main dashboard where multiple panels are available together, including market structure tools, watchlist, relative pair strength, timing modules, money management, execution controls, setup management, and research-related sections.
These screenshots show part of the structured setup-input system used to build automated trading models. Each setup can combine multiple condition groups, confirmation rules, structural filters, liquidity logic, timing constraints, and execution settings.
| Setup Inputs 1 | Setup Inputs 2 | Setup Inputs 3 |
|---|---|---|
![]() |
![]() |
![]() |
| Watchlist | Currency Strength | Money Management |
|---|---|---|
![]() |
![]() |
![]() |
| Timing Tools | Position Manager | ML Parameters |
|---|---|---|
![]() |
![]() |
![]() |
This repository is shared for portfolio and documentation purposes only.
It may include:
- project documentation
- screenshots
- architecture descriptions
- feature summaries
- selected configuration examples
- workflow explanations
It does not publicly include:
- full proprietary MQL4 source code
- compiled private production modules
- complete setup logic
- full automated execution engine implementation
- dataset generation pipelines
- trained machine learning models
- private research scripts
The setup configuration panel, load-set engine, and automated execution logic are part of a private, actively used research and trading environment.
A clean-room, interface-only public demonstration of SMC Pro for MetaTrader 4 is available in this repository.
The demo presents synthetic multi-timeframe market-structure states, currency-strength values, watchlist information, session context, risk-management panels, and dataset/ML workflow status.
It does not include proprietary SMC calculations, real trading signals, order execution, dataset generation, CSV export, machine-learning models, private indicators, network access, DLL integration, or production trading logic.
View public demo documentation
This project is provided for analysis, system design presentation, workflow support, research, and trade execution purposes only. It does not constitute financial advice, investment advice, or a guarantee of trading performance. Trading leveraged financial markets involves substantial risk. All trading decisions and outcomes, whether manual or automated, remain the responsibility of the user.
Actively maintained as part of a broader trading systems research environment.
Hamid Haddadian













