Commit Graph
4 Commits
Author SHA1 Message Date
beejay 4b07e7c741 feat: add momentum indicators and expand function coverage
Add a full Momentum Indicators category (momentum_indicators.go) with
26 new wrapped functions:

  ADX, ADXR, APO, AROON, AROONOSC, BOP, CCI, CMO, DX, IMI,
  MACD, MACDEXT, MACDFIX, MFI, MOM, MINUS_DI, MINUS_DM,
  PLUS_DI, PLUS_DM, PPO, ROC, ROCP, ROCR, ROCR100, RSI,
  STOCH, STOCHF, STOCHRSI, TRIX, ULTOSC, WILLR

- Register all new native symbols in Load() (loader.go)
- Declare corresponding native function variables in functions.go
- Add MAType enum (ta_ma_type.go) for MA-type parameters (SMA, EMA,
  WMA, DEMA, TEMA, TRIMA, KAMA, MAMA, T3)
- Add taResult constants (ta_result.go) mirroring TA-Lib return codes
- Each wrapper includes a doc comment with formula, interpretation, and
  known behavioral edge-case notes
2026-07-24 13:37:34 +09:00
beejay e77cd88cd9 feat: expand TA-Lib wrapper with math transform functions
- Add 13 new math transform functions: Cos, Sin, Tan, ACos, ASin, ATan, CosH, SinH, TanH, Ceil, Exp, Floor, Sqrt, Ln, Log10
- Implement proper TA-Lib bindings for all math transform operations
- Add comprehensive documentation comments to all new functions
- Standardize error handling across all wrapper functions using slog.Debug
- Refactor function definitions for consistency and maintainability

The wrapper now exposes a comprehensive set of mathematical operations from TA-Lib,
including trigonometric, hyperbolic, exponential, logarithmic, and rounding functions.
All functions follow the established pattern of vector element-wise transformations.
2026-07-23 11:05:32 +09:00
beejay e0715fb3e3 feat: add math operator wrappers and align TA-Lib binding types
Add Go wrappers for additional TA-Lib math operators:
Div, Max, MaxIndex, Min, MinIndex, MinMax, MinMaxIndex, Mult, Sub, and Sum.

Refactor the TA-Lib function signatures to use int32 consistently,
including taResult and Hilbert Transform bindings, so the Go layer
matches the native library more closely.

Fix HT_TRENDMODE to return []int32 and update related comments and
naming for better API consistency.
2026-07-22 17:18:22 +09:00
beejay 1ce0c19fd5 initial commit 2026-07-22 15:40:16 +09:00