lib_priceaction

a library for everything related to price action, starting off with displacements
displacement(len, min_strength, o, c)
calculate if there is a displacement and how strong it is
Parameters:
len (int): The amount of candles to consider for the deviation
min_strength (float): The minimum displacement strength to trigger a signal
o (float): The source series on which calculations are based
c (float): The source series on which calculations are based
Returns: a tuple of (bool signal, float displacement_strength)
Updated:
displacement(len, min_strength, o, c)
calculate if there is a displacement and how strong it is
Parameters:
len (int): The amount of candles to consider for the deviation
min_strength (float): The minimum displacement strength to trigger a signal
o (float): The source series on which calculations are based
c (float): The source series on which calculations are based
Returns: a tuple of (bool signal, float displacement_strength)
Added:
retracement_ratio(price_start, price_end, price_retracement)
calculate a ratio how far a price has retraced compared to a move between two reference levels
Parameters:
price_start (float): The start price level of the reference move
price_end (float): The end price level of the reference move
price_retracement (float): The retraced price level
Returns: the retracement ratio (float, always positive) or na if one of the inputs was na
target_ratio_price(price_start, price_end, target_ratio)
calculate a ratio how far a price has retraced compared to a move between two reference levels
Parameters:
price_start (float): The start price level of the reference move
price_end (float): The end price level of the reference move
target_ratio (float): The target retracement ratio (must be positive)
Returns: the retracement target ratio price level (float) or na if one of the inputs was na
Added:
in_range(x, a, b)
check if a price is in a certain range, e.g. to check if price reached a target zone
Parameters:
x (float): the price variable
a (float): one range limit (sign agnostic)
b (float): other range limit (sign agnostic)
Returns: true if x is between a and b (inclusive)
range_overlap(a1, b1, a2, b2)
check if two price ranges overlap, e.g. to check if a target is price is possible that fits both target zones
Parameters:
a1 (float): one limit of range 1
b1 (float): other limit of range 1
a2 (float): one limit of range 2
b2 (float): other limit of range 2
Returns: true if x is between a and b (inclusive
Libreria Pine
In pieno spirito TradingView, l'autore ha pubblicato questo codice Pine come libreria open-source in modo che altri programmatori Pine della nostra comunità possano riutilizzarlo. Complimenti all'autore! È possibile utilizzare questa libreria privatamente o in altre pubblicazioni open-source, ma il riutilizzo di questo codice in una pubblicazione è regolato dal nostro Regolamento.
Declinazione di responsabilità
Libreria Pine
In pieno spirito TradingView, l'autore ha pubblicato questo codice Pine come libreria open-source in modo che altri programmatori Pine della nostra comunità possano riutilizzarlo. Complimenti all'autore! È possibile utilizzare questa libreria privatamente o in altre pubblicazioni open-source, ma il riutilizzo di questo codice in una pubblicazione è regolato dal nostro Regolamento.