|
| 1 | +# NautilusTrader 1.182.0 Beta |
| 2 | + |
| 3 | +Released on 23rd December 2023 (UTC). |
| 4 | + |
| 5 | +### Enhancements |
| 6 | +- Added `CacheDatabaseFacade` and `CacheDatabaseAdapter` to abstract backing technology from Python codebase |
| 7 | +- Added `RedisCacheDatabase` implemented in Rust with separate MPSC channel thread for insert, update and delete operations |
| 8 | +- Added TA-Lib integration, thanks @rsmb7z |
| 9 | +- Added `OrderBookDelta` and `OrderBookDeltas` to serializable and publishable types |
| 10 | +- Moved `PortfolioFacade` to `Actor` |
| 11 | +- Improved `Actor` and `Strategy` usability to be more lenient to mistaken calls to `clock` and `logger` from the constructor (warnings also added to docs) |
| 12 | +- Removed `redis` and `hiredis` dependencies from Python codebase |
| 13 | + |
| 14 | +### Breaking Changes |
| 15 | +- Changed configuration objects to take stronger types as these are now serializable when registered (rather than primitives) |
| 16 | +- Changed `NautilusKernelConfig.trader_id` to type `TraderId` |
| 17 | +- Changed `BacktestDataConfig.instrument_id` to type `InstrumentId` |
| 18 | +- Changed `ActorConfig.component_id` to type `ComponentId | None` |
| 19 | +- Changed `StrategyConfig.strategy_id` to type `StrategyId | None` |
| 20 | +- Changed `Instrument`, `OrderFilled` and `AccountState` `info` field serialization due below fix (you'll need to flush your cache) |
| 21 | +- Changed `CacheConfig` to take a `DatabaseConfig` (better symmetry with `MessageBusConfig`) |
| 22 | +- Changed `RedisCacheDatabase` data structure for currencies from hashset to simpler key-value (you'll need to clear cache or delete all curreny keys) |
| 23 | +- Changed `Actor` state loading to now use the standard `Serializer` |
| 24 | +- Renamed `register_json_encoding` to `register_config_encoding` |
| 25 | +- Renamed `register_json_decoding` to `register_config_decoding` |
| 26 | +- Removed `CacheDatabaseConfig` (due above config change) |
| 27 | +- Removed `infrastructure` subpackage (now redundant with new Rust implementation) |
| 28 | + |
| 29 | +### Fixes |
| 30 | +- Fixed `json` encoding for `CacheDatabaseAdapter` from `info` field serialization fix below |
| 31 | +- Fixed `Instrument`, `OrderFilled` and `AccountState` `info` field serialization to retain JSON serializable dicts (rather than double encoding and losing information) |
| 32 | +- Fixed Binance Futures `good_till_date` value when `time_in_force` not GTD, such as when strategy is managing the GTD (was incorrectly passing through UNIX milliseconds) |
| 33 | +- Fixed `Executor` handling of queued task IDs (was not discarding from queued tasks on completion) |
| 34 | +- Fixed `DataEngine` handling of order book snapshots with very small intervals (now handles as short as 20 milliseconds) |
| 35 | +- Fixed `BacktestEngine.clear_actors()`, `BacktestEngine.clear_strategies()` and `BacktestEngine.clear_exec_algorithms()`, thanks for reporting @davidsblom |
| 36 | +- Fixed `BacktestEngine` OrderEmulator reset, thanks @davidsblom |
| 37 | +- Fixed `Throttler.reset` and reset of `RiskEngine` throttlers, thanks @davidsblom |
| 38 | + |
| 39 | +--- |
| 40 | + |
1 | 41 | # NautilusTrader 1.181.0 Beta
|
2 | 42 |
|
3 | 43 | Released on 2nd December (UTC).
|
|
0 commit comments