mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-07-27 17:27:43 +00:00
1.6 KiB
1.6 KiB
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 | Average Price | (O+H+L+C) * 0.25 via FMA |
| MEDPRICE | Median Price | (H+L) * 0.5 |
| MIDPOINT | Rolling Midpoint | (Max+Min) * 0.5 over lookback window |
| MIDPRICE | Mid Price | (Highest High + Lowest Low) * 0.5 |
| MIDBODY | Open-Close Average | (O+C) * 0.5 |
| TYPPRICE | Typical Price | (H+L+C) * OneThird via FMA |
| HA | Heikin-Ashi | Modified OHLC candles. Smoothed trend visualization. Output is TBar. |
| WCLPRICE | Weighted Close Price | (H+L+2C) * 0.25 via FMA |
Architecture
All Core indicators share common traits:
- Zero allocation in
Updatehot 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
isNewrollback pattern - Dual API with stateful
Update+ stateless staticCalculate - 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 |