Woodwind Vault

Woodwind Vault provides reusable functions to support Thange Woodwind Playbook execution.
getHighestHighAndLowestLow(period) determines the highest-high and lowest-low for the specified time interval.
Parameters:
period: int, the time interval for finding the highest-high and lowest-low.
Returns: float, the highest-high and lowest-low of the candles in the specified period.
findEquilibrium() projects a one glance view of the entire resistance net faced by the price. It does so by computing different equilibrium points for the price.
Returns: longTermEquilibriumB float, the midpoint of highest-high and lowest-low of the candles in last longTermPeriod.
getGlance(fast, slow) glances over the 2 equilibrium points from moving averages and establishes whether its bullish or bearish.
Parameters:
fast: float, the fast moving point.
slow: float, the slow moving point.
Returns: string, it is "bullish" if fast moving point is over the slow moving point o/w returns "bearish".
positionRelativeToLevel(point, level) determines first point's position w.r.t a specified level.
Parameters:
point: float, the first point (typically a fast moving average).
level: float, the second point acting as a level (typically a slow moving average).
Returns: string, the above/below/at position w.r.t level.
positionRelativeToRange(point, fromLevel, toLevel) determines first point's position w.r.t a range (typically a resistance band).
Parameters:
point: float, the first point.
fromLevel: float, the from-range which is typically a fast moving line.
toLevel: float, the to-range which is typically a slow moving line.
Returns: string, the above/below/within range.
Added:
getEquilibriumPeriods(scheme) gets a suitable combination of equilibrium periods for the specified scheme.
Parameters:
scheme: string, the name of the scheme.
Returns: 4 float values, a best suited combination of equilibrium periods.
computeExitGains(entry, exit, qty, remainingQty, direction) calculates the gains after a position is scaled down.
Parameters:
entry: float, the entry price of the short/long position.
exit: float, the exit price of the short/long position.
qty: float, the quantity by which a position is to be scaled down.
remainingQty: float, the remaining quantity before the scale down.
direction: int, its -1 for a short position and +1 for a long position.
Returns: _gains float, the profit & loss after the scale down.
Updated:
positionRelativeToRange(point, fromLevel, toLevel) determines the placement of price w.r.t a range (i.e. a dynamic resistance band).
Parameters:
point: float, the price.
fromLevel: float, the from-range which is typically a fast moving line.
toLevel: float, the to-range which is typically a slow moving line.
Returns: string, the above/below/within range.
Removed:
getHighestHighAndLowestLow(period) determines the highest-high and the lowest-low value for the specified interval.
getEquilibriumPeriods(scheme) gets a suitable combination of equilibrium periods for the specified scheme.
findEquilibrium() projects a one glance view of the entire resistance net faced by the price. It does so by computing different equilibrium points for the price.
getGlance(fast, slow) glances over the 2 equilibrium points from moving averages and establishes whether its bullish or bearish.
positionRelativeToLevel(point, level) determines the placement of price w.r.t the specified resistance/support level.
positionRelativeToRange(point, fromLevel, toLevel) determines the placement of price w.r.t a range (i.e. a dynamic resistance band).
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.