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.
This commit is contained in:
2026-07-22 17:18:22 +09:00
parent 1ce0c19fd5
commit e0715fb3e3
6 changed files with 477 additions and 66 deletions
+10
View File
@@ -33,6 +33,16 @@ func Load() (uintptr, error) {
purego.RegisterLibFunc(&ht_sine, ptr, "TA_HT_SINE")
purego.RegisterLibFunc(&ht_trendmode, ptr, "TA_HT_TRENDMODE")
purego.RegisterLibFunc(&add, ptr, "TA_ADD")
purego.RegisterLibFunc(&div, ptr, "TA_DIV")
purego.RegisterLibFunc(&max, ptr, "TA_MAX")
purego.RegisterLibFunc(&maxIndex, ptr, "TA_MAXINDEX")
purego.RegisterLibFunc(&min, ptr, "TA_MIN")
purego.RegisterLibFunc(&minIndex, ptr, "TA_MININDEX")
purego.RegisterLibFunc(&minMax, ptr, "TA_MINMAX")
purego.RegisterLibFunc(&minMaxIndex, ptr, "TA_MINMAXINDEX")
purego.RegisterLibFunc(&mult, ptr, "TA_MULT")
purego.RegisterLibFunc(&sub, ptr, "TA_SUB")
purego.RegisterLibFunc(&sum, ptr, "TA_SUM")
return ptr, nil
}