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:
+372
@@ -298,4 +298,376 @@ var (
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
adx func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
adxr func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
apo func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInFastPeriod int32,
|
||||
optInSlowPeriod int32,
|
||||
optInMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
aroon func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outAroonDown []float64,
|
||||
outAroonUp []float64,
|
||||
) int32
|
||||
|
||||
aroonosc func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
bop func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inOpen []float64,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
cci func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
cmo func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
dx func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
imi func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inOpen []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
macd func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInFastPeriod int32,
|
||||
optInSlowPeriod int32,
|
||||
optInSignalPeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outMACD []float64,
|
||||
outMACDSignal []float64,
|
||||
outMACDHist []float64,
|
||||
) int32
|
||||
|
||||
macdext func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInFastPeriod int32,
|
||||
optInFastMAType int32,
|
||||
optInSlowPeriod int32,
|
||||
optInSlowMAType int32,
|
||||
optInSignalPeriod int32,
|
||||
optInSignalMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outMACD []float64,
|
||||
outMACDSignal []float64,
|
||||
outMACDHist []float64,
|
||||
) int32
|
||||
|
||||
macdfix func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInSignalPeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outMACD []float64,
|
||||
outMACDSignal []float64,
|
||||
outMACDHist []float64,
|
||||
) int32
|
||||
|
||||
mfi func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
inVolume []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
mom func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
minus_di func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
minus_dm func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
plus_di func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
plus_dm func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
ppo func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInFastPeriod int32,
|
||||
optInSlowPeriod int32,
|
||||
optInMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
roc func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
rocp func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
rocr func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
rocr100 func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
rsi func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
stoch func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInFastKPeriod int32,
|
||||
optInSlowKPeriod int32,
|
||||
optInSlowKMAType int32,
|
||||
optInSlowDPeriod int32,
|
||||
optInSlowDMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outSlowK []float64,
|
||||
outSlowD []float64,
|
||||
) int32
|
||||
|
||||
stochf func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInFastKPeriod int32,
|
||||
optInFastDPeriod int32,
|
||||
optInFastDMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outFastK []float64,
|
||||
outFastD []float64,
|
||||
) int32
|
||||
|
||||
stochrsi func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
optInFastKPeriod int32,
|
||||
optInFastDPeriod int32,
|
||||
optInFastDMAType int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outFastK []float64,
|
||||
outFastD []float64,
|
||||
) int32
|
||||
|
||||
trix func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inReal []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
ultosc func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod1 int32,
|
||||
optInTimePeriod2 int32,
|
||||
optInTimePeriod3 int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
|
||||
willr func(
|
||||
startIdx int32,
|
||||
endIdx int32,
|
||||
inHigh []float64,
|
||||
inLow []float64,
|
||||
inClose []float64,
|
||||
optInTimePeriod int32,
|
||||
outBegIdx *int32,
|
||||
outNBElement *int32,
|
||||
outReal []float64,
|
||||
) int32
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user