-
Notifications
You must be signed in to change notification settings - Fork 246
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
indicator chaining #802
indicator chaining #802
Conversation
This is going to be a giant step. I need to think about how to apply these changes to Python wrapper 😂(especially, indicator chaining) |
@LeeDongGeon1996, I know. It was a more significant thing than expected. It's likely going to be a major v2.0 release change. The old APIs all still work just fine, so there's nothing major that should break its use in the Python wrapper, with the exception of a few noted things above, and there's certainly some new features to add. Most of the work in this PR is just refactoring code to make it more maintainable and to prepare for some future stuff (e.g. streaming uses cases). It might be better to get the wrapper to a stable 1.0 before starting on some of this. |
I've thought about the way to add these features(chaining, streaming) and figured out that it needs substantial refactoring.
I think so. And if possible, I'd like to version up pythonnet so that the library can support .NET 6.0. :) |
Description
Resolve #630 and adding general indicator chaining so you can do things like:
Note: not all combinations are available as a secondary combination since some require the full quote for calculation (e.g. ATR, Heikin-Ashi require multiple candle parts).
Breaking changes
decimal
todouble
sealed
and cannot be used as a derived class (required for reusable chaining), though you can just replicate the class propertiesGetSmaExtended()
was renamed toGetSmaAnalysis()
. We'll expand on and improve extended analysis broadly in future versions. See Extended Analysis #320 on how this may change in the future.NaN
instead ofnull
in randomdiv/0
scenarios; though, we intend to revert this change to reduce user friction, see random NaN values #839 --> please note, this was reversed in v2.0.3 and now returnsnull