This article demonstrates a vector autoregression (VAR) model using daily returns for a basket of U.S. homebuilding stocks. It fits the model on a rolling historical window, forecasts each asset’s next return, and converts the cross-sectional forecasts into…
Knowledge library
Summaries and key ideas, written by Stratmill's research agent, of the books, papers, articles and code our AI agents read. Each page links to its original.
Search the library
95 documents
This article walks through implementing a price-spread pairs trade in Zorro using GDX and GLD as an example. It defines the spread as one asset’s price minus a hedge-ratio-adjusted price of the other, then standardises the spread with a rolling z-score. The…
This article demonstrates a convex optimisation workflow for a crypto perpetual futures portfolio. It combines expected returns estimated from cross-sectional momentum and carry features with a breakout signal, then uses a covariance estimate to represent…
This article demonstrates ways to speed up a portfolio backtest implemented in R. It begins with profiling a cash backtest that processes prices and target weights across dates, updates holdings using a no-trade buffer, accounts for commissions, and records…
This course overview presents a systematic trading process built around identifying an economic reason for an edge before optimizing a backtest. It recommends forming a hypothesis first, then examining data and testing the idea, and describes a framework for…
The document describes reconstructing monthly S&P 500 membership history from the current constituent list and a record of index additions and removals. Working backward month by month, the method removes stocks that were added and restores those that were…
The article demonstrates a spreadsheet workflow for exploring a claimed weekday pattern in gold-related prices. Using GLD price history, it derives log returns and calendar fields, groups returns by weekday in a pivot table, and charts the sums. It reports…
The document introduces Shannon entropy as a way to examine how random price movements appear over a chosen lookback period. It describes applying the measure to price data, selecting a period and pattern length, and plotting entropy values for several…
The article explains how to split SPY’s adjusted daily price data into overnight and intraday returns. It defines the overnight leg as holding from one day’s close to the next open, and the intraday leg as holding from the open to that day’s close. Adjusting…
The article presents a research philosophy for systematic trading centered on identifying genuine market mechanisms and combining modest opportunities. An edge should have an explanation for why another participant accepts the other side of the trade, such…
The article demonstrates a spreadsheet-based permutation test for assessing whether an observed market pattern could arise by chance. Its example examines whether Bitcoin returns are unusually high on Tuesdays: daily returns are randomly shuffled, grouped by…
The article introduces rolling and expanding windows through stock-price examples. A rolling window calculates a statistic, such as a mean, over a fixed number of recent observations. As each new observation arrives, the window advances and older data drops…
This introductory article asks whether deep learning can be useful for market forecasting and outlines the practical work involved. A trading researcher must frame the prediction as a suitable task, scale inputs, choose a network structure, tune model and…
This review surveys research on selecting and trading equity pairs, comparing distance-based matching, cointegration, correlation, and other selection criteria. A common design forms candidate pairs over one period and trades them during a subsequent,…
The article explains how an autoregressive model predicts the next exchange-rate value from prior observations, then examines whether those predictions could support AUD/USD trades. It discusses partial autocorrelation across several sampling intervals, fits…
The article demonstrates how to estimate historical FX rollover payments using central bank policy rates, a broker charge, and currency conversion. It implements the calculations in both Zorro and Python. The long and short roll estimates depend on the…
The article demonstrates how to retrieve daily stock prices and company financial data through Finnhub’s API, then organize the responses into data frames. It describes the range of available information, including price history, current and historical…
This walkthrough tests whether a stock’s unadjusted closing share price predicts its return over the following year. It describes preparing adjusted price data while retaining unadjusted closes, trading-volume information, and index membership, then sorting…
This article uses k-means clustering to group daily GBP/JPY candles according to their high, low, and close relative to the open. It examines whether particular candle clusters tend to follow one another and whether returns after each cluster differ. The…
This tutorial builds an adaptive pairs trading example with gold and gold-mining ETF prices. A Kalman filter estimates a changing hedge ratio and intercept as new observations arrive. The prediction error is compared with its estimated standard deviation to…
The article distinguishes risk premia, which compensate traders for bearing unwanted risks, from inefficiencies caused by participants who must trade for reasons other than price. Forced liquidations, redemptions, reporting practices, index changes, and…
The document summarizes proposed cross-sectional signals for judging whether equity options are relatively cheap or expensive. Its central comparison is implied volatility against volatility that later realizes: options may be candidates to buy when implied…
This guide outlines the capabilities and working practices needed to develop algorithmic trading systems. It highlights programming, statistics, and risk management, with Python and R presented as useful research tools. It also gives criteria for choosing a…
This article argues that programming simulations can make statistical questions more intuitive than relying solely on classical formulas. It illustrates the approach with roulette: under a stated single-number win probability, repeated simulated sequences…