A multi-timeframe smart money concepts engine built exclusively for Bitcoin. This indicator combines order blocks, fair value gaps, liquidity sweeps, break of structure, and premium discount zone analysis into one backtest-verified, non-repainting strategy — every signal you see in history is exactly what you would have seen live.
Built by a former quantitative analyst from a US-based systematic fund. The structural logic behind this indicator is the same order flow mechanics that institutional algorithms use to identify and exploit liquidity imbalances — adapted for retail traders on TradingView. At the fund, we did not use RSI or MACD. We tracked where unfilled orders sat, where liquidity clustered, and where price needed to travel to resolve imbalances. That is what Smart Money Concepts formalizes, and that is what this indicator automates.
This is a free, open-source tool. All backtest results below are fully reproducible on your chart with the default settings. No hidden parameters. No curve-fitting. No repainting.
## TWO STRATEGY MODES — CHOOSE YOUR RISK PROFILE
The indicator offers two distinct execution modes built on the same structural foundation. The difference is filter strictness — one prioritizes opportunity, the other prioritizes quality. Both include commissions and slippage in their backtested results, because a backtest without commissions is fiction.
### AGGRESSIVE MODE
Entries fire on any valid Break of Structure (BOS) or Change of Character (CHoCH) confirmed by an order block and fair value gap on the confirmation timeframe. This mode captures more setups, including momentum re-entries and early reversal signals. It accepts a lower win rate in exchange for catching a larger portion of trending moves.
| Metric | Value |
|—|—|
| Total Trades | 55 |
| Win Rate | 49.09% |
| Net P&L | +49.12% |
| Profit Factor | 1.41 |
| Max Drawdown | 14.70% |
A 49% win rate may not sound impressive on the surface. But this is not a coin flip. The 1.41 profit factor means that winning trades meaningfully outweigh losers — the strategy is designed to let winners run through a configurable risk-to-reward ratio. Over 55 trades with real commissions (0.075% per trade) and slippage (3 ticks per order), the system returned nearly 50% on initial capital. That is what positive expectancy looks like in practice.
Mark Douglas wrote that there is a random distribution between wins and losses for any set of variables that define an edge. You do not need to win every trade. You need an edge and the discipline to follow it over a series. This mode is built for that exact mindset.
### SELECTIVE MODE
Adds a premium/discount zone filter on top of all Aggressive conditions. Longs are only permitted in the discount zone of the higher-timeframe dealing range. Shorts are only permitted in the premium zone. This single structural filter cuts the trade count by more than half while dramatically improving signal quality.
| Metric | Value |
|—|—|
| Total Trades | 21 |
| Win Rate | 61.90% |
| Net P&L | +26.92% |
| Profit Factor | 2.347 |
| Max Drawdown | 8.66% |
A profit factor above 2.0 combined with single-digit drawdown is rare for any fully disclosed, non-repainting BTC strategy. The Selective mode achieves both over three full years of data. The tradeoff is fewer trades — 21 versus 55 — which means this mode requires patience. It is designed for traders who prefer waiting for optimal positioning over catching every move.
Both modes are provided so you can evaluate the tradeoff between frequency and precision on your own terms. There is no objectively «better» mode. There is only the mode that matches your risk tolerance and psychological profile.
## ENTRY LOGIC — STEP BY STEP
Every signal is generated through a strict multi-timeframe confluence model. No single condition is sufficient. The indicator requires alignment across structure, zone, imbalance, and liquidity before producing a signal. Here is the full logic for long entries — short entries mirror the process with inverted conditions.
### LONG ENTRY SEQUENCE
**Step 1 — HTF Directional Bias (Break of Structure)**
The Direction Timeframe (default: 4H) detects a bullish break of structure or change of character using swing highs and lows. This establishes the higher-timeframe directional bias. Without bullish structure on the HTF, no long signal can fire. This is the first gate.
**Step 2 — MTF Confirmation (Structural Alignment)**
The Confirmation Timeframe (default: 1H) must confirm with its own bullish BOS or CHoCH, aligning both timeframes in the same direction. This dual-timeframe structural alignment filters out a significant amount of noise and counter-trend traps.
**Step 3 — Order Block Identification**
The script looks back up to the configured OB Lookback Bars to find the last bearish candle before the impulsive bullish move — the order block where smart money accumulated positions. This zone represents an area of institutional demand that is likely to attract price on a revisit.
**Step 4 — Fair Value Gap Validation**
The indicator checks for a bullish fair value gap (the gap between candle 1’s high and candle 3’s low in a three-candle sequence) that overlaps the identified order block zone. An OB alone is a level. An OB combined with an FVG is confluence — two independent structural signals agreeing on the same price zone. This overlap is where the highest-probability entries concentrate.
**Step 5 — Liquidity Sweep Confirmation**
Before the signal can fire, the indicator verifies that a recent liquidity sweep occurred within the configured Sweep Memory window. A liquidity sweep means price dipped below a prior swing low, triggering stop-loss orders and pending sell orders, before reversing. This is the classic ICT stop hunt — institutional participants accumulating liquidity from retail stop-outs. Without this sweep, the setup lacks the liquidity fuel that drives the reversal.
**Step 6 — Premium/Discount Zone Filter (Selective Mode Only)**
In Selective mode, the entry must occur in the discount zone of the HTF dealing range, defined by the P/D Zone Threshold parameter. This ensures longs are taken only when price is trading at a structural discount — the lowest-risk portion of the range.
**Step 7 — Execution**
All conditions are met. The long signal fires on the next confirmed bar. Stop-loss is placed below the order block low minus the SL Buffer percentage. Take-profit is calculated at the configured Risk:Reward Ratio distance from entry. Both levels are plotted visually on the chart.
### SHORT ENTRY SEQUENCE
The short entry mirrors the long with inverted conditions across all seven steps:
1. HTF bearish BOS or CHoCH establishes bearish bias
2. MTF bearish BOS or CHoCH confirms the direction
3. Bearish order block identified (last bullish candle before the sell-off)
4. Bearish fair value gap overlaps the order block zone
5. Liquidity sweep above a prior swing high (stop hunt to the upside)
6. Price in the premium zone of the HTF dealing range (Selective mode only)
7. SL placed above OB high plus buffer; TP calculated at R:R distance below entry
Every step is objective. There is no discretionary component. The indicator either detects the confluence or it does not. This is not chart art — it is structure, codified.
## FEATURES
– Non-repainting, non-lookahead signals — barstate.isconfirmed enforced on all calculations; what you see in history is what you would have seen live
– Multi-timeframe structure analysis — HTF for direction, MTF for confirmation, entry timeframe for execution
– Order block detection with configurable lookback depth and automatic invalidation when price trades through the zone
– Fair value gap multi-zone display — shows up to N unfilled FVGs per direction simultaneously, configurable by maximum count and maximum distance from current price, so you only see the gaps that are structurally relevant to your current timeframe and price action
– Liquidity sweep recognition with adjustable memory window for detecting stop hunts before entries
– Break of Structure (BOS) and Change of Character (CHoCH) detection via swing-point analysis on multiple timeframes
– Premium/discount zone mapping from the HTF dealing range, with configurable threshold for zone extremes
– Automatic trade management — stop-loss and take-profit levels plotted with visual trade boxes on every signal
– Two strategy modes — Aggressive for opportunity-seeking traders, Selective for precision-focused traders
– Fully configurable parameters — every setting is exposed with sensible defaults optimized for BTC 4H
– Built-in strategy engine — run backtests directly in TradingView’s Strategy Tester with your own commission and slippage settings
– Clean chart presentation — signals, zones, and labels are designed for readability on both desktop and mobile
## SETTINGS DOCUMENTATION
**Strategy Mode** — Aggressive / Selective
Aggressive uses the full confluence model: BOS/CHoCH + Order Block + FVG + Liquidity Sweep. Selective adds the premium/discount zone filter on top of everything. If you are new to smart money concepts, start with Selective — fewer signals, but each one carries stronger structural backing.
**Direction TF (HTF)** — Default: 240 (4H)
The higher timeframe that establishes directional bias through structural breaks. Increase to Daily (1440) for fewer, higher-conviction signals on larger moves. Decrease to 60 (1H) for more responsive structure detection on shorter swings.
**Confirmation TF (MTF)** — Default: 60 (1H)
The mid timeframe that confirms HTF bias before any entry can trigger. Must be lower than or equal to the Direction TF. The default 240/60 pair provides a 4:1 ratio that balances responsiveness with structural reliability.
**Swing Length** — Default: 10 | Range: 3-50
The number of bars used to identify swing highs and swing lows for structural analysis. Lower values increase sensitivity (more BOS/CHoCH signals, more noise). Higher values detect only major structural shifts. The default of 10 is balanced for BTC on the 4H timeframe.
**OB Lookback Bars** — Default: 15 | Range: 3-30
How far back the script searches for a valid order block after a structural break is detected. Smaller values yield higher precision but may miss valid blocks that formed earlier. Larger values capture more blocks but increase the risk of the OB being partially mitigated.
**Sweep Memory** — Default: 20 bars | Range: 5-50
The lookback window for detecting a liquidity sweep before confirming an entry. If valid sweeps are being missed on your asset or timeframe, increase this value. If you want tighter sweep-to-entry timing, decrease it.
**Risk:Reward Ratio** — Default: 2.0 | Range: 1.0-5.0
Determines take-profit placement relative to stop-loss distance. At 2.0, the TP is placed twice the SL distance from entry. Higher values produce larger winning trades but lower win rates. Always re-run the backtest after changing this setting to understand the impact on overall expectancy.
**SL Buffer %** — Default: 0.3 | Range: 0.0-2.0
A buffer added beyond the order block boundary for stop-loss placement, designed to prevent wick stop-outs on volatile assets like BTC. At 0.3%, a $100,000 OB low places the stop-loss at $99,700.
**P/D Zone Threshold** — Default: 0.80 | Range: 0.50-0.85 | Selective Mode Only
Controls how deep into the premium or discount zone price must be for an entry to qualify. At 0.80, longs require price to be in the bottom 20% of the HTF range and shorts require the top 20%. At 0.50, the indicator uses standard equilibrium (above/below 50%). This parameter is ignored in Aggressive mode.
**Max FVGs per Side** — Default: 5 | Range: 1-10
Controls how many unfilled fair value gaps are displayed per direction (bullish and bearish independently). At 5, the chart shows up to 5 active bullish FVGs and 5 active bearish FVGs simultaneously. Lower values reduce visual clutter on smaller timeframes. Higher values provide more structural context on higher timeframes where gaps may persist longer. When the limit is reached, the oldest FVG is removed to make room for the newest one.
**FVG Max Distance %** — Default: 8.0 | Range: 1.0-25.0
FVGs whose midpoint is further than this percentage from the current price are automatically hidden. This keeps the chart focused on structurally relevant gaps — a gap at 85K is not actionable when price is at 97K. On higher timeframes or during high-volatility periods, increase this value to retain wider context. On lower timeframes or in tight ranges, decrease it to keep only the nearest gaps visible.
**Show Trade Boxes** — On / Off
Toggles the visual boxes that display entry, stop-loss, and take-profit levels for each signal. Green boxes indicate long positions. Red boxes indicate short positions.
## CONCEPTS EXPLAINED
For traders learning smart money concepts, here is a plain-language breakdown of every structural element this indicator uses.
**Order Blocks (OB)**
An order block is the last opposing candle before a significant impulsive move. In a bullish scenario, it is the last bearish candle before a strong rally. Institutional traders place large orders at these levels during accumulation or distribution phases, creating zones where price is statistically likely to react when it returns. Order blocks are the foundation of SMC entry models — they represent where smart money positioned itself.
**Fair Value Gap (FVG)**
A fair value gap is a three-candle price imbalance where a gap exists between candle 1’s high (or low) and candle 3’s low (or high). In a bullish FVG, candle 2 moved so aggressively that it left a gap between candle 1’s high and candle 3’s low. These gaps represent areas where price moved too fast for orders to fill completely. Markets tend to return to these inefficiencies to rebalance. When an FVG overlaps an order block, you have two independent structural signals pointing to the same zone — that is high-probability confluence.
**Break of Structure (BOS)**
A break of structure occurs when price moves beyond a prior swing high (bullish BOS) or swing low (bearish BOS) in the direction of the prevailing trend. It signals continuation — the trend is intact and expanding. This indicator uses BOS detection on both the higher timeframe and the confirmation timeframe to ensure structural alignment before entries.
**Change of Character (CHoCH)**
A change of character is a structural break against the prevailing trend, signaling a potential reversal. In a downtrend, a CHoCH occurs when price breaks above the most recent lower high. This is significant because it is the first objective signal that sellers may be losing control. The indicator treats CHoCH as a valid trigger alongside BOS, allowing entries on both trend continuations and early reversals.
**Liquidity Sweep**
A liquidity sweep occurs when price briefly pushes beyond a key structural level — a swing high or swing low — to trigger clustered stop-loss orders and pending orders, then reverses. This is a core ICT concept. Institutional participants need liquidity to fill large positions, and retail stop-losses provide that liquidity. The sweep-and-reverse pattern is one of the most reliable structural signals in price action analysis. This indicator requires a confirmed sweep before any entry signal fires.
**Premium and Discount Zones**
The premium/discount zone model divides the higher-timeframe dealing range into two halves using the 50% equilibrium level. The upper half is the premium zone — where price is expensive relative to the range, favoring short positions. The lower half is the discount zone — where price is cheap relative to the range, favoring long positions. The Selective mode narrows this further using the P/D Zone Threshold, requiring entries at the extremes of these zones for maximum positional advantage.
## HOW TO USE THIS INDICATOR
**Step 1 — Add to Chart**
Add the indicator to any BTCUSDT chart. The default settings are optimized for the 4H timeframe on Binance data, but the logic works on any Bitcoin pair and can be adapted to other timeframes by adjusting the Direction TF, Confirmation TF, and Swing Length parameters.
**Step 2 — Choose Your Mode**
Open Settings and select either Aggressive or Selective mode. Aggressive generates more signals and captures more of the trend. Selective generates fewer, higher-quality signals with tighter risk control. If you are still learning smart money concepts, Selective mode provides a cleaner read because every signal has maximum structural confluence.
**Step 3 — Read the Signals**
Entry arrows appear directly on the chart when all confluence conditions are met. Green arrows indicate long entries. Red arrows indicate short entries. Stop-loss and take-profit levels are plotted as horizontal lines extending from each signal.
**Step 4 — Enable Trade Boxes**
Turn on Show Trade Boxes in Settings for a clear visual representation of each trade’s risk and reward. The box spans from entry to TP, with the SL level marked. This makes it easy to evaluate the risk-reward ratio of each signal at a glance.
**Step 5 — Run the Strategy Tester**
Open TradingView’s Strategy Tester panel to verify the backtest results on your chart and data. Set commission and slippage to match your exchange’s actual fees. The default commission of 0.075% per trade represents Binance taker fees. Adjust if you trade on a different exchange.
**Step 6 — Adjust Settings Carefully**
If you modify parameters, change one at a time and re-run the backtest after each change to understand the isolated impact. The default settings are the product of extensive testing — they are not arbitrary. Move away from them deliberately, not casually.
**Step 7 — Combine with Your Own Context**
This indicator provides structural signals based on smart money concepts. It does not account for fundamental catalysts, macroeconomic events, or on-chain data. Use these signals as one input within your broader analytical framework. The strongest results come from traders who combine structural signals with their own understanding of market context.
**Step 8 — Manage Risk**
No indicator guarantees profits. Size your positions according to your account size and risk tolerance. Never risk more than you can afford to lose on a single trade. The backtest results represent historical performance under specific conditions — live trading introduces variables that backtests cannot fully capture.
## BACKTEST CONDITIONS — FULL TRANSPARENCY
Every number published here is reproducible. Load the indicator with default settings on BTCUSDT 4H and open the Strategy Tester. Here are the exact conditions:
– Symbol: BTCUSDT (Binance)
– Timeframe: 4H
– Period: January 2023 through February 2026 (3+ years of data)
– Initial Capital: $10,000
– Order Size: 100% of equity per trade
– Commission: 0.075% per trade (Binance taker fee)
– Slippage: 3 ticks per order
– Non-repainting: barstate.isconfirmed enforced on all signal calculations
– No lookahead bias: lookahead = barmerge.lookahead_off on all request.security() calls
– No future leakage: entries execute on the bar after all conditions are confirmed
Sample sizes are moderate — 55 trades for Aggressive, 21 for Selective. The Selective mode’s 21 trades in particular should be supplemented with forward-testing on live data to build stronger statistical confidence. Both modes are provided so you can evaluate the frequency-versus-quality tradeoff with full transparency.
Past performance under specific historical conditions does not guarantee future results. Markets evolve. Volatility regimes shift. The only honest way to evaluate any strategy is continuous forward-testing alongside historical backtesting.
## DISCLAIMER
This indicator is published for educational and informational purposes only. It is not financial advice, investment advice, or a recommendation to buy or sell any asset.
Trading Bitcoin and other financial instruments involves substantial risk of loss. Leverage, volatility, exchange downtime, liquidity gaps, and other real-world factors can significantly impact live performance versus backtested results.
You should carefully consider your financial objectives, level of experience, and risk appetite before trading. Never trade capital you cannot afford to lose. You are solely responsible for your own trading decisions and their outcomes.
The author makes no guarantees about the accuracy, completeness, or reliability of this indicator or its signals. Use it at your own risk.
—
**Suggested Tags:** `smartmoneyconcepts` `orderblocks` `fairvaluegap` `bitcoin` `ICT` `BOS` `liquidez` `bloques` `accionprecio`
—
## VERSION EN ESPANOL (Resumen)
Para la documentacion completa, consulta la seccion en ingles arriba. A continuacion, un resumen de los puntos clave.
—
### Que es SMC Pro BTC [DOE]
Motor de smart money concepts multi-temporal construido exclusivamente para Bitcoin. Combina bloques de ordenes, fair value gaps, barridos de liquidez, rupturas de estructura y zonas premium/descuento en una sola estrategia verificada por backtest, sin repintado y de codigo abierto. Desarrollado por un ex-analista cuantitativo de un fondo sistematico en Estados Unidos — la misma mecanica de flujo de ordenes que usan los algoritmos institucionales, adaptada para traders retail en TradingView.
Todos los resultados son reproducibles con los ajustes por defecto. Sin parametros ocultos. Sin sobreajuste.
### Dos Modos de Estrategia
**Modo Agresivo** — Entradas en cualquier BOS/CHoCH valido confirmado por bloque de ordenes + FVG + barrido de liquidez. Mas operaciones, mayor exposicion a movimientos tendenciales.
| Metrica | Valor |
|—|—|
| Total de Trades | 55 |
| Win Rate | 49.09% |
| P&L Neto | +49.12% |
| Factor de Beneficio | 1.41 |
| Drawdown Maximo | 14.70% |
**Modo Selectivo** — Agrega filtro de zona premium/descuento. Longs solo en zona de descuento, shorts solo en zona premium. Menos operaciones, mayor calidad por senal.
| Metrica | Valor |
|—|—|
| Total de Trades | 21 |
| Win Rate | 61.90% |
| P&L Neto | +26.92% |
| Factor de Beneficio | 2.347 |
| Drawdown Maximo | 8.66% |
Ambos modos incluyen comisiones (0.075%) y slippage (3 ticks) en los resultados. No hay un modo objetivamente mejor — solo el que se ajusta a tu perfil de riesgo.
### Como Usar
– **Agrega el indicador** a cualquier chart BTCUSDT (optimizado para 4H, Binance). Selecciona modo Agresivo o Selectivo en Configuracion.
– **Lee las senales:** flechas verdes = largo, flechas rojas = corto. Activa Show Trade Boxes para ver entrada, SL y TP visualmente. Los FVGs activos se muestran como zonas en el chart — configura cuantos quieres ver y a que distancia maxima del precio con Max FVGs per Side y FVG Max Distance %.
– **Verifica con el Strategy Tester:** abre el panel de Strategy Tester de TradingView, ajusta comisiones y slippage a las tarifas de tu exchange, y confirma los resultados en tu propio chart.
– **Gestiona tu riesgo:** ningun indicador garantiza ganancias. Dimensiona posiciones segun tu cuenta y tolerancia al riesgo. Combina estas senales con tu propio analisis fundamental y de contexto de mercado.
### Condiciones del Backtest
BTCUSDT (Binance) | 4H | Enero 2023 – Febrero 2026 | Capital: $10,000 | 100% equity por trade | Comision: 0.075% | Slippage: 3 ticks | Sin repintado (barstate.isconfirmed) | Sin lookahead bias | Sin filtracion futura.
### Aviso Legal
Este indicador se publica con fines educativos e informativos unicamente. No constituye asesoria financiera ni recomendacion de compra o venta. Operar Bitcoin implica riesgo sustancial de perdida. Nunca operes con capital que no puedas permitirte perder. El rendimiento pasado no garantiza resultados futuros. Usalo bajo tu propio riesgo.
![SMC Pro BTC – ICT Order Blocks & FVG [DOE] — Strategy by DOE_Trade — TradingView SMC Pro BTC – ICT Order Blocks & FVG [DOE] — Strategy by DOE_Trade — TradingView](https://i3.wp.com/s3.tradingview.com/x/x87Yg2AN_big.png?w=1021&resize=1021,580&ssl=1)






