oliviermilla / Lucky.jl

Lucky is a reactive and async trading framework in Julia designed to rapidly draft, test, deploy and monitor trading strategies and portfolios.
http://www.luckyredlantern.xyz/Lucky.jl/
MIT License
7 stars 2 forks source link

More technical indicators #14

Open femtotrader opened 8 months ago

femtotrader commented 8 months ago

Hello,

A few months ago I wrote OnlineTechnicalIndicators.jl (previously known as IncTA.jl).

This project implements some Technical Analysis Indicators in Julia in an incremental approach.

It's inspired by Python project talipp which is used as "reference implementation" for unit tests.

It depends especially on OnlineStatsBase.jl and on Tables.jl.

Currently more than 50 technical analysis indicators are supported (SMA, EMA, SMMA, RSI, MeanDev, StdDev, ROC, WMA, KAMA, HMA, DPO, CoppockCurve, DEMA, TEMA, ALMA, McGinleyDynamic, ZLEMA, T3, TRIX, TSI ; BB, MACD, StochRSI, KST ; AccuDist, BOP, CCI, ChaikinOsc, VWMA, VWAP, AO, ATR, ForceIndex, OBV, SOBV, EMV, MassIndex, CHOP, KVO, UO ; Stoch, ADX, SuperTrend, VTX, DonchianChannels, KeltnerChannels, Aroon, ChandeKrollStop, ParabolicSAR, SFX, TTM, PivotsHL ; STC)

Maybe you should consider it (and contribute to this lib also)

Kind regards

oliviermilla commented 8 months ago

Hello @femtotrader, thank you for reaching out.

Your project looks great. I'll look deeper into it. Right now, Lucky implements indicators with specific points:

Example of composition through Rocket operators: https://github.com/oliviermilla/Lucky.jl/blob/8bf2660b343ed1f5af6cf8182a86be5a788edbb1/src/operators/sma.jl#L5C17-L5C43

Example of consumer side dispatch: https://github.com/oliviermilla/Lucky.jl/blob/8bf2660b343ed1f5af6cf8182a86be5a788edbb1/examples/goldencross.jl#L80

Always happy to talk. 🚀

femtotrader commented 8 months ago

Thanks @oliviermilla for the kind words about my indicators project. I'm not yet very familiar with reactive programming (except I understand that it's what makes Pluto.jl notebooks so wonderful! I will have first a deeper look at Rocket.jl