Skip to content

Volatility


Aberration

Similar to Keltner Channels.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 5

None
atr_length int

ATR period. Default: 15

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

4 columns




Acceleration Bands

This indicator, by Price Headley, creates lower and upper bands centered around a moving average based on a ratio of it's High-Low range.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 10

None
c int

Multiplier. Default: 4

None
mamode str

See help(ta.ma). Default: "sma"

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Average True Range

This indicator attempts to quantify volatility with a focus on gaps or limit moves.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 14

None
mamode str

See help(ta.ma). Default: "rma"

None
talib bool

If installed, use TA Lib. Default: True

None
prenan bool

Sets initial values to np.nan based on drift. Default: False

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
percent bool

Return as percent. Default: False

fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column




ATR Trailing Stop

This indicator attempts to identify exits for long and short positions. To determine trend, it uses a moving average with a scalable ATR.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 14

None
ma_length int

MA Length. Default: 20

None
k int

ATR multiplier. Default: 3

None
mamode str

See help(ta.ma). Default: "ema"

None
talib bool

If installed, use TA Lib. Default: True

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
percent bool

Return as percent. Default: False

fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column


NOTICE

Thanks to all those that have sponsored and dontated to the library in the past! Your support has been greatly appreciated! 🙏

However, future releases are on definite hold until 100+ donations of $150+ have been received via Buy Me a Coffee.

Help keep this library and application the best in it's class!




Bollinger Bands

This indicator, by John Bollinger, attempts to quantify volatility by creating lower and upper bands centered around a moving average.

Sources

Parameters:

Name Type Description Default
close Series

close Series

required
length int

The period. Default: 5

None
lower_std IntFloat

Lower standard deviation. Default: 2.0

None
upper_std IntFloat

Upper standard deviation. Default: 2.0

None
ddof int

Degrees of Freedom to use. Default: 0

None
mamode str

See help(ta.ma). Default: "sma"

None
talib bool

If installed, use TA Lib. Default: True

None
ddof int

By default, uses Pandas ddof=1. For Numpy calculation, use 0. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

5 columns

Note
  • TA Lib does not have a ddof parameter.
  • The divisor used in calculations is: N - ddof, where N is the number of elements. To use ddof, set talib=False.




Chandelier Exit

This indicator attempts to identify trailing stop-losses based on ATR.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
high_length int

Highest high period. Default: 22

None
low_length int

Lowest low period. Default: 22

None
atr_length int)

ATR length. Default: 14

None
multiplier float

Lower & Upper Bands scalar. Default: 2.0

None
mamode str

See help(ta.ma). Default: "rma"

None
talib bool

If installed, use TA Lib. Default: True

None
use_close bool

Use max(high_length, low_length) for the close. Default: False

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Donchian Channels

This indicator attempt to quantify volatility similarily to Bollinger Bands and Keltner Channels.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
lower_length int

Lower period. Default: 20

None
upper_length int

Upper period. Default: 20

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Holt-Winter Channel

This indicator creates a three-parameter moving average using the "Holt-Winters" method.

Sources
  • rengel8 (2021-08-11) based on the implementation from "MetaTrader 5"
  • mql5

Parameters:

Name Type Description Default
close Series

close Series

required
scalar float

Channel scalar. Default: 1

None
channels bool

Return width and percentage columns. Default: True

None
na float

Smoothed series in range [0, 1]. Default: 0.2

None
nb float

Trend value in range [0, 1]. Default: 0.1

None
nc float

Seasonality value in range [0, 1]. Default: 0.1

None
nd float

Channel value in range [0, 1]. Default: 0.1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Keltner Channels

This indicator attempts to identify volatility similarily to Bollinger Bands and Donchian Channels.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 20

None
scalar float

Band scalar. Default: 2

None
mamode str

See help(ta.ma). Default: "ema"

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
tr bool

Use True Range calculation. Otherwise use high - low for range computation. Default: True

fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Mass Index

This indicator attempts to use a High-Low Range to identify trend reversals based on range expansions.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
fast int

Fast period. Default: 9

None
slow int

Slow period. Default: 25

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column


NOTICE

Thanks to all those that have sponsored and dontated to the library in the past! Your support has been greatly appreciated! 🙏

However, future releases are on definite hold until 100+ donations of $150+ have been received via Buy Me a Coffee.

Help keep this library and application the best in it's class!




Normalized Average True Range

This indicator applies a normalizer to Average True Range.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
length int

The period. Default: 20

None
scalar float

Scalar. Default: 100

None
mamode str

See help(ta.ma). Default: "ema"

None
talib bool

If installed, use TA Lib. Default: True

None
prenan bool

Sets initial values to np.nan based on drift. Default: False

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column

Warning

TA-Lib Correlation: np.float64(0.9506743353852364)

Tip

Corrective contributions welcome!




Price Distance

This indicator attempts to quantify the magnitude covered by price movements.

Sources

Parameters:

Name Type Description Default
open_ Series

open Series

required
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column




Relative Volatility Index

This indicator attempts to quantify volatility using standard deviation.

Sources

Parameters:

Name Type Description Default
high Series

high Series

None
low Series

low Series

None
close Series

close Series

required
length int

The period. Default: 14

None
scalar float

Bands scalar. Default: 100

None
refined bool

Use 'refined' calculation which is the average of RVI(high) and RVI(low) instead of RVI(close). Default: False

None
thirds bool

Average of high, low and close. Default: False

None
mamode str

See help(ta.ma). Default: "ema"

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

3 columns




Elders Thermometer

This indicator, by Dr Alexander Elder, attempts to quantify volatility.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
length int

The period. Default: 20

None
long int

Buy factor. Default: 2

None
short float

Sell factor. Default: 0.5

None
mamode str

See help(ta.ma). Default: "ema"

None
asint int

Returns as int. Default: True

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
DataFrame

4 columns




True Range

This indicator attempts to quantify a High-Low range including potential gap scenarios.

Sources

Parameters:

Name Type Description Default
high Series

high Series

required
low Series

low Series

required
close Series

close Series

required
talib bool

If installed, use TA Lib. Default: True

None
prenan bool

Sets initial values to nan based on drift. Default: False

None
drift int

Difference amount. Default: 1

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column

Warning

TA-Lib Correlation: np.float64(0.9999999999999999)

Tip

Corrective contributions welcome!




Ulcer Index

This indicator, by Peter Martin, attempts to quantify downside volatility with a Quadratic Mean.

Sources

Parameters:

Name Type Description Default
close Series

close Series

required
length int

The period. Default: 14

None
scalar float

Bands scalar. Default: 100

None
offset int

Post shift. Default: 0

None

Other Parameters:

Name Type Description
everget value

Use Evergets' TradingView SMA. Default: False

fillna value

pd.DataFrame.fillna(value)

Returns:

Type Description
Series

1 column


NOTICE

Thanks to all those that have sponsored and dontated to the library in the past! Your support has been greatly appreciated! 🙏

However, future releases are on definite hold until 100+ donations of $150+ have been received via Buy Me a Coffee.

Help keep this library and application the best in it's class!





"Buy Me A Coffee"

ko-fi