feat(pattern_recognitions): add 25 remaining Cdl* candlestick pattern wrappers
Complete the TA-Lib candlestick pattern recognition coverage by adding the second half of the Cdl* function family. New functions in pattern_recognitions.go (all return []int32, OHLC inputs): CdlLadderBottom, CdlLongLeggedDoji, CdlLongLine, CdlMarubozu, CdlMatchingLow, CdlMatHold(penetration), CdlMorningDojiStar(penetration), CdlMorningStar(penetration), CdlOnNeck, CdlPiercing, CdlRickshawMan, CdlRiseFall3Methods, CdlSeparatingLines, CdlShootingStar, CdlShortLine, CdlSpinningTop, CdlStalledPattern, CdlStickSandwich, CdlTakuri, CdlTasukiGap, CdlThrusting, CdlTristar, CdlUnique3River, CdlUpsideGap2Crows, CdlXSideGap3Methods Supporting changes: - functions.go: add 25 C function pointer declarations (TA_CDL* signatures) - loader.go: register all 25 new symbols via purego.RegisterLibFunc in Load() - cli/main.go: extend smoke harness to exercise all new wrappers - README.md: document all new patterns in the Pattern Recognition section
This commit is contained in:
@@ -205,6 +205,31 @@ func internalLoad() (uintptr, error) {
|
||||
purego.RegisterLibFunc(&cdlinvertedhammer, ptr, "TA_CDLINVERTEDHAMMER")
|
||||
purego.RegisterLibFunc(&cdlkicking, ptr, "TA_CDLKICKING")
|
||||
purego.RegisterLibFunc(&cdlkickingbylength, ptr, "TA_CDLKICKINGBYLENGTH")
|
||||
purego.RegisterLibFunc(&cdlladderbottom, ptr, "TA_CDLLADDERBOTTOM")
|
||||
purego.RegisterLibFunc(&cdllongleggeddoji, ptr, "TA_CDLLONGLEGGEDDOJI")
|
||||
purego.RegisterLibFunc(&cdllongline, ptr, "TA_CDLLONGLINE")
|
||||
purego.RegisterLibFunc(&cdlmarubozu, ptr, "TA_CDLMARUBOZU")
|
||||
purego.RegisterLibFunc(&cdlmatchinglow, ptr, "TA_CDLMATCHINGLOW")
|
||||
purego.RegisterLibFunc(&cdlmathold, ptr, "TA_CDLMATHOLD")
|
||||
purego.RegisterLibFunc(&cdlmorningdojistar, ptr, "TA_CDLMORNINGDOJISTAR")
|
||||
purego.RegisterLibFunc(&cdlmorningstar, ptr, "TA_CDLMORNINGSTAR")
|
||||
purego.RegisterLibFunc(&cdlonneck, ptr, "TA_CDLONNECK")
|
||||
purego.RegisterLibFunc(&cdlpiercing, ptr, "TA_CDLPIERCING")
|
||||
purego.RegisterLibFunc(&cdlrickshawman, ptr, "TA_CDLRICKSHAWMAN")
|
||||
purego.RegisterLibFunc(&cdlrisefall3methods, ptr, "TA_CDLRISEFALL3METHODS")
|
||||
purego.RegisterLibFunc(&cdlseparatinglines, ptr, "TA_CDLSEPARATINGLINES")
|
||||
purego.RegisterLibFunc(&cdlshootingstar, ptr, "TA_CDLSHOOTINGSTAR")
|
||||
purego.RegisterLibFunc(&cdlshortline, ptr, "TA_CDLSHORTLINE")
|
||||
purego.RegisterLibFunc(&cdlspinningtop, ptr, "TA_CDLSPINNINGTOP")
|
||||
purego.RegisterLibFunc(&cdlstalledpattern, ptr, "TA_CDLSTALLEDPATTERN")
|
||||
purego.RegisterLibFunc(&cdlsticksandwich, ptr, "TA_CDLSTICKSANDWICH")
|
||||
purego.RegisterLibFunc(&cdltakuri, ptr, "TA_CDLTAKURI")
|
||||
purego.RegisterLibFunc(&cdltasukigap, ptr, "TA_CDLTASUKIGAP")
|
||||
purego.RegisterLibFunc(&cdlthrusting, ptr, "TA_CDLTHRUSTING")
|
||||
purego.RegisterLibFunc(&cdltristar, ptr, "TA_CDLTRISTAR")
|
||||
purego.RegisterLibFunc(&cdlunique3river, ptr, "TA_CDLUNIQUE3RIVER")
|
||||
purego.RegisterLibFunc(&cdlupsidegap2crows, ptr, "TA_CDLUPSIDEGAP2CROWS")
|
||||
purego.RegisterLibFunc(&cdlxsidegap3methods, ptr, "TA_CDLXSIDEGAP3METHODS")
|
||||
|
||||
return ptr, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user