diff --git a/docs/GemFile.lock b/docs/GemFile.lock index 20688976..4620d2ac 100644 --- a/docs/GemFile.lock +++ b/docs/GemFile.lock @@ -290,7 +290,6 @@ GEM unf_ext (0.0.8.1) unf_ext (0.0.8.1-x64-mingw32) unicode-display_width (1.8.0) - wdm (0.1.1) yell (2.2.2) zeitwerk (2.5.4) @@ -306,7 +305,6 @@ DEPENDENCIES jekyll-remote-theme jekyll-sitemap jemoji - wdm (>= 0.1.1) BUNDLED WITH 2.2.31 diff --git a/docs/_data/aliases.yml b/docs/_data/aliases.yml index fc5c6ea3..ff48d6d4 100644 --- a/docs/_data/aliases.yml +++ b/docs/_data/aliases.yml @@ -6,6 +6,10 @@ permalink: /indicators/StdDev/ type: price-characteristic +- title: Hurst Exponent + permalink: /indicators/Hurst/ + type: price-trend + - title: KDJ Index permalink: /indicators/Stoch/ type: oscillator @@ -14,10 +18,34 @@ permalink: /indicators/Epma/ type: moving-average +- title: Linear Regression (best-fit line) + permalink: /indicators/Slope/ + type: numerical-analysis + +- title: Mean absolute deviation + permalink: /indicators/Sma/ + type: numerical-analysis + +- title: Mean square error + permalink: /indicators/Sma/ + type: numerical-analysis + +- title: Mean absolute percentage error + permalink: /indicators/Sma/ + type: numerical-analysis + +- title: Modified Moving Average (MMA) + permalink: /indicators/Smma/ + type: moving-average + - title: Momentum Oscillator permalink: /indicators/Roc/ type: price-characteristic +- title: Normalized Average True Range + permalink: /indicators/Atr/ + type: price-characteristic + - title: Price Channels permalink: /indicators/Donchian/ type: price-channel @@ -34,10 +62,14 @@ permalink: /indicators/Roc/ type: oscillator +- title: Running Moving Average (RMA) + permalink: /indicators/Smma/ + type: moving-average + - title: SuperTrend permalink: /indicators/SuperTrend/ type: stop-and-reverse -# - title: Volume Simple Moving Average -# permalink: /indicators/VolSma/ -# type: volume-based +- title: Z-Score + permalink: /indicators/StdDev/ + type: numerical-analysis diff --git a/docs/_includes/candlepart-options.md b/docs/_includes/candlepart-options.md new file mode 100644 index 00000000..db98ccad --- /dev/null +++ b/docs/_includes/candlepart-options.md @@ -0,0 +1,14 @@ +### CandlePart options + +| type | description +|-- |-- +| `CandlePart.OPEN` | `open` price +| `CandlePart.HIGH` | `high` price +| `CandlePart.LOW` | `low` price +| `CandlePart.CLOSE` | `close` price +| `CandlePart.VOLUME` | `volume` +| `CandlePart.HL2` | `(high+low)/2` +| `CandlePart.HLC3` | `(high+low+close)/3` +| `CandlePart.OC2` | `(open+close)/2` +| `CandlePart.OHL3` | `(open+high+low)/3` +| `CandlePart.OHLC4` | `(open+high+low+close)/4` diff --git a/docs/_includes/footer.html b/docs/_includes/footer.html new file mode 100644 index 00000000..fcf1d09c --- /dev/null +++ b/docs/_includes/footer.html @@ -0,0 +1,21 @@ + \ No newline at end of file diff --git a/docs/_indicators/Adl.md b/docs/_indicators/Adl.md index 719925a4..89778365 100644 --- a/docs/_indicators/Adl.md +++ b/docs/_indicators/Adl.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `sma_periods` | int, Optional | Number of periods (`N`) in the moving average of ADL. Must be greater than 0, if specified. ### Historical quotes requirements @@ -47,7 +47,7 @@ ADLResults[ADLResult] ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/Adx.md b/docs/_indicators/Adx.md index e7b7b244..c119f650 100644 --- a/docs/_indicators/Adx.md +++ b/docs/_indicators/Adx.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Number of periods (`N`) for the lookback evaluation. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/Alligator.md b/docs/_indicators/Alligator.md index 0f0e29a5..97bd46cf 100644 --- a/docs/_indicators/Alligator.md +++ b/docs/_indicators/Alligator.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- | -- | -- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `jaw_periods` | int, *default 13* | Number of periods (`JP`) for the Jaw moving average. Must be greater than `teeth_periods`. | `jaw_offset` | int, *default 8* | Number of periods (`JO`) for the Jaw offset. Must be greater than 0. | `teeth_periods` | int, *default 8* | Number of periods (`TP`) for the Teeth moving average. Must be greater than `lips_periods`. diff --git a/docs/_indicators/Alma.md b/docs/_indicators/Alma.md index 48b0c2bc..ded38c79 100644 --- a/docs/_indicators/Alma.md +++ b/docs/_indicators/Alma.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 9* | Number of periods (`N`) in the moving average. Must be greater than 1, but is typically in the 5-20 range. | `offset` | float, *default 0.85* | Adjusts smoothness versus responsiveness on a scale from 0 to 1; where 1 is max responsiveness. | `sigma` | float, *default 6* | Defines the width of the Gaussian [normal distribution](https://en.wikipedia.org/wiki/Normal_distribution). Must be greater than 0. diff --git a/docs/_indicators/Aroon.md b/docs/_indicators/Aroon.md index 11f564db..20da1301 100644 --- a/docs/_indicators/Aroon.md +++ b/docs/_indicators/Aroon.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- | -- | -- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 25* | Number of periods (`N`) for the lookback evaluation. Must be greater than 0. +| `candle_part` | CandlePart, *default CandlePart.CLOSE* | Specify candle part to evaluate. See [CandlePart options](#candlepart-options) below. ### Historical quotes requirements @@ -25,16 +24,7 @@ You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, `quotes` is an `Iterable[Quote]` collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information. - +{% include candlepart-options.md %} ## Returns @@ -43,6 +33,7 @@ EMAResults[EMAResult] ``` - This method returns a time series of all available indicator values for the `quotes` provided. +- `EMAResults` is just a list of `EMAResult`. - It always returns the same number of elements as there are in the historical quotes. - It does not return a single incremental indicator value. - The first `N-1` periods will have `None` values since there's not enough data to calculate. @@ -83,7 +74,7 @@ results = indicators.get_ema(quotes, 20) ![image]({{site.charturl}}/Ema.png) -EMA is shown as the solid line above. Double EMA (dashed line) and Triple EMA (dotted line) are also shown here for comparison. +See also related [Double EMA](../Dema#content) and [Triple EMA](../Tema#content). #### Sources diff --git a/docs/_indicators/Epma.md b/docs/_indicators/Epma.md index b4754a0d..3b8b7283 100644 --- a/docs/_indicators/Epma.md +++ b/docs/_indicators/Epma.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/Fcb.md b/docs/_indicators/Fcb.md index 61b1b10c..2318a6d8 100644 --- a/docs/_indicators/Fcb.md +++ b/docs/_indicators/Fcb.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `window_span` | int | Fractal evaluation window span width (`S`). Must be at least 2. Default is 2. The total evaluation window size is `2×S+1`, representing `±S` from the evalution date. See [Williams Fractal](../Fractal#content) for more information about Fractals and `window_span`. diff --git a/docs/_indicators/FisherTransform.md b/docs/_indicators/FisherTransform.md index 4fc8f240..db90ad44 100644 --- a/docs/_indicators/FisherTransform.md +++ b/docs/_indicators/FisherTransform.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 10* | Number of periods (`N`) in the lookback window. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/ForceIndex.md b/docs/_indicators/ForceIndex.md index 47f0a09e..c57b7a93 100644 --- a/docs/_indicators/ForceIndex.md +++ b/docs/_indicators/ForceIndex.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Lookback window (`N`) for the EMA of Force Index. Must be greater than 0 and is commonly 2 or 13 (shorter/longer view). ### Historical quotes requirements diff --git a/docs/_indicators/Fractal.md b/docs/_indicators/Fractal.md index 683bf7b5..a2b2bf7d 100644 --- a/docs/_indicators/Fractal.md +++ b/docs/_indicators/Fractal.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `window_span` | int, *default 2* | Evaluation window span width (`S`). Must be at least 2. diff --git a/docs/_indicators/HeikinAshi.md b/docs/_indicators/HeikinAshi.md index f029a435..ce7d11c0 100644 --- a/docs/_indicators/HeikinAshi.md +++ b/docs/_indicators/HeikinAshi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) ### Historical quotes requirements @@ -46,7 +46,7 @@ HeikinAshiResults[HeikinAshiResult] ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/Hma.md b/docs/_indicators/Hma.md index 40c232a0..5b9ac345 100644 --- a/docs/_indicators/Hma.md +++ b/docs/_indicators/Hma.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 1. ### Historical quotes requirements diff --git a/docs/_indicators/HtTrendline.md b/docs/_indicators/HtTrendline.md index 6c06c71c..fc66e979 100644 --- a/docs/_indicators/HtTrendline.md +++ b/docs/_indicators/HtTrendline.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) ## Historical quotes requirements diff --git a/docs/_indicators/Hurst.md b/docs/_indicators/Hurst.md index f5b34f4f..389f5516 100644 --- a/docs/_indicators/Hurst.md +++ b/docs/_indicators/Hurst.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 100* | Number of periods (`N`) in the Hurst Analysis. Must be greater than 100. ### Historical quotes requirements @@ -45,7 +45,7 @@ HurstResults[HurstResult] ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods()]({{site.baseurl}}/utilities#remove-warmup-periods) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/Ichimoku.md b/docs/_indicators/Ichimoku.md index b6102085..6841bc10 100644 --- a/docs/_indicators/Ichimoku.md +++ b/docs/_indicators/Ichimoku.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `tenkan_periods` | int, *default 9* | Number of periods (`T`) in the Tenkan-sen midpoint evaluation. Must be greater than 0. | `kijun_periods` | int, *default 26* | Number of periods (`K`) in the shorter Kijun-sen midpoint evaluation. Must be greater than 0. | `senkou_b_periods` | int, *default 52* | Number of periods (`S`) in the longer Senkou leading span B midpoint evaluation. Must be greater than `K`. diff --git a/docs/_indicators/Kama.md b/docs/_indicators/Kama.md index 3e757d27..a3e97dee 100644 --- a/docs/_indicators/Kama.md +++ b/docs/_indicators/Kama.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `er_periods` | int, *default 10* | Number of Efficiency Ratio (volatility) periods (`E`). Must be greater than 0. | `fast_periods` | int, *default 2* | Number of Fast EMA periods. Must be greater than 0. | `slow_periods` | int, *default 30* | Number of Slow EMA periods. Must be greater than `fast_periods`. diff --git a/docs/_indicators/Keltner.md b/docs/_indicators/Keltner.md index ba4edea9..d9f2e56f 100644 --- a/docs/_indicators/Keltner.md +++ b/docs/_indicators/Keltner.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `ema_periods` | int, *default 20* | Number of lookback periods (`E`) for the center line moving average. Must be greater than 1 to calculate. | `multiplier` | float, *default 2.0* | ATR Multiplier. Must be greater than 0. | `atr_periods` | int, *default 10* | Number of lookback periods (`A`) for the Average True Range. Must be greater than 1 to calculate. diff --git a/docs/_indicators/Kvo.md b/docs/_indicators/Kvo.md index 15477947..8aae07b3 100644 --- a/docs/_indicators/Kvo.md +++ b/docs/_indicators/Kvo.md @@ -8,13 +8,13 @@ layout: indicator # {{ page.title }}
-## **get_keltner**(*quotes, fast_periods=34, slow_periods=55, signal_periods=13*) - +## **get_kvo**(*quotes, fast_periods=34, slow_periods=55, signal_periods=13*) + ## Parameters | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `fast_periods` | int, *default 34* | Number of lookback periods (`F`) for the short-term EMA. Must be greater than 2. | `slow_periods` | int, *default 55* | Number of lookback periods (`L`) for the long-term EMA. Must be greater than `F`. | `signal_periods` | int, *default 13* | Number of lookback periods for the signal line. Must be greater than 0. @@ -64,7 +64,7 @@ from stock_indicators import indicators quotes = get_history_from_feed("SPY") # Calculate Klinger(34,55,13) -results = indicators.get_keltner(quotes, 34,55,13) +results = indicators.get_kvo(quotes, 34, 55, 13) ``` ## About: {{ page.title }} diff --git a/docs/_indicators/MaEnvelopes.md b/docs/_indicators/MaEnvelopes.md index 3ee5ab31..6878c484 100644 --- a/docs/_indicators/MaEnvelopes.md +++ b/docs/_indicators/MaEnvelopes.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 1. | `percent_offset` | float, *default 2.5* | Percent offset for envelope width. Example: 3.5% would be entered as 3.5 (not 0.035). Must be greater than 0. Typical values range from 2 to 10. | `ma_type` | MAType, *default MAType.SMA* | Type of moving average (e.g. SMA, EMA, HMA). See [MAType options](#matype-options) below. diff --git a/docs/_indicators/Macd.md b/docs/_indicators/Macd.md index 187e1d01..77805b20 100644 --- a/docs/_indicators/Macd.md +++ b/docs/_indicators/Macd.md @@ -14,10 +14,11 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `fast_periods` | int, *default 12* | Number of periods (`F`) for the faster moving average. Must be greater than 0. | `slow_periods` | int, *default 26* | Number of periods (`S`) for the slower moving average. Must be greater than `fast_periods`. | `signal_periods` | int, *default 9* | Number of periods (`P`) for the moving average of MACD. Must be greater than or equal to 0. +| `candle_part` | CandlePart, *default CandlePart.CLOSE* | Specify candle part to evaluate. See [CandlePart options](#candlepart-options) below. ### Historical quotes requirements @@ -25,6 +26,8 @@ You must have at least `2×(S+P)` or `S+P+100` worth of `quotes`, whichever is m `quotes` is an `Iterable[Quote]` collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information. +{% include candlepart-options.md %} + ## Returns ```python @@ -43,9 +46,9 @@ MACDResults[MACDResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `macd` | Decimal, Optional | The MACD line is the difference between slow and fast moving averages (`macd = fast_ema - slow_ema`) -| `signal` | Decimal, Optional | Moving average of the `macd` line -| `histogram` | Decimal, Optional | Gap between of the `macd` and `signal` line +| `macd` | float, Optional | The MACD line is the difference between slow and fast moving averages (`macd = fast_ema - slow_ema`) +| `signal` | float, Optional | Moving average of the `macd` line +| `histogram` | float, Optional | Gap between of the `macd` and `signal` line | `fast_ema` | Decimal, Optional | Fast Exponential Moving Average | `slow_ema` | Decimal, Optional | Slow Exponential Moving Average diff --git a/docs/_indicators/Mama.md b/docs/_indicators/Mama.md index a456ad65..c1aed203 100644 --- a/docs/_indicators/Mama.md +++ b/docs/_indicators/Mama.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `fast_limit` | float, *default 0.5* | Fast limit threshold. Must be greater than `slowLimit` and less than 1. | `slow_limit` | float, *default 0.05* | Slow limit threshold. Must be greater than 0. diff --git a/docs/_indicators/Marubozu.md b/docs/_indicators/Marubozu.md index 84714116..731563ca 100644 --- a/docs/_indicators/Marubozu.md +++ b/docs/_indicators/Marubozu.md @@ -14,7 +14,7 @@ type: candlestick-pattern | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `min_body_percent` | float, *default 95* | Optional. Minimum body size as a percent of total candle size. Example: 85% would be entered as 85 (not 0.85). Must be between 80 and 100, if specified. ### Historical quotes requirements diff --git a/docs/_indicators/Mfi.md b/docs/_indicators/Mfi.md index 3e3a96c7..cbe6e3aa 100644 --- a/docs/_indicators/Mfi.md +++ b/docs/_indicators/Mfi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Number of periods (`N`) in the lookback period. Must be greater than 1. ### Historical quotes requirements diff --git a/docs/_indicators/Obv.md b/docs/_indicators/Obv.md index bb7fcba0..d4346362 100644 --- a/docs/_indicators/Obv.md +++ b/docs/_indicators/Obv.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `sma_periods` | int, Optional | Number of periods (`N`) in the moving average of OBV. Must be greater than 0, if specified. ### Historical quotes requirements @@ -47,7 +47,7 @@ OBVResults[OBVResult] ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/ParabolicSar.md b/docs/_indicators/ParabolicSar.md index ad47d3be..88f10f52 100644 --- a/docs/_indicators/ParabolicSar.md +++ b/docs/_indicators/ParabolicSar.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `acceleration_step` | float, *default 0.02* | Incremental step size for the Acceleration Factor. Must be greater than 0. | `max_acceleration_factor` | float, *default 0.2* | Maximimum factor limit. Must be greater than `acceleration_step`. diff --git a/docs/_indicators/PivotPoints.md b/docs/_indicators/PivotPoints.md index 17fc215a..e8ac5c16 100644 --- a/docs/_indicators/PivotPoints.md +++ b/docs/_indicators/PivotPoints.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `window_size` | PeriodSize | Size of the lookback window. See [PeriodSize options](#periodsize-options-for-window_size) below. | `point_type` | PivotPointType, *default PivotPointType.STANDARD* | Type of Pivot Point. See [PivotPointType options](#pivotpointtype-options) below. diff --git a/docs/_indicators/Pivots.md b/docs/_indicators/Pivots.md index 0e2fb8c4..50a4ef36 100644 --- a/docs/_indicators/Pivots.md +++ b/docs/_indicators/Pivots.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `left_span` | int, *default 2* | Left evaluation window span width (`L`). Must be at least 2. | `right_span` | int, *default 2* | Right evaluation window span width (`R`). Must be at least 2. | `max_trend_periods` | int, *default 20* | Number of periods (`N`) in evaluation window. Must be greater than `leftSpan`. diff --git a/docs/_indicators/Pmo.md b/docs/_indicators/Pmo.md index db100368..da9b3f11 100644 --- a/docs/_indicators/Pmo.md +++ b/docs/_indicators/Pmo.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `time_periods` | int, *default 35* | Number of periods (`T`) for ROC EMA smoothing. Must be greater than 1. ### Historical quotes requirements diff --git a/docs/_indicators/Prs.md b/docs/_indicators/Prs.md index b4cfbe28..f12591ce 100644 --- a/docs/_indicators/Prs.md +++ b/docs/_indicators/Prs.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `base_history` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `base_history` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `eval_history` | Iterable[Quote] | Historical quotes for evaluation. You must have the same number of periods as `base_history`. | `lookback_periods` | int, Optional | Number of periods (`N`) to lookback to compute % difference. Must be greater than 0 if specified or `None`. | `sma_periods` | int, Optional | Number of periods (`S`) in the SMA lookback period for `prs`. Must be greater than 0. diff --git a/docs/_indicators/Pvo.md b/docs/_indicators/Pvo.md index 891cad37..0e315d6a 100644 --- a/docs/_indicators/Pvo.md +++ b/docs/_indicators/Pvo.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `fast_periods` | int, *default 12* | Number of periods (`F`) for the faster moving average. Must be greater than 0. | `slow_periods` | int, *default 26* | Number of periods (`S`) for the slower moving average. Must be greater than `fast_periods`. | `signal_periods` | int, *default 9* | Number of periods (`P`) for the moving average of PVO. Must be greater than or equal to 0. @@ -44,9 +44,9 @@ PVOResults[PVOResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `pvo` | Decimal, Optional | Normalized difference between two Volume moving averages -| `signal` | Decimal, Optional | Moving average of the `pvo` line -| `histogram` | Decimal, Optional | Gap between of the `pvo` and `signal` line +| `pvo` | float, Optional | Normalized difference between two Volume moving averages +| `signal` | float, Optional | Moving average of the `pvo` line +| `histogram` | float, Optional | Gap between of the `pvo` and `signal` line ### Utilities diff --git a/docs/_indicators/Renko.md b/docs/_indicators/Renko.md index dafc2c48..0ed9e8b1 100644 --- a/docs/_indicators/Renko.md +++ b/docs/_indicators/Renko.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `brick_size` | float | Brick size. Must be greater than 0. | `end_type` | EndType, *default EndType.CLOSE* | See [EndType options](#endtype-options) below. @@ -68,7 +68,7 @@ Each result record represents one Renko brick. ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/Roc.md b/docs/_indicators/Roc.md index 597e60d1..503a2cc0 100644 --- a/docs/_indicators/Roc.md +++ b/docs/_indicators/Roc.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) to go back. Must be greater than 0. | `sma_periods` | int, Optional | Number of periods in the moving average of ROC. Must be greater than 0, if specified. @@ -72,7 +72,7 @@ results = indicators.get_roc(quotes, 20) | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) to go back. Must be greater than 0. Typical values range from 10-20. | `ema_periods` | int | Number of periods for the ROC EMA line. Must be greater than 0. Standard is 3. | `std_dev_periods` | int | Number of periods the standard deviation for upper/lower band lines. Must be greater than 0 and not more than `lookback_periods`. Standard is to use same value as `lookback_periods`. diff --git a/docs/_indicators/RollingPivots.md b/docs/_indicators/RollingPivots.md index 0b4020af..4f1dad13 100644 --- a/docs/_indicators/RollingPivots.md +++ b/docs/_indicators/RollingPivots.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `window_periods` | int | Number of periods (`W`) in the evaluation window. Must be greater than 0 to calculate; but is typically specified in the 5-20 range. | `offset_periods` | int | Number of periods (`F`) to offset the window from the current period. Must be greater than or equal to 0 and is typically less than or equal to `W`. | `point_type` | PivotPointType, *default PivotPointType.STANDARD* | Type of Pivot Point. See [PivotPointType options](#pivotpointtype-options) below. diff --git a/docs/_indicators/Rsi.md b/docs/_indicators/Rsi.md index b8c0c2cd..93deb8f6 100644 --- a/docs/_indicators/Rsi.md +++ b/docs/_indicators/Rsi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Number of periods (`N`) in the lookback period. Must be greater than 0. ### Historical quotes requirements @@ -45,7 +45,7 @@ RSIResults[RSIResult] ### Utilities -- [.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes) +- ~~[.to_quotes()]({{site.baseurl}}/utilities#convert-to-quotes)~~ [deprecated] - [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) - [.remove_warmup_periods()]({{site.baseurl}}/utilities#remove-warmup-periods) - [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) diff --git a/docs/_indicators/Slope.md b/docs/_indicators/Slope.md index c8039c9c..af786b89 100644 --- a/docs/_indicators/Slope.md +++ b/docs/_indicators/Slope.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) for the linear regression. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/Sma.md b/docs/_indicators/Sma.md index c82b7337..b4ebc6bb 100644 --- a/docs/_indicators/Sma.md +++ b/docs/_indicators/Sma.md @@ -8,16 +8,16 @@ layout: indicator # {{ page.title }}
-## **get_sma**(*quotes, lookback_periods*) +## **get_sma**(*quotes, lookback_periods, candle_part=CandlePart.CLOSE*) ## Parameters | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the lookback window. Must be greater than 0. +| `candle_part` | CandlePart, *default CandlePart.CLOSE* | Specify candle part to evaluate. See [CandlePart options](#candlepart-options) below. - ### Historical quotes requirements @@ -25,16 +25,7 @@ You must have at least `N` periods of `quotes` to cover the warmup periods. `quotes` is an `Iterable[Quote]` collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information. - +{% include candlepart-options.md %} ## Returns @@ -43,6 +34,7 @@ SMAResults[SMAResult] ``` - This method returns a time series of all available indicator values for the `quotes` provided. +- `SMAResults` is just a list of `SMAResult`. - It always returns the same number of elements as there are in the historical quotes. - It does not return a single incremental indicator value. - The first `N-1` periods will have `None` values since there's not enough data to calculate. @@ -108,7 +100,7 @@ results = indicators.get_sma_extended(quotes, lookback_periods) ## About: {{ page.title }} -[Simple Moving Average](https://en.wikipedia.org/wiki/Moving_average#Simple_moving_average) is the average price over a lookback window. +[Simple Moving Average](https://en.wikipedia.org/wiki/Moving_average#Simple_moving_average) is the average price over a lookback window. An [extended analysis](#extended-analysis) option includes mean absolute deviation (MAD), mean square error (MSE), and mean absolute percentage error (MAPE). [[Discuss] :speech_balloon:]({{site.github.base_repository_url}}/discussions/240 "Community discussion about this indicator") ![image]({{site.charturl}}/Sma.png) diff --git a/docs/_indicators/Smi.md b/docs/_indicators/Smi.md index a5bdb33a..6eb1eac9 100644 --- a/docs/_indicators/Smi.md +++ b/docs/_indicators/Smi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Lookback period (`N`) for the stochastic. Must be greater than 0. | `first_smooth_periods` | int | First smoothing factor lookback. Must be greater than 0. | `second_smooth_periods` | int | Second smoothing factor lookback. Must be greater than 0. diff --git a/docs/_indicators/Smma.md b/docs/_indicators/Smma.md index eb1fb0a8..279ece0f 100644 --- a/docs/_indicators/Smma.md +++ b/docs/_indicators/Smma.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/StarcBands.md b/docs/_indicators/StarcBands.md index afc86b9d..a86c6e23 100644 --- a/docs/_indicators/StarcBands.md +++ b/docs/_indicators/StarcBands.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `sma_periods` | int, *default 20* | Number of lookback periods (`S`) for the center line moving average. Must be greater than 1 to calculate and is typically between 5 and 10. | `multiplier` | float, *default 2.0* | ATR Multiplier. Must be greater than 0. Default is 2. | `atr_periods` | int, *default 10* | Number of lookback periods (`A`) for the Average True Range. Must be greater than 1 to calculate and is typically the same value as `sma_periods`. Default is 10. diff --git a/docs/_indicators/Stc.md b/docs/_indicators/Stc.md index 23a0a139..47441b50 100644 --- a/docs/_indicators/Stc.md +++ b/docs/_indicators/Stc.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `cycle_periods` | int, *default 10* | Number of periods (`C`) for the Trend Cycle. Must be greater than or equal to 0. | `fast_periods` | int, *default 23* | Number of periods (`F`) for the faster moving average. Must be greater than 0. | `slow_periods` | int, *default 50* | Number of periods (`S`) for the slower moving average. Must be greater than `fast_periods`. @@ -44,7 +44,7 @@ STCResults[STCResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `stc` | Decimal, Optional | Schaff Trend Cycle +| `stc` | float, Optional | Schaff Trend Cycle ### Utilities diff --git a/docs/_indicators/StdDev.md b/docs/_indicators/StdDev.md index a59e8d29..08f890b7 100644 --- a/docs/_indicators/StdDev.md +++ b/docs/_indicators/StdDev.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the lookback period. Must be greater than 1 to calculate; however we suggest a larger period for statistically appropriate sample size. | `sma_periods` | int, Optional | Number of periods in the moving average of `Stdev`. Must be greater than 0, if specified. diff --git a/docs/_indicators/StdDevChannels.md b/docs/_indicators/StdDevChannels.md index 669d541d..5f45e6d1 100644 --- a/docs/_indicators/StdDevChannels.md +++ b/docs/_indicators/StdDevChannels.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, Optional, *default 20* | Size (`N`) of the evaluation window. Must be `None` or greater than 1 to calculate. A `None` value will produce a full `quotes` evaluation window ([see below](#alternative-depiction-for-full-quotes-variant)). | `standard_deviations` | int, *default 2* | Width of bands. Standard deviations (`D`) from the regression line. Must be greater than 0. Default is 2. diff --git a/docs/_indicators/Stoch.md b/docs/_indicators/Stoch.md index 6dd71ddd..261131e8 100644 --- a/docs/_indicators/Stoch.md +++ b/docs/_indicators/Stoch.md @@ -15,7 +15,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Lookback period (`N`) for the oscillator (%K). Must be greater than 0. | `signal_periods` | int, *default 3* | Smoothing period for the signal (%D). Must be greater than 0. | `smooth_periods` | int, *default 3* | Smoothing period (`S`) for the Oscillator (%K). "Slow" stochastic uses 3, "Fast" stochastic uses 1. Must be greater than 0. @@ -57,9 +57,9 @@ StochResults[StochResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `oscillator` or `k` | Decimal, Optional | %K Oscillator over prior `N` lookback periods -| `signal` or `d` | Decimal, Optional | %D Simple moving average of Oscillator -| `percent_j` or `j` | Decimal, Optional | %J is the weighted divergence of %K and %D: `%J=kFactor×%K-dFactor×%D` +| `oscillator` or `k` | float, Optional | %K Oscillator over prior `N` lookback periods +| `signal` or `d` | float, Optional | %D Simple moving average of Oscillator +| `percent_j` or `j` | float, Optional | %J is the weighted divergence of %K and %D: `%J=kFactor×%K-dFactor×%D` Note: aliases of `k`, `d`, and `j` are also provided. They can be used interchangably with the standard outputs. diff --git a/docs/_indicators/StochRsi.md b/docs/_indicators/StochRsi.md index d1d77d69..44095d42 100644 --- a/docs/_indicators/StochRsi.md +++ b/docs/_indicators/StochRsi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `rsi_periods` | int | Number of periods (`R`) in the lookback period. Must be greater than 0. Standard is 14. | `stoch_periods` | int | Number of periods (`S`) in the lookback period. Must be greater than 0. Typically the same value as `rsi_periods`. | `signal_periods` | int | Number of periods (`G`) in the signal line (SMA of the StochRSI). Must be greater than 0. Typically 3-5. @@ -46,8 +46,8 @@ StochRSIResults[StochRSIResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `stoch_rsi` | Decimal, Optional | %K Oscillator = Stochastic RSI = Stoch(`S`,`G`,`M`) of RSI(`R`) of Close price -| `signal` | Decimal, Optional | %D Signal Line = Simple moving average of %K based on `G` periods +| `stoch_rsi` | float, Optional | %K Oscillator = Stochastic RSI = Stoch(`S`,`G`,`M`) of RSI(`R`) of Close price +| `signal` | float, Optional | %D Signal Line = Simple moving average of %K based on `G` periods ### Utilities diff --git a/docs/_indicators/SuperTrend.md b/docs/_indicators/SuperTrend.md index c2f130b2..c8c08f8c 100644 --- a/docs/_indicators/SuperTrend.md +++ b/docs/_indicators/SuperTrend.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 10* | Number of periods (`N`) for the ATR evaluation. Must be greater than 1 and is usually set between 7 and 14. | `multiplier` | float, *default 3* | Multiplier sets the ATR band width. Must be greater than 0 and is usually set around 2 to 3. diff --git a/docs/_indicators/T3.md b/docs/_indicators/T3.md index e61aa4e5..5f645259 100644 --- a/docs/_indicators/T3.md +++ b/docs/_indicators/T3.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 5* | Number of periods (`N`) for the EMA smoothing. Must be greater than 0 and is usually less than 63. | `volume_factor` | float, *default 0.7* | Size of the Volume Factor. Must be greater than 0 and is usually less than 2. diff --git a/docs/_indicators/Tema.md b/docs/_indicators/Tema.md index 158aa76d..764798dc 100644 --- a/docs/_indicators/Tema.md +++ b/docs/_indicators/Tema.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/Trix.md b/docs/_indicators/Trix.md index b9937bbc..976028c6 100644 --- a/docs/_indicators/Trix.md +++ b/docs/_indicators/Trix.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in each of the the exponential moving averages. Must be greater than 0. | `signal_periods` | int, Optional | Number of periods in the moving average of TRIX. Must be greater than 0, if specified. diff --git a/docs/_indicators/Tsi.md b/docs/_indicators/Tsi.md index d4e7d00e..31efaacc 100644 --- a/docs/_indicators/Tsi.md +++ b/docs/_indicators/Tsi.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 25* | Number of periods (`N`) for the first EMA. Must be greater than 0. | `smooth_periods` | int, *default 13* | Number of periods (`M`) for the second smoothing. Must be greater than 0. | `signal_periods` | int, *default 7* | Number of periods (`S`) in the TSI moving average. Must be greater than or equal to 0. diff --git a/docs/_indicators/UlcerIndex.md b/docs/_indicators/UlcerIndex.md index c7ebb9ab..fb680a8f 100644 --- a/docs/_indicators/UlcerIndex.md +++ b/docs/_indicators/UlcerIndex.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Number of periods (`N`) for review. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/Ultimate.md b/docs/_indicators/Ultimate.md index ee772804..26ed4dbd 100644 --- a/docs/_indicators/Ultimate.md +++ b/docs/_indicators/Ultimate.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `short_periods` | int, *default 7* | Number of periods (`S`) in the short lookback. Must be greater than 0. | `middle_periods` | int, *default 14* | Number of periods (`M`) in the middle lookback. Must be greater than `S`. | `long_periods` | int, *default 28* | Number of periods (`L`) in the long lookback. Must be greater than `M`. @@ -42,7 +42,7 @@ UltimateResults[UltimateResult] | name | type | notes | -- |-- |-- | `date` | datetime | Date -| `ultimate` | Decimal, Optional | Simple moving average for `N` lookback periods +| `ultimate` | float, Optional | Simple moving average for `N` lookback periods ### Utilities diff --git a/docs/_indicators/VolatilityStop.md b/docs/_indicators/VolatilityStop.md index 0336b009..7d1f6ec7 100644 --- a/docs/_indicators/VolatilityStop.md +++ b/docs/_indicators/VolatilityStop.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 7* | Number of periods (`N`) ATR lookback window. Must be greater than 1. | `multiplier` | float, *default 3* | ATR multiplier for the offset. Must be greater than 0. diff --git a/docs/_indicators/Vortex.md b/docs/_indicators/Vortex.md index c8541f6b..b205b0f1 100644 --- a/docs/_indicators/Vortex.md +++ b/docs/_indicators/Vortex.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) to consider. Must be greater than 1 and is usually between 14 and 30. ### Historical quotes requirements diff --git a/docs/_indicators/Vwap.md b/docs/_indicators/Vwap.md index 7a9ba466..71fa6e12 100644 --- a/docs/_indicators/Vwap.md +++ b/docs/_indicators/Vwap.md @@ -16,7 +16,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `start` | datetime, Optional | The anchor date used to start the VWAP accumulation. The earliest date in `quotes` is used when not provided. | `year`, `month`, `day`, `hour`, `minute`| int, Optional | The anchor date used to start the VWAP accumulation. The earliest date in `quotes` is used when not provided. diff --git a/docs/_indicators/Vwma.md b/docs/_indicators/Vwma.md index 285870ce..af07cfbc 100644 --- a/docs/_indicators/Vwma.md +++ b/docs/_indicators/Vwma.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 0. ### Historical quotes requirements diff --git a/docs/_indicators/WilliamsR.md b/docs/_indicators/WilliamsR.md index b1f60052..77742590 100644 --- a/docs/_indicators/WilliamsR.md +++ b/docs/_indicators/WilliamsR.md @@ -14,7 +14,7 @@ layout: indicator | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int, *default 14* | Number of periods (`N`) in the lookback period. Must be greater than 0. Default is 14. ### Historical quotes requirements diff --git a/docs/_indicators/Wma.md b/docs/_indicators/Wma.md index 628bf796..3a7b3555 100644 --- a/docs/_indicators/Wma.md +++ b/docs/_indicators/Wma.md @@ -8,14 +8,15 @@ layout: indicator # {{ page.title }}
-## **get_wma**(*quotes, lookback_periods*) +## **get_wma**(*quotes, lookback_periods, candle_part=CandlePart.CLOSE*) ## Parameters | name | type | notes | -- |-- |-- -| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes). +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) | `lookback_periods` | int | Number of periods (`N`) in the moving average. Must be greater than 0. +| `candle_part` | CandlePart, *default CandlePart.CLOSE* | Specify candle part to evaluate. See [CandlePart options](#candlepart-options) below. ### Historical quotes requirements @@ -23,6 +24,8 @@ You must have at least `N` periods of `quotes` to cover the warmup periods. `quotes` is an `Iterable[Quote]` collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information. +{% include candlepart-options.md %} + ## Return ```python diff --git a/docs/_indicators/ZigZag.md b/docs/_indicators/ZigZag.md new file mode 100644 index 00000000..88f41e2d --- /dev/null +++ b/docs/_indicators/ZigZag.md @@ -0,0 +1,92 @@ +--- +title: Zig Zag +permalink: /indicators/ZigZag/ +type: price-transform +layout: indicator +--- + +# {{ page.title }} +
+ +## **get_zig_zag**(*quotes, end_type=EndType.CLOSE, percent_change=5*) + +## Parameters + +| name | type | notes +| -- |-- |-- +| `quotes` | Iterable[Quote] | Iterable(such as list or an object having `__iter__()`) of the [Quote class]({{site.baseurl}}/guide/#historical-quotes) or [its sub-class]({{site.baseurl}}/guide/#using-custom-quote-classes).
• [Got in trouble with Pandas.dataframe?]({{site.baseurl}}/guide/#using-pandasdataframe) +| `end_type` | EndType, *default EndType.CLOSE* | Determines whether `close` or `high/low` are used to measure percent change. See [EndType options](#endtype-options) below. +| `percent_change` | float, *default 5* | Percent change required to establish a line endpoint. Example: 3.5% would be entered as 3.5 (not 0.035). Must be greater than 0. Typical values range from 3 to 10. + +### Historical quotes requirements + +You must have at least two periods of `quotes` to cover the warmup periods, but notably more is needed to be useful. + +`quotes` is an `Iterable[Quote]` collection of historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information. + +### EndType options + +| type | description +|-- |-- +| `EndType.CLOSE` | Percent change measured from `close` price (default) +| `EndType.HIGH_LOW` | Percent change measured from `high` and `low` price + +## Returns + +```python +ZigZagResults[ZigZagResult] +``` + +- This method returns a time series of all available indicator values for the `quotes` provided. +- `ZigZagResults` is just a list of `ZigZagResult`. +- It always returns the same number of elements as there are in the historical quotes. +- It does not return a single incremental indicator value. +- If you do not supply enough points to cover the percent change, there will be no Zig Zag points or lines. +- The first line segment starts after the first confirmed point; ZigZag values before the first confirmed point will be `None`. +- The last line segment is an approximation as the direction is indeterminate. + +:warning: **Warning**: depending on the specified `end_type`, the indicator cannot be initialized if the first `Quote` in `quotes` has a `high`,`low`, or `close` value of 0 (zero). + +:paintbrush: **Repaint Warning**: the last line segement will always be redrawn back to the last known pivot. Do not attempt to calculate incremental values since previous values may change based on newer quotes. + +### ZigZagResult + +| name | type | notes +| -- |-- |-- +| `date` | datetime | Date +| `zig_zag` | Decimal, Optional | Zig Zag line for `percent_change` +| `point_type` | str, Optional | Zig Zag endpoint type (`H` for high point, `L` for low point) +| `retrace_high` | Decimal, Optional | Retrace line for high points +| `retrace_low` | Decimal, Optional | Retrace line for low points + +### Utilities + +- [.find(lookup_date)]({{site.baseurl}}/utilities#find-indicator-result-by-date) +- [.remove_warmup_periods(qty)]({{site.baseurl}}/utilities#remove-warmup-periods) + +See [Utilities and Helpers]({{site.baseurl}}/utilities#utilities-for-indicator-results) for more information. + +## Example + +```python +from stock_indicators import indicators + +# This method is NOT a part of the library. +quotes = get_history_from_feed("SPY") + +# Calculate 3% change ZIGZAG +results = indicators.get_zig_zag(quotes, EndType.CLOSE, 3); +``` + + +### About: {{ page.title }} + +[Zig Zag](https://school.stockcharts.com/doku.php?id=technical_indicators:zigzag) is a price chart overlay that simplifies the up and down movements and transitions based on a percent change smoothing threshold. +[[Discuss] :speech_balloon:]({{site.github.base_repository_url}}/discussions/226 "Community discussion about this indicator") + +![image]({{site.charturl}}/ZigZag.png) + +#### Sources + +- [C# core]({{site.base_sourceurl}}/s-z/ZigZag/ZigZag.cs) +- [Python wrapper]({{site.sourceurl}}/zig_zag.py) diff --git a/docs/_layouts/indicator.html b/docs/_layouts/indicator.html index 335fcf52..79a2f91a 100644 --- a/docs/_layouts/indicator.html +++ b/docs/_layouts/indicator.html @@ -4,4 +4,4 @@ {% include cyclotron.html %} {{ content }} -{% include cyclotron.html %} +{% include footer.html %} \ No newline at end of file diff --git a/docs/_layouts/page.html b/docs/_layouts/page.html new file mode 100644 index 00000000..b5b88086 --- /dev/null +++ b/docs/_layouts/page.html @@ -0,0 +1,6 @@ +--- +layout: default +--- + +{{ content }} +{% include footer.html %} \ No newline at end of file diff --git a/docs/assets/css/style.scss b/docs/assets/css/style.scss index 63e43a84..d089dd69 100644 --- a/docs/assets/css/style.scss +++ b/docs/assets/css/style.scss @@ -273,3 +273,30 @@ h5 { .circle { border-radius: 50%; } + +// FOOTER / EDIT PAGE +.footer { + margin-top: 3rem; + font-size: 0.9rem; + + .footer-body { + font-size: 0.8rem; + + .btn { + background-color: $color-primary; + color: $color-primary-light; + margin-top: 8px; + margin-bottom: 8px; + font-size: 0.9rem; + + &:hover { + background-color: $color-primary-hover; + text-decoration: none; + } + } + } +} + +.qna-dataframe { + font-size: 13px; +} \ No newline at end of file diff --git a/docs/guide.md b/docs/guide.md index 36f52c92..f0482019 100644 --- a/docs/guide.md +++ b/docs/guide.md @@ -1,7 +1,7 @@ --- title: Guide and Pro tips permalink: /guide/ -layout: default +layout: page --- # {{ page.title }} @@ -110,6 +110,28 @@ Each indicator will need different amounts of price `quotes` to calculate. You For example, if you are using daily data and want one year of precise EMA(250) data, you need to provide 3 years of historical quotes (1 extra year for the lookback period and 1 extra year for convergence); thereafter, you would discard or not use the first two years of results. Occassionally, even more is required for optimal precision. +### Using Pandas.Dataframe + +If you are using `Pandas.Dataframe` to hold quote data, you have to convert it into our `Quote` instance. That means you must iterate them row by row. There's [an awesome article](https://towardsdatascience.com/efficiently-iterating-over-rows-in-a-pandas-dataframe-7dd5f9992c01) that introduces the best-efficiency way to iterate `Dataframe`. + +Here's an example we'd like to suggest: **Use list comprehension** +```python +# Suppose that you have dataframe like the below. +# date open high low close volume +# 0 2018-12-31 244.92 245.54 242.87 245.28 147031456 +# 1 2018-12-28 244.94 246.73 241.87 243.15 155998912 +# 2 2018-12-27 238.06 243.68 234.52 243.46 189794032 +# ... ... ... ... ... ... ... + +quotes_list = [ + Quote(d,o,h,l,c,v) + for d,o,h,l,c,v + in zip(df['date'], df['open'], df['high'], df['low'], df['close'], df['volume']) +] +``` + +You can also use `numpy.vectorize()`, its gain is too slight and hard to apply in this case. + ### Using custom quote classes @@ -219,7 +241,8 @@ for r in nested_results: If you want to compute an indicator of indicators, such as an SMA of an ADX or an [RSI of an OBV](https://medium.com/@robswc/this-is-what-happens-when-you-combine-the-obv-and-rsi-indicators-6616d991773d), all you need to do is to take the results of one, reformat into a synthetic historical quotes, and send it through to another indicator. -Here's an example of SMA of RSI: + + -See [.to_quotes()]({{site.baseurl}}/utilities/#convert-to-quotes) for more information. +~~See [.to_quotes()]({{site.baseurl}}/utilities/#convert-to-quotes) for more information.~~ +The .to_quotes() method is now deprecated. -When `.to_quotes()` is not available for an indicator, a workaround is to convert yourself. +A workaround is to convert yourself. ```python +from stock_indicators import indicators + +# fetch historical quotes from your feed (your method) +quotes = get_history_from_feed("MSFT") + # calculate EMA results = indicators.get_ema(quotes, 20) diff --git a/docs/performance.md b/docs/performance.md index 0c2696ee..e5d0d470 100644 --- a/docs/performance.md +++ b/docs/performance.md @@ -1,7 +1,7 @@ --- -title: Performance benchmarks for v0.1.0 +title: Performance benchmarks for v0.7.1 permalink: /performance/ -layout: default +layout: page --- # {{ page.title }} @@ -17,87 +17,88 @@ Apple M1, 8 cores ## Indicators ```bash ------------------------------------------------------------------------------------------- benchmark: 78 tests ------------------------------------------------------------------------------------------- +------------------------------------------------------------------------------------------ benchmark: 79 tests ------------------------------------------------------------------------------------------- Name (time in ms) Min Max Mean StdDev Median IQR Outliers OPS Rounds Iterations ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -test_benchmark_renko 4.1260 (1.0) 4.8456 (1.0) 4.3030 (1.0) 0.1428 (2.12) 4.2610 (1.0) 0.1723 (2.48) 22;2 232.3933 (1.0) 76 1 -test_benchmark_roc 5.4747 (1.33) 92.3929 (19.07) 6.4133 (1.49) 7.4435 (110.49) 5.6433 (1.32) 0.1673 (2.40) 1;12 155.9267 (0.67) 136 1 -test_benchmark_doji 5.4799 (1.33) 8.1868 (1.69) 5.8176 (1.35) 0.3717 (5.52) 5.7953 (1.36) 0.4051 (5.82) 9;1 171.8922 (0.74) 82 1 -test_benchmark_rsi 5.4832 (1.33) 6.0048 (1.24) 5.5886 (1.30) 0.1009 (1.50) 5.5537 (1.30) 0.1254 (1.80) 20;5 178.9364 (0.77) 133 1 -test_benchmark_obv 5.4878 (1.33) 6.0922 (1.26) 5.7525 (1.34) 0.1540 (2.29) 5.7395 (1.35) 0.2135 (3.07) 37;0 173.8378 (0.75) 110 1 -test_benchmark_pmo 5.4940 (1.33) 6.4650 (1.33) 5.6420 (1.31) 0.1414 (2.10) 5.5990 (1.31) 0.1525 (2.19) 11;2 177.2428 (0.76) 77 1 -test_benchmark_ema 5.4976 (1.33) 13.3975 (2.76) 5.8547 (1.36) 0.7973 (11.83) 5.6693 (1.33) 0.2410 (3.46) 4;8 170.8022 (0.73) 131 1 -test_benchmark_kvo 5.5106 (1.34) 6.6456 (1.37) 5.6228 (1.31) 0.1548 (2.30) 5.5666 (1.31) 0.1329 (1.91) 9;5 177.8459 (0.77) 95 1 -test_benchmark_alma 5.5139 (1.34) 6.6702 (1.38) 5.8329 (1.36) 0.2208 (3.28) 5.7713 (1.35) 0.2999 (4.31) 28;2 171.4424 (0.74) 102 1 -test_benchmark_tsi 5.5296 (1.34) 6.0752 (1.25) 5.6414 (1.31) 0.1183 (1.76) 5.5899 (1.31) 0.1511 (2.17) 14;3 177.2624 (0.76) 107 1 -test_benchmark_t3 5.5334 (1.34) 10.9672 (2.26) 6.2233 (1.45) 0.7478 (11.10) 6.0493 (1.42) 0.5541 (7.96) 7;5 160.6870 (0.69) 103 1 -test_benchmark_fractal 5.5349 (1.34) 85.4075 (17.63) 6.3020 (1.46) 7.0206 (104.21) 5.6455 (1.32) 0.1813 (2.61) 1;5 158.6802 (0.68) 129 1 -test_benchmark_marubozu 5.5370 (1.34) 10.3218 (2.13) 5.8524 (1.36) 0.6397 (9.50) 5.6774 (1.33) 0.1963 (2.82) 9;15 170.8701 (0.74) 122 1 -test_benchmark_awesome 5.5400 (1.34) 6.1885 (1.28) 5.6830 (1.32) 0.1074 (1.59) 5.6642 (1.33) 0.1285 (1.85) 28;4 175.9620 (0.76) 118 1 -test_benchmark_smma 5.5509 (1.35) 6.4687 (1.33) 5.7336 (1.33) 0.1321 (1.96) 5.7047 (1.34) 0.1472 (2.12) 21;4 174.4108 (0.75) 111 1 -test_benchmark_wma 5.5551 (1.35) 6.3335 (1.31) 5.7424 (1.33) 0.1261 (1.87) 5.7271 (1.34) 0.1442 (2.07) 53;2 174.1442 (0.75) 149 1 -test_benchmark_fcb 5.5554 (1.35) 6.8455 (1.41) 5.9071 (1.37) 0.2901 (4.31) 5.8962 (1.38) 0.4286 (6.16) 32;1 169.2886 (0.73) 82 1 -test_benchmark_force_index 5.5583 (1.35) 6.1730 (1.27) 5.6371 (1.31) 0.0845 (1.25) 5.6101 (1.32) 0.0696 (1.0) 9;6 177.3948 (0.76) 113 1 -test_benchmark_kama 5.5612 (1.35) 6.3748 (1.32) 5.6756 (1.32) 0.1291 (1.92) 5.6357 (1.32) 0.1139 (1.64) 9;6 176.1921 (0.76) 97 1 -test_benchmark_chop 5.5696 (1.35) 6.2348 (1.29) 5.7837 (1.34) 0.1438 (2.13) 5.7560 (1.35) 0.1803 (2.59) 32;2 172.8986 (0.74) 95 1 -test_benchmark_mama 5.5932 (1.36) 7.8260 (1.62) 5.7984 (1.35) 0.3248 (4.82) 5.6944 (1.34) 0.1866 (2.68) 8;8 172.4601 (0.74) 85 1 -test_benchmark_double_ema 5.5965 (1.36) 6.1142 (1.26) 5.7295 (1.33) 0.0929 (1.38) 5.7093 (1.34) 0.0924 (1.33) 18;4 174.5356 (0.75) 86 1 -test_benchmark_bop 5.6032 (1.36) 7.0379 (1.45) 5.8402 (1.36) 0.2374 (3.52) 5.7671 (1.35) 0.1168 (1.68) 8;12 171.2264 (0.74) 90 1 -test_benchmark_vwap 5.6110 (1.36) 7.8903 (1.63) 5.9596 (1.38) 0.3770 (5.60) 5.8334 (1.37) 0.2525 (3.63) 11;11 167.7967 (0.72) 92 1 -test_benchmark_cci 5.6189 (1.36) 11.4863 (2.37) 6.1164 (1.42) 0.7713 (11.45) 5.8562 (1.37) 0.4545 (6.53) 12;12 163.4946 (0.70) 108 1 -test_benchmark_ultimate 5.6246 (1.36) 91.3383 (18.85) 6.7092 (1.56) 8.2221 (122.05) 5.8637 (1.38) 0.3118 (4.48) 1;2 149.0493 (0.64) 108 1 -test_benchmark_smi 5.6323 (1.37) 6.3820 (1.32) 5.8123 (1.35) 0.1264 (1.88) 5.7866 (1.36) 0.1127 (1.62) 26;5 172.0492 (0.74) 108 1 -test_benchmark_elder_ray 5.6332 (1.37) 6.0962 (1.26) 5.7053 (1.33) 0.0751 (1.11) 5.6818 (1.33) 0.0785 (1.13) 8;4 175.2755 (0.75) 95 1 -test_benchmark_fisher_transform 5.6335 (1.37) 6.1022 (1.26) 5.7436 (1.33) 0.0674 (1.0) 5.7188 (1.34) 0.0775 (1.11) 18;3 174.1079 (0.75) 106 1 -test_benchmark_ma_envelopes 5.6350 (1.37) 6.1912 (1.28) 5.8126 (1.35) 0.1078 (1.60) 5.7955 (1.36) 0.0798 (1.15) 33;15 172.0415 (0.74) 98 1 -test_benchmark_parabolic_sar 5.6357 (1.37) 11.8207 (2.44) 6.2096 (1.44) 1.1010 (16.34) 5.8645 (1.38) 0.2769 (3.98) 5;8 161.0415 (0.69) 55 1 -test_benchmark_adl 5.6366 (1.37) 8.5952 (1.77) 5.9811 (1.39) 0.5817 (8.63) 5.9031 (1.39) 0.2106 (3.03) 1;1 167.1945 (0.72) 23 1 -test_benchmark_vortex 5.6569 (1.37) 7.5631 (1.56) 5.9456 (1.38) 0.3354 (4.98) 5.8171 (1.37) 0.2436 (3.50) 15;13 168.1910 (0.72) 107 1 -test_benchmark_mfi 5.6690 (1.37) 86.2132 (17.79) 6.6533 (1.55) 8.1210 (120.55) 5.7699 (1.35) 0.1710 (2.46) 1;5 150.3007 (0.65) 98 1 -test_benchmark_chaikin_osc 5.6717 (1.37) 7.1532 (1.48) 5.9809 (1.39) 0.2412 (3.58) 5.9230 (1.39) 0.2672 (3.84) 21;3 167.1993 (0.72) 79 1 -test_benchmark_cmf 5.6742 (1.38) 6.9036 (1.42) 5.9742 (1.39) 0.2904 (4.31) 5.8362 (1.37) 0.4846 (6.96) 23;0 167.3870 (0.72) 98 1 -test_benchmark_macd 5.6834 (1.38) 28.2138 (5.82) 6.8444 (1.59) 3.3016 (49.01) 6.1449 (1.44) 0.5003 (7.19) 4;8 146.1056 (0.63) 93 1 -test_benchmark_sma 5.6867 (1.38) 20.2324 (4.18) 6.2085 (1.44) 1.2760 (18.94) 6.0152 (1.41) 0.3444 (4.95) 2;11 161.0700 (0.69) 143 1 -test_benchmark_pivot_points 5.6882 (1.38) 6.5109 (1.34) 5.9283 (1.38) 0.1572 (2.33) 5.8712 (1.38) 0.2072 (2.98) 18;1 168.6822 (0.73) 65 1 -test_benchmark_connors_rsi 5.6915 (1.38) 6.3919 (1.32) 5.8648 (1.36) 0.1314 (1.95) 5.8438 (1.37) 0.1234 (1.77) 19;3 170.5097 (0.73) 65 1 -test_benchmark_ht_trendline 5.6930 (1.38) 6.2750 (1.30) 5.7917 (1.35) 0.1030 (1.53) 5.7625 (1.35) 0.1116 (1.60) 10;5 172.6620 (0.74) 88 1 -test_benchmark_aroon 5.7019 (1.38) 7.3920 (1.53) 6.0440 (1.40) 0.2686 (3.99) 5.9870 (1.41) 0.2765 (3.97) 22;5 165.4535 (0.71) 103 1 -test_benchmark_atr 5.7056 (1.38) 6.3501 (1.31) 5.9805 (1.39) 0.2196 (3.26) 5.9616 (1.40) 0.3256 (4.68) 4;0 167.2101 (0.72) 10 1 -test_benchmark_stdev 5.7207 (1.39) 8.0753 (1.67) 6.1180 (1.42) 0.3027 (4.49) 6.0877 (1.43) 0.3127 (4.49) 9;3 163.4526 (0.70) 98 1 -test_benchmark_dpo 5.7251 (1.39) 85.5333 (17.65) 6.7039 (1.56) 8.4034 (124.74) 5.7918 (1.36) 0.0855 (1.23) 1;8 149.1663 (0.64) 90 1 -test_benchmark_williams_r 5.7266 (1.39) 6.5275 (1.35) 6.0052 (1.40) 0.1908 (2.83) 5.9610 (1.40) 0.2855 (4.10) 30;0 166.5213 (0.72) 108 1 -test_benchmark_triple_ema 5.7419 (1.39) 7.2274 (1.49) 6.0463 (1.41) 0.3369 (5.00) 5.9288 (1.39) 0.3224 (4.63) 10;6 165.3908 (0.71) 73 1 -test_benchmark_alligator 5.7540 (1.39) 6.6827 (1.38) 5.9198 (1.38) 0.1411 (2.09) 5.9037 (1.39) 0.1198 (1.72) 7;3 168.9253 (0.73) 56 1 -test_benchmark_pivots 5.7697 (1.40) 7.3382 (1.51) 5.9355 (1.38) 0.3156 (4.68) 5.8228 (1.37) 0.1463 (2.10) 4;5 168.4786 (0.72) 59 1 -test_benchmark_vwma 5.8036 (1.41) 6.6257 (1.37) 6.1242 (1.42) 0.2022 (3.00) 6.0845 (1.43) 0.3161 (4.54) 41;0 163.2868 (0.70) 113 1 -test_benchmark_stoch 5.8192 (1.41) 88.5170 (18.27) 6.6510 (1.55) 7.0735 (105.00) 6.0217 (1.41) 0.1946 (2.80) 1;2 150.3538 (0.65) 136 1 -test_benchmark_pvo 5.8594 (1.42) 6.7668 (1.40) 6.0707 (1.41) 0.1671 (2.48) 6.0180 (1.41) 0.1771 (2.54) 12;6 164.7269 (0.71) 87 1 -test_benchmark_heikin_ashi 5.8710 (1.42) 6.5527 (1.35) 5.9508 (1.38) 0.1092 (1.62) 5.9106 (1.39) 0.0841 (1.21) 4;3 168.0438 (0.72) 76 1 -test_benchmark_trix 5.8831 (1.43) 6.5233 (1.35) 6.0819 (1.41) 0.1319 (1.96) 6.0425 (1.42) 0.1802 (2.59) 19;2 164.4235 (0.71) 76 1 -test_benchmark_gator 5.8910 (1.43) 6.5510 (1.35) 6.0568 (1.41) 0.1421 (2.11) 6.0111 (1.41) 0.1688 (2.43) 18;4 165.1048 (0.71) 85 1 -test_benchmark_chandelier 5.9471 (1.44) 6.7891 (1.40) 6.1343 (1.43) 0.1394 (2.07) 6.1017 (1.43) 0.1045 (1.50) 21;7 163.0174 (0.70) 98 1 -test_benchmark_volatility_stop 5.9709 (1.45) 7.4681 (1.54) 6.3546 (1.48) 0.2845 (4.22) 6.2791 (1.47) 0.3550 (5.10) 16;2 157.3668 (0.68) 68 1 -test_benchmark_stoch_rsi 5.9761 (1.45) 6.9553 (1.44) 6.1739 (1.43) 0.1515 (2.25) 6.1483 (1.44) 0.1948 (2.80) 18;1 161.9720 (0.70) 81 1 -test_benchmark_sma_extended 5.9776 (1.45) 7.1091 (1.47) 6.1699 (1.43) 0.1653 (2.45) 6.1259 (1.44) 0.1576 (2.27) 14;4 162.0784 (0.70) 92 1 -test_benchmark_super_trend 5.9807 (1.45) 8.2186 (1.70) 6.3343 (1.47) 0.3729 (5.54) 6.1788 (1.45) 0.2772 (3.98) 14;11 157.8694 (0.68) 83 1 -test_benchmark_adx 5.9874 (1.45) 7.4274 (1.53) 6.2284 (1.45) 0.2750 (4.08) 6.1088 (1.43) 0.2867 (4.12) 4;1 160.5538 (0.69) 35 1 -test_benchmark_slope 5.9896 (1.45) 6.7443 (1.39) 6.2639 (1.46) 0.1660 (2.46) 6.2482 (1.47) 0.2543 (3.65) 39;0 159.6455 (0.69) 125 1 -test_benchmark_stdev_channels 6.0004 (1.45) 6.7342 (1.39) 6.1937 (1.44) 0.1450 (2.15) 6.1617 (1.45) 0.1819 (2.61) 29;3 161.4542 (0.69) 90 1 -test_benchmark_epma 6.0203 (1.46) 7.6421 (1.58) 6.3617 (1.48) 0.3056 (4.54) 6.2830 (1.47) 0.3557 (5.11) 14;3 157.1900 (0.68) 77 1 -test_benchmark_donchian 6.0671 (1.47) 7.1593 (1.48) 6.3068 (1.47) 0.2099 (3.12) 6.2558 (1.47) 0.3025 (4.35) 22;1 158.5601 (0.68) 88 1 -test_benchmark_hma 6.1358 (1.49) 7.2202 (1.49) 6.3506 (1.48) 0.1956 (2.90) 6.2878 (1.48) 0.2044 (2.94) 13;2 157.4662 (0.68) 55 1 -test_benchmark_bollinger_bands 6.1389 (1.49) 6.6617 (1.37) 6.2889 (1.46) 0.1052 (1.56) 6.2764 (1.47) 0.1409 (2.02) 18;1 159.0114 (0.68) 65 1 -test_benchmark_rolling_pivots 6.1415 (1.49) 7.8126 (1.61) 6.4341 (1.50) 0.2707 (4.02) 6.3499 (1.49) 0.2540 (3.65) 10;6 155.4214 (0.67) 86 1 -test_benchmark_stc 6.1425 (1.49) 7.1205 (1.47) 6.3767 (1.48) 0.1858 (2.76) 6.3433 (1.49) 0.2493 (3.58) 8;1 156.8221 (0.67) 45 1 -test_benchmark_ulcer_index 6.1572 (1.49) 7.0037 (1.45) 6.3582 (1.48) 0.1420 (2.11) 6.3366 (1.49) 0.1600 (2.30) 23;3 157.2777 (0.68) 99 1 -test_benchmark_starc_bands 6.1661 (1.49) 6.8164 (1.41) 6.3345 (1.47) 0.1182 (1.75) 6.2912 (1.48) 0.1763 (2.53) 22;2 157.8668 (0.68) 91 1 -test_benchmark_keltner 6.2360 (1.51) 7.3260 (1.51) 6.5621 (1.52) 0.2492 (3.70) 6.5131 (1.53) 0.3927 (5.64) 21;0 152.3898 (0.66) 80 1 -test_benchmark_ichimoku 7.2452 (1.76) 11.8303 (2.44) 7.7022 (1.79) 0.7934 (11.78) 7.4342 (1.74) 0.3684 (5.29) 5;6 129.8324 (0.56) 69 1 -test_benchmark_prs 8.7366 (2.12) 16.4603 (3.40) 9.3009 (2.16) 1.0606 (15.74) 9.0388 (2.12) 0.2869 (4.12) 6;7 107.5159 (0.46) 75 1 -test_benchmark_correlation 9.0493 (2.19) 9.7506 (2.01) 9.1864 (2.13) 0.1043 (1.55) 9.1576 (2.15) 0.1187 (1.71) 14;2 108.8563 (0.47) 75 1 -test_benchmark_beta 9.3255 (2.26) 10.7893 (2.23) 9.6093 (2.23) 0.2552 (3.79) 9.5682 (2.25) 0.2310 (3.32) 8;2 104.0663 (0.45) 57 1 -test_benchmark_hurst 10.0185 (2.43) 11.5504 (2.38) 10.4482 (2.43) 0.2772 (4.12) 10.4092 (2.44) 0.3176 (4.56) 18;3 95.7106 (0.41) 69 1 -test_benchmark_hurst_longlong 236.8124 (57.39) 318.9976 (65.83) 254.1136 (59.05) 36.2801 (538.54) 237.9573 (55.85) 21.5396 (309.55) 1;1 3.9352 (0.02) 5 1 +test_benchmark_renko 4.1038 (1.0) 5.0610 (1.0) 4.3016 (1.0) 0.1799 (1.12) 4.2411 (1.0) 0.2313 (1.45) 15;2 232.4712 (1.0) 76 1 +test_benchmark_dema 5.4239 (1.32) 6.3719 (1.26) 5.6859 (1.32) 0.1870 (1.17) 5.6627 (1.34) 0.2204 (1.38) 21;4 175.8744 (0.76) 97 1 +test_benchmark_force_index 5.4294 (1.32) 6.3869 (1.26) 5.7374 (1.33) 0.1970 (1.23) 5.6953 (1.34) 0.2646 (1.66) 30;3 174.2959 (0.75) 115 1 +test_benchmark_roc 5.4602 (1.33) 90.4381 (17.87) 6.3993 (1.49) 7.4896 (46.65) 5.6623 (1.34) 0.2523 (1.58) 1;7 156.2666 (0.67) 128 1 +test_benchmark_ema 5.4603 (1.33) 6.7059 (1.33) 5.7641 (1.34) 0.1999 (1.25) 5.7553 (1.36) 0.2959 (1.85) 46;1 173.4867 (0.75) 137 1 +test_benchmark_cci 5.4745 (1.33) 6.6438 (1.31) 5.7355 (1.33) 0.1916 (1.19) 5.6933 (1.34) 0.2134 (1.34) 29;4 174.3528 (0.75) 113 1 +test_benchmark_fcb 5.4895 (1.34) 6.7510 (1.33) 5.7879 (1.35) 0.2204 (1.37) 5.7350 (1.35) 0.2826 (1.77) 17;2 172.7731 (0.74) 84 1 +test_benchmark_chop 5.4968 (1.34) 6.4898 (1.28) 5.7589 (1.34) 0.1892 (1.18) 5.7095 (1.35) 0.2060 (1.29) 29;3 173.6435 (0.75) 105 1 +test_benchmark_obv 5.4985 (1.34) 6.2451 (1.23) 5.7212 (1.33) 0.1788 (1.11) 5.6830 (1.34) 0.2373 (1.49) 31;3 174.7896 (0.75) 116 1 +test_benchmark_alma 5.5033 (1.34) 6.6748 (1.32) 5.9129 (1.37) 0.2476 (1.54) 5.9085 (1.39) 0.3789 (2.37) 34;1 169.1210 (0.73) 93 1 +test_benchmark_adl 5.5052 (1.34) 9.5222 (1.88) 5.9821 (1.39) 0.7968 (4.96) 5.8070 (1.37) 0.3411 (2.14) 1;1 167.1667 (0.72) 23 1 +test_benchmark_rsi 5.5116 (1.34) 6.8230 (1.35) 5.8082 (1.35) 0.2317 (1.44) 5.7743 (1.36) 0.3057 (1.91) 40;2 172.1705 (0.74) 135 1 +test_benchmark_pivot_points 5.5125 (1.34) 6.3064 (1.25) 5.7882 (1.35) 0.1947 (1.21) 5.7534 (1.36) 0.2817 (1.76) 18;0 172.7648 (0.74) 70 1 +test_benchmark_fractal 5.5170 (1.34) 92.5843 (18.29) 6.4893 (1.51) 7.8284 (48.76) 5.7575 (1.36) 0.2422 (1.52) 1;3 154.0991 (0.66) 123 1 +test_benchmark_tsi 5.5174 (1.34) 6.3914 (1.26) 5.7722 (1.34) 0.1743 (1.09) 5.7545 (1.36) 0.2728 (1.71) 37;1 173.2438 (0.75) 102 1 +test_benchmark_fisher_transform 5.5208 (1.35) 6.4870 (1.28) 5.8155 (1.35) 0.1943 (1.21) 5.7539 (1.36) 0.2764 (1.73) 31;2 171.9543 (0.74) 106 1 +test_benchmark_awesome 5.5287 (1.35) 6.5263 (1.29) 5.8533 (1.36) 0.1971 (1.23) 5.8280 (1.37) 0.2551 (1.60) 33;1 170.8439 (0.73) 105 1 +test_benchmark_doji 5.5296 (1.35) 8.0776 (1.60) 5.7834 (1.34) 0.3151 (1.96) 5.7190 (1.35) 0.2661 (1.67) 6;3 172.9082 (0.74) 90 1 +test_benchmark_kama 5.5315 (1.35) 6.4467 (1.27) 5.9089 (1.37) 0.2020 (1.26) 5.8934 (1.39) 0.2609 (1.63) 35;1 169.2349 (0.73) 103 1 +test_benchmark_smma 5.5326 (1.35) 6.3618 (1.26) 5.7523 (1.34) 0.1760 (1.10) 5.7239 (1.35) 0.2411 (1.51) 27;3 173.8448 (0.75) 113 1 +test_benchmark_triple_ema 5.5365 (1.35) 6.2965 (1.24) 5.8006 (1.35) 0.1825 (1.14) 5.7581 (1.36) 0.2741 (1.72) 27;0 172.3968 (0.74) 104 1 +test_benchmark_kvo 5.5390 (1.35) 6.3768 (1.26) 5.7953 (1.35) 0.2046 (1.27) 5.7534 (1.36) 0.3018 (1.89) 28;0 172.5533 (0.74) 99 1 +test_benchmark_bop 5.5439 (1.35) 6.4412 (1.27) 5.8223 (1.35) 0.1954 (1.22) 5.7639 (1.36) 0.2387 (1.49) 19;2 171.7548 (0.74) 81 1 +test_benchmark_pmo 5.5530 (1.35) 6.3173 (1.25) 5.7966 (1.35) 0.1864 (1.16) 5.7475 (1.36) 0.3031 (1.90) 23;0 172.5140 (0.74) 78 1 +test_benchmark_marubozu 5.5563 (1.35) 6.6350 (1.31) 5.8469 (1.36) 0.1983 (1.24) 5.8036 (1.37) 0.2660 (1.67) 30;2 171.0322 (0.74) 110 1 +test_benchmark_vwap 5.5688 (1.36) 6.4923 (1.28) 5.8144 (1.35) 0.1997 (1.24) 5.7688 (1.36) 0.2328 (1.46) 17;5 171.9874 (0.74) 97 1 +test_benchmark_sma 5.5692 (1.36) 6.9306 (1.37) 5.8315 (1.36) 0.2183 (1.36) 5.7712 (1.36) 0.2660 (1.66) 26;4 171.4815 (0.74) 137 1 +test_benchmark_vortex 5.5693 (1.36) 6.5341 (1.29) 5.8156 (1.35) 0.1962 (1.22) 5.7719 (1.36) 0.2782 (1.74) 31;1 171.9526 (0.74) 99 1 +test_benchmark_chaikin_osc 5.5937 (1.36) 6.3997 (1.26) 5.8529 (1.36) 0.1903 (1.19) 5.8296 (1.37) 0.2539 (1.59) 24;1 170.8557 (0.73) 74 1 +test_benchmark_elder_ray 5.6081 (1.37) 90.7748 (17.94) 6.8384 (1.59) 8.9494 (55.75) 5.8302 (1.37) 0.3033 (1.90) 1;2 146.2341 (0.63) 90 1 +test_benchmark_trix 5.6156 (1.37) 6.9526 (1.37) 5.8798 (1.37) 0.2243 (1.40) 5.8203 (1.37) 0.3051 (1.91) 27;1 170.0746 (0.73) 101 1 +test_benchmark_t3 5.6229 (1.37) 8.8135 (1.74) 5.9866 (1.39) 0.4823 (3.00) 5.8639 (1.38) 0.2385 (1.49) 4;5 167.0392 (0.72) 52 1 +test_benchmark_dpo 5.6283 (1.37) 6.3938 (1.26) 5.9117 (1.37) 0.1605 (1.0) 5.8885 (1.39) 0.1597 (1.0) 22;6 169.1553 (0.73) 83 1 +test_benchmark_wma 5.6346 (1.37) 6.4741 (1.28) 5.8710 (1.36) 0.1895 (1.18) 5.8026 (1.37) 0.2619 (1.64) 41;2 170.3300 (0.73) 142 1 +test_benchmark_mama 5.6372 (1.37) 7.7791 (1.54) 5.9610 (1.39) 0.2966 (1.85) 5.8957 (1.39) 0.2453 (1.54) 10;4 167.7561 (0.72) 86 1 +test_benchmark_ultimate 5.6397 (1.37) 6.6775 (1.32) 5.8894 (1.37) 0.2144 (1.34) 5.8403 (1.38) 0.3021 (1.89) 28;2 169.7953 (0.73) 104 1 +test_benchmark_ht_trendline 5.6642 (1.38) 6.4361 (1.27) 5.9078 (1.37) 0.1828 (1.14) 5.8743 (1.39) 0.2099 (1.31) 26;4 169.2668 (0.73) 91 1 +test_benchmark_heikin_ashi 5.6671 (1.38) 6.7844 (1.34) 5.9669 (1.39) 0.2098 (1.31) 5.9321 (1.40) 0.2302 (1.44) 17;3 167.5914 (0.72) 70 1 +test_benchmark_macd 5.6743 (1.38) 6.8114 (1.35) 5.9406 (1.38) 0.2232 (1.39) 5.8778 (1.39) 0.2851 (1.78) 20;4 168.3332 (0.72) 91 1 +test_benchmark_connors_rsi 5.6795 (1.38) 6.9720 (1.38) 5.9568 (1.38) 0.2443 (1.52) 5.8735 (1.38) 0.3136 (1.96) 9;1 167.8768 (0.72) 44 1 +test_benchmark_stoch 5.6795 (1.38) 92.4396 (18.27) 6.6300 (1.54) 7.8352 (48.81) 5.8802 (1.39) 0.2762 (1.73) 1;1 150.8284 (0.65) 122 1 +test_benchmark_atr 5.6809 (1.38) 122.4068 (24.19) 10.6991 (2.49) 20.8589 (129.93) 6.2858 (1.48) 0.8504 (5.32) 1;4 93.4658 (0.40) 31 1 +test_benchmark_smi 5.6940 (1.39) 6.5649 (1.30) 5.9423 (1.38) 0.2113 (1.32) 5.8948 (1.39) 0.3031 (1.90) 29;4 168.2855 (0.72) 100 1 +test_benchmark_williams_r 5.6992 (1.39) 6.5171 (1.29) 5.9647 (1.39) 0.2012 (1.25) 5.9378 (1.40) 0.2877 (1.80) 29;1 167.6521 (0.72) 95 1 +test_benchmark_ma_envelopes 5.7091 (1.39) 6.9290 (1.37) 5.9677 (1.39) 0.2016 (1.26) 5.9315 (1.40) 0.2839 (1.78) 22;1 167.5681 (0.72) 91 1 +test_benchmark_alligator 5.7146 (1.39) 7.3670 (1.46) 6.0691 (1.41) 0.2850 (1.78) 5.9794 (1.41) 0.3043 (1.90) 7;2 164.7694 (0.71) 53 1 +test_benchmark_aroon 5.7206 (1.39) 8.3696 (1.65) 6.2614 (1.46) 0.5420 (3.38) 6.1140 (1.44) 0.4823 (3.02) 9;4 159.7084 (0.69) 91 1 +test_benchmark_stdev 5.7211 (1.39) 6.4696 (1.28) 5.9655 (1.39) 0.1812 (1.13) 5.9217 (1.40) 0.3034 (1.90) 29;0 167.6292 (0.72) 94 1 +test_benchmark_parabolic_sar 5.7330 (1.40) 8.3364 (1.65) 6.1516 (1.43) 0.4911 (3.06) 5.9941 (1.41) 0.4625 (2.90) 5;3 162.5602 (0.70) 56 1 +test_benchmark_mfi 5.7408 (1.40) 91.0193 (17.98) 6.8251 (1.59) 8.4633 (52.72) 5.9583 (1.40) 0.2981 (1.87) 1;1 146.5187 (0.63) 101 1 +test_benchmark_vwma 5.7513 (1.40) 6.7780 (1.34) 5.9935 (1.39) 0.1926 (1.20) 5.9151 (1.39) 0.2996 (1.88) 32;1 166.8487 (0.72) 106 1 +test_benchmark_pivots 5.7525 (1.40) 6.7218 (1.33) 6.0171 (1.40) 0.2107 (1.31) 5.9955 (1.41) 0.3069 (1.92) 23;1 166.1928 (0.71) 71 1 +test_benchmark_pvo 5.7631 (1.40) 6.5960 (1.30) 6.0094 (1.40) 0.1862 (1.16) 5.9706 (1.41) 0.2601 (1.63) 24;1 166.4057 (0.72) 84 1 +test_benchmark_gator 5.8407 (1.42) 6.6330 (1.31) 6.0925 (1.42) 0.1854 (1.16) 6.0583 (1.43) 0.2425 (1.52) 24;2 164.1359 (0.71) 83 1 +test_benchmark_cmf 5.8556 (1.43) 7.1265 (1.41) 6.1196 (1.42) 0.2259 (1.41) 6.0423 (1.42) 0.2874 (1.80) 14;2 163.4106 (0.70) 93 1 +test_benchmark_zig_zag 5.8586 (1.43) 7.3463 (1.45) 6.1431 (1.43) 0.2812 (1.75) 6.0656 (1.43) 0.3315 (2.08) 7;2 162.7851 (0.70) 55 1 +test_benchmark_sma_extended 5.8715 (1.43) 6.6293 (1.31) 6.1416 (1.43) 0.1844 (1.15) 6.1288 (1.45) 0.2949 (1.85) 26;0 162.8233 (0.70) 85 1 +test_benchmark_epma 5.8825 (1.43) 6.7355 (1.33) 6.1725 (1.43) 0.1963 (1.22) 6.1322 (1.45) 0.2432 (1.52) 20;3 162.0086 (0.70) 77 1 +test_benchmark_adx 5.8835 (1.43) 7.9689 (1.57) 6.3192 (1.47) 0.3470 (2.16) 6.2440 (1.47) 0.2830 (1.77) 3;1 158.2490 (0.68) 34 1 +test_benchmark_slope 5.9446 (1.45) 6.9203 (1.37) 6.2085 (1.44) 0.2238 (1.39) 6.1802 (1.46) 0.2957 (1.85) 38;5 161.0698 (0.69) 124 1 +test_benchmark_donchian 5.9508 (1.45) 8.0383 (1.59) 6.2642 (1.46) 0.2622 (1.63) 6.2121 (1.46) 0.2364 (1.48) 12;2 159.6371 (0.69) 89 1 +test_benchmark_volatility_stop 5.9816 (1.46) 92.0881 (18.20) 7.6255 (1.77) 10.8153 (67.37) 6.2538 (1.47) 0.3109 (1.95) 1;2 131.1386 (0.56) 63 1 +test_benchmark_super_trend 6.0121 (1.46) 6.9099 (1.37) 6.2775 (1.46) 0.1973 (1.23) 6.2511 (1.47) 0.3157 (1.98) 33;1 159.2989 (0.69) 97 1 +test_benchmark_chandelier 6.0145 (1.47) 6.9791 (1.38) 6.2436 (1.45) 0.1997 (1.24) 6.2025 (1.46) 0.2421 (1.52) 24;5 160.1633 (0.69) 102 1 +test_benchmark_stoch_rsi 6.0184 (1.47) 7.1004 (1.40) 6.3155 (1.47) 0.2399 (1.49) 6.2969 (1.48) 0.3460 (2.17) 21;2 158.3407 (0.68) 76 1 +test_benchmark_stdev_channels 6.0320 (1.47) 6.9376 (1.37) 6.2994 (1.46) 0.2052 (1.28) 6.2626 (1.48) 0.2616 (1.64) 23;3 158.7446 (0.68) 88 1 +test_benchmark_bollinger_bands 6.0564 (1.48) 7.0425 (1.39) 6.3367 (1.47) 0.1976 (1.23) 6.2849 (1.48) 0.2864 (1.79) 17;1 157.8105 (0.68) 64 1 +test_benchmark_stc 6.0728 (1.48) 7.3780 (1.46) 6.3894 (1.49) 0.2436 (1.52) 6.3467 (1.50) 0.2615 (1.64) 8;3 156.5085 (0.67) 49 1 +test_benchmark_ulcer_index 6.1386 (1.50) 7.3633 (1.45) 6.4665 (1.50) 0.2366 (1.47) 6.4374 (1.52) 0.2885 (1.81) 35;3 154.6443 (0.67) 106 1 +test_benchmark_hma 6.1697 (1.50) 7.6278 (1.51) 6.5298 (1.52) 0.2588 (1.61) 6.4884 (1.53) 0.3045 (1.91) 10;1 153.1440 (0.66) 54 1 +test_benchmark_starc_bands 6.1931 (1.51) 7.8430 (1.55) 6.4907 (1.51) 0.3025 (1.88) 6.4099 (1.51) 0.3422 (2.14) 11;4 154.0676 (0.66) 91 1 +test_benchmark_rolling_pivots 6.1990 (1.51) 7.4464 (1.47) 6.4969 (1.51) 0.2593 (1.62) 6.4324 (1.52) 0.3637 (2.28) 19;2 153.9189 (0.66) 83 1 +test_benchmark_keltner 6.3440 (1.55) 7.4461 (1.47) 6.6020 (1.53) 0.2300 (1.43) 6.5536 (1.55) 0.2983 (1.87) 20;3 151.4695 (0.65) 80 1 +test_benchmark_ichimoku 7.4118 (1.81) 8.3472 (1.65) 7.6937 (1.79) 0.2348 (1.46) 7.6283 (1.80) 0.3717 (2.33) 22;0 129.9762 (0.56) 64 1 +test_benchmark_prs 8.8257 (2.15) 10.6346 (2.10) 9.1365 (2.12) 0.2704 (1.68) 9.0602 (2.14) 0.2903 (1.82) 16;2 109.4515 (0.47) 77 1 +test_benchmark_correlation 9.0012 (2.19) 10.4323 (2.06) 9.4080 (2.19) 0.2729 (1.70) 9.3466 (2.20) 0.3541 (2.22) 21;1 106.2923 (0.46) 73 1 +test_benchmark_beta 9.3447 (2.28) 10.6549 (2.11) 9.8958 (2.30) 0.2845 (1.77) 9.8863 (2.33) 0.4731 (2.96) 21;0 101.0533 (0.43) 58 1 +test_benchmark_hurst 9.6420 (2.35) 10.7395 (2.12) 10.0655 (2.34) 0.2298 (1.43) 10.0803 (2.38) 0.3171 (1.99) 21;1 99.3493 (0.43) 65 1 +test_benchmark_hurst_longlong 238.9944 (58.24) 325.9463 (64.40) 256.8817 (59.72) 38.6112 (240.51) 239.6449 (56.50) 22.3646 (140.01) 1;1 3.8928 (0.02) 5 1 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Legend: diff --git a/docs/utilities.md b/docs/utilities.md index 89303c78..1a27864c 100644 --- a/docs/utilities.md +++ b/docs/utilities.md @@ -1,7 +1,7 @@ --- title: Utilities and Helpers permalink: /utilities/ -layout: default +layout: page --- # {{ page.title }} @@ -23,6 +23,8 @@ Currently, `.condense()` is only available on a select few indicators. If you f ### Convert to quotes +The .to_quotes() method is now deprecated. + `results.to_quotes()` will transform indicator results back into an `list[Quote]` so it can be re-used to generate an [indicator of indicators]({{site.baseurl}}/guide/#generating-indicator-of-indicators). ```python