Introduction
Fibonacci retracement instruments are among the many strongest technical evaluation devices accessible to merchants. The My Fibonacci MT5 indicator brings this basic software into the trendy buying and selling period with enhanced options and seamless Knowledgeable Advisor integration particularly designed for MetaTrader 5.
This superior indicator robotically identifies vital swing factors utilizing good ZigZag filtering, attracts adaptive Fibonacci ranges based mostly on market volatility, and gives complete knowledge output via 20 devoted buffers for full EA integration.
Key Options
Automated Swing Detection: Good ZigZag algorithm with configurable parameters
Adaptive Ranges: Mechanically adjusts Fibonacci ranges based mostly on market volatility
Superior Filtering: Quantity validation and good swing filtering choices
EA Integration: 20 knowledge buffers for full Knowledgeable Advisor entry
Multi-Timeframe Assist: Works throughout all timeframes and symbols
Customizable Look: Absolutely configurable colours and line types
Enter Parameters
Primary Settings
Fibonacci Title – Distinctive identifier for the article
Principal Line Shade – Shade of the Fibonacci trendline
Default Ranges Shade – Shade of the Fibonacci ranges
Ray Extension – Extends Fibonacci ranges to the suitable (set to true for MT5 right-side placement)
ZigZag Configuration
Depth, Deviation, BackStep – Normal ZigZag parameters
Leg Choice – Select which swing leg to make use of for Fibonacci drawing
Superior Options
Adaptive Ranges – Allow/disable volatility-based degree adjustment
Quantity Validation – Add quantity affirmation to swing factors
Good Swing Filtering – Filter out insignificant swings utilizing ATR
Adaptive Degree Colours – Shade-code ranges based mostly on significance
Min Swing Measurement – Minimal swing dimension as ATR multiplier
ATR Interval – Interval for Common True Vary calculations
Quantity Interval – Interval for quantity averaging
Fibonacci Ranges
Absolutely customizable Fibonacci ranges together with customary (23.6, 38.2, 50, 61.8, 100%) and extension ranges (127.2, 161.8, 261.8%)
EA Integration Technical Particulars
The My Fibonacci MT5 indicator gives 20 knowledge buffers for Knowledgeable Advisor integration, providing full entry to all Fibonacci calculations and market state info.
Buffer Construction
| Buffer # | Title | Description | Worth Kind |
|---|---|---|---|
| 0 | Fibo_0_Buffer | 0% Fibonacci degree | Worth |
| 1 | Fibo_236_Buffer | 23.6% Fibonacci degree | Worth |
| 2 | Fibo_382_Buffer | 38.2% Fibonacci degree | Worth |
| 3 | Fibo_500_Buffer | 50% Fibonacci degree | Worth |
| 4 | Fibo_618_Buffer | 61.8% Fibonacci degree | Worth |
| 5 | Fibo_100_Buffer | 100% Fibonacci degree | Worth |
| 6 | Fibo_1618_Buffer | 161.8% Fibonacci degree | Worth |
| 7 | Fibo_Direction_Buffer | Development route (1=up, -1=down) | Integer |
| 8 | Market_Volatility_Buffer | Excessive volatility flag (1=true, 0=false) | Boolean |
| 9 | Active_Levels_Buffer | Variety of lively Fibonacci ranges | Integer |
| 10 | Update_Signal_Buffer | Fibonacci replace sign (1=up to date) | Boolean |
| 11 | Distance_Nearest_Buffer | Distance to nearest degree in factors | Double |
| 12 | Nearest_Level_ID_Buffer | ID of nearest Fibonacci degree | Integer |
| 13 | Price_Position_Buffer | Worth place between swings (0-1) | Double |
| 14 | Touch_Signal_Buffer | Degree contact sign (0=none, 1=contact, 2=bounce, 3=break) | Integer |
| 15 | SR_Strength_Buffer | Assist/Resistance power (0-10) | Double |
| 16 | Volume_Confirm_Buffer | Quantity affirmation (1=confirmed) | Boolean |
| 17 | MTF_Confluence_Buffer | Multi-timeframe confluence issue | Double |
| 18 | Success_Rate_Buffer | Historic success fee at present degree | Double |
| 19 | Risk_Reward_Buffer | Danger/Reward ratio at present place | Double |
Accessing Buffer Information in EA
To entry the Fibonacci knowledge in your Knowledgeable Advisor, use the iCustom operate with the suitable buffer quantity:
// EA integration instance
double GetFibonacciLevel(int bufferIndex)
{
return iCustom(_Symbol, _Period, “My Fibonacci MT5”,
“MyFibonacci_MT5_v11”, clrRed, clrAqua, true, // Primary settings
12, 5, 3, 1, // ZigZag settings
true, false, true, false, 0.3, 14, 20, // Superior options
0.0, 23.6, 38.2, 50.0, 61.8, 78.6, 100.0, 127.2, 161.8, 261.8, // Ranges
bufferIndex, 0); // Buffer and shift
}
// Instance utilization
double fibo618 = GetFibonacciLevel(4); // Get 61.8% degree
double route = GetFibonacciLevel(7); // Get development route
double touchSignal = GetFibonacciLevel(14); // Get contact sign
Sensible EA Implementation Instance
Here is a whole instance of methods to use the Fibonacci knowledge in a buying and selling EA:
//+——————————————————————+
//| FibonacciEA.mq5 |
//| Copyright 2024, My Fibonacci MT5 |
//| aan.isnaini@gmail.com |
//+——————————————————————+
#property copyright “Copyright 2024, My Fibonacci MT5”
#property hyperlink “aan.isnaini@gmail.com”
#property model “1.00”
#property strict
// Enter parameters
enter double LotSize = 0.1;
enter int StopLossPoints = 50;
enter int TakeProfitPoints = 100;
enter int MagicNumber = 12345;
// Buffer references
enum FIBO_BUFFERS {
BUFFER_0, // 0%
BUFFER_236, // 23.6%
BUFFER_382, // 38.2%
BUFFER_500, // 50%
BUFFER_618, // 61.8%
BUFFER_100, // 100%
BUFFER_1618, // 161.8%
BUFFER_DIR, // Course
BUFFER_VOLAT, // Volatility
BUFFER_LEVELS, // Lively ranges
BUFFER_UPDATE, // Replace sign
BUFFER_DIST, // Distance to nearest
BUFFER_NEAREST, // Nearest degree ID
BUFFER_POS, // Worth place
BUFFER_TOUCH, // Contact sign
BUFFER_STR, // S/R power
BUFFER_VOL, // Quantity affirmation
BUFFER_MTF, // MTF confluence
BUFFER_SUCCESS, // Success fee
BUFFER_RR // Danger/Reward
};
//+——————————————————————+
//| Knowledgeable initialization operate |
//+——————————————————————+
int OnInit()
{
return(INIT_SUCCEEDED);
}
//+——————————————————————+
//| Knowledgeable deinitialization operate |
//+——————————————————————+
void OnDeinit(const int purpose)
{
}
//+——————————————————————+
//| Knowledgeable tick operate |
//+——————————————————————+
void OnTick()
{
// Examine for brand spanking new bar
static datetime lastBarTime;
datetime currentBarTime = iTime(_Symbol, _Period, 0);
if(lastBarTime == currentBarTime) return;
lastBarTime = currentBarTime;
// Get Fibonacci knowledge
double touchSignal = GetFiboData(BUFFER_TOUCH);
double route = GetFiboData(BUFFER_DIR);
double successRate = GetFiboData(BUFFER_SUCCESS);
double rrRatio = GetFiboData(BUFFER_RR);
double nearestLevel = GetFiboData(BUFFER_NEAREST);
// Buying and selling logic
if(touchSignal >= 1 && successRate > 60 && rrRatio > 1.5)
{
if(route > 0 && (nearestLevel == BUFFER_382 || nearestLevel == BUFFER_618))
{
// Purchase at help with good success fee and R/R
OpenTrade(ORDER_TYPE_BUY);
}
else if(route < 0 && (nearestLevel == BUFFER_382 || nearestLevel == BUFFER_618))
{
// Promote at resistance with good success fee and R/R
OpenTrade(ORDER_TYPE_SELL);
}
}
// Examine for exit circumstances
CheckForExits();
}
//+——————————————————————+
//| Get Fibonacci knowledge from indicator |
//+——————————————————————+
double GetFiboData(FIBO_BUFFERS buffer)
{
return iCustom(_Symbol, _Period, “My Fibonacci MT5”,
“MyFibonacci_MT5_v11”, clrRed, clrAqua, true,
12, 5, 3, 1,
true, false, true, false, 0.3, 14, 20,
0.0, 23.6, 38.2, 50.0, 61.8, 78.6, 100.0, 127.2, 161.8, 261.8,
buffer, 0);
}
//+——————————————————————+
//| Open a commerce |
//+——————————————————————+
void OpenTrade(ENUM_ORDER_TYPE orderType)
{
double value = (orderType == ORDER_TYPE_BUY) ? Ask : Bid;
double sl = (orderType == ORDER_TYPE_BUY) ? value – StopLossPoints * _Point : value + StopLossPoints * _Point;
double tp = (orderType == ORDER_TYPE_BUY) ? value + TakeProfitPoints * _Point : value – TakeProfitPoints * _Point;
MqlTradeRequest request = {0};
MqlTradeResult outcome = {0};
request.motion = TRADE_ACTION_DEAL;
request.image = _Symbol;
request.quantity = LotSize;
request.sort = orderType;
request.value = value;
request.sl = sl;
request.tp = tp;
request.magic = MagicNumber;
request.remark = “My Fibonacci MT5 EA”;
OrderSend(request, outcome);
}
//+——————————————————————+
//| Examine for exit circumstances |
//+——————————————————————+
void CheckForExits()
{
for(int i = PositionsTotal() – 1; i >= 0; i–)
{
ul ticket = PositionGetTicket(i);
if(PositionGetInteger(POSITION_MAGIC) == MagicNumber)
{
// Add your exit logic right here
}
}
}
//+——————————————————————+
Superior EA Methods
The excellent knowledge offered by My Fibonacci MT5 allows refined buying and selling methods:
1. Fibonacci Bounce Technique
// Enter on bounce from key Fibonacci ranges (38.2%, 50%, 61.8%)
if(touchSignal == 2 && (nearestLevel == BUFFER_382 || nearestLevel == BUFFER_500 || nearestLevel == BUFFER_618))
{
// Extra affirmation: quantity and volatility
if(GetFiboData(BUFFER_VOL) > 0 && GetFiboData(BUFFER_VOLAT) > 0)
{
OpenTrade(route > 0 ? ORDER_TYPE_BUY : ORDER_TYPE_SELL);
}
}
2. Breakout Technique
// Enter on breakout of Fibonacci degree with quantity affirmation
if(touchSignal == 3 && GetFiboData(BUFFER_VOL) > 0)
{
// Use MTF confluence for extra affirmation
if(GetFiboData(BUFFER_MTF) > 1.5)
{
OpenTrade(route > 0 ? ORDER_TYPE_BUY : ORDER_TYPE_SELL);
}
}
3. Volatility-Based mostly Place Sizing
// Alter place dimension based mostly on market volatility
double volatilityFactor = GetFiboData(BUFFER_VOLAT) ? 0.5 : 1.0;
double adjustedLotSize = LotSize * volatilityFactor;
Optimization Suggestions
Parameter Optimization: Take a look at totally different ZigZag settings (Depth, Deviation, BackStep) on your particular image and timeframe
Degree Sensitivity: Alter the minimal swing dimension based mostly on the image’s common true vary
Timeframe Mixture: Use larger timeframe Fibonacci ranges for extra vital help/resistance
Quantity Filter: Allow quantity validation in high-impact buying and selling classes
Conclusion
The My Fibonacci MT5 indicator gives merchants with a professional-grade Fibonacci software that seamlessly integrates with Knowledgeable Advisors. With its 20 knowledge buffers, adaptive ranges, and good market state detection, it affords all the things wanted to create refined Fibonacci-based buying and selling programs.
Whether or not you are constructing a easy bounce technique or a fancy multi-timeframe confluence system, My Fibonacci MT5 gives the correct, dependable Fibonacci calculations that kind the muse of profitable technical evaluation.