Yes, that’s a very helpful explanation.
Let me see if I can summarize things. Please correct me if anything is inaccurate.
Live Books
- In live books, slippage/fees are not passed through to the book, but book holding weights are calculated from the post-slippage/fee weights of individual holdings in the strategies. If you have the same fixed percentage slippage across your strategies, then this should not skew the holding weights in the parent live book.
- If you want to account for slippage and fees in a live book, they need to be set to non-zero values in the live book.
- Margin costs are not accounted for in live books, which means any live book with a short strategy is undercounting costs; same goes for a live book with a margined long strategy (mine happens to have both).
- There aren’t known trading errors off live books with margin, just costing errors.
- Due to #3, a simulated book over the same period as a live book will give a more accurate picture of the trading performance of a book of strategies utilizing margin.
- The minimum rebalance transaction threshold of a live book applies to any transactions that size up or down a book level holding. Transactions that initiate or fully close a book level holding are not subject to the threshold, but a strategy transaction that initiates or closes a strategy level holding could still be classified as a book-level rebalancing transaction subject to the threshold if other strategies are holding the same symbol on the same side.
- Setting the initial capital of a live book to too low of an amount relative to the number of positions could cause some tracking error.
- Live books should be set to rebalance as frequently as their fastest rebalancing asset. This is not a takeaway from this debugging exercise, but I have been bitten by it in the past, and this “Portfolio and book performance” thread does a good job of explaining the issue. It would be helpful for p123 to warn when running a live book with a mismatched rebalancing period to its underlying strategies.
Known Shorting Issues
- Live books do not account for short sale borrow costs (see #3 above).
- Lack of broker borrow cost data will make it hard to accurately model short strategy performance and potentially profitably trade off short ranking systems.
- On /holdings.jsp, live books will show the incorrect sign in “Return” column for short positions, but this is purely cosmetic.
- Under the Manage accounts pages, there are a few places where the term “Value” is used interchangeably for net liquidation value and net exposure, and where the term “Exposure” is used interchangeably for gross exposure and net exposure. This doesn’t cause any shorting issues but can be confusing for accounts with short positions.
a. On /app/account/details?t=investments, the lower strategy table has a column labeled “Value” which looks really to be the net exposure (long - short) of each strategy.
b. On /app/investment/details&t=summary, “Market Value” of the strategy is actually the net exposure.
c. On/app/investment/details&t=performance, the “Exposure” plot shows the net exposure.
d. If you then click Add/Reduce Exposure for a strategy, the “Strategy Exposure” looks like it refers to the gross exposure (long + short).
Anything I miss?
Did you guys make any fixes to /app/investment/details?t=performance in the last couple of weeks? It seems to be showing the correct performance for live books with shorts now.