Symmetry ZigZag, a simple symmetry ZigZag

The typical ZigZag repaints. That's to say, the newest leg may change after new bar constructs. And even worse, the second newest leg may change well. For example, the latest two legs may merge together if both are swing high or swing low. Repainting ZigZag is helpful to determine the price movement, but I'm not sure it is accurate to detect swing high and low. Thus I roll out my own Symmetry ZigZag, which is non-repainting for the second newest leg.

How Symmetry ZigZag works

It's quite simple. The indicator accepts only one parameter, the “depth”. Then it counts all possible swing high and low. A bar is swing high when “depth” bars before and after the bar are lower than the bar's high. A bar is swing low when “depth” bars before and after the bar are higher than the bar's high.

A swing spike can be only determined after both left and right legs are constructed, that's how I call it symmetry.

How Symmetry ZigZag looks

Below is a screenshot in MT4, of EURUSD H1, with Symmetry ZigZag of depth 9.

Is Symmetry ZigZag any useful?

I tested several strategies based on Symmetry ZigZag in my ftap algorithm trading system, no one works well. I'm not sure if it's because of the indicator or the strategies. But that's normal to me because I don't think anybody can find holy grail.

One of the biggest problem of Symmetry ZigZag is it's too laggy. The newest leg will only be formed after there are at least “depth * 2” bars after the previous swing spike. In other words, there is possible “depth * 2” newest bars without any leg.

I would use Symmetry ZigZag as a start point rather than a useful indicator. There are some potential to improve it, such as use adaptive depth. If you have any good idea, let me know.

Click here to download MT4 MQL version Symmetry ZigZag

The MT4 indicator is free to use, feel free to give me your any feedback. :-)


Enter your comment. Wiki syntax is allowed: