PINE LIBRARY
Aktualisiert

DynamicPeriodPublic

204
Dynamic Period Calculation Library

This library provides tools for adaptive period determination, useful for creating indicators or strategies that automatically adjust to market conditions.

Overview
The Dynamic Period Library calculates adaptive periods based on pivot points, enabling the creation of responsive indicators and strategies that adjust to market volatility.

Key Features
  • Dynamic Periods: Computes periods using distances between pivot highs and lows.
  • Customizable Parameters: Users can adjust detection settings and period constraints.
  • Robust Handling: Includes fallback mechanisms for cases with insufficient pivot data.


Use Cases
  • Adaptive Indicators: Build tools that respond to market volatility by adjusting their periods dynamically.
  • Dynamic Strategies: Enhance trading strategies by integrating pivot-based period adjustments.


Function: `dynamic_period`

Description
Calculates a dynamic period based on the average distances between pivot highs and lows.

Parameters
  • `left` (default: 5): Number of left-hand bars for pivot detection.
  • `right` (default: 5): Number of right-hand bars for pivot detection.
  • `numPivots` (default: 5): Minimum pivots required for calculation.
  • `minPeriod` (default: 2): Minimum allowed period.
  • `maxPeriod` (default: 50): Maximum allowed period.
  • `defaultPeriod` (default: 14): Fallback period if no pivots are found.


Returns
A dynamic period calculated based on pivot distances, constrained by `minPeriod` and `maxPeriod`.

Example

Pine Script®
//@version=6
import CrimsonVault/DynamicPeriodPublic/1

left = input.int(5, "Left bars", minval = 1)
right = input.int(5, "Right bars", minval = 1)
numPivots = input.int(5, "Number of Pivots", minval = 2)

period = DynamicPeriodPublic.dynamic_period(left, right, numPivots)
plot(period, title = "Dynamic Period", color = color.blue)



Implementation Notes
  • Pivot Detection: Requires sufficient historical data to identify pivots accurately.
  • Edge Cases: Ensures a default period is applied when pivots are insufficient.
  • Constraints: Limits period values to a user-defined range for stability.
Versionshinweise
v2

Updated:
dynamic_period(left, right, numPivots, minPeriod, maxPeriod, defaultPeriod, high, low)
  Parameters:
    left (int): Number of left bars for pivot detection
    right (int): Number of right bars for pivot detection
    numPivots (int): Minimum number of pivots to calculate average distance
    minPeriod (int): Minimum allowed period
    maxPeriod (int): Maximum allowed period
    defaultPeriod (int): Default period if no pivots are found
    high (float): Source for low values
    low (float): Source for high values
  Returns: Calculated dynamic period

Haftungsausschluss

Die Informationen und Veröffentlichungen sind nicht als Finanz-, Anlage-, Handels- oder andere Arten von Ratschlägen oder Empfehlungen gedacht, die von TradingView bereitgestellt oder gebilligt werden, und stellen diese nicht dar. Lesen Sie mehr in den Nutzungsbedingungen.