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
This commit is contained in:
@@ -56,13 +56,45 @@ func Load() (uintptr, error) {
|
||||
purego.RegisterLibFunc(&tanh, ptr, "TA_TANH")
|
||||
|
||||
purego.RegisterLibFunc(&ceil, ptr, "TA_CEIL")
|
||||
purego.RegisterLibFunc(&exp, ptr, "TA_EXP")
|
||||
purego.RegisterLibFunc(&floor, ptr, "TA_FLOOR")
|
||||
purego.RegisterLibFunc(&sqrt, ptr, "TA_SQRT")
|
||||
|
||||
purego.RegisterLibFunc(&exp, ptr, "TA_EXP")
|
||||
purego.RegisterLibFunc(&ln, ptr, "TA_LN")
|
||||
purego.RegisterLibFunc(&log10, ptr, "TA_LOG10")
|
||||
|
||||
purego.RegisterLibFunc(&adx, ptr, "TA_ADX")
|
||||
purego.RegisterLibFunc(&adxr, ptr, "TA_ADXR")
|
||||
purego.RegisterLibFunc(&apo, ptr, "TA_APO")
|
||||
purego.RegisterLibFunc(&aroon, ptr, "TA_AROON")
|
||||
purego.RegisterLibFunc(&aroonosc, ptr, "TA_AROONOSC")
|
||||
purego.RegisterLibFunc(&bop, ptr, "TA_BOP")
|
||||
purego.RegisterLibFunc(&cci, ptr, "TA_CCI")
|
||||
purego.RegisterLibFunc(&cmo, ptr, "TA_CMO")
|
||||
purego.RegisterLibFunc(&dx, ptr, "TA_DX")
|
||||
purego.RegisterLibFunc(&imi, ptr, "TA_IMI")
|
||||
purego.RegisterLibFunc(&macd, ptr, "TA_MACD")
|
||||
purego.RegisterLibFunc(&macdext, ptr, "TA_MACDEXT")
|
||||
purego.RegisterLibFunc(&macdfix, ptr, "TA_MACDFIX")
|
||||
purego.RegisterLibFunc(&mfi, ptr, "TA_MFI")
|
||||
purego.RegisterLibFunc(&mom, ptr, "TA_MOM")
|
||||
purego.RegisterLibFunc(&minus_di, ptr, "TA_MINUS_DI")
|
||||
purego.RegisterLibFunc(&minus_dm, ptr, "TA_MINUS_DM")
|
||||
purego.RegisterLibFunc(&plus_di, ptr, "TA_PLUS_DI")
|
||||
purego.RegisterLibFunc(&plus_dm, ptr, "TA_PLUS_DM")
|
||||
purego.RegisterLibFunc(&ppo, ptr, "TA_PPO")
|
||||
purego.RegisterLibFunc(&roc, ptr, "TA_ROC")
|
||||
purego.RegisterLibFunc(&rocp, ptr, "TA_ROCP")
|
||||
purego.RegisterLibFunc(&rocr, ptr, "TA_ROCR")
|
||||
purego.RegisterLibFunc(&rocr100, ptr, "TA_ROCR100")
|
||||
purego.RegisterLibFunc(&rsi, ptr, "TA_RSI")
|
||||
purego.RegisterLibFunc(&stoch, ptr, "TA_STOCH")
|
||||
purego.RegisterLibFunc(&stochf, ptr, "TA_STOCHF")
|
||||
purego.RegisterLibFunc(&stochrsi, ptr, "TA_STOCHRSI")
|
||||
purego.RegisterLibFunc(&trix, ptr, "TA_TRIX")
|
||||
purego.RegisterLibFunc(&ultosc, ptr, "TA_ULTOSC")
|
||||
purego.RegisterLibFunc(&willr, ptr, "TA_WILLR")
|
||||
|
||||
return ptr, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user