mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-07-31 02:47:44 +00:00
b9783f7c03
_sidebar.md: - Fix 4 wrong DI/DM paths (minus_di→minusdi, minus_dm→minusdm, plus_di→plusdi, plus_dm→plusdm) - Sort Dynamics section alphabetically - Add DECAY and EDECAY to Numerics section lib/dynamics/_index.md: - Fix HT_TRENDMODE link (Httrendmode.md→HtTrendmode.md) - Sort all 25 indicators alphabetically lib/core/_index.md: - Sort all 8 indicators alphabetically (HA was out of order) docs/indicators.md: - FIR: Replace with all 33 entries sorted - IIR: Replace with all 36 entries sorted - Filters: Add SAK (now 37 entries) - Oscillators: Add 17 missing (BBI, BRAR, COPPOCK, CRSI, CTI, DOSC, ER, ERI, FI, KRI, KST, MSTOCH, PSL, QQE, RVGI, SQUEEZE, TD_SEQ) — now 48 entries - Dynamics: Sort all 25 entries alphabetically - Statistics: Add POLYFIT, TRIM, WAVG, WINS — now 35 entries sorted - Numerics: Add FFT, IFFT — now 31 entries sorted - Core: Add HA — now 8 entries sorted Total: 402 indicators across 16 categories, all cross-referenced.
37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Core
|
|
|
|
Price transforms and fundamental building blocks. These indicators compute derived prices from OHLCV bars and serve as inputs to higher-order indicators.
|
|
|
|
## Indicators
|
|
|
|
| Indicator | Full Name | Description |
|
|
| :-------- | :-------- | :---------- |
|
|
| [AVGPRICE](avgprice/Avgprice.md) | Average Price | (O+H+L+C) * 0.25 via FMA |
|
|
| [HA](ha/Ha.md) | Heikin-Ashi | Modified OHLC candles. Smoothed trend visualization. Output is TBar. |
|
|
| [MEDPRICE](medprice/Medprice.md) | Median Price | (H+L) * 0.5 |
|
|
| [MIDBODY](midbody/Midbody.md) | Open-Close Average | (O+C) * 0.5 |
|
|
| [MIDPOINT](midpoint/Midpoint.md) | Rolling Midpoint | (Max+Min) * 0.5 over lookback window |
|
|
| [MIDPRICE](midprice/Midprice.md) | Mid Price | (Highest High + Lowest Low) * 0.5 |
|
|
| [TYPPRICE](typprice/Typprice.md) | Typical Price | (H+L+C) * OneThird via FMA |
|
|
| [WCLPRICE](wclprice/Wclprice.md) | Weighted Close Price | (H+L+2C) * 0.25 via FMA |
|
|
|
|
## Architecture
|
|
|
|
All Core indicators share common traits:
|
|
|
|
- **Zero allocation** in `Update` hot path
|
|
- **FMA optimization** where applicable (Avgprice, Typprice, Wclprice)
|
|
- **Multiplication over division** (0.25 instead of /4, OneThird instead of /3)
|
|
- **NaN/Infinity guard** via last-valid-value substitution
|
|
- **Bar correction** via `isNew` rollback pattern
|
|
- **Dual API** with stateful `Update` + stateless static `Calculate`
|
|
- **SIMD batch** via `ReadOnlySpan<double>` / `Span<double>` overloads
|
|
|
|
### TBar-Based vs TValue-Based
|
|
|
|
| Type | Indicators | Input |
|
|
| :--- | :--------- | :---- |
|
|
| TBar | AVGPRICE, MEDPRICE, MIDPRICE, MIDBODY, TYPPRICE, WCLPRICE | OHLCV bars |
|
|
| TValue | MIDPOINT | Single value series |
|
|
|