Simplified version of the popular ZigZag indicator. The algorithm runs significantly faster, does not use intermediate calculation buffers, does not contain nested cycles and, therefore, does not redraw itself. The indicator only has one parameter to be configured, which is very important during optimization of expert advisors that use it as basis.
Automation of many graphical constructions, including simple ones like channels, trends (higher highs / lower lows) or Fibo grids, requires defining a "refined movement", i.e. price passing from local minimum to local maximum and from local maximum to local minimum.
This task is efficiently solved by ZigZag indicator included in the standard MetaTrader delivery set.
However, conventional ZigZag has a number of drawbacks.
In particular:
Having all this in mind, I have developed a much simpler algorithm of defining refined movements.
The proposed algorithm

The indicator solves the task visually by highlighting local maximums and minimums and plotting refined passes between them.

This tool allows you to develop a simple EA based on Fibo corrections. One of the provided screenshots displays clearly recognizable trend and correction movements which is critical for developing an EA using Fibo corrections.
Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/15970
AutoFibAutoTrend
The indicator plots price channel and Fibonacci levels based on the latest ZigZag peaks.
dTrend_HTF
The dTrend indicator with the timeframe selection option available in input parameters.