PINE LIBRARY

Volatility

已更新
Library "Volatility"
Functions for determining if volatility (true range) is within or exceeds normal.
The "True Range" (ta.tr) is used for measuring volatility.
Values are normalized by the volume adjusted weighted moving average (VAWMA) to be more like percent moves than price.

current(len) Returns the current price adjusted volatitlity ratio.
  Parameters:
    len: Number of bars to get a volume adjusted weighted average price.

normal(len, maxDeviation, level, gapDays, spec, res) Returns the normal upper range of volatility. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').

isNormal(len, maxDeviation, level, gapDays, spec, res) Returns true if the volatility (true range) is within normal levels. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').

severity(len, maxDeviation, level, gapDays, spec, res) Returns ratio of the current value to the normal value. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').
版本注释
v2 Attempt to improve performance and reduce dependencies.
版本注释
v3 Improved performance by exposing gap level to caller if needed. Opened up ability to use a different volatility value.

Added:
normalWithGap(len, maxDeviation, level, gapDays, spec, res, volatility) Returns the normal upper range of volatility and the normal gap value.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').
    volatility: The value to use as a volatility measure. Default is (ta.tr) the "True Range".
  Returns: [atr + stdev * level, Gap.normal(gapDays, spec, res)]

Updated:
normal(len, maxDeviation, level, gapDays, spec, res, volatility) Returns the normal upper range of volatility. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').
    volatility: The value to use as a volatility measure. Default is (ta.tr) the "True Range".

isNormal(len, maxDeviation, level, gapDays, spec, res, volatility) Returns true if the volatility (true range) is within normal levels. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').
    volatility: The value to use as a volatility measure. Default is (ta.tr) the "True Range".

severity(len, maxDeviation, level, gapDays, spec, res, volatility) Returns ratio of the current value to the normal value. Compensates for overnight gaps within a regular session.
  Parameters:
    len: Number of bars to measure volatility.
    maxDeviation: The limit of volatility before considered an outlier.
    level: The amount of standard deviation after cleaning outliers to be considered within normal.
    gapDays: The number of days in the past to measure overnight gap volaility.
    spec: session.regular (default), session.extended or other time spec.
    res: The resolution (default = '1440').
    volatility: The value to use as a volatility measure. Default is (ta.tr) the "True Range".

Removed:
current(len) Returns the current price adjusted volatitlity ratio.
版本注释
v4 Improved use of data cleaning and gap detection.
版本注释
v5 Improved defaults.
版本注释
v6
  • Added specialized "calcTrueRange" for more than one bar.
  • Added "fromTrueRange" to provide a more useful UDT (Volatility) for understanding the current volatility.
版本注释
v7 Upgraded true range calc.

Updated:
fromTrueRange(len, maxDev, span, quantized, useWma, smoothing)
  Calculates the volatility based upon the true range.
  Parameters:
    len: maxDev deviation before considered an outlier.
    maxDev
    span: Number of bars measure the true range.
    quantized: When true, the true range is calculated once for every span. When false (default), the true range is calulated for the span on every bar.
    useWma: When true, the calulcation is done using an improved weighted moving average to avoid giving significance to older values.
    smoothing: The number of extra bars to help in smoothing out the result so that large spikes dont' occur from recent data.
版本注释
v8: PineScript v6 update with refresh of gap detection library.
gapstatisticstechindicatortruerange

Pine脚本库

本着真正的TradingView精神,作者将此Pine代码发布为开源脚本库,以便我们社区的其他Pine程序员可以重复使用它。向作者致敬!您可以私下或在其它开源出版物中使用此脚本库,但在出版物中重复使用此代码受网站规则约束。

免责声明