PINE LIBRARY

lib_pivot

Atualizado
Library "lib_pivot"
Object oriented implementation of Pivot methods.

method tostring(this)
  Converts HLData to a json string representation
  Namespace types: HLData
  Parameters:
    this (HLData): HLData
  Returns: string representation of Pivot

method tostring(this, date_format)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    date_format (simple string)

method tostring(this, date_format)
  Namespace types: Pivot[]
  Parameters:
    this (Pivot[])
    date_format (simple string)

method get_color(this, mode)
  Namespace types: PivotColors
  Parameters:
    this (PivotColors)
    mode (int)

method get_label_text(this)
  Namespace types: Pivot
  Parameters:
    this (Pivot)

method direction(this)
  Namespace types: Pivot
  Parameters:
    this (Pivot)

method same_direction_as(this, other)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    other (Pivot)

method exceeds(this, price)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    price (float)

method exceeds(this, other)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    other (Pivot)

method exceeded_by(this, price)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    price (float)

method exceeded_by(this, other)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    other (Pivot)

method retracement_ratio(this, lastPivot, sec_lastPivot)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    lastPivot (Pivot)
    sec_lastPivot (Pivot)

ratio_target(sec_lastPivot, lastPivot, target_ratio)
  Parameters:
    sec_lastPivot (Pivot)
    lastPivot (Pivot)
    target_ratio (float)

method update(this, ref_highest, ref_lowest)
  Namespace types: HLData
  Parameters:
    this (HLData)
    ref_highest (float)
    ref_lowest (float)

method update(this, bar_time, bar_idx, price, prev)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    bar_time (int)
    bar_idx (int)
    price (float)
    prev (Pivot)

method create_next(this, bar_time, bar_idx, price)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    bar_time (int)
    bar_idx (int)
    price (float)

HLData
  HLData wraps the data received from ta.highest, ta.highestbars, ta.lowest, ta.lowestbars, as well as the reference sources
  Fields:
    length (series int): lookback length for pivot points
    highest_offset (series int): offset to highest value bar
    lowest_offset (series int): offset to lowest value bar
    highest (series float): highest value within lookback bars
    lowest (series float): lowest value within lookback bars
    new_highest (series bool): update() will set this true if the current candle forms a new highest high at the last (current) bar of set period (length)
    new_lowest (series bool): update() will set this true if the current candle forms a new lowest low at the last (current) bar of set period (length)
    new_highest_fractal (series bool): update() will set this true if the current candle forms a new fractal high at the center of set period (length)
    new_lowest_fractal (series bool): update() will set this true if the current candle forms a new fractal low at the center of set period (length)

PivotColors
  Pivot colors for different modes
  Fields:
    hh (series color): Color for Pivot mode 2 (HH)
    lh (series color): Color for Pivot mode 1 (LH)
    hl (series color): Color for Pivot mode -1 (HL)
    ll (series color): Color for Pivot mode -2 (LL)

Pivot
  Pivot additional pivot data around basic Point
  Fields:
    point (Point type from robbatt/lib_plot_objects/5)
    mode (series int): can be -2/-1/1/2 for LL/HL/LH/HH
    price_movement (series float): The price difference between this and the previous pivot point in the opposite direction
    retracement_ratio (series float): The ratio between this price_movement and the previous
    prev (Pivot)
Notas de Lançamento
v2 added methods to generate LineArgs and LabelArgs depending on Pivot mode

Added:
method get_line_args(this, mode, base_line_args)
  Namespace types: PivotColors
  Parameters:
    this (PivotColors)
    mode (int)
    base_line_args (LineArgs type from robbatt/lib_plot_objects/5)

method get_label_args(this, mode, base_label_args, bg_colors)
  Namespace types: PivotColors
  Parameters:
    this (PivotColors)
    mode (int)
    base_label_args (LabelArgs type from robbatt/lib_plot_objects/5)
    bg_colors (PivotColors)
Notas de Lançamento
v3 added reference series into HLData for use in zigzags, added functions to generate LineArgs and LabelArgs based on Pivot mode

Updated:
method get_line_args(this, mode, base_line_args)
  Namespace types: PivotColors
  Parameters:
    this (PivotColors)
    mode (int)
    base_line_args (LineArgs type from robbatt/lib_plot_objects/6)

method get_label_args(this, mode, base_label_args, bg_colors)
  Namespace types: PivotColors
  Parameters:
    this (PivotColors)
    mode (int)
    base_label_args (LabelArgs type from robbatt/lib_plot_objects/6)
    bg_colors (PivotColors)

HLData
  new Fields:
    ref_highest (series float)
    ref_lowest (series float)
    
Notas de Lançamento
v4 fixed calculation error
Notas de Lançamento
v5 added shortcuts for extracting and using HLData via Point Object

Updated:
method update(this, update, prev)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    update (Point type from robbatt/lib_plot_objects/6)
    prev (Pivot)

method create_next(this, update)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    update (Point type from robbatt/lib_plot_objects/6)

HLData
  added Fields:
    h (Point type from robbatt/lib_plot_objects/6)
    l (Point type from robbatt/lib_plot_objects/6)
Notas de Lançamento
v6 update lib_plot_objects to v7
Notas de Lançamento
v7 added default xloc to HLData

Updated:
HLData
  added Fields:
    xloc (series string)
    
Notas de Lançamento
v8 prevent neutral mode for follow up pivots, take opposite of previous direction in case of pivot has same price level as previous
Notas de Lançamento
v9 added variables to tostring for debugging
Notas de Lançamento
v10 added variables to tostring
Notas de Lançamento
v11 auto-position pivot labels depending on mode
Notas de Lançamento
v12 update to lib_plot_objects v8
Notas de Lançamento
v13 changed default colors for HL/LH
Notas de Lançamento
v14 added methods
update_relation: to calculate all values relating to another pivot point
add_next: doing that automatically when adding a Pivot to an array of Pivots

Added:
method update_relation(this, prev)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    prev (Pivot)

method add_next(id, point, max)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (Point type from robbatt/lib_plot_objects/8)
    max (int)
Notas de Lançamento
v15 added same direction check in update_relation
Notas de Lançamento
v16 added functions for management of Pivots in arrays, used to create Zigzag lines

Added:
method update_last(id, update)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    update (Point type from robbatt/lib_plot_objects/8)

method update_last_or_add_next(id, point)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (Point type from robbatt/lib_plot_objects/8)
Notas de Lançamento
v17 simplified initialization of pivot array, updated demo
Notas de Lançamento
v18 improved error messages
Notas de Lançamento
v19 refactored update mechanism of last Pivot[] item
Notas de Lançamento
v20 fine tuned zigzag demo algorithm and unit tests
Notas de Lançamento
v21 updated demo, including dashed lines for unconfirmed last leg
Notas de Lançamento
v22 add direction cast to integer
Notas de Lançamento
v23 removed debug outputs
Notas de Lançamento
v24 update to lib_plot_objects v9
Notas de Lançamento
v25 added shortcut for lib_zig
Notas de Lançamento
v26 updated lib_plot_objects to v10
Notas de Lançamento
v27 added Candle data to HLData for more precise calculation of Zigzag trend change

Updated:
HLData
  HLData wraps the data received from ta.highest, ta.highestbars, ta.lowest, ta.lowestbars, as well as the reference sources
  Fields:
    lowest_candle (Candle type from robbatt/lib_plot_objects/11)
    highest_candle (Candle type from robbatt/lib_plot_objects/11)
    h (Point type from robbatt/lib_plot_objects/11)
    l (Point type from robbatt/lib_plot_objects/11)
Notas de Lançamento
v28 renamed HLData h and l to highest_point and lowest_point, to prevent mixup with highest_candle.h and lowest_candle.l
added candle data to HLData tostring

Updated:
HLData
  HLData wraps the data received from ta.highest, ta.highestbars, ta.lowest, ta.lowestbars, as well as the reference sources
  Fields:
    highest_point (Point type from robbatt/lib_plot_objects/11): data of the highest point within lookback bars
    lowest_point (Point type from robbatt/lib_plot_objects/11): data of the lowest point within lookback bars
Notas de Lançamento
v29 added manual buffer to prevent max_bars_back compiler error, updated to lib_plot_objects using Candle objects
Notas de Lançamento
v30 optimized HLData init, made HLData candle_buffer accessible, added function to get current_candle

Added:
method current_candle(this)
  Namespace types: HLData
  Parameters:
    this (HLData)

Updated:
HLData
  HLData wraps the data received from ta.highest, ta.highestbars, ta.lowest, ta.lowestbars, as well as the reference sources
  Fields:
    candle_buffer (Candle[] type from robbatt/lib_plot_objects/12)
Notas de Lançamento
v31 refactored function signature of retracement_ratio from Pivot.retracement_ration(last_pivot, sec_last_pivot) to (sec_last_pivot, last_pivot) to match other functions and more intuitive usage
Notas de Lançamento
v32 moved runtime error for adding wrong direction Pivot to add_next instead of update_relation
Notas de Lançamento
v33 removed additional check
Notas de Lançamento
v34 update to lib_plot_objects v13
Notas de Lançamento
v35 version bump lib_plot_objects v14
Notas de Lançamento
v36 version bump to lib_plot_objects v15
Notas de Lançamento
v37 added argument to store candle data with pivot

Updated:
method update(this, update, prev, candle)
  Namespace types: Pivot
  Parameters:
    candle (Candle type from robbatt/lib_plot_objects/15)

method create_next(this, update, candle)
  Namespace types: Pivot
  Parameters:
    this (Pivot)
    update (Point type from robbatt/lib_plot_objects/15)
    candle (Candle type from robbatt/lib_plot_objects/15)

method add_next(id, point, max, candle)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (Point type from robbatt/lib_plot_objects/15)
    max (int)
    candle (Candle type from robbatt/lib_plot_objects/15)

method update_last(id, update, candle)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    update (Point type from robbatt/lib_plot_objects/15)
    candle (Candle type from robbatt/lib_plot_objects/15)

method update_last_or_add_next(id, point, max, candle)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (Point type from robbatt/lib_plot_objects/15)
    max (int)
    candle (Candle type from robbatt/lib_plot_objects/15)

Pivot
  Pivot additional pivot data around basic Point
  Fields:
    point (Point type from robbatt/lib_plot_objects/15)
    mode (series int): can be -2/-1/1/2 for LL/HL/LH/HH
    price_movement (series float): The price difference between this and the previous pivot point in the opposite direction
    retracement_ratio (series float): The ratio between this price_movement and the previous
    prev (Pivot)
    candle (Candle type from robbatt/lib_plot_objects/15)
Notas de Lançamento
v38 version bump to lib_plot_objects v16
Notas de Lançamento
v39 version bump lib_plot_objects v17
Notas de Lançamento
v40 version bump lib_plot_objects v18
Notas de Lançamento
v41 version bump lib_plot_objects v19
Notas de Lançamento
v42 Added exceeded_by_any
Notas de Lançamento
v43 update to lib_plot_objects v23
Notas de Lançamento
v44 version bump to lib_plot_objects 25
Notas de Lançamento
v45 update to lib_plot_objects v32 and switch to chart.point objects instead of calculation via x/y coordinates
Notas de Lançamento
v46 version bump lib_plot_objects v33
Notas de Lançamento
v47 version bump lib_plot_objects v34
Notas de Lançamento
v48 version bump lib_plot_objects v35
Notas de Lançamento
v49 version bump to lib_plot_objects v36
Notas de Lançamento
v50 added init function to initialize Pivot arrays on creation, added add_next to directly add Pivot objects

Added:
method init(id)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])

Updated:
method add_next(id, point, candle, max)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (chart.point)
    candle (Candle type from robbatt/lib_plot_objects/36)
    max (int)

method update_last_or_add_next(id, point, candle, max)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    point (chart.point)
    candle (Candle type from robbatt/lib_plot_objects/36)
    max (int)
Notas de Lançamento
v51 added force_update parameter to update_last, to allow for better control on custom zigzags

Updated:
method update_last(id, update, candle, force_update)
  Namespace types: Pivot[]
  Parameters:
    id (Pivot[])
    update (chart.point)
    candle (Candle type from robbatt/lib_plot_objects/36)
    force_update (bool)
Notas de Lançamento
v52 simplified create_next functions, providing default candle parameter value
frameworkHHLLMarket Geometrypivottechindicatortoolkit

Biblioteca do Pine

De acordo com o verdadeiro espírito do TradingView, o autor publicou esse código Pine como uma biblioteca de código aberto para que outros programadores Pine de nossa comunidade possam reutilizá-lo. Parabéns ao autor! Você pode usar essa biblioteca de forma privada ou em outras publicações de código aberto, mas a reutilização desse código em uma publicação é regida pelas Regras da Casa.

Aviso legal