Fractal Breakout Pro Dual Wick Body Signals Filter
- Indicadores
- Versão: 1.34
- Ativações: 5
Fractal Breakout Pro MT5
Dual Wick and Body Signals with 17 Confirmation Filters
Custom MetaTrader 5 indicator for confirmed fractal breakouts. It plots wick and body arrows, optional active level lines, and alerts by popup, sound, push, and email. Filters are optional and combined with AND logic.
PRODUCT TYPE
Type: Custom technical indicator (not an Expert Advisor)
Platform: MetaTrader 5
Window: Chart window
Plots: 4 arrows (Buy Wick, Sell Wick, Buy Body, Sell Body)
Version: 1.34
Use: Manual analysis and signal confirmation
This tool does not open, close, or manage trades.
WHAT IT DOES
The indicator finds confirmed Bill Williams style fractals, stores the wick price and the body price of each fractal, then waits for a later close to break that level. If the enabled filters agree, an arrow is drawn and that side is turned off until a new fractal appears.
Signal 1 (Wick): close breaks the fractal high or low wick. Earlier trigger, more signals.
Signal 2 (Body): close breaks the fractal candle body. Later trigger, stronger close.
You can enable one signal type or both. Body breakout is the stricter reading of the same idea.
WHY THIS DESIGN HELPS
Two breakout definitions in one indicator, so you can compare early wick breaks with conservative body breaks on the same chart.
Seventeen optional filters. Only the filters you turn on must pass. Unused filters stay off and do not affect arrows.
Confirmed fractals. A peak or trough is accepted only when the center bar is strictly higher or lower than N bars on both sides. Default N = 2 (classic 5-bar fractal).
Optional horizontal lines show the unused fractal high and low, so the break price is visible.
Alerts fire on the newly closed bar and can use popup, WAV sound, MetaQuotes push, and email.
HOW THE ENGINE WORKS
1. Confirm fractal highs and lows with InpFractalBars on the left and right.
2. Store two prices per fractal: wick = High or Low; body = max(Open, Close) for a high, or min(Open, Close) for a low.
3. On later bars, wait for Close to break the stored level.
4. If filters pass, plot the matching arrow and deactivate that side.
5. Draw lines for any wick level that is still active.
6. When a new bar starts, check the just-closed bar and send alerts if arrows exist there.
ARROW PLOTS
Buy Signal 1 (Wick): Aqua up arrow under the low
Sell Signal 1 (Wick): Red down arrow above the high
Buy Signal 2 (Body): DodgerBlue up arrow under the low
Sell Signal 2 (Body): OrangeRed down arrow above the high
Arrow codes are 233 and 234. Distance and thickness are inputs.
COMPLETE INPUT GUIDE
Names below match the Inputs tab.
Signal Settings
InpEnableSignal1 (true) - Enable wick breakout arrows.
InpEnableSignal2 (true) - Enable body breakout arrows.
Arrow Settings
InpArrowDistance (30) - Offset from the candle, in points. Increase on gold, indices, or crypto if arrows cover wicks.
InpArrowSize (2) - Visual thickness, 1 to 5.
Fractal Settings
InpFractalBars (2) - Bars required on both sides of the candidate high or low.
2 = classic 5-candle fractal (2 left + center + 2 right).
3 to 5 = fewer, larger swings on H1 to D1.
1 = more sensitive and more noise. Not recommended on M1 to M5.
A fractal is confirmed only after InpFractalBars candles have closed to the right.
Visual Settings
InpShowFractalLines (true) - Draw lines at the active unused fractal wick high and low.
InpColorFractalHigh (Yellow) - Fractal high line color.
InpColorFractalLow (Aqua) - Fractal low line color.
InpLineWidth (1) - Line thickness.
InpLineStyle (STYLE_DASH) - Solid, dash, dot, dash-dot, or dash-dot-dot.
When a valid breakout uses a side, that line is removed until a new fractal on that side is confirmed.
Alert and Notification
InpAlertPopup (true) - Terminal popup.
InpAlertSound (true) - Play a WAV from the MT5 Sounds folder.
InpAlertSoundFile ("alert.wav") - File name only. Place custom files in the terminal Sounds folder.
InpAlertPush (true) - Push to the MetaQuotes ID in Tools > Options > Notifications.
InpAlertEmail (false) - Email via SendMail. Configure SMTP in Tools > Options > Email first.
Alert text example:
FB BUY Signal 1 (Wick) | EURUSD PERIOD_H1 | Price: 1.08500
Alerts run once per newly closed bar. History is not flooded on first attach.
FILTER MODULES
All filters default to false. Enable only what you understand.
Logic is AND: every enabled filter must agree, or no arrow is drawn.
Do not enable all filters at once. The chart will print almost no signals.
RSI Cross Filter
Use_RSI_Cross_Filter (false)
Buy when RSI crosses up through Oversold.
Sell when RSI crosses down through Overbought.
This is a cross event, not only "RSI is below 30".
RSI_Length (14)
RSI_Price_Source (PRICE_CLOSE)
Oversold (30.0)
Overbought (70.0)
ADX Filter
Use_ADX_Filter (false)
Both sides require ADX greater than or equal to ADX_Min_Level.
ADX_Period (10)
ADX_Min_Level (20.0)
Use this to hide breakouts in weak, directionless ranges. Try 25 to 30 if you want only stronger trend conditions.
Single MA Filter
Use_MA_Filter (false)
Buy if Close is above the MA. Sell if Close is below the MA.
MA_Period (50)
MA_Method (MODE_SMA)
MA_Shift (0)
Applied price is Close.
Ichimoku Senkou Span B Filter
Use_Ichimoku_Filter (false)
Uses Senkou Span B (Ichimoku buffer 3).
Buy if Close is above Senkou B under that candle.
Sell if Close is below Senkou B.
Ichimoku_SenkouB (52)
Ichimoku_Kijun (26)
Tenkan is the standard 9 inside the handle.
RSI 75 Filter
Use_RSI75_Filter (false)
Separate long-period RSI.
Buy if RSI(RSI_Filter_Period) is above 50.
Sell if it is below 50.
RSI_Filter_Period (75)
Uses RSI_Price_Source from the RSI Cross group.
Double MA Filter
Use_DoubleMA_Filter (false)
Buy if MA_A is above MA_B. Sell if MA_A is below MA_B.
MA_A: period 30, EMA, Close, shift 0 by default.
MA_B: period 140, EMA, Close, shift 0 by default.
Awesome Oscillator Filter
Use_AO_Filter (false) - master switch. Then enable any mix of the three sub-filters.
Use_AO_Volume_Filter (false) - Buy if AO >= AO_Buy_Min (4.0). Sell if AO <= AO_Sell_Max (-4.0).
AO is in price units. Recalibrate per symbol. Gold and indices need different values than FX majors.
Use_AO_Color_Filter (false) - Buy if AO is rising. Sell if AO is falling.
Use_AO_Zero_Filter (false) - Buy if AO is rising and above 0. Sell if AO is falling and below 0.
Parabolic SAR Filter
Use_SAR_Filter (false)
Buy if Close is above SAR. Sell if Close is below SAR.
SAR_Step (0.02)
SAR_Maximum (0.2)
Heiken Ashi Filter
Use_HeikenAshi_Filter (false)
Heiken Ashi open and close are calculated inside the indicator.
Buy if HA Close is above HA Open.
Sell if HA Close is below HA Open.
CCI Trend Filter
Use_CCI_Filter (false)
Buy if CCI is above 0. Sell if CCI is below 0.
CCI_Period (50)
CCI_Applied (PRICE_CLOSE)
CCI OB and OS Filter
Use_CCI_OBOS_Filter (false)
Buy if CCI is above CCI_Overbought (100).
Sell if CCI is below CCI_Oversold (-100).
CCI_OBOS_Period (14)
CCI_OBOS_Applied (PRICE_CLOSE)
This accepts stretched momentum. It is not a "buy oversold" filter. Use it on purpose.
RVI Trend Filter
Use_RVI_Filter (false)
Buy if RVI is above 0. Sell if RVI is below 0.
RVI_Period (75)
RVI Signal Filter
Use_RVI_Signal_Filter (false)
Buy if RVI main is above RVI signal. Sell if RVI main is below RVI signal.
RVI_Signal_Period (20)
MACD Signal Filter
Use_MACD_Filter (false)
Uses histogram = MACD main minus signal.
Buy if histogram is above 0. Sell if histogram is below 0.
MACD_FastEMA (12)
MACD_SlowEMA (26)
MACD_SignalSMA (9)
MACD_Applied (PRICE_CLOSE)
MACD Level 0 Filter
Use_MACD_Zero_Filter (false)
Buy if MACD main is above 0. Sell if MACD main is below 0.
Shares the same MACD handle. You can enable both MACD filters.
Support and Resistance Filter
Use_SR_Filter (false)
Looks back SR_Period bars for the recent extreme low (support) and extreme high (resistance).
Buy only if the current bar touches or crosses the support zone.
Sell only if the current bar touches or crosses the resistance zone.
SR_Period (50)
SR_Zone_Points (80) - zone width in points.
Zone = SR_Zone_Points * _Point. Recalibrate for 3-digit, 5-digit, gold, and index quotes.
Fibonacci Filter
Use_Fib_Filter (false)
Maps a recent swing high and low with a ZigZag-style search, then builds a zone between Fib_Level_1 and Fib_Level_2.
Both buy and sell require the current candle to overlap that zone.
Fib_Level_1 (0.382)
Fib_Level_2 (0.618)
ZigZag_Depth (12)
ZigZag_Deviation (5) - minimum improvement in points
ZigZag_Backstep (3)
If no valid swing pair is found, both sides are blocked for that bar.
HOW TO USE
Step 1. Attach
Insert the indicator on any MT5 symbol and timeframe. Start with M15, H1, or H4 so fractals have room.
Step 2. Choose the signal family
Early trigger: Signal 1 on, Signal 2 off.
Conservative close: Signal 1 off, Signal 2 on.
Study both: leave both on, then treat Body arrows as the stricter tag.
Step 3. Leave all filters off first
Watch raw arrows and the two level lines for several sessions. Learn how often wick versus body prints on your symbol.
Step 4. Add only 1 to 3 filters
Example trend stack: Single MA or Double MA + ADX + SAR or Heiken Ashi.
Example momentum stack: MACD histogram + RSI 75 + AO color and zero.
Example level stack: S/R touch + Fibonacci zone + RSI cross.
Example cloud stack: Senkou B + Double MA + MACD zero.
Step 5. Set alerts on demo first
Enable popup and sound. Add push after the MetaQuotes ID works. Email last.
Step 6. Your own execution rules
The indicator does not place stops or targets. A common manual plan is: wait for the signal candle to close, invalidate back inside the broken fractal, and manage the trade with the next opposite fractal line, a fixed multiple, or a trailing method such as SAR.
Step 7. Timeframe notes
M1-M5: FractalBars 2, expect noise, consider Heiken Ashi and ADX.
M15-H1: default fractal, MA 50 or Double MA 30/140.
H4-D1: FractalBars 2 or 3, RSI 75, Senkou B, MACD zero.
POINTS AND DIGITS
InpArrowDistance and SR_Zone_Points are points, not pips.
On 5-digit EURUSD, 80 points = 8.0 pips.
On XAUUSD the same number can be too small or too large depending on broker digits. Check the symbol specification.
AO_Buy_Min and AO_Sell_Max are raw AO values, not points. Tune per instrument.
WHAT THIS INDICATOR IS NOT
Not an Expert Advisor or robot.
Not a profit guarantee.
Not a martingale, grid, or recovery system.
Not a multi-symbol dashboard. One chart equals one symbol.
A confirmed fractal does not jump after InpFractalBars have closed to the right.
MACD, Ichimoku, and long RSI need enough history. Load a full chart before judging the first bars.
INSTALLATION
1. File > Open Data Folder in MT5.
2. Copy the file into MQL5\Indicators.
3. Navigator > Indicators > Refresh.
4. Drag onto a chart.
5. No DLL permission is required.
6. Push: Tools > Options > Notifications, enable and add MetaQuotes ID.
7. Email: Tools > Options > Email, configure SMTP.
8. Custom sound: put the WAV in the Sounds folder and type the exact file name.
PRACTICAL NOTES
Save separate templates, for example one scalp set and one swing set.
Review arrows by scrolling the chart. This is an indicator, not a tester EA.
If arrows disappear after you enable filters, that is AND logic, not a defect.
If lines are missing, lines may be off, or both levels were already consumed.
If there is no alert, wait for a new bar after a signal on the closed candle, and confirm the matching alert switch is true.
DISCLAIMER
Trading FX, metals, indices, crypto, and CFDs involves a substantial risk of loss. This indicator provides visual marks and alerts only. Past arrows do not imply future results. Lot size, stop loss, news handling, and broker conditions remain your responsibility. Test on a demo account until you understand every switch you enabled.
SUPPORT
Use the product comments or MQL5 messages. Please send symbol, timeframe, a screenshot, and the input group you changed.
Thank you for using Fractal Breakout Pro MT5. Read the level, confirm with filters, and keep risk first.
