Skip to content

NautilusTrader 1.121.0 Beta

Compare
Choose a tag to compare
@github-actions github-actions released this 30 May 07:40
bd41532

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_venue added venue_type to method params.
  • ExecutionClient added venue_type to constructor params.
  • TraderId instantiation.
  • StrategyId instantiation.
  • Instrument serialization.

Enhancements

  • Portfolio pending calculations if data not immediately available.
  • Added instruments subpackage with expanded class definitions.
  • Added timestamp_origin_ns timestamp when originally occurred.
  • Added AccountState.is_reported flagging if reported by exchange or calculated.
  • Simplified TraderId and StrategyId identifiers.
  • Improved ExecutionEngine order routing.
  • Improved ExecutionEngine client registration.
  • Added order routing configuration.
  • Added VenueType enum and parser.
  • Improved param typing for identifier generators.
  • Improved log formatting of Money and Quantity thousands commas.

Fixes

  • CCXT TICK_SIZE precision mode - size precisions (BitMEX, FTX).
  • State reconciliation (various bugs).