Skip to content

Commit

Permalink
Merge branch 'main' into v3
Browse files Browse the repository at this point in the history
  • Loading branch information
DaveSkender authored Jul 28, 2024
2 parents 807f1fe + 62a0e86 commit 1aae1a9
Show file tree
Hide file tree
Showing 44 changed files with 84 additions and 53 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ body:
- type: markdown
attributes:
value: |
Thank you 💖 for taking the time report a bug in the [Skender.Stock.Indicators NuGet library](https://www.nuget.org/packages/Skender.Stock.Indicators)!
> Please review known [issues](https://github.com/DaveSkender/Stock.Indicators/issues?q=is%3Aissue), community [discussions](https://github.com/DaveSkender/Stock.Indicators/discussions), and [Help! Results don't match TradingView!](https://github.com/DaveSkender/Stock.Indicators/discussions/801) before submitting a new bug report.
Thank you 💖 for taking the time report a bug in the [`Skender.Stock.Indicators` NuGet library](https://www.nuget.org/packages/Skender.Stock.Indicators)!
> Before reporting, please review known [issues](https://github.com/DaveSkender/Stock.Indicators/issues?q=is%3Aissue), community [discussions](https://github.com/DaveSkender/Stock.Indicators/discussions), and [Help! Results don't match TradingView!](https://github.com/DaveSkender/Stock.Indicators/discussions/801)
- type: textarea
id: what-happened
attributes:
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ body:
- type: markdown
attributes:
value: |
Thank you 💖 for taking the time to make a recommendation for the [Skender.Stock.Indicators NuGet library](https://www.nuget.org/packages/Skender.Stock.Indicators)! If you have an idea that you don't want us to track in [our backlog](https://github.com/users/DaveSkender/projects/1), consider posting in our community [discussions](https://github.com/DaveSkender/Stock.Indicators/discussions).
Thank you 💖 for taking the time to make a recommendation for the [`Skender.Stock.Indicators` NuGet library](https://www.nuget.org/packages/Skender.Stock.Indicators)! If you have an idea that you don't want us to track in [our backlog](https://github.com/users/DaveSkender/projects/1), consider posting in our community [discussions](https://github.com/DaveSkender/Stock.Indicators/discussions).
- type: textarea
id: request
attributes:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

**Stock Indicators for .NET** is a C# [library package](https://www.nuget.org/packages/Skender.Stock.Indicators) that produces financial market technical indicators. Send in historical price quotes and get back desired indicators such as moving averages, Relative Strength Index, Stochastic Oscillator, Parabolic SAR, etc. Nothing more.

Build your private technical analysis, trading algorithms, machine learning, charting, or other intelligent market software with this library and your own [OHLCV](https://dotnet.stockindicators.dev/guide/#historical-quotes) price quotes sources for equities, commodities, forex, cryptocurrencies, and others. [Stock Indicators for Python](https://python.stockindicators.dev/) is also available.
Build your technical analysis, trading algorithms, machine learning, charting, or other intelligent market software with this library and your own [OHLCV](https://dotnet.stockindicators.dev/guide/#historical-quotes) price quotes sources for equities, commodities, forex, cryptocurrencies, and others. [Stock Indicators for Python](https://python.stockindicators.dev/) is also available.

Visit our project site for more information:

Expand Down
6 changes: 3 additions & 3 deletions docs/GemFile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ GEM
faraday (2.10.0)
faraday-net_http (>= 2.0, < 3.2)
logger
faraday-net_http (3.1.0)
faraday-net_http (3.1.1)
net-http
faraday-retry (2.2.1)
faraday (~> 2.0)
Expand Down Expand Up @@ -246,9 +246,9 @@ GEM
mutex_m (0.2.0)
net-http (0.4.1)
uri
nokogiri (1.16.6-x64-mingw-ucrt)
nokogiri (1.16.7-x64-mingw-ucrt)
racc (~> 1.4)
nokogiri (1.16.6-x86_64-linux)
nokogiri (1.16.7-x86_64-linux)
racc (~> 1.4)
octokit (4.25.1)
faraday (>= 1, < 3)
Expand Down
7 changes: 5 additions & 2 deletions docs/_includes/head-style.html
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<style>
/* general site styles */
html {
font-family: "Google Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-family: "Rubik", "Google Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

* {
Expand All @@ -21,6 +21,7 @@
h4,
h5,
h6 {
font-family: "Rubik", "Google Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
margin-top: 2rem;
margin-bottom: 1rem;
font-weight: 700;
Expand Down Expand Up @@ -113,6 +114,8 @@
}

.project-name {
font-family: "Rubik", "Google Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
color: rgba(230, 199, 76, 0.85);
margin: 0;
font-weight: 700;
}
Expand All @@ -124,7 +127,7 @@

.project-name a:hover {
text-decoration: none;
color: #bdbdbd;
color: rgba(230, 199, 76, 1.00);
}

@media screen and (min-width: 1024px) {
Expand Down
4 changes: 2 additions & 2 deletions docs/_includes/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
<link rel="preconnect" href="https://github.githubassets.com">
<link rel="preconnect" href="https://img.shields.io">
{%- endif -%}
<link rel="preload" href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500&display=swap" as="style"
type="text/css" crossorigin>
<link defer rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Rubik:wght@400..600&display=swap" />
<link defer rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500&display=swap" />

{%- include head-style.html -%}

Expand Down
4 changes: 2 additions & 2 deletions docs/_includes/header.html
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<header role="banner" class="page-header">
<header class="page-header" role="banner">

<div class="project-name">
<a href="{{ '/' | absolute_url }}">
Expand All @@ -20,4 +20,4 @@
<a rel="noopener nofollow" target="_blank" href="{{site.github.repository_url}}"
class="btn not-mobile"><span class="not-medium">View on </span>GitHub</a>
</div>
</header>
</header>
2 changes: 1 addition & 1 deletion docs/_indicators/Adx.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ IEnumerable<AdxResult> results =

### Historical quotes requirements

You must have at least `2×N+100` periods of `quotes` to allow for smoothing convergence. We generally recommend you use at least `2×N+250` data points prior to the intended usage date for better precision.
You must have at least `2×N+100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. We generally recommend you use at least `2×N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Alligator.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ IEnumerable<AlligatorResult> results =

### Historical quotes requirements

You must have at least `JP+JO+100` periods of `quotes` to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `JP+JO+250` data points prior to the intended usage date for better precision.
You must have at least `JP+JO+100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `JP+JO+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Atr.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ IEnumerable<TrResult> results =

### Historical quotes requirements

You must have at least `N+100` periods of `quotes` to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.
You must have at least `N+100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/AtrStop.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IEnumerable<AtrStopResult> results =

### Historical quotes requirements

You must have at least `N+100` periods of `quotes` to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+250` periods prior to the intended usage date for optimal precision.
You must have at least `N+100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+250` periods prior to the intended usage date for optimal precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/ChaikinOsc.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ IEnumerable<ChaikinOscResult> results =

### Historical quotes requirements

You must have at least `2×S` or `S+100` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `S+250` data points prior to the intended usage date for better precision.
You must have at least `2×S` or `S+100` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `S+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/ConnorsRsi.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IEnumerable<ConnorsRsiResult> results =

### Historical quotes requirements

`N` is the greater of `R+100`, `S`, and `P+2`. You must have at least `N` periods of `quotes` to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+150` data points prior to the intended usage date for better precision.
`N` is the greater of `R+100`, `S`, and `P+2`. You must have at least `N` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+150` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Dema.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ IEnumerable<DemaResult> results =

### Historical quotes requirements

You must have at least `3×N` or `2×N+100` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `2×N+250` data points prior to the intended usage date for better precision.
You must have at least `3×N` or `2×N+100` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `2×N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Dynamic.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ IEnumerable<DynamicResult> results =

### Historical quotes requirements

You must have at least `2` periods of `quotes`, to cover the initialization periods. Since this uses a smoothing technique, we recommend you use at least `4×N` data points prior to the intended usage date for better precision.
You must have at least `2` periods of `quotes`, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `4×N` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/ElderRay.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ IEnumerable<ElderRayResult> results =

### Historical quotes requirements

You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.
You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Ema.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ IEnumerable<EmaResult> results =

### Historical quotes requirements

You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.
You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/FisherTransform.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ IEnumerable<FisherTransformResult> results =

### Historical quotes requirements

You must have at least `N` periods of `quotes` to cover the warmup periods.
You must have at least `N` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/ForceIndex.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ IEnumerable<ForceIndexResult> results =

### Historical quotes requirements

You must have at least `N+100` for `2×N` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique for EMA, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.
You must have at least `N+100` for `2×N` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique for EMA, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Gator.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ IEnumerable<GatorResult> results = quotes

## Historical quotes requirements

If using default settings, you must have at least 121 periods of `quotes`. Since this uses a smoothing technique, we recommend you use at least 271 data points prior to the intended usage date for better precision. If using a custom Alligator configuration, see [Alligator documentation]({{site.baseurl}}/indicators/Alligator/#historical-quotes-requirements) for historical quotes requirements.
If using default settings, you must have at least 121 periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least 271 data points prior to the intended usage date for better precision. If using a custom Alligator configuration, see [Alligator documentation]({{site.baseurl}}/indicators/Alligator/#historical-quotes-requirements) for historical quotes requirements.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/HtTrendline.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ IEnumerable<HtlResult> results =

## Historical quotes requirements

You must have at least `100` periods of `quotes` to cover the warmup periods.
You must have at least `100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Kama.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IEnumerable<KamaResult> results =

### Historical quotes requirements

You must have at least `6×E` or `E+100` periods of `quotes`, whichever is more, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `10×E` data points prior to the intended usage date for better precision.
You must have at least `6×E` or `E+100` periods of `quotes`, whichever is more, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `10×E` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Keltner.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IEnumerable<KeltnerResult> results =

### Historical quotes requirements

You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, where `N` is the greater of `E` or `A` periods, to cover the convergence periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.
You must have at least `2×N` or `N+100` periods of `quotes`, whichever is more, where `N` is the greater of `E` or `A` periods, to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `N+250` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
2 changes: 1 addition & 1 deletion docs/_indicators/Kvo.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ IEnumerable<KvoResult> results =

### Historical quotes requirements

You must have at least `L+100` periods of `quotes` to cover the warmup periods. Since this uses a smoothing technique, we recommend you use at least `L+150` data points prior to the intended usage date for better precision.
You must have at least `L+100` periods of `quotes` to cover the [warmup and convergence]({{site.github.repository_url}}/discussions/688) periods. Since this uses a smoothing technique, we recommend you use at least `L+150` data points prior to the intended usage date for better precision.

`quotes` is a collection of generic `TQuote` historical price quotes. It should have a consistent frequency (day, hour, minute, etc). See [the Guide]({{site.baseurl}}/guide/#historical-quotes) for more information.

Expand Down
Loading

0 comments on commit 1aae1a9

Please sign in to comment.