NautilusTrader 1.125.0 Beta - Release Notes
This release introduces a major re-architecture of the internal messaging system.
A common message bus has been implemented which now handles all events via a
PUB/SUB messaging pattern. The next release will see all data being handled by
the message bus, please see the related issue for further details on this enhancement.
Another notable feature is the introduction of the order 'in-flight' concept,
which is a submitted order which has not yet been acknowledged by the
exchange/broker. Several properties on Order, and methods on Cache, now exist
to support this.
The Throttler has been refactored and optimized further. There has also been
extensive reorganization of the model sub-package, standardization of identifiers
on events, along with numerous 'under the hood' cleanups and two bug fixes.
Breaking Changes
- Renamed
MessageTypeenum toMessageCategory. - Renamed
fill.order_sidetofill.side. - Renamed
fill.order_typetofill.type. - All
Eventserialization due to domain refactorings.
Enhancements
- Added
MessageBusclass. - Added
TraderIdtoOrderandPosition. - Added
OrderTypeto OrderFilled. - Added unrealized PnL to position events.
- Added order inflight concept to
OrderandCache. - Improved efficiency of
Throttler. - Standardized events
strandrepr. - Standardized commands
strandrepr. - Standardized identifiers on events and objects.
- Improved
Accountstrandrepr. - Using
orjsonoverjsonfor efficiency. - Removed redundant
BypassCacheDatabase. - Introduced
mypyto the codebase.
Fixes
- Fixed backtest log timestamping.
- Fixed backtest duplicate initial account event.