Insights
How to Backtest a Short-Selling Strategy
Alphanume Team · April 23, 2026
From event feed to borrow-cost-adjusted returns — the practical end-to-end workflow.
Backtesting a short-selling strategy is fundamentally different from backtesting a long strategy. The data requirements are larger, the cost components are heavier, and the implementation frictions are more material. A credible short backtest accounts for the structural costs that determine whether paper alpha survives to realized alpha — and most retail-grade backtests do not.
The end-to-end pipeline
A defensible short backtest involves:
- Universe construction (point-in-time).
- Signal generation.
- Portfolio construction.
- Execution simulation.
- Cost accounting.
- Performance evaluation.
1. Universe construction
The universe must be point-in-time accurate:
- Include only securities that were tradeable on each historical date.
- Include delisted names with proper terminal returns — see delisting bias.
- Apply size and liquidity filters using historical values, not current values — see point-in-time data.
- For shorts specifically, restrict to names that were borrowable on each date.
This last point is often skipped but is essential. Many names that "look short-able" in backtest were not in fact borrowable in real time.
2. Signal generation
The signal can be any rule producing a short candidate at a given date. For dilution-event strategies:
- Identify event flags from the Dilution Events dataset.
- Apply event-type filters (e.g., RDO with warrants only).
- Apply firm-characteristic filters (size, sector, cash runway).
- Apply market-condition filters if relevant (regime, volatility).
Use only information available as of the signal date — see look-ahead bias.
3. Portfolio construction
Decisions:
- Position sizing. Equal-weighted, value-weighted, or scaled by signal strength.
- Concentration limits. Maximum number of concurrent positions, maximum exposure per name.
- Holding period. Fixed window (e.g., 30 days) or signal-based exit.
- Capacity constraints. Maximum position relative to available borrow inventory or daily volume.
For event-driven strategies, fixed-window holding periods (e.g., 20 or 60 days) are common. The choice affects the relevant event window for benchmark abnormal-return calculations.
4. Execution simulation
Simulate realistic execution:
- Entry price. Open price the day after the signal (avoid same-day execution unless intraday data confirms feasibility).
- Slippage. Apply a basis-point slippage estimate. Higher for less liquid names.
- Locate availability. If locate data is available, exclude names that were not locatable on the entry date. See what is a locate.
- Position capacity. Cap position size relative to ADV or borrow availability.
5. Cost accounting
The hard part. The cost components:
- Commission and exchange fees. Modest but should be included.
- Slippage. Modeled at execution.
- Borrow fees. Daily accrual based on point-in-time historical borrow rate. See how borrow fees are calculated.
- Dividend liability. If the short crosses an ex-dividend date, the dividend is a cost. See dividend liability.
- Buy-in losses. Modeled probabilistically based on borrow utilization and recall indicators. See buy-in risk.
The realized return net of these costs is the borrow-cost-adjusted return. This is the headline metric.
6. Performance evaluation
Report multiple metrics:
- Mean and median return per trade.
- Hit rate (percent of trades positive).
- Win/loss ratio.
- Sharpe ratio of the strategy returns.
- Maximum drawdown.
- Concentration of returns (top decile, bottom decile contributions).
- Performance over sub-periods (consistent vs concentrated).
- Performance after fees and after gross alpha attribution.
Sensitivity analysis
Test the strategy's robustness:
- Parameter sensitivity. Vary holding period, signal threshold, position sizing.
- Cost sensitivity. Re-run with higher and lower assumed borrow rates and slippage.
- Period sensitivity. Performance across different historical sub-periods.
- Universe sensitivity. Performance across size, sector, and structural subsamples.
Common errors
- Not accounting for borrow costs (or using a single static rate).
- Look-ahead in signal computation.
- Survivorship bias in universe construction.
- Look-ahead in benchmark calibration.
- Not including delisting returns.
- Assuming locate is always available.
- Treating event-time alignment as easier than it is in practice.
Walk-forward and paper trading
Before deploying:
- Walk-forward test: run the strategy on dates after the original backtest sample. The performance gap between in-sample and out-of-sample is informative.
- Paper trade: implement the strategy on paper or in a simulated environment in real time. Realistic execution and borrow constraints become visible.
- Live test at small size: scale to production size only after the small-size results match expectations.
Related reading
Borrow-cost-adjusted return; handling corporate actions in backtests; point-in-time data; universe construction; market-data sources for systematic short-selling research; how to design an event study.
For dilution-event short-strategy backtests, Alphanume's Dilution Events dataset provides the structured event feed with point-in-time-accurate filing timestamps — the foundation that the rest of the pipeline is built on.