The ultimate institutional trading indicator for MetaTrader 5. Features Internal & External Market Structure, BOS/CHoCH Detection, Liquidity Sweeps, Order Blocks, FVG, and Multi-Timeframe Analysis.
SmartMarketStructure.mq5 to your MT5 MQL5/Indicators/ folder (or a subfolder).| Setting | Scalping (M1-M5) | Intraday (M15-H1) | Swing (H4-D1) |
|---|---|---|---|
| External Swing Size | 5 | 8 | 10-15 |
| Internal Swing Size | 2 | 3 | 5 |
| Max History | 500 | 800 | 1000+ |
| Max Zones | 10 | 20 | 30 |
Set GMT Offset to match your broker's server time offset from EST/New York. This is critical for Silver Bullet, Macros, CBDR, and NY Midnight Open to work correctly.
The dashboard panel shows real-time information and gives you full control over every feature with toggle buttons.
Every feature can be toggled on/off in real-time. Green/colored = ON, Gray = OFF. Click any button to toggle.
| Button | Feature | Description |
|---|---|---|
| Struct | External Structure | BOS/CHoCH lines + HH/HL/LH/LL labels |
| Int.S | Internal Structure | Minor swing structure for precision entries |
| FVG | Fair Value Gaps | Imbalance zones between 3 candles |
| IFVG | Inverted FVGs | Filled FVGs that become S/R |
| OB | Order Blocks | Last opposing candle before impulse |
| Breaker | Breaker Blocks | Failed swing points turned S/R |
| Mitig | Mitigated Zones | Shows zones that have been tested (dashed) |
| Reject | Rejection Blocks | Wick-based rejection zones |
| P/D | Premium/Discount | Range split + OTE fibonacci |
| EQH/L | Equal Highs/Lows | Liquidity pools (stop clusters) |
| Sweeps | Liquidity Sweeps | Stop hunt detection with reversal |
| Labels | Swing Labels | HH/HL/LH/LL text labels |
| Sessions | Session Boxes | Asia/London/NY session ranges |
| SB | Silver Bullet | 10-11 AM, 2-3 PM EST windows |
| Macros | ICT Macros | 9:50, 10:50, etc. reversal windows |
| CBDR | Central Bank Range | Asian range + SD projections |
| Prev HL | Previous Levels | Prev Day/Week High/Low/Close |
| M/W Open | Monthly/Weekly Open | Institutional reference levels |
| NY Open | NY Midnight Open | True Day Open (00:00 EST) |
| Vol | Volume Profile | Daily volume distribution + POC |
| MTF | Multi-Timeframe | HTF zones on current chart |
| ATR | ATR Projections | Daily expected range |
| +Alert | Manual Alert | Places a draggable price alert line |
Smart Market Structure Toolkit uses two independent levels of swing detection, which is how institutional traders actually analyze markets:
| Level | Purpose | Color | Setting |
|---|---|---|---|
| External (HTF) | Major trend direction. The "big picture." | Teal/Coral | External Swing Bars (default: 8) |
| Internal (LTF) | Entry timing. Precision within the HTF move. | Cyan/Pink | Internal Swing Bars (default: 3) |
This is one of the most critical distinctions in Smart Money trading:
| Type | Line Style | Meaning |
|---|---|---|
| BOS (Break of Structure) | Solid line | Continuation. Price breaks a swing point in the direction of the current trend. Confirms trend is intact. |
| CHoCH (Change of Character) | Dashed line | Potential reversal. Price breaks a swing point against the current trend. First sign trend may be shifting. |
The indicator performs real-time structure checks. If the current price breaks the most recent swing high/low against the established trend, a "Live CHoCH" line appears immediately — you don't have to wait for a confirmed fractal.
An FVG is a 3-candle pattern where the wick of candle 1 doesn't overlap with the wick of candle 3, creating an imbalance. Price has a natural tendency to return and fill these gaps.
When an FVG gets completely filled (price trades through the entire gap), it "inverts" and becomes a support/resistance zone in the opposite direction.
The last opposing candle before an impulse move. This is where institutions placed their orders.
A midline is drawn through each fresh OB at the 50% level — this is often the precise reaction point.
| Mode | Description |
|---|---|
| All | Show all order blocks (default) |
| Nearest | Only show the closest OB above and below current price |
| Bullish Only | Only show bullish OBs |
| Bearish Only | Only show bearish OBs |
When a swing point fails (gets broken through), the level becomes a Breaker Block. It flips from resistance to support (or vice versa). These are drawn with gold-colored zones.
| State | Appearance | Meaning |
|---|---|---|
| Fresh | Filled rectangle + midline | Untested. High probability reaction zone. |
| Mitigated | Dashed outline, no fill | Already tested. Lower probability but can still react. |
| Invalidated | Gray dashed (or hidden) | Price closed through it. No longer valid. |
When two swing highs (or lows) form at nearly the same price, it creates a liquidity pool. Retail traders place stop losses above equal highs and below equal lows. Institutions target these levels.
This is one of the highest-probability signals in ICT trading. A sweep occurs when:
Sweeps are marked with a bold "x" symbol and a dotted line to the swept level.
The indicator automatically identifies the current dealing range using the most recent external swing high and swing low. The range expands live as price makes new highs/lows.
| Zone | Range | Color | Action |
|---|---|---|---|
| Premium | Above 50% (EQ) | Red tint | Look for SELLS only |
| Discount | Below 50% (EQ) | Green tint | Look for BUYS only |
| Equilibrium (EQ) | Exactly 50% | White dotted line | Avoid entries at 50% |
The golden highlighted zone between the 61.8% and 78.6% Fibonacci retracement levels. This is the "sweet spot" for institutional entries.
| Level | Significance |
|---|---|
| 0.618 (61.8%) | Start of OTE zone. First potential reaction. |
| 0.705 (70.5%) | The "sweet spot". Highest probability reaction level. |
| 0.786 (78.6%) | End of OTE zone. If price goes past here, the move may be invalidated. |
The 25% and 75% levels are also drawn to help gauge price position within the range. These are shown as subtle gray dotted lines.
ICT trading is as much about when as it is about where. These time-based tools are critical for filtering setups.
The price at 00:00 EST (New York midnight) is the True Day Open. ICT considers this the real start of the trading day, not the broker's daily candle open. Shown as a blue horizontal line.
ICT's Silver Bullet model identifies specific 1-hour windows where FVG entries have the highest probability:
| Window | Time (EST) | Notes |
|---|---|---|
| AM Silver Bullet | 10:00 - 11:00 AM | After NY open manipulation. Best for continuation. |
| PM Silver Bullet | 2:00 - 3:00 PM | Afternoon reversal window. Often the day's final move. |
Shown as gold-bordered rectangles on the chart.
Short 20-minute windows where significant price movements and reversals tend to cluster:
The range established during the Asian session (approximately 2:00 PM - 8:00 PM EST). This range sets up the framework for the next day's moves.
Colored boxes showing the high/low range of each major trading session:
| Level | Abbreviation | Significance |
|---|---|---|
| Previous Day High | PDH | Major liquidity target. Stops above yesterday's high. |
| Previous Day Low | PDL | Major liquidity target. Stops below yesterday's low. |
| Previous Day Close | PDC | Institutional reference. Gap fills target this. |
| Previous Week High | PWH | Weekly liquidity target (higher timeframe). |
| Previous Week Low | PWL | Weekly liquidity target (higher timeframe). |
The MTF feature draws Higher Timeframe zones directly on your current chart. This is critical because HTF zones are significantly stronger than LTF zones.
HTF Period for MTF Analysis to your desired higher timeframe (e.g., H4 while on M15).| Trading TF | HTF for MTF | Use Case |
|---|---|---|
| M1-M5 | M15-H1 | Scalping with intraday context |
| M15-H1 | H4-D1 | Intraday with swing context |
| H4-D1 | W1-MN1 | Swing with macro context |
A simplified daily volume profile showing where the most trading activity has occurred.
The indicator calculates a real-time confluence score from 0 to 10 that rates the current setup quality. This is displayed on the dashboard and in the AI Scanner.
| Factor | Points | Description |
|---|---|---|
| Trend Alignment | +2 | External structure confirms direction |
| Premium/Discount | +2 | Price is in the correct zone (discount for buys, premium for sells) |
| In Order Block | +2 | Current price is touching an unmitigated OB |
| In FVG | +1 | Current price is inside an unmitigated FVG |
| Killzone Time | +1 | Currently in London or NY session |
| Silver Bullet | +1 | Currently in a Silver Bullet window |
| Liquidity Sweep | +2 | Recent sweep detected in your trade direction |
| Score | Rating | Color | Action |
|---|---|---|---|
| 0-3 | Low | Red | No trade. Wait for better conditions. |
| 4-6 | Medium | Gold | Possible trade with strict risk management. |
| 7-10 | High | Green | High probability setup. Execute with confidence. |
Click the "AI Scan" button to run a comprehensive multi-factor analysis of the current market.
| Signal | Meaning | Panel Color |
|---|---|---|
| BUY | Active buy setup. Confluence ≥ 5. Entry/SL/TP shown. | Green |
| SELL | Active sell setup. Confluence ≥ 5. Entry/SL/TP shown. | Red |
| WAIT | Direction identified but conditions not met. Levels shown as targets. | Gray |
| NONE | No clear trend or setup. Stay flat. | Dark gray |
The AI panel automatically calculates the optimal lot size based on:
It also shows the dollar risk and potential dollar reward.
Click "Backtest" in the AI panel to test the OTE strategy on the last 50 swing cycles. It shows:
| Event | Input Setting | Description |
|---|---|---|
| BOS | Alert on BOS | Fires when a Break of Structure is confirmed |
| CHoCH | Alert on CHoCH | Fires when a Change of Character occurs (potential reversal) |
| Liquidity Sweep | Alert on Sweep | Fires when a stop hunt is detected with reversal |
| OB Touch | Alert on OB Touch | Fires when price enters an unmitigated order block |
Click "+Alert" on the dashboard to place a yellow horizontal line at the current price. Drag it to your desired level. When price crosses the line:
This is the step-by-step process for finding and executing A+ setups using the Smart Market Structure Toolkit:
Never risk more than 1-2% of your account balance on a single trade. The AI Scanner automatically calculates the correct lot size based on your risk input.
The formula used by the AI Scanner:
The result is automatically capped between the broker's minimum and maximum lot sizes.
| Confluence Score | Minimum R:R | Notes |
|---|---|---|
| 7-10 | 1:2 | High probability. Slightly lower R:R acceptable. |
| 5-6 | 1:3 | Standard. Need good reward to compensate. |
| 0-4 | Do not trade | Wait for better conditions. |
| Style | Enable | Disable |
|---|---|---|
| Minimalist | Struct, FVG, OB, P/D | Everything else |
| ICT Model | Struct, FVG, OB, P/D, OTE, SB, NY Open, Sweeps | Vol, IFVG, Macros |
| Full Analysis | Everything | Nothing |
| Scalping | Int.S, FVG, OB, Sweeps, Sessions, SB | Ext.S, P/D, MTF, Vol |
Ctrl+I to manage indicator inputs.Ctrl+B to see all chart objects created by the indicator.Reduce "Max History Bars" to 500 or less. Disable features you don't need (especially Volume Profile and MTF). Close the AI panel when not in use.
Check your "GMT Offset" input. It should reflect the difference between EST (New York time) and your broker's server time. Most brokers use UTC+2 or UTC+3, which means the offset should be -5 (EST) relative to that.
If "Hide Invalidated" is ON, zones that price has closed through will be removed. Turn it OFF or enable "Mitig" to see mitigated/invalidated zones.
Increase "Max History Bars" or reduce "External Swing Bars" size. You need enough data for the indicator to detect swings and structure breaks.
This is normal and actually a good sign — it means the indicator is properly filtering setups. A+ setups don't occur on every chart at every moment. Try different timeframes or symbols.
Yes. Add the indicator to multiple charts. Each instance is independent. Use the MTF feature to see higher timeframe zones on your trading timeframe.
Replace the .mq5 file in your Indicators folder, then right-click on Indicators in Navigator and click "Refresh". Re-apply the indicator to your charts.