Pattern object definitions and functions. Easily draw and keep track of patterns, legs, and points.
Supported pattern types (as of Version 1): Type Leg validation # legs "xabcd" Direction 3 or 4 (point D not required) "zigzag" Direction >= 2 "free" None >= 2
erase_label(this) Delete the point label Parameters: this: Point Returns: Void
draw_label(this, position, clr, transp, txt_clr, txt, tooltip, size) Draw the point label Parameters: this: Point position clr transp txt_clr txt tooltip size Returns: line
leg_init(a, b, prev, next, line) Initialize a pattern leg Parameters: a: Point A (required) b: Point B (required) prev: Previous leg next: Next leg line: Line Returns: New instance of leg object
erase(this) Delete the pattern leg Parameters: this: Leg Returns: Void
erase(this) Parameters: this
draw(this, clr, style, transp, width) Draw the pattern leg Parameters: this: Leg clr: Color style: Style ("solid", "dotted", "dashed", "arrowleft", "arrowright") transp: Transparency width: Width Returns: line
leg_getLineTerms(this) Get the slope and y-intercept of a leg Parameters: this: Leg Returns: [slope, y-intercept]
leg_getPrice(this, index) Get the price (Y) at a given bar index (X) within the leg Parameters: this: Leg index: Bar index Returns: Price (float)
pattern_init(legs, tp, name, subType, pid) Initialize a pattern object from a given set of legs Parameters: legs: Array of pattern legs (required) tp: Pattern type ("zigzag", "xabcd", or "free". dft = "free") name: Pattern name subType: Pattern subtype pid: Pattern Identifier string Returns: New instance of pattern object, if one was successfully created
pattern_init(points, tp, name, subType, pid) Initialize a pattern object from a given set of points Parameters: points tp: Pattern type ("zigzag", "xabcd", or "free". dft = "free") name: Pattern name subType: Pattern subtype pid: Pattern Identifier string Returns: New instance of pattern object, if one was successfully created
point A point on the chart (x,y) Fields: x: Bar index (x coordinate) y label
leg A pattern leg (point A to point B) Fields: a: Point A b deltaX deltaY prev next retrace line
pattern A pattern (set of at least 2 connected legs) Fields: legs type subType name pid
In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House rules.
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.