INVITE-ONLY SCRIPT

# Harmonic Patterns Pro

Hello All,

We need to make things better & better to solve the puzzle and I try to do my best on this way for the community. now I am here with my Harmonic Patterns Pro script.

Harmonic Pattern recognition is the basic and primary ability any trader develops in technical analysis. Harmonic pattern recognition takes extensive practice and repetitive exposure. in general chart patterns are categorized into “continuous” and “reversal” patterns. Harmonic patterns construct geometric pattern structures using Fibonacci sequences. These harmonic structures identified as specified harmonic patterns provide unique opportunities for traders, such as potential price movements and key turning or trend reversal points. This script is developed to find following patterns by using the options you set. I have to say that this is not a strategy and you should not use this script blindly, instead, I strongly recommend you to create your own strategy using this script with other tools/indicators, such moving averages, Support/Resistance levels, volume indicators, sentiment indicators etc.

- Following Harmonic Patterns are available in this version:
-->Gartley
-->Butterfly
-->Bat
-->Crab
-->Shark
-->Cypher
-->Alternate Bat
-->Deep Crab
-->5-0
-->3-Drive
-->AB=CD
-->Descending Triangle
-->Ascending Triangle
-->Symmetrical Triangle
-->Double Top
-->Double Bottom

How the script works and finds harmonic patterns:
- It uses zigzag like other harmonic pattern script but there is a difference. this scripts searches up to 200 bars, finds/creates up to 200 XABCD using zigzag waves and searches predefined harmonic patterns
- It can find multiple harmonic patterns on a candles with different sizes and lengths
- Each pattern is shown using its own color (you can set 8 different colors)
- it shows Entry, Target1, Target2 and Stop-loss levels for each found Patterns
- It shows pattern validation zones for each found pattern
- it has all-in-one alerts. you set the alerts you want in the indicator options and you create only 1 alert for each symbol.
- it has prediction future and it can show many predicted patterns at the same time, each predicted patterns validations zones are shown separately
- While on real-time bar it searches and shows patterns for the visible area

it has followng alerts:. these in all-in-one alerts. it means that you choose the alerts in the options and enables any of them and then create only one for each symbol. and you get eany alert you choose. ("Any alert() function call"). in this version "Any alert() function call" alert is only alert you can use, if I get some requests I can try to other alerts as well.
New Pattern Found
Pattern Updated
Entered Position
Reached Target
Stop-loss

Validation zone is calculated using XABC points any pattern by using Y-Axis error rate. so if you increase Y-Axis error rate then the script can find much more Harmonic patterns.

X-Axis Error Rate is used for a few pattern such AB=CD for the distance of AB wave and CD wave.

The script can show Recommended Entry, Target 1, Target 2 and stop-loss levels for each active patterns. of course you can use these levels or you can set your own levels. you can see the screenshot below.

The script can show statistics panel. when statistic panel is enabled then no pattern is shown on the chart, the script shows ONLY statistics panel. This was done because of complexity of the script.

If you enables Prediction then pattern checks all possible XABC formations in the last 200 bars and finds/shows predicted patterns if there is any.

if you "replaying" then the script searches patterns only for last bar (if any update on zigzag on last bar), not for historical ones. you should take care while you use "Replay" feature of Tradingview

Now lets see the options:
Minimum ZigZag Period: this is minimum Zigzag Period to create new Zigzag wave. default value is 10 and minimum value is 4
Y-Axis Error Rate %: this is the error rate to create validation zones for each pattern, there is almost no perfect pattern, so we try to create a zone using error rate
X-Axis Error Rate % : this is used for a few pattern (such AB=CD) to check wave lengths on time basis
Minimum Pattern Length: This is Minimum Length for the Patterns to be searched. in Number of Bars
Maximum Pattern Length: This is Maximum Lengths for the Patterns to be searched. in Number of Bars
Max Number of XABCD to search: Maximum Number of ABCD to search pattern on each move, there are many possible XABCDs on the chart, this limitation is the number for how many of them will be searched
Find Patterns for: is the option about taking position. there are three options: "Long and Short", "Only Long", "Only Short"
Max Patterns on Each Bar: Maximum Number of Patterns that can be found on each bar, by default it's 3
Keep Pattern Until: you have two option "Target1" and "Target2". when a pattern found and if it reach any of these targets it is accepted as it's reached target and removed. this is also used inthe statictics panel!
Show Recommended Entries & Targets: if enabled then the script can show "Recommended" Entry, target1, target2 and stop-loss leves. you can use these levels or you can use your own calculation for each pattern
Entry = % of Target 2: Entry Level for each pattern is calculated using the distance between D positon of the pattern and target 2. by default it's 16%, you can set it as you wish
Entry&Target Line Style: you can set line style for entry/target/stop-loss levels
Show Pattern Validation Zones: as explained above, for each pattern validation zone is created using error rate (Y-axis error rate). you can see it for each pattern
Source for Invalidation: this source is used for validation zones. there is two options: Close or High/Low. this source is used while invalidated the pattern. by default it used "close" price as source
Line Style: this is line style for validation zones, solid, dashed or dotted
Pattern Prediction/Possible Patterns: if you enable this option then the script calculates/searches possbile patterns and shows their levels in a label if there is one or more
Show Label & Zone: this is about how you want to see predictions, there are two choices: "Show Only Label", "Show Label & Zone"
Show Statistics Panel: if you enable this option then the script starts searching all harmonic patterns from the first bar for the last bar and keeps statistics for all of them and the shows in a table. you can see screenshot below
Panel Position: you can set panel location of statistics panel using this option
Show Rates Between Waves: if you enable this option then rate between the waves are shown. by default it's enabled
Keep Last Pattern on the Chart: if you enable this option then even if pattern is invalidated/reach target/stop-loss it stays on the chart until new pattern is found. by default it's enabled
Line Style: line style for the last pattern on the chart
Patterns to Search: you have options to enable/disable the patterns listed above to find&show, you can enable/disable any pattern in the list. by default all patterns are enabled except AB=CD pattern
in the ALERTS menu you have many options to enable/disable the alerts you want. Alerts contain Symbol name, Pattern name, Direction as Long/Short, Recommended Entry, Targets, SL levels.
- New Pattern Found
- Pattern Updated
- Entered Position
- Reached Target
- Stop-loss

Show Zig Zag: if you want to see Zig Zag then you should enable this option, and you can set the colors for the Zig zag. by default it's disabled.
and some other options for coloring and line styles of the patterns..

This is how XABCD points found using zigzag waves, I tried to explain it in the video below:

Validation zones and Entry, Target1, Target2 and Stop-loss levels:

Each pattern has its own color, you can see which levels, letters, lines etc belongs to which pattern:

Pattern prediction: you can enable it and change its background color:

How Statistics panel looks like. if there is active pattern then it's shown in different color in the table

This screenshot shows how the script finds and shows multiple patterns on a candle:

And some examples for triangles and Double top/bottom patterns:
Symmetrical triangle:

Ascending triangle:

Double bottom

and many others..

While using different time frames the script can find same patterns, in the following screenshots you can see how same patterns found on 5 and 10 min chart. of course this depends on the Zigzag Period

in this video, the idea and the indicator options is explained:

I can say that this is very complex script and it takes very long time to develop. I used my all programming ability and Pine ability to develop it. I hope you like it and make a lot of profit.

DISCLAIMER: No sharing, copying, reselling, modifying, or any other forms of use are authorized for the documents, script / strategy, and the information published with them. This informational planning script / strategy is strictly for individual use and educational purposes only. This is not financial or investment advice. Investments are always made at your own risk and are based on your personal judgement. I am not responsible for any losses you may incur. Please invest wisely.

Enjoy!

- On each update, the Indicator will have release number. example: Harmonic Patterns Pro Update 01 => "HPPu01". so you can see if you're using updated version.
- A few improvement in some algorithms
--> "Include Custom Message" (If you choose this option then Detailed Alert messages includes your long/short custom messages)
--> "Only Custom Message" (If you choose this option then you get only your custom alert messages on each alert)
- "Percent Profitable" and "Profit Factor" columns added into the Statistics Panel!. Important: please keep in mind that these values are calculated approximately and may have differences from real values!
- "Reached Target" Alert changed to => "Reached Target 1" and "Reached Target 2"
P.S. I'm going to publish a video about how to set & use custom alerts as soon as possible.

- "Timezone/UTC" option added. Because of we can not get chart timezone you need to enter your chart timezone using this option. The timezone is used while calculating recent bars and also it's used for the Alerts. so it's impotant to be set correctly.
- Added an option for coloring prediction line (it was same color with the prediction label)
- Some improvements in the algorithm
- "Show Statistics Panel" menu was put upper in the options
- Default value of "Max Patterns for each Bar" set to 2
- New advanced Customizable Alert Messages Added! You can change the custom alert messages as you want now. For each signal you can set Long / Short custom messages using following Placeholders:
-- {{ticker}} : if you use this in custom message then you get ticker info. example: AAPL, EURUSD, BTCUSD, and ESTX50
-- {{time}} : if you use this in custom message then you get the time the alert fired. 12:02:45, 21:32:53 (UTC need to be set correctly to get correct time)
-- {{close}} : if you use this in custom message then you get closing price when the alert triggered
-- {{timeframe}} : if you use this in custom message then you get chart time frame
-- {{pattern}} : if you use this in custom message then you get the Pattern name which the alert got triggered
-- {{entry}} : if you use this in custom message then you get Entry level of the Pattern
-- {{target1}} : if you use this in custom message then you get Target 1 level of the Pattern
-- {{target2}} : if you use this in custom message then you get Target 1 level of the Pattern
-- {{stoploss}} : if you use this in custom message then you get Stop-loss level of the Pattern

For each alert, these custom messages set by the indicator when you add it to your chart and then you can change the custom messages as you want. you can get 1 alert for same events, for example if there are 3 new different patterns found then the alert for the last found pattern is triggered.

Some examples:
Custom message for the new short pattern alert:
{{ticker}}, {{timeframe}}, {{time}}, {{pattern}}, New Pattern, Short, Close: {{close}}, Recommended: Entry: {{entry}}, T1: {{target1}}, T2: {{target2}}, SL: {{stoploss}}
BTCUSD, 5S, 11:16:48, Shark, New Pattern, Short, Close: 38326.12, Recommended: Entry: 38321.42, T1: 38218.01, T2: 38129.43, SL: 38396.67

Custom message the Reached Target 1 alert for Long:
{{ticker}}, {{timeframe}}, {{time}}, {{pattern}}, Reached Target 1, Long, Close: {{close}}, T1: {{target1}}
BTCUSD, 5S, 11:16:48, Shark, Reached Target 1, Long, Close: 38326.12, T1: 38218.01

Custom message the Stop-loss alert for Short:
##{{ticker}}##, {{timeframe}}, {{pattern}}, Short, Stop-loss: {{stoploss}
##BTCUSD##, 60, 20:16:48, Bat, Short, Stop-loss: 37322.71

- Added new "Included Bars" option for Statistics Panel and it has two options: "All Available Bars" and "Use Starting Date". Now you can set Starting Date for the Statistics Panel (you can see the screenshot below)
- Total Bars that is used for Statistics Panel is now shown (you can see the screenshot below)
- Short words are used for Statistics Panel Headers and now its size is smaller (you can see the screenshot below)
-- T1 => Target 1
-- T2 => Target 2
-- PP => Percent Profitable
-- PF => Profit Factor
-- SL => Stop-loss

- Fixed the typo at one of the custom messages
- A few improvement

How to set specific date to start calculating Statistics Panel:
1. Under the "Statistics" menu, set "Included Bars" => "Use Starting Date"
2. Set Year, Month and Day

Headers in Statistics Panel is shorter and the panel is smaller in size now. also you can see the number of the bars that is used for Statistics panel

- Upgraded to Pine Version 5! New library feature of Pine v5 used. many functions improved.
- Pattern calculation method improved!. with this new and improved calculation method, we have slightly better performance/results!.
- Predicted Patterns feature greatly improved. now you have option to see nearest predicted pattern! (not only label anymore). you have three option under Predicted Patterns menu, you can see predicted pattern and Label, only Pattern, only Label. also D point of Predicted pattern moves forward on each bar automatically!. (you can see a screenshots below)
- Entry/Target1/Target2/Stop-loss labels changed as En/T1/T2/SL. (you can see a screenshot below)
- Distances between Entry/Targets/Stop-loss labels for each pattern is now adjusted automatically by security's minimum tick info. (you can see a screenshot below)
- In Cypher pattern there are two different usage of XAC rate. (1.130 -1.414 or 1.272-1.414). now you have option to choose one of these rates. "1.130 -1.414" by default. (you can see a screenshot below)
- Direction of each formed pattern added to the name of the pattern as triangle up/down. so when a pattern formed, you will be able to see if it's Bullish or Bearish. (you can see a screenshot below)
- Prediction area is now shown as a zone and you can change its color. (was shown with lines). (you can see a screenshot below)
- X-Axis error rate removed from the options. because it is used for very few patterns and a bit confusing for some users sometimes.

Predicted Pattern and Label: (by default)

Predicted Pattern only (without label):

Prediction Label Only (without Pattern):

New Entry/Target1/Target2/Stop-loss Labels:

Pattern direction for each Pattern:

New Cypher XAC rate option:

--> White Swan
--> Black Swan
--> Nen Star
--> Anti-Gartley
--> Anti-Butterfly
--> Anti-Bat
--> Anti-Crab
--> Anti-Shark
--> Anti-Cypher
--> Anti-Nen Star

- Panel size option added for the Statistics Panel : Tiny, Small, Normal, Large. default value is Small
- Patterns are categorized under 3 menu options:
--> Standard Patterns (Gartey, Butterfly, Bat, etc)
--> Non-Standard Patterns (Double Stop/Bottom, Head & Shoulders etc)
--> Others Patterns (White/Black Swan, 5-0 and anti patterns)
- for Head and Shoulders pattern there is an option as Conserv. Conservative meaning that: if you enable it then "Head" is used as stop-loss, otherwise "Right Shoulder" is used as stop-loss
- The patterns prediction now runs for the patterns that is enabled in the options only
- Lines that are used for Entry/Target1/2/Stop-loss organized
- Search Priority option added. you have two options:
--> Standard First: Standard Patterns are searched before Non Standard patterns. search order: Standard Patterns => Non Standard Patterns => Other Patterns
--> Non-Standard First: Non Standard Patterns are searched before Standard patterns. search order: Non Standard Patterns => Standard Patterns => Other Patterns
- Alert Added for "Updated Patterns". After a pattern found if D point moves in validation zone and the pattern gets bigger (extended) then you can get this alert. if you want this alert you should enable it using options.
- Y-Axis Error Rate change as Error Rate in the options
- in Statistics Panel, different colors used for different types
- Many Algorithms greatly improved!

- Pattern coloring algorithm improved
- "Show Active Patterns in a Table" option added to get detailed info for the active patterns. Active Patterns are shown in a table, you can set its position. please see the explanation in the screenshot below.
=> {{br}} : line break. you can use this placeholder to get multi lines alert messages.
=> {{t1profit}} : shows the profit that you can get if the price hits the Target 1 level.
=> {{t2profit}} : shows the profit that you can get if the price hits the Target 2 level.
=> {{loss}} : shows the loss if the price close below the stop-loss level.

Example for using new placeholders:
{{ticker}} {{br}}{{timeframe}} {{br}}{{time}} {{br}}{{pattern}} {{br}}Reached Target 1 {{br}}Profit: {{t1profit}} {{br}}T1: {{target1}}{{br}}
with this custom alert message you get following message:
BTCUSD
60
11:16:48
Shark
Reached Target 1
Profit: 1461.65
T1: 48218.01

Active Patterns Table:

- Target 1 and Target 2 levels can be set by using the options now. by default Target1 level is 40%, Target1 level is 90% and Entry level is 13%
- "Move Stop-loss to Break Even" option added. if you enable it then Stop-loss level moves to Entry level when the price hits Target 1. you can see the screenshot below
- "Dont Search Same Patterns" option added. if you enable it then it doesn't search same pattern (on same direction) until the active one reached the targets or stop-loss. it's enabled by default.
- "Remove Patterns older than" option added. by default it's value 160. if a pattern doesn't reach target2 or stop-loss in 160 bars then it's removed/deactivated. you can change its value as you wish.
- When the Price hits the Entry level or Target 1 level then their line colors get bold. you can see the screenshot below
- Now you can enable/disable Patterns as a group. There are three Pattern groups to enable/disable: Standard Patterns, Non-Standard Patterns, Other Patterns
- Profit Factor calculation algorithm improved. Please keep in mind that Percent Profitable and Profit factor values are calculated approximately!
- While using "Replay" button on historical bars, the indicator can show existing patterns on last 200 bars now. (it was checking only last bar on historical bars)
- It now works on seconds time frames like on other time frames. (on seconds time frames it was checking only last bar)
- "Max Number of XABCD to search" option deprecated as it's unnecessary option at all
- Main algorithm improved

Screenshot for "Move Stop-loss to Break Even" option:

When the price hits the Entry level or Target 1 level then their line colors get bold:

- Fixed the anomalies that may appear when we set "Keep Pattern Until" as Target 1 and changed the Target 2 level.
- Fixed the Entry level calculation
- Percent Profitable and Profit Factor calculation improved slightly

- Minimum value for Target 2 decreased to 15. if you set Entry level smaller than Target1 or set Target1 smaller than Target2 then the indicator uses default values (Entry: 13, Target1: 40, Target2: 94)
- Pattern orders in the Menu and Statistics Panel are same now
- There was a general issue while loading the indicators from Public Library. it's fixed.

- "Stop-loss" menu added. You can choose 3 different types under it:
-- Trailing: if you choose this then Trailing Stop-loss is executed. it has two options:
------ "Execute After": it can execute Trailing stop-loss after the price hits Entry level or Target 1. by default it's Target 1
------ "Initial Level": you can set initial level of Trailing Stop-loss. it's calculated by using the distance between Entry and Target1. For example if you set it 0.8 then 80% of the distance between Entry and Target 1 is used.
------ Tip: While using trailing stop-loss, smaller 'Entry %'' percents may give better results. (for example 5% or less)
-- Break even: When the price hits Target 1 then Stop-loss level is moved between Entry level and Target1. You can set its level by "SL Level %" option.
------ 0% means Entry level
------ 100% means Target 1
------ 50% means middle of Entry and Target 1
-- Default: outer band of the validation zone is used as Stop-loss and it doesn't change.
- "Don't Update the Patterns" option added. if you enable this option and even if there is new high/low in validation zone then the patterns will not be updated. (please see the screenshot below)
- "Conservative" option now can be used for Head and Shoulders and Double Top/Bottom patterns. it can be enabled/disabled for "Non-Standard Patterns". if it's enabled, Head for H&S, Tops/Bottoms for Double Top/Bottom is used as Stop-loss, otherwise Right Shoulder for H&S and middle of the double top/bottom and D point is used. (please see the screenshot below)
- The most recent pattern's Entry/Targets/Stop-loss levels are located nearer now. (please see the screenshot below)
- Main algorithm improved slightly

Trailing Stop-loss moves with new highs/lows:

The most recent pattern's Entry/Targets/Stop-loss levels are located nearer

Conservative and Non-Conservative Stop-loss for Double Top/Bottom

New "Don't Update the Patterns" option

- "Prediction for" option added under Prediction menu. it has the options: Long and Short, Only Long, Only Short. so it can search possible patterns for longs or shorts or both.
- An issue with Stop-loss alert (while "Break even" stop-loss is active) was fixed

New Update: HPPv8.2
- An issue with the timezone value fixed
- "Don't Search Same Patterns" fixed for the patterns that was already deactivated

New Update: HPPv9.0
- "Max Active Patterns" option added. if enabled then the indicator will not to find any new pattern until the active one(s) reached Target(s) or SL. if you set it 1 then there will be only 1 active pattern on the chart
- An issue with the timezone value fixed
- Background color issue for the labels fixed (a few users had an issue)
- Head & Shoulders and Inverse Head & Shoulders patterns now use smaller shoulder as Stop-Loss (if you disable Conservative option for the non-standard patterns)
- "Shaded Patterns" option added under the "Pattern Styles and Colors" menu. it's by default enabled. and you have 2 options under it
-- 1. "Only Last One(s)"
-- 2. "All Patterns"
-- if you choose the first one then only last patterns are painted. if you choose the second one then all patterns are painted. by default "Only Last One(s)" is chosen. you can see the screenshots below
-- also there is Transparency option, by using it you can change Transparency of the colors. it's 70 by default. you can see the screenshots below

if 2 patterns found on the same bar then both patterns get painted:

Transparency is 40 in the following screenshots:

P.S. if "Only last one(s)" was chosen and none of the patterns get painted when you opened a symbol then it means patterns on the chart are not the last patterns and there was at least 1 more pattern after them and it reached targets/SL or was invalidated

- Manual Stop-loss option added under the Stop-loss type menu!. Manual stop-loss is executed when the price hits Entry level. You can set % Stop-loss level by using the option '[Manual] SL Level %'. For example for a bullish pattern, if you set it 1%, stop-loss will be placed 1% below the Entry level when the price hits the entry level. it means new Stop-loss level = Entry level - 0.01 * ClosePrice
=> {{tickerid}} to get symbol name with exchange prefix, e.g. 'BATS:MSFT', 'NASDAQ:MSFT'
=> {{basecurrency}} to get base currency for the symbol. For the symbol 'BTCUSD' base currency is 'BTC'
=> {{t1profitpips}} to get the distance between Entry and Target 1 in Pips
=> {{t2profitpips}} to get the distance between Entry and Target 2 in Pips
- Fixed showing new stop-loss level in the alert message if Break Even stop-loss type enabled

Complete List of The Current Placeholders in Harmonic Patterns Pro:
=> {{ticker}} : Symbol name without exchange. example: AAPL, EURUSD, BTCUSD and ESTX50
=> {{tickerid}} Symbol name with exchange prefix. example: BATS:MSFT, NASDAQ:MSFT
=> {{basecurrency}} Base currency for the symbol. example: for the symbol BTCUSD base currency is BTC
=> {{time}} : The time the alert fired. 12:02:45, 21:32:53 (UTC need to be set accordingly to get the correct time)
=> {{close}} : Closing price (when the alert triggered)
=> {{timeframe}} : Chart time frame
=> {{pattern}} : Pattern name
=> {{entry}} : Entry level of the Pattern
=> {{target1}} : Target 1 level of the Pattern
=> {{target2}} : Target 1 level of the Pattern
=> {{stoploss}} : Stop-loss level of the Pattern
=> {{t1profit}} : The profit that you can get if the price hits the Target 1 level
=> {{t2profit}} : The profit that you can get if the price hits the Target 2 level
=> {{loss}} : The loss if the price close below the stop-loss level
=> {{t1profitpips}} : The distance between Entry and Target 1 in Pips. Profit 1 in Pips
=> {{t2profitpips}} : The distance between Entry and Target 2 in Pips. Profit 2 in Pips
=> {{br}} : Line break. you can use this placeholder to get multi lines alert messages

Some Example Custom Alert Messages by using Placeholders in Harmonic Patterns Pro:
EURUSD, 1, 13:51:16, Shark, Entered Position, Long, Close: 0.97739, Entry: 0.97741, T1: 0.97813, T2: 0.97943, SL: 0.97594, Ticker id: FX:EURUSD, Base currency: EUR, Profit 1 in Pips: 7.2, Profit 2 in Pips: 20.2

BTCUSDT, 2, 13:38:00, Bat, Entered Position, Short, Close: 19227.76, Entry: 19235.4, T1: 19191.6, T2: 19112.76, SL: 19264.24, Ticker id: BINANCE:BTCUSDT, Base currency: BTC, Profit 1 in Pips: 4380

And if you use Line Break {{br}} between each one in the custom alert messages you can get the message like:
Symbol: EURUSD
Ticker ID: FX:EURUSD
Base Currency: EUR
Time frame: 1
Time: 13:22:00
Pattern: Gartley
Direction: Short
Close: 0.97859
Entry: 0.97863
Target 1: 0.9779
Target 2: 0.97659
Stop-loss: 0.98009
Profit 1 in Pips: 7.3
Profit 1 in Pips: 20.4

- 'Reward/Risk' Stop-loss type added!. if you choose 'Reward/Risk' stop-loss type, it's executed when the price hits Entry level. Stop-loss level is calculated by using Reward/Risk ratio and Target 1. For example if you enter 'Reward/Risk' = 2 then distance between Entry level and Target 1 is double of the distance between Entry and Stop-loss level.
- 'Set Targets by Reward/Risk' option added!. Also you have 'Reward/Risk for Target1' and 'Reward/Risk for Target2' options under it. The targets are calculated by using 'Reward/Risk' ratios when the pattern formed. This option can work only if you set Stop-loss type as 'Default'
- {{losspips}} Placeholder added. it gives the distance between Entry and Stop-loss levels in Pips. Loss in Pips
- 'Close Price must be in the Zone' option added. Sometimes when a pattern formed, while D point of the pattern is in Validation Zone, the closing price can be out of this Zone. so if closing price is not in Validation zone then the pattern should not be used sometimes. Enabling this option may decrease the number of the patterns found!.
-'Don't Show XABCD labels' option added under 'Extras' menu. if you enable it, XABCD labels will be not shown on the patterns.

An example for 'Close Price must be in the Zone' condition. in following example while D point is in the Validation zone, Closing price is not in this zone. if you don't want to use such patterns then enable 'Close Price must be in the Zone' option:

Minor Update: HPPv10.1
- Fixed: Stop-loss level was getting default value when "Don't Update the Patterns" option is not enabled and "Reward/Risk" stop-loss type is used, fixed.

- Spread Stop-loss type added. If you choose Spread Stop-loss type, The value "Spread in Pips" is used to locate Stop-loss level when the price hits Entry level. New Stop-Loss level => D point ± [Spread in Pips]. if it's 0 then SL equals D point of the pattern
- Unique ID Placeholder added. if you use {{uniqueid}} in Custom alert message then you can get Unique ID for each pattern
- "Price must be lower/higher than Entry" option added. When a Bullish Pattern formed, closing price may be higher than the Entry level or when a Bearish Pattern formed, closing price may be lower than the Entry level. So the pattern may not be suitable to trade. if you enable this option then these patterns would be deactivated
- Active Patterns in Statistics Table are shown as Black & White for better visualization
- {{open}}, {{high}}, {{low}} Placeholders added. you can use these Placeholders in Custom alert messages to get Open, High, Low then when the alert was triggered.
- Fixed: {{tickerid}} placeholder fixed for Futures
- Fixed: "Dont Update patterns" was not working properly when "Source" under Validation Zone was High/Low. Fixed.
- and a few improvements in new version

- Fixed: The option 'Price must be lower/higher than Entry' option was affecting the Statistics Panel incorrectly. it's fixed now.

Minor Update: HPPv11.2
- Fixed: {{uniqueid}} placeholder wasn't working time to time. Fixed!

- New Alert added for invalidated patterns by the Age. This alert can be used for the patterns that is deactivated because of they reaches maximum age and i that time, they could not have reached Target 1 or Stop-loss after they already hit the Entry level. can be used to close the order. by default maximum pattern age is 160 bars.
- "Can be lower/higher %" option added. Under the Validation Zone menu there is an option 'Price must be lower/higher than Entry'. it's used when a Bullish Pattern formed, closing price may be higher than the Entry level or when a Bearish Pattern formed, closing price may be lower than the Entry level. then the pattern may not be suitable to trade. On the other hand sometimes it may be a good opportunity if closing price is still closer to Entry level. for example you set this option 0.002% and distance between Entry and Closing price is less than 0.002% then the pattern would not be deactivated.
- An issue on Anti-Gartley Patten fixed.

- In Statistics Panel, new data added. "Average number of the bars the price hit" Target1, Target2 and Stop-loss. Please see the screenshot and explanation below
- The frequency for "New pattern found" Alert separated for Standard/Other patterns and Non-Standard patterns, because some users may need the alert triggered immediately for Non-Standard Patterns when a pattern found (such Symmetrical Triangle, Head and Shoulders, Double Top/Bottom etc). Please see the screenshot below
- Added an option to remove the lines for the Patterns and Predicted patterns. This also removes the shading because of there is no lines!. Please see the screenshot below
- The main algorithm slightly improved

New Statistics Panel and explanation for the new data:

The Separated Alert frequency for New pattern found:

New option to remove the pattern lines:

- Release number updated as HPPv11.4

New version: HPPv11.5
its format: yyyy-MM-ddTHH:mm:ssZ
Example output: 2024-04-15T08:45:03Z

New version: HPPv12.0
- Main algorithm improved. now it works faster!
- "Session" option added. Patterns are found only in this session. for example if you set the session as "10:00"-"18:00" then the patterns are searched between 10:00 and 18:00. Patterns may reach entry/targets/stop-loss out of the session, meaning that only search process is done in this session. You should set "Timezone/UTC" accordingly.
- "Show Only Active Patterns" option added under Statistics menu. if you enable it then only active patterns are shown in the Statistics Table.
- Placeholder {{timezone}} changed as {{timenow}}
- Fixed the bug in the alert for "Invalidated by age"
- Fixed the placeholder {{time}}
- Following items moved under Extras menu
-- "Remove Patterns older than"
-- "Don't Search Same Patterns"
-- "Don't Update the Patterns"
-- "Keep Last Pattern on the Chart"

New version: HPPv12.1
- Fixed the bug in Session feature

## 作者的說明

If you want access then please send me message with your request. Thank you! For the Videos: https://www.youtube.com/@lonesometheblue/videos