DynamicPeriodPublic

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
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.
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
Perpustakaan Pine
Dalam semangat sebenar TradingView, penulis telah menerbitkan kod Pine ini sebagai perpustakaan sumber terbuka supaya pengaturcara Pine lain dari komuniti kami boleh menggunakannya semula. Sorakan kepada penulis! Anda juga boleh menggunakan perpustakaan ini secara peribadi atau dalam penerbitan sumber terbuka lain, tetapi penggunaan semula kod ini dalam penerbitan adalah tertakluk kepada Peraturan Dalaman.
Penafian
Perpustakaan Pine
Dalam semangat sebenar TradingView, penulis telah menerbitkan kod Pine ini sebagai perpustakaan sumber terbuka supaya pengaturcara Pine lain dari komuniti kami boleh menggunakannya semula. Sorakan kepada penulis! Anda juga boleh menggunakan perpustakaan ini secara peribadi atau dalam penerbitan sumber terbuka lain, tetapi penggunaan semula kod ini dalam penerbitan adalah tertakluk kepada Peraturan Dalaman.