+1 888 340 6572

Miscellaneous > Fibonacci Retrace



File Includes:

Indicator - ELD Fibonacci Retrace

Category: Indicator > Miscellaneous


The Fibonacci indicator will use the popular retracement levels to determine support and resistance points in the chart.

In the 13th century, Leonardo Fibonacci, an Italian mathematician, wrote a very influential book called 'Liber Abaci' (book of calculations). One small section of the book described several number sequences, one of them what we currently know as fibonacci number sequence.

The sequence begins 1,1,2,3,5,8,13,21,34,55 and extends to infinity. Each number after 1 is the sum of the two preceding numbers. Using this number series, Fibonacci numbers yielded important ratios that are prevalent in art, architecture, nature and many other areas.

The ratios of alternate numbers fluctuate narrowly around 2.618 or .382, which is its inverse. Many believe that these ratios can be used in technical analysis, so this indicator will calculate the .382 retracement levels. This is done by determining market direction by using exponential averages, and then calculating the highand low values of the last 50 bars for the current pull back.


This indicator is best used in intra-day lower time compressions (example: 15 minute bars or smaller) or daily charts in order to give it more time to develop. Otherwise, with larget intra-day time frames the gap from open to close will cause the study to have unexpected results.


Price - Price used to calculate the average
XAvgLen - Number of bars used to calculate the exponential moving average
HiLoLen - Number of bars used to find the highest high and lowest low prices
Retrace - Percent retracement used as a Fibonacci level
SetupLen - The number of bars that a short or long entry order will remain active

EasyLanguage Code:

Inputs: Price(Close), XAvgLen(15), HiLoLen(50), Retrace(.382);
Vars: XAvg(0), HiHi(0), LoLo(0), Retracement(0), BuySetup(0), SellSetup(0);

XAvg = XAverage(Price, XAvgLen);
HiHi = Highest(High, HiLoLen);
LoLo = Lowest(Low, HiLoLen);

Retracement = (HiHi - LoLo) * Retrace;

Plot1(XAvg, "XAverage");
Plot2(HiHi - Retracement, "HRetrace");
Plot3(LoLo + Retracement, "LRetrace");