Smart Money Concepts Suite puts market structure, order blocks, fair value gaps, swing failure patterns and liquidity zones on one MT4 or MT5 chart. Structure and order blocks are on by default; the rest is switched off until you want it.

Start with the honest part
Each order block draws two coloured bars inside it, an upper one and a lower one, extending to the right by different amounts. They look exactly like a buy-versus-sell pressure readout.
They aren't. In the code, both bars advance on a fixed two-to-one alternation on every bar: two increments to the block's own direction, then one to the other, repeating. Price doesn't enter it. Volume doesn't enter it. The only thing those two bars measure is how long the block has existed, and the ratio between them is always the same.
What is real is the figure printed beside each block: that's the volume of the bar the block was built from, with its share of the total volume across the blocks currently shown. That number means something. The bars next to it do not, and I'd rather say so on the sales page than let you build a rule around them.
You can turn the bars off with Show buy/sell activity and keep the volume figure with Show volume metrics. That's the configuration I'd use.
Market structure
Pivots of length InpMsLen (5) define swings. When price closes past a swing in the direction of the existing trend it's a BOS; when it closes past one against the trend it's a CHoCH, and the label goes on the leg with a dot at its origin.
InpMsMode switches the algorithm between adjusted and plain logic โ the adjusted mode is the default and re-anchors the reference swing as structure develops, which produces fewer, larger legs.
InpBuildSweep adds the small x markers you can see on the charts: a swing that was taken out by a wick without a close beyond it. That's the difference between structure being broken and liquidity being taken, and having both on the same chart is most of the value here.
EQH / EQL mark pairs of highs or lows close enough to count as equal, joined by a dotted line. InpEhlMode sets how far back the pairing looks.

Order blocks
InpObMode builds them either by a fixed length or by an ATR multiple. InpObMiti decides what counts as mitigation โ a close through the block, or a wick. InpObOverlap hides blocks that overlap an existing one, and InpObWhichLap says whether the older or the newer one survives.
InpObShowBB keeps mitigated blocks on the chart as breakers, drawn in a dimmer colour from the point they were broken. Off by default; worth turning on if you trade the retest of a failed block rather than the block itself.
Only the last InpObLast blocks are drawn, five by default.
What's switched off
Fair value gaps with a threshold in ATR terms, mitigation by close or wick, overlap hiding, a mid-line, and an option to show them as breakers instead. Swing failure patterns with an optional volume filter. Buyside and sellside liquidity as areas or levels. A sweep liquidation zone that marks where a sweep resolved within InpZoneThresh bars. Candle colouring by trend, and a zigzag mapping line over the structure.
Turning all of it on at once gives you an unreadable chart. That's true of every tool in this category and it's why they all ship with most of it off.
| A structure indicator | An order block indicator | This | |
|---|---|---|---|
| BOS / CHoCH | Yes | No | Yes, two algorithms |
| Wick sweeps marked separately | Rarely | No | Yes, the x marks |
| Order blocks | No | Yes | Yes, with real volume figures |
| Breakers | No | Sometimes | Optional, for both OB and FVG |
| Liquidity zones | No | No | Optional |
| Alerts | Varies | Varies | CHoCH, BOS, sweep, OB touch |
Where it's weak
The activity bars are decorative. As above. It's the first thing I'd want a buyer to know.
Notifications are off by default. noti_type starts at none. The four alert switches โ CHoCH, BOS, sweep and order-block touch โ do nothing until you set it.
Structure confirms late, by design. A pivot of length 5 isn't known until five bars after it forms, so a leg appears five bars after the swing that defines it. Everything downstream inherits that delay.
It is object-heavy. Structure legs, labels, dots, boxes and lines are all chart objects, and this chart carried around seven hundred of them at the defaults on 400 bars. InpWindowBars, InpSwingLimit, InpObLast and InpMaxScan all exist to keep that in hand. On a slow machine, lower them before you blame the terminal.
Volume is tick volume by default. InpVolSrc can switch to real volume where the broker provides it, which on most CFD feeds it doesn't. The order-block figures are therefore trade counts, not size.
Blocks can span the whole chart. A block that has never been mitigated keeps extending, so an old one can stretch across the entire visible history. That's correct behaviour and it does make the chart look busier than the recent action justifies.
There's no ranking. Five blocks are shown and nothing says which of them matters. The volume share percentage is the closest thing to a ranking and it measures the origin bar, not the block's subsequent behaviour.
Questions you'll have
What are the two bars inside an order block? Cosmetic. They advance on a fixed alternation every bar and carry no market information. The volume figure beside the block is real.
Does it repaint? Structure is confirmed by pivots that need InpMsLen bars either side, so legs appear late rather than moving. Blocks are removed when mitigated. Nothing on a closed bar is rewritten.
What's the difference between BOS and CHoCH? BOS is a break in the direction of the existing structure, CHoCH is a break against it.
What does the small x mean? A swing taken out by a wick without a close beyond it โ liquidity taken rather than structure broken.
Why am I not getting alerts? noti_type defaults to none. Set it, then choose which of the four events you want.
Can I keep broken order blocks on the chart? Yes, turn on breakers. Same option exists for fair value gaps.
Is the volume figure the volume traded inside the block? No. It's the volume of the single bar the block was built from, and the percentage is that bar's share of the total across the blocks shown.
How do I make it lighter? Lower InpObLast, InpSwingLimit and InpWindowBars, and leave the optional sections off.
Can an EA read it? The candle colouring and the liquidity-grab prints are buffers. Structure, blocks and zones are chart objects.
Best timeframe? H1 and H4. On M5 the five-bar pivot produces structure faster than it can mean anything.
MT4? Both platforms are included, one download each. Same structure logic, same blocks, same options.
Support
Send me a message with a screenshot, the symbol and the timeframe, and I'll tell you what the tool was doing on that bar.
Analysis tool. It places no trades and makes no profitability claim. Past price behaviour is not a guide to future price behaviour.