Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pull Request
Added greeks functions as pyo3
Removed ffi bindings for greeks functions
Made reading of interest rates more generic using messages
Converted greeks.pyx containing GreeksCalculator to greeks.py for easier development
Added InterestRateData and InterestRateCurveData classes
Added quadratic interpolation function without adding a new dependency in math.pyx for interpolating interest rate curves
Added greeks tests using pyo3 functions
Fixed bug in BacktestNode when using BacktestDataConfig with a Bar
Added raise_exception optional argument to BacktestNode.run in order to have access to the call stack when a bug happens
Added possibility to serialise numpy arrays using @customdataclass (see InterestRateCurveData)
Type of change
How has this change been tested?
Tests for greeks values, test notebook already included running
There seems to be a problem for loading custom data unrelated to the pull request, because _run_streaming in BacktestNode only works with backend_session that doesn't support custom_data. When using chunk_size = None in BacktestRunConfig, loading custom data doesn't seem to work as well. It's not due to changes in the current pull request, the option strategy example is more a way to test various aspects of a backtest in terms of saving and loading custom data.