QuantRocket 1.8.0 is now available. All users are encouraged to update to the latest version. See how to update.
Highlights
- Implementation shortfall analysis. Compare Moonshot backtest results with live PNL to see how well live trading tracks your backtest. See the usage guide.
- Trade combos (aka spreads), including native futures spreads such as calendar spreads or intercommodity spreads, option combos such as straddles or strangles, and stock combos. Define combo legs, collect real-time data for the combo, and submit combo orders through the blotter. See the usage guide.
- The realtime data service now supports creating multiple aggregate databases from a single tick database. Previously, each tick database could have only a single aggregate database associated with it.
API changes
- The function
quantrocket.moonshot.intraday_to_dailyhas been moved tomoonchart.utils.intraday_to_daily. The rationale for this move is that the function now supports both Moonshot and PNL CSVs and is oriented toward prepping these CSVs for Moonchart. -
PNL CSVs downloaded from the blotter are now returned with intraday granularity (with a Time column) instead of daily granularity. In connection with this change, the timeparameter, which controlled the snapshot time for daily PNL results, has been removed fromquantrocket blotter pnl/quantrocket.blotter.download_pnl. Daily granularity can be obtained using themoonchart.utils.intraday_to_dailyfunction.
Complete 1.8.0 release notes
quantrocket/blotter:1.8.0
- Combo orders are now supported. See the usage guide.
- PNL CSVs are now returned with intraday granularity (with a Time column) instead of daily granularity. Daily granularity can be obtained using the
moonchart.utils.intraday_to_dailyfunction. - The
timeparameter, which controlled the snapshot time for daily PNL results, has been removed fromquantrocket blotter pnl/quantrocket.blotter.download_pnl. - Column names in detailed PNL CSVs now include the symbol and conid, instead of the conid only.
- New fields added to PNL CSVs: TotalHoldings and Turnover
quantrocket-client:1.8.3
- New function:
quantrocket.blotter.read_pnl_csv. This utility function loads a PNL CSV into a DataFrame, similar toquantrocket.moonshot.read_moonshot_csv. - The function
quantrocket.moonshot.intraday_to_dailyhas been moved tomoonchart.utils.intraday_to_daily. The old function is still available as an alias but will print a deprecation warning. - The function
get_reuters_estimates_reindexed_likeis now indexed to theAnnounceDatefield. Previously it was indexed to theUpdatedDatefield. These fields often have the same date but not always. We consider theAnnounceDatefield more meaningful.
quantrocket/license-service:1.8.0
- Change license server backend to AWS Lambda after previous backend (Webtask) was deprecated. (The license service queries the license server backend to obtain the user's subscriptions and permissions.)
quantrocket/master:1.8.0
- Define combos in the securities master database. See the usage guide.
quantrocket-moonchart:1.8.0
- Implementation shortfall tear sheets. See the usage guide.
- Added function
moonchart.utils.intraday_to_daily. See the API Reference.
quantrocket-moonshot:1.8.0
- Add a
--no-cache/no_cacheoption which can be used to avoid using cached files on backtests, parameter scans, and ML walk-foward optimizations. This can be useful if the underlying data has changed. See the usage guide.
quantrocket/postgres:1.8.0
- Update to TimescaleDB version 1.4.1. (This update makes it possible for the realtime service to support multiple aggregate databases per tick database.)
quantrocket/realtime:1.8.0
- Collect real-time data for combos. See the usage guide.
- Multiple aggregate databases can now be created from a single tick database. Previously, each tick database could have only a single aggregate database associated with it.
