NautilusTrader 1.121.0 Beta - Release Notes
In this release there has been a major change to the use of inlines for method
signatures. From the Cython docs:
"Note that class-level cdef functions are handled via a virtual function table
so the compiler won’t be able to inline them in almost all cases.".
https://cython.readthedocs.io/en/latest/src/userguide/pyrex_differences.html?highlight=inline.
It has been found that adding inline to method signatures makes no difference
to the performance of the system - and so they have been removed to reduce
'noise' and simplify the codebase. Please note that the use of inline for
module level functions will be passed to the C compiler with the expected
result of inlining the function.
Breaking Changes
BacktestEngine.add_venueaddedvenue_typeto method params.ExecutionClientaddedvenue_typeto constructor params.TraderIdinstantiation.StrategyIdinstantiation.Instrumentserialization.
Enhancements
Portfoliopending calculations if data not immediately available.- Added
instrumentssubpackage with expanded class definitions. - Added
timestamp_origin_nstimestamp when originally occurred. - Added
AccountState.is_reportedflagging if reported by exchange or calculated. - Simplified
TraderIdandStrategyIdidentifiers. - Improved
ExecutionEngineorder routing. - Improved
ExecutionEngineclient registration. - Added order routing configuration.
- Added
VenueTypeenum and parser. - Improved param typing for identifier generators.
- Improved log formatting of
MoneyandQuantitythousands commas.
Fixes
- CCXT
TICK_SIZEprecision mode - size precisions (BitMEX, FTX). - State reconciliation (various bugs).