Skip to content

Commit

Permalink
performance tuning (#652)
Browse files Browse the repository at this point in the history
+semver: minor
  • Loading branch information
DaveSkender authored Dec 12, 2021
1 parent 15dc830 commit 485a077
Show file tree
Hide file tree
Showing 154 changed files with 3,471 additions and 1,559 deletions.
8 changes: 4 additions & 4 deletions docs/_indicators/Adl.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,10 @@ IEnumerable<AdlResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `MoneyFlowMultiplier` | decimal | Money Flow Multiplier
| `MoneyFlowVolume` | decimal | Money Flow Volume
| `Adl` | decimal | Accumulation Distribution Line (ADL)
| `AdlSma` | decimal | Moving average (SMA) of ADL based on `smaPeriods` periods, if specified
| `MoneyFlowMultiplier` | double | Money Flow Multiplier
| `MoneyFlowVolume` | double | Money Flow Volume
| `Adl` | double | Accumulation Distribution Line (ADL)
| `AdlSma` | double | Moving average (SMA) of ADL based on `smaPeriods` periods, if specified

:warning: **Warning**: absolute values in ADL and MFV are somewhat meaningless, so use with caution.

Expand Down
6 changes: 3 additions & 3 deletions docs/_indicators/Adx.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,9 @@ IEnumerable<AdxResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Pdi` | decimal | Plus Directional Index (+DI) for `N` lookback periods
| `Mdi` | decimal | Minus Directional Index (-DI) for `N` lookback periods
| `Adx` | decimal | Average Directional Index (ADX) for `N` lookback periods
| `Pdi` | double | Plus Directional Index (+DI) for `N` lookback periods
| `Mdi` | double | Minus Directional Index (-DI) for `N` lookback periods
| `Adx` | double | Average Directional Index (ADX) for `N` lookback periods

### Utilities

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Awesome.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ IEnumerable<AwesomeResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Oscillator` | decimal | Awesome Oscillator
| `Normalized` | decimal | `100 × Oscillator ÷ (median price)`
| `Oscillator` | double | Awesome Oscillator
| `Normalized` | double | `100 × Oscillator ÷ (median price)`

### Utilities

Expand Down
10 changes: 5 additions & 5 deletions docs/_indicators/Beta.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,11 @@ IEnumerable<BetaResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Beta` | decimal | Beta coefficient based on `N` lookback periods
| `BetaUp` | decimal | Beta+ (Up Beta)
| `BetaDown` | decimal | Beta- (Down Beta)
| `Ratio` | decimal | Beta ratio is `BetaUp/BetaDown`
| `Convexity` | decimal | Beta convexity is <code>(BetaUp-BetaDown)<sup>2</sup></code>
| `Beta` | double | Beta coefficient based on `N` lookback periods
| `BetaUp` | double | Beta+ (Up Beta)
| `BetaDown` | double | Beta- (Down Beta)
| `Ratio` | double | Beta ratio is `BetaUp/BetaDown`
| `Convexity` | double | Beta convexity is <code>(BetaUp-BetaDown)<sup>2</sup></code>

### Utilities

Expand Down
8 changes: 4 additions & 4 deletions docs/_indicators/BollingerBands.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ IEnumerable<BollingerBandsResult> results =
| name | type | notes
| -- |-- |--
| `lookbackPeriods` | int | Number of periods (`N`) for the center line moving average. Must be greater than 1 to calculate; however we suggest a larger period for statistically appropriate sample size. Default is 20.
| `standardDeviations` | int | Width of bands. Standard deviations (`D`) from the moving average. Must be greater than 0. Default is 2.
| `standardDeviations` | double | Width of bands. Standard deviations (`D`) from the moving average. Must be greater than 0. Default is 2.

### Historical quotes requirements

Expand All @@ -50,9 +50,9 @@ IEnumerable<BollingerBandsResult>
| `Sma` | decimal | Simple moving average (SMA) of Close price (center line)
| `UpperBand` | decimal | Upper line is `D` standard deviations above the SMA
| `LowerBand` | decimal | Lower line is `D` standard deviations below the SMA
| `PercentB` | decimal | `%B` is the location within the bands. `(Price-LowerBand)/(UpperBand-LowerBand)`
| `ZScore` | decimal | Z-Score of current Close price (number of standard deviations from mean)
| `Width` | decimal | Width as percent of SMA price. `(UpperBand-LowerBand)/Sma`
| `PercentB` | double | `%B` is the location within the bands. `(Price-LowerBand)/(UpperBand-LowerBand)`
| `ZScore` | double | Z-Score of current Close price (number of standard deviations from mean)
| `Width` | double | Width as percent of SMA price. `(UpperBand-LowerBand)/Sma`

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Bop.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ IEnumerable<BopResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Bop` | decimal | Balance of Power
| `Bop` | double | Balance of Power

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Cci.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ IEnumerable<CciResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Cci` | decimal | CCI value for `N` lookback periods
| `Cci` | double | CCI value for `N` lookback periods

### Utilities

Expand Down
8 changes: 4 additions & 4 deletions docs/_indicators/ChaikinOsc.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,10 @@ IEnumerable<ChaikinOscResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `MoneyFlowMultiplier` | decimal | Money Flow Multiplier
| `MoneyFlowVolume` | decimal | Money Flow Volume
| `Adl` | decimal | Accumulation Distribution Line (ADL)
| `Oscillator` | decimal | Chaikin Oscillator
| `MoneyFlowMultiplier` | double | Money Flow Multiplier
| `MoneyFlowVolume` | double | Money Flow Volume
| `Adl` | double | Accumulation Distribution Line (ADL)
| `Oscillator` | double | Chaikin Oscillator

:warning: **Warning**: absolute values in MFV, ADL, and Oscillator are somewhat meaningless, so use with caution.

Expand Down
6 changes: 3 additions & 3 deletions docs/_indicators/Cmf.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@ IEnumerable<CmfResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `MoneyFlowMultiplier` | decimal | Money Flow Multiplier
| `MoneyFlowVolume` | decimal | Money Flow Volume
| `Cmf` | decimal | Chaikin Money Flow = SMA of MFV for `N` lookback periods
| `MoneyFlowMultiplier` | double | Money Flow Multiplier
| `MoneyFlowVolume` | double | Money Flow Volume
| `Cmf` | double | Chaikin Money Flow = SMA of MFV for `N` lookback periods

:warning: **Warning**: absolute values in MFV and CMF are somewhat meaningless, so use with caution.

Expand Down
8 changes: 4 additions & 4 deletions docs/_indicators/ConnorsRsi.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,10 @@ IEnumerable<ConnorsRsiResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `RsiClose` | decimal | RSI(`R`) of the Close price.
| `RsiStreak` | decimal | RSI(`S`) of the Streak.
| `PercentRank` | decimal | Percentile rank of the period gain value.
| `ConnorsRsi` | decimal | ConnorsRSI
| `RsiClose` | double | RSI(`R`) of the Close price.
| `RsiStreak` | double | RSI(`S`) of the Streak.
| `PercentRank` | double | Percentile rank of the period gain value.
| `ConnorsRsi` | double | ConnorsRSI

### Utilities

Expand Down
10 changes: 5 additions & 5 deletions docs/_indicators/Correlation.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,11 +48,11 @@ IEnumerable<CorrResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `VarianceA` | decimal | Variance of A based on `N` lookback periods
| `VarianceB` | decimal | Variance of B based on `N` lookback periods
| `Covariance` | decimal | Covariance of A+B based on `N` lookback periods
| `Correlation` | decimal | Correlation `R` based on `N` lookback periods
| `RSquared` | decimal | R-Squared (R&sup2;), aka Coefficient of Determination. Simple linear regression models is used (square of Correlation).
| `VarianceA` | double | Variance of A based on `N` lookback periods
| `VarianceB` | double | Variance of B based on `N` lookback periods
| `Covariance` | double | Covariance of A+B based on `N` lookback periods
| `Correlation` | double | Correlation `R` based on `N` lookback periods
| `RSquared` | double | R-Squared (R&sup2;), aka Coefficient of Determination. Simple linear regression models is used (square of Correlation).

### Utilities

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/FisherTransform.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ IEnumerable<FisherTransformResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Fisher` | decimal | Fisher Transform
| `Trigger` | decimal | FT offset by one period
| `Fisher` | double | Fisher Transform
| `Trigger` | double | FT offset by one period

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/ForceIndex.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ IEnumerable<ForceIndexResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `ForceIndex` | decimal | Force Index
| `ForceIndex` | double | Force Index

### Utilities

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Gator.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ IEnumerable<GatorResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Upper` | decimal | Absolute value of Alligator `Jaw-Teeth`
| `Lower` | decimal | Absolute value of Alligator `Lips-Teeth`
| `Upper` | double | Absolute value of Alligator `Jaw-Teeth`
| `Lower` | double | Absolute value of Alligator `Lips-Teeth`
| `UpperIsExpanding` | boolean | Upper value is growing
| `LowerIsExpanding` | boolean | Lower value is growing

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Kama.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ IEnumerable<KamaResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `ER` | decimal | Efficiency Ratio is the fractal efficiency of price changes
| `ER` | double | Efficiency Ratio is the fractal efficiency of price changes
| `Kama` | decimal | Kaufman's adaptive moving average

More about Efficiency Ratio: ER fluctuates between 0 and 1, but these extremes are the exception, not the norm. ER would be 1 if prices moved up or down consistently over the `erPeriods` periods. ER would be zero if prices are unchanged over the `erPeriods` periods.
Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Kvo.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ IEnumerable<KvoResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Oscillator` | decimal | Klinger Oscillator
| `Signal` | decimal | EMA of Klinger Oscillator (signal line)
| `Oscillator` | double | Klinger Oscillator
| `Signal` | double | EMA of Klinger Oscillator (signal line)

### Utilities

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Mama.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ IEnumerable<MamaResult> results =

| name | type | notes
| -- |-- |--
| `fastLimit` | decimal | Fast limit threshold. Must be greater than `slowLimit` and less than 1. Default is 0.5.
| `slowLimit` | decimal | Slow limit threshold. Must be greater than 0. Default is 0.05.
| `fastLimit` | double | Fast limit threshold. Must be greater than `slowLimit` and less than 1. Default is 0.5.
| `slowLimit` | double | Slow limit threshold. Must be greater than 0. Default is 0.05.

### Historical quotes requirements

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Obv.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ IEnumerable<ObvResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Obv` | decimal | On-balance Volume
| `ObvSma` | decimal | Moving average (SMA) of OBV based on `smaPeriods` periods, if specified
| `Obv` | double | On-balance Volume
| `ObvSma` | double | Moving average (SMA) of OBV based on `smaPeriods` periods, if specified

:warning: **Warning**: absolute values in OBV are somewhat meaningless, so use with caution.

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Pmo.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,8 @@ IEnumerable<PmoResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Pmo` | decimal | Price Momentum Oscillator
| `Signal` | decimal | Signal line is EMA of PMO
| `Pmo` | double | Price Momentum Oscillator
| `Signal` | double | Signal line is EMA of PMO

### Utilities

Expand Down
6 changes: 3 additions & 3 deletions docs/_indicators/Prs.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ IEnumerable<PrsResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Prs` | decimal | Price Relative Strength compares `Eval` to `Base` histories
| `PrsSma` | decimal | Moving Average (SMA) of PRS over `S` periods
| `PrsPercent` | decimal | Percent change difference between `Eval` and `Base` over `N` periods
| `Prs` | double | Price Relative Strength compares `Eval` to `Base` histories
| `PrsSma` | double | Moving Average (SMA) of PRS over `S` periods
| `PrsPercent` | double | Percent change difference between `Eval` and `Base` over `N` periods

### Utilities

Expand Down
12 changes: 6 additions & 6 deletions docs/_indicators/Roc.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@ IEnumerable<RocResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Roc` | decimal | Rate of Change over `N` lookback periods (%, not decimal)
| `RocSma` | decimal | Moving average (SMA) of ROC based on `smaPeriods` periods, if specified
| `Roc` | double | Rate of Change over `N` lookback periods (%, not decimal)
| `RocSma` | double | Moving average (SMA) of ROC based on `smaPeriods` periods, if specified

### Utilities

Expand Down Expand Up @@ -96,7 +96,7 @@ IEnumerable<RocWbResult> results =
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Roc` | decimal | Rate of Change over `N` lookback periods (%, not decimal)
| `RocEma` | decimal | Exponential moving average (EMA) of `Roc`
| `UpperBand` | decimal | Upper band of ROC (overbought indicator)
| `LowerBand` | decimal | Lower band of ROC (oversold indicator)
| `Roc` | double | Rate of Change over `N` lookback periods (%, not decimal)
| `RocEma` | double | Exponential moving average (EMA) of `Roc`
| `UpperBand` | double | Upper band of ROC (overbought indicator)
| `LowerBand` | double | Lower band of ROC (oversold indicator)
2 changes: 1 addition & 1 deletion docs/_indicators/Rsi.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ IEnumerable<RsiResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Rsi` | decimal | RSI over prior `N` lookback periods
| `Rsi` | double | RSI over prior `N` lookback periods

### Utilities

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Slope.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ IEnumerable<SlopeResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Slope` | decimal | Slope `m` of the best-fit line of Close price
| `Intercept` | decimal | Y-Intercept `b` of the best-fit line
| `Slope` | double | Slope `m` of the best-fit line of Close price
| `Intercept` | double | Y-Intercept `b` of the best-fit line
| `StdDev` | double | Standard Deviation of Close price over `N` lookback periods
| `RSquared` | double | R-Squared (R&sup2;), aka Coefficient of Determination
| `Line` | decimal | Best-fit line `y` over the last 'N' periods (i.e. `y=mx+b` using last period values)
Expand Down
6 changes: 3 additions & 3 deletions docs/_indicators/Sma.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,6 @@ IEnumerable<SmaExtendedResult> results =
| -- |-- |--
| `Date` | DateTime | Date
| `Sma` | decimal | Simple moving average
| `Mad` | decimal | Mean absolute deviation
| `Mse` | decimal | Mean square error
| `Mape` | decimal | Mean absolute percentage error
| `Mad` | double | Mean absolute deviation
| `Mse` | double | Mean square error
| `Mape` | double | Mean absolute percentage error
8 changes: 4 additions & 4 deletions docs/_indicators/StdDev.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@ IEnumerable<StdDevResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `StdDev` | decimal | Standard Deviation of Close price over `N` lookback periods
| `Mean` | decimal | Mean value of Close price over `N` lookback periods
| `ZScore` | decimal | Z-Score of current Close price (number of standard deviations from mean)
| `StdDevSma` | decimal | Moving average (SMA) of STDDEV based on `smaPeriods` periods, if specified
| `StdDev` | double | Standard Deviation of Close price over `N` lookback periods
| `Mean` | double | Mean value of Close price over `N` lookback periods
| `ZScore` | double | Z-Score of current Close price (number of standard deviations from mean)
| `StdDevSma` | double | Moving average (SMA) of STDDEV based on `smaPeriods` periods, if specified

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/StdDevChannels.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ IEnumerable<StdDevChannelsResult> results =
| name | type | notes
| -- |-- |--
| `lookbackPeriods` | int | Size (`N`) of the evaluation window. Must be `null` or greater than 1 to calculate. A `null` value will produce a full `quotes` evaluation window ([see below](#alternative-depiction-for-full-quotes-variant)). Default is 20.
| `standardDeviations` | int | Width of bands. Standard deviations (`D`) from the regression line. Must be greater than 0. Default is 2.
| `standardDeviations` | double | Width of bands. Standard deviations (`D`) from the regression line. Must be greater than 0. Default is 2.

### Historical quotes requirements

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Stoch.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ IEnumerable<StochResult> results =
| `lookbackPeriods` | int | Lookback period (`N`) for the oscillator (%K). Must be greater than 0. Default is 14.
| `signalPeriods` | int | Smoothing period for the signal (%D). Must be greater than 0. Default is 3.
| `smoothPeriods` | int | Smoothing period (`S`) for the Oscillator (%K). "Slow" stochastic uses 3, "Fast" stochastic uses 1. Must be greater than 0. Default is 3.
| `kFactor` | int | Optional. Weight of %K in the %J calculation. Must be greater than 0. Default is 3.
| `dFactor` | int | Optional. Weight of %D in the %J calculation. Must be greater than 0. Default is 2.
| `kFactor` | decimal | Optional. Weight of %K in the %J calculation. Must be greater than 0. Default is 3.
| `dFactor` | decimal | Optional. Weight of %D in the %J calculation. Must be greater than 0. Default is 2.
| `movingAverageType` | MaType | Optional. Type of moving average (SMA or SMMA) used for smoothing. See [MaType options](#matype-options) below. Default is `MaType.SMA`.

### Historical quotes requirements
Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/SuperTrend.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ IEnumerable<SuperTrendResult> results =
| name | type | notes
| -- |-- |--
| `lookbackPeriods` | int | Number of periods (`N`) for the ATR evaluation. Must be greater than 1 and is usually set between 7 and 14. Default is 10.
| `multiplier` | decimal | Multiplier sets the ATR band width. Must be greater than 0 and is usually set around 2 to 3. Default is 3.
| `multiplier` | double | Multiplier sets the ATR band width. Must be greater than 0 and is usually set around 2 to 3. Default is 3.

### Historical quotes requirements

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Tsi.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ IEnumerable<TsiResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Tsi` | decimal | True Strength Index
| `Signal` | decimal | Signal line (EMA of TSI)
| `Tsi` | double | True Strength Index
| `Signal` | double | Signal line (EMA of TSI)

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/UlcerIndex.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ IEnumerable<UlcerIndexResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `UI` | decimal | Ulcer Index
| `UI` | double | Ulcer Index

### Utilities

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/VolatilityStop.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ IEnumerable<VolatilityStopResult> results =
| name | type | notes
| -- |-- |--
| `lookbackPeriods` | int | Number of periods (`N`) ATR lookback window. Must be greater than 1. Default is 7.
| `multiplier` | decimal | ATR multiplier for the offset. Must be greater than 0. Default is 3.0.
| `multiplier` | double | ATR multiplier for the offset. Must be greater than 0. Default is 3.0.

### Historical quotes requirements

Expand Down
4 changes: 2 additions & 2 deletions docs/_indicators/Vortex.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ IEnumerable<VortexResult>
| name | type | notes
| -- |-- |--
| `Date` | DateTime | Date
| `Pvi` | decimal | Positive Vortex Indicator (VI+)
| `Nvi` | decimal | Negative Vortex Indicator (VI-)
| `Pvi` | double | Positive Vortex Indicator (VI+)
| `Nvi` | double | Negative Vortex Indicator (VI-)

### Utilities

Expand Down
Loading

0 comments on commit 485a077

Please sign in to comment.