Harmonic Predictor

Harmonic Predictor tries to predict where a harmonic formation might show up in the future. It checks the high/low points on the chart and tries to match them to the first 4 points of the XABCD formation. If there is a match, it estimates at what price level the last point (point D) will appear. And then it draws it with some error margin.

It can detect the Gartley, Butterfly, Bat, Alternate Bat, Crab, Deep Crab, and Cypher.

You can buy access to Harmonic Predictor on our website: www.patternshunters....monic-predictor.html

It works nicely with the Harmonic Scanner:
Release Notes:
Version 1.2: Alerts, new configuration options, and stability improvements

  • You can now add alerts to get a notification when a new prediction appears.
  • You can disable specific patterns. For example, if you only want to see predictions of "Gartley Up" or "Cypher Down," you can disable all the other patterns.
  • Configurable line style. You can select between the solid, dotted, or dashed lines. This is useful when you have both the predictions and actual patterns (from our harmonic scanner indicator) on the same chart. To avoid confusion - change the line style of predictions to dots or dashes, and it will be immediately obvious which line is a prediction and which is an actual pattern.
  • Configurable "Move charts" option - you can select by how many percent you want to move charts that are hiding each other. This is useful when you use a small interval where moving charts by 1% of a total price will move them too much.
  • Added "Shark" predictions. It's disabled by default because it has much "looser" requirements than other patterns and would show up much more often than other predictions. Shark formation uses different points for determining the retracement levels (compared to other patterns), so it was not enabled in the initial release of this indicator. Now, all the patterns can be predicted: Gartley, Butterfly, Bat, Alternate Bat, Crab, Deep Crab, Shark, and Cypher
  • Indicator is much more stable for smaller intervals. Before, when you used a short interval (seconds or minutes), the script crashed almost immediately after the first few bars. Now it should work much better. However, it might still crash from time to time - that's when it's referencing points from the past that TradingView discards when new bars are added to the chart. If this happens, refresh the page or hide and show the indicator again (also, decrease the "Number of points to check" for better performance). If you are using 1H or a larger interval, you probably won't see this problem at all.
Release Notes:
Version 1.2.1: Tiny cosmetic changes to the configuration options. Disabled the "move charts" option by default (as it was confusing to some users), and groups check boxes and select options in the "Display" section for better clarity.
Release Notes:
Version 1.3: Configurable retracement levels and displaying the retracement values for each pattern found.

  • Added 88 checkboxes to the options that allow you to disable any retracement level that you don't want to use. That way, you can configure which retracements you wish to use (because maybe you have your own preference over what the literature proposed). For example, if you are looking for a "Perfect Bat Pattern" (described in "Harmonic Trading Volume 1" by Scott Carney), you can enable the 0.382 retracement level for XAB, 0.5 and 0.618 for ABC, 2.0 for BCD and 0.886 for XAD leg and disable all other retracement levels for Bat pattern.
  • The new "Show retracement levels?" option displays the retracement levels for each pattern found. You can see the exact values of XAB, ABC, and other pattern legs displayed directly below the pattern name. The same information is also displayed when you hover your mouse cursor over the label with the pattern name (no matter if the "Show retracement levels?" option is enabled or disable). This is useful when labels are hard to read because they are on top of each other. You might be wondering - why the BCD and XAD retracements show a range of values (for example, 1.207-1.333)? That's because the actual value depends on where the point "D" will be located. And the prediction doesn't say: "Point D will be located exactly at $76.10 price", but instead, it says: "Point D will be located around $76.10 - give or take 5% (or whatever error margin you set in the settings)". So the exact values of retracements BCD and XAD depend on where point D is located.
  • Improved accessibility by adding options to change the color of the labels and text. If you don't like (or don't see well) the default black text on a red (sell pattern) or green (buy pattern) background, you can change those colors.
  • Updated default of "Depth of a zigzag pattern" from 6 to 10 (it's a better default value for any interval).
Release Notes:
Version 1.3.1: Bug fixes for some bugs that I introduced yesterday ;)
Release Notes:
Version 1.3.1 Stability and performance improvements

The script should no longer throw the "Pine cannot determine the referencing length of a series" error, and the "Loop is too long (> 200 ms)" error should happen much less often.
Release Notes:
Version 1.4 Custom alert messages, configurable error tolerance per each leg and possibility to ignore some predictions.

  • You can now put a custom alert message. How to do this? When adding a new alert, in the "Condition" field select "Harmonic Scanner Pro", and then in the next select box, you can choose between "Any alert() function call" (this is the standard alert that was available before) and "Alert with custom message" (this one lets you put a custom alert message). This feature is useful if you use external bots for trading. You can specify your bot's URL and a custom message that this bot will use.
  • You can now set error tolerance per each leg of the pattern. By default, the "Error tolerance (in %)" configuration option is used for all legs. But in the "Custom error tolerance for each leg" configuration section, you can specify error tolerance for a given leg (don't forget to enable the checkbox to make that custom error tolerance actually work).
  • You can now ignore predictions above or below a certain threshold using the "Ignore predictions that are ..." section. You can use it, for example, to ignore predictions of price cash that are higher than 90% (by setting "Above (in %)" to 90) or to ignore very small potential price movements that are 10% or less (by setting "Below (in %)" to 10). Leave both values at "0" to not ignore any predictions.
  • Each prediction now displays the potential price movement in % (apart from the retracement values of each leg). This will make it easier to see the potential gain from a given prediction.
  • Changed default ZigZag depth to 20, as it's a better default value than 10.
  • Fixed bug where sometimes the prediction would be displayed even though it was already negated
Release Notes:
Version 1.4.1

Tiny bug fix - ranges for the retracement levels were not in ascending order (so instead of 1.5-1.6, they were sometimes displayed as 1.6-1.5)
Release Notes:
From now on, you can request the trial using a form linked in the "Author's instructions" section (it's a much faster way than writing a comment and waiting).
Release Notes:
Updated link to the trial form in the "Author's instructions" section.

You can find more information about our scripts at
Invite-only script

Access to this script is restricted to users authorized by the author and usually requires payment. You can add it to your favorites, but you will only be able to use it after requesting permission and obtaining it from its author. Contact PatternsHunters for more information, or follow the author's instructions below.

TradingView does not suggest paying for a script and using it unless you 100% trust its author and understand how the script works. In many cases you can find a good open-source alternative for free in our Community Scripts.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Author's instructions

You can buy access to the script through our website: www.patternshunters....m/harmonic-predictor For a free 7-day trial, please fill in this form: www.patternshunters....predictor-trial-form

Want to use this script on a chart?

Warning: please read before requesting access.