Releases: nautechsystems/nautilus_trader
Releases · nautechsystems/nautilus_trader
NautilusTrader 1.160.0 Beta
NautilusTrader 1.160.0 Beta
Released on 28th November 2022 (UTC).
Breaking Changes
- Removed time portion from generated IDs (affects
ClientOrderId
andPositionOrderId
) - Renamed
orderbook.data.Order
toorderbook.data.BookOrder
(reduce conflicts/confusion) - Renamed
Instrument.get_cost_currency(...)
toInstrument.get_settlement_currency(...)
(more accurate terminology)
Enhancements
- Added emulated contingency orders capability to
OrderEmulator
- Moved
test_kit
module to main package to support downstream project/package testing
Fixes
- Fixed position event sequencing: now generates
PositionOpened
when reopening a closed position - Fixed
LIMIT
order fill characteristics when immediately marketable as a taker - Fixed
LIMIT
order fill characteristics when passively filled as a maker as quotes move through - Fixed canceling OTO contingent orders when still in-flight
- Fixed
RiskEngine
notional check when selling cash assets (spot currency pairs) - Fixed flush on closed file bug for persistence stream writers
NautilusTrader 1.159.0 Beta
NautilusTrader 1.159.0 Beta
Released on 18th November 2022 (UTC).
Breaking Changes
- Removed FTX integration
- Renamed
SubmitOrderList.list
->SubmitOrderList.order_list
- Slight adjustment to bar aggregation (will not use the last close as the open)
Enhancements
- Implemented
TRAILING_STOP_MARKET
orders for Binance Futures (beta) - Added
OUO
One-Updates-OtherContingencyType
with matching engine implementation - Added bar price fallback for exchange rate calculations, thanks @ghill2
Fixes
- Fixed deallocation of Rust backing struct on Python exceptions causing segfaults
- Fixed bar aggregation start times for bar specs outside typical intervals (60-SECOND rather than 1-MINUTE etc)
- Fixed backtest engine main loop ordering of time events with identically timestamped data
- Fixed
ModifyOrder
messagestr
andrepr
when no quantity - Fixed OCO contingency orders which were actually implemented as OUO for backtests
- Fixed various bugs for Interactive Brokers integration, thanks @limx0 and @rsmb7z
- Fixed
pyarrow
version parsing, thanks @ghill2 - Fixed returning venue from
InstrumentId
, thanks @rsmb7z
NautilusTrader 1.158.0 Beta
NautilusTrader 1.158.0 Beta
Released on 3rd November 2022 (UTC).
Breaking Changes
- Added
LiveExecEngineConfig.reconciliation
boolean flag to control if reconciliation is active - Removed
LiveExecEngineConfig.reconciliation_auto
(unclear naming and concept) - All Redis keys have changed to a lowercase convention (please either migrate or flush your Redis)
- Removed
BidAskMinMax
indicator (to reduce total package size) - Removed
HilbertPeriod
indicator (to reduce total package size) - Removed
HilbertSignalNoiseRatio
indicator (to reduce total package size) - Removed
HilbertTransform
indicator (to reduce total package size)
Enhancements
- Improved accuracy of clocks for backtests (all clocks will now match generated
TimeEvent
s) - Improved risk engine checks for
reduce_only
orders - Added
Actor.request_instruments(...)
method - Added
Order.would_reduce_only(...)
method - Extended instrument(s) Req/Res handling for
DataClient
and `Actor
Fixes
- Fixed memory management for Rust backing structs (now being properly freed)
NautilusTrader 1.157.0 Beta
NautilusTrader 1.157.0 Beta
Released on 24th October 2022 (UTC).
Breaking Changes
- None
Enhancements
- Added experimental local order emulation for all order types (except
MARKET
andMARKET_TO_LIMIT
) see docs - Added
min_latency
,max_latency
andavg_latency
toHttpClient
base class
Fixes
- Fixed Binance Spot
display_qty
for iceberg orders, thanks @jackma - Fixed Binance HTTP client error logging
NautilusTrader 1.156.0 Beta
NautilusTrader 1.156.0 Beta
Released on 19th October 2022 (UTC).
This will be the final release with support for Python 3.8.
Breaking Changes
- Added
OrderSide.NONE
enum variant - Added
PositionSide.NONE
enum variant - Changed order of
TriggerType
enum variants - Renamed
AggressorSide.UNKNOWN
->AggressorSide.NONE
(for consistency with other enums) - Renamed
Order.type
toOrder.order_type
(reduces ambiguity and aligns with Rust struct field) - Renamed
OrderInitialized.type
toOrderInitialized.order_type
reduces ambiguity) - Renamed
Bar.type
toBar.bar_type
(reduces ambiguity and aligns with Rust struct field) - Removed redundant
check_position_exists
flag - Removed
hyperopt
as considered unmaintained and there are better options - Existing pickled data for
QuoteTick
is now invalid (change to schema for correctness) - Existing catalog data for
OrderInitialized
is now invalid (change to schema for emulation)
Enhancements
- Added configurable automated in-flight order status checks
- Added order
side
filter to numerous cache order methods - Added position
side
filter to numerous cache position methods - Added optional
order_side
tocancel_all_orders
strategy method - Added optional
position_side
toclose_all_positions
strategy method - Added support for Binance Spot second bars
- Added
RelativeVolatilityIndex
indicator, thanks @graceyangfan - Extracted
OrderMatchingEngine
fromSimulatedExchange
with refinements - Extracted
MatchingCore
fromOrderMatchingEngine
- Improved HTTP error handling and client logging (messages now contain reason)
Fixes
- Fixed price and size precision validation for
QuoteTick
from raw values - Fixed IB adapter data parsing for decimal precision
- Fixed HTTP error handling and releasing of response coroutines, thanks @jackma
- Fixed
Position
calculations and account for when any base currency == commission currency, thanks @jackma
NautilusTrader 1.155.0 Beta
NautilusTrader 1.155.0 Beta
Released on September 15th 2022 (UTC).
This is an early release to address some parsing bugs in the FTX adapter.
Breaking Changes
None
Enhancements
None
Fixes
- Fixed parsing bug for FTX futures
- Fixed parsing bug for FTX
Bar
NautilusTrader 1.154.0 Beta
NautilusTrader 1.154.0 Beta
Released on September 14th 2022 (UTC).
Breaking Changes
- Changed
ExecEngineConfig
allow_cash_positions
default toTrue
(more typical use case) - Removed
check
param fromBar
(always checked for simplicity)
Enhancements
- Added
MARKET_TO_LIMIT
order implementation forSimulatedExchange
- Make strategy
order_id_tag
truly optional and auto incrementing - Added PsychologicalLine indicator, thanks @graceyangfan
- Added initial Rust parquet integration, thanks @twitu and @ghill2
- Added validation for setting leverages on
CASH
accounts - De-cythonized live data and execution client base classes for usability
Fixes
- Fixed limit order
IOC
andFOK
behaviour, thanks @limx0 for identifying - Fixed FTX
CryptoFuture
instrument parsing, thanks @limx0 - Fixed missing imports in data catalog example notebook, thanks @gaugau3000
- Fixed order update behaviour, affected orders:
LIMIT_IF_TOUCHED
MARKET_IF_TOUCHED
MARKET_TO_LIMIT
STOP_LIMIT
NautilusTrader 1.153.0 Beta
NautilusTrader 1.153.0 Beta
Released on September 6th 2022 (UTC).
Breaking Changes
None
Enhancements
- Added trigger orders for FTX adapter
- Improved
BinanceBar
to handle enormous quote volumes - Improved robustness of instrument parsing for Binance and FTX adapters
- Improved robustness of WebSocket message handling for Binance and FTX adapters
- Added
override_usd
option for FTX adapter - Added
log_warnings
config option for Binance and FTX instrument providers - Added
TRD_GRP_005
enum variant for Binance spot permissions
Fixes
- Fixed bar aggregator partial bar handling
- Fixed
CurrencyType
variants in Rust - Fixed missing
encoding
in Catalog parsing method, thanks @limx0 and @aviatorBeijing
NautilusTrader 1.152.0 Beta
NautilusTrader 1.152.0 Beta
Released on September 1st 2022 (UTC).
Breaking Changes
- Renamed
offset_type
totrailing_offset_type
- Renamed
is_frozen_account
->frozen_account
- Removed
bar_execution
from config API (implicitly turned on with bars currently)
Enhancements
- Added
TRAILING_STOP_MARKET
order implementation forSimulatedExchange
- Added
TRAILING_STOP_LIMIT
order implementation forSimulatedExchange
- Added all simulated exchange options to
BacktestVenueConfig
Fixes
NautilusTrader 1.151.0 Beta
NautilusTrader 1.151.0 Beta
Released on August 22nd 2022 (UTC).
Breaking Changes
None
Enhancements
- Added
on_historical_data
method with wiring for functionality - Added 'unthrottled' 0ms order book updates for Binance Futures
- Improved robustness of
WebSocketClient
base during reconnects
Fixes
- Fixed sdist includes for Rust Cargo files (fixes pip installs)
- Fixed
LatencyModel
integer overflows, thanks @limx0 - Fixed parsing of Binance Futures
FUNDING_FEE
updates - Fixed
asyncio.tasks.gather
for Python 3.10+