KatanaEquities Pairs Trading Signal Report by- Compression probability signals for S&P 500 stock pairs
Generated: January 26, 2026
Models: V2 (fixed training: BatchNorm, Dropout, proper 'both' spread)
Universe: S&P 500 stock pairs
These pairs appear in 4+ models with p>0.70 and cointegration confirmed:
| Pair | Models | Avg Prob | Z-Score | Action |
|---|---|---|---|---|
| CPB/GIS | 4 | 0.772 | -1.36 | MONITOR (wait for z < -2) |
| AVB/EQR | 4 | 0.775 | -2.24 | BUY SPREAD (Long AVB, Short EQR) |
| Pair | Model | Prob | Z-Score | Trade |
|---|---|---|---|---|
| AVB/EQR | both_100ep | 0.774 | -2.24 | Long AVB, Short EQR |
| EQR/UDR | coint_25ep | 0.758 | -3.18 | Long EQR, Short UDR |
| GEHC/RVTY | coint_25ep | 0.787 | -2.89 | Long GEHC, Short RVTY |
| HBAN/MTB | both_50ep | 0.731 | -3.34 | Long HBAN, Short MTB |
| ETN/GNRC | coint_25ep | 0.704 | -2.08 | Long ETN, Short GNRC |
| ALL/TRV | both_100ep | 0.735 | -1.68 | Long ALL, Short TRV |
| Pair | Model | Prob | Z-Score | Trade |
|---|---|---|---|---|
| MCHP/NXPI | both_50ep | 0.745 | +2.04 | Short MCHP, Long NXPI |
| PPL/WEC | both_50ep | 0.717 | +1.97 | Short PPL, Long WEC |
| DG/DLTR | both_50ep | 0.729 | +1.69 | Short DG, Long DLTR |
Generated: January 29, 2026 Models: V2 (fixed training: BatchNorm, Dropout, proper 'both' spread) Universe: S&P 500 stock pairs
These pairs appear in 2+ models with p>0.70 and cointegration confirmed:
| Pair | Models | Avg Prob | Z-Score | Action |
|---|---|---|---|---|
| AVB/EQR | 2 | 0.771 | -2.24 | BUY SPREAD (Long AVB, Short EQR) |
| BEN/RJF | 2 | 0.754 | 1.82 | Consider entry |
| BK/C | 2 | 0.880 | -0.36 | MONITOR (wait for |
| BRO/MRSH | 2 | 0.711 | -0.74 | MONITOR (wait for |
| CDNS/UBER | 2 | 0.746 | 1.99 | Consider entry |
| CPB/GIS | 2 | 0.732 | -1.36 | MONITOR (wait for |
| EFX/VRSK | 2 | 0.792 | -1.31 | MONITOR (wait for |
| EQR/UDR | 2 | 0.747 | -3.18 | BUY SPREAD (Long EQR, Short UDR) |
| ERIE/MRSH | 2 | 0.805 | -0.73 | MONITOR (wait for |
| FITB/KEY | 2 | 0.843 | -0.54 | MONITOR (wait for |
| Pair | Model | Prob | Z-Score | Trade |
|---|---|---|---|---|
| ROP/TYL | both_50ep | 0.771 | -3.52 | Long ROP, Short TYL |
| ROP/TYL | both_100ep | 0.730 | -3.52 | Long ROP, Short TYL |
| EQR/UDR | coint_10ep | 0.735 | -3.18 | Long EQR, Short UDR |
| EQR/UDR | coint_25ep | 0.758 | -3.18 | Long EQR, Short UDR |
| GEHC/RVTY | coint_10ep | 0.708 | -2.89 | Long GEHC, Short RVTY |
| GEHC/RVTY | coint_25ep | 0.787 | -2.89 | Long GEHC, Short RVTY |
| AVB/EQR | log_75ep | 0.790 | -2.24 | Long AVB, Short EQR |
| AVB/EQR | log_50ep | 0.752 | -2.24 | Long AVB, Short EQR |
| ETN/GNRC | coint_25ep | 0.704 | -2.08 | Long ETN, Short GNRC |
| CMS/CNP | both_50ep | 0.743 | -2.05 | Long CMS, Short CNP |
| Pair | Model | Prob | Z-Score | Trade |
|---|---|---|---|---|
| NTRS/TROW | both_50ep | 0.785 | 2.28 | Short NTRS, Long TROW |
| NTRS/TROW | both_100ep | 0.718 | 2.28 | Short NTRS, Long TROW |
| BEN/TROW | both_50ep | 0.761 | 2.25 | Short BEN, Long TROW |
| OTIS/XYL | both_50ep | 0.748 | 2.18 | Short OTIS, Long XYL |
| CDNS/UBER | both_100ep | 0.754 | 1.99 | Short CDNS, Long UBER |
| CDNS/UBER | both_50ep | 0.737 | 1.99 | Short CDNS, Long UBER |
| PNR/XYL | both_100ep | 0.777 | 1.85 | Short PNR, Long XYL |
| BEN/RJF | both_100ep | 0.778 | 1.82 | Short BEN, Long RJF |
| BEN/RJF | both_50ep | 0.731 | 1.82 | Short BEN, Long RJF |
| DG/DLTR | log_75ep | 0.734 | 1.69 | Short DG, Long DLTR |
Generated: February 03, 2026
Models: V2 (fixed training: BatchNorm, Dropout, proper 'both' spread)
Universe: S&P 500 stock pairs
These pairs appear in 2+ models with p>0.70 and cointegration confirmed:
| Pair | Models | Avg Prob | Z-Score | Action |
|---|---|---|---|---|
| APO/BEN | 2 | 0.767 | -2.63 | BUY SPREAD(Long APO, Short BEN) |
| APO/NTRS | 2 | 0.778 | -2.64 | BUY SPREAD(Long APO, Short NTRS) |
| APO/PFG | 2 | 0.755 | -2.91 | BUY SPREAD(Long APO, Short PFG) |
| AVB/EQR | 2 | 0.771 | -2.24 | BUY SPREAD(Long AVB, Short EQR) |
| BRO/MRSH | 2 | 0.711 | -0.74 | MONITOR (wait for |
| CMS/D | 2 | 0.738 | -1.40 | MONITOR (wait for |
| CMS/PEG | 2 | 0.728 | -0.94 | MONITOR (wait for |
| CPB/GIS | 2 | 0.732 | -1.36 | MONITOR (wait for |
| EFX/VRSK | 2 | 0.801 | -1.54 | Consider entry |
| EQR/UDR | 2 | 0.747 | -3.18 | BUY SPREAD(Long EQR, Short UDR) |
| Pair | Model | Prob | Z-Score | Trade |
|---|---|---|---|---|
| EQR/UDR | coint_10ep | 0.735 | -3.18 | Long EQR, Short UDR |
| EQR/UDR | coint_25ep | 0.758 | -3.18 | Long EQR, Short UDR |
| Column | What It Means | How to Use It |
|---|---|---|
| ticker_a / ticker_b | The two stocks in the pair | Trade both simultaneously |
| spread_zscore | How far apart (standard deviations) | < -2: A is cheap, > +2: A is expensive |
| compression_probability | ML confidence spread will narrow | > 0.70 = actionable signal (V2) |
| is_cointegrated | Statistical confirmation they move together | True = much safer to trade |
| hedge_ratio | Shares of B per share of A | Use for position sizing |
Z-Score Interpretation Action
─────────────────────────────────────────────────
-3.0 Extremely oversold STRONG BUY spread
-2.0 Significantly oversold BUY spread
-1.5 Entry threshold Consider entry
0.0 Normal EXIT position
+1.5 Entry threshold Consider entry
+2.0 Significantly overbought SELL spread
+3.0 Extremely overbought STRONG SELL spread
Current Signal:
- Z-Score: -2.24 (AVB undervalued vs EQR)
- Probability: 0.775 (77.5% confidence spread compresses)
- Cointegrated: Yes (statistically confirmed relationship)
- Hedge Ratio: 0.99
Trade Setup ($10k per leg):
LONG: AVB - Buy $10,000 worth
SHORT: EQR - Short $10,000 worth (hedge_ratio ≈ 1.0)
Entry: Z-score = -2.24
Exit: Z-score crosses 0 (spread normalized)
Stop: Z-score < -4.0 (relationship may be broken)
Expected Outcome: When z-score returns to 0, both positions profit from convergence.
-
is_cointegrated = True -
compression_probability > 0.70(V2 threshold) -
|spread_zscore| > 1.5(meaningful divergence) - Sector makes sense (same industry preferred)
- Profit exit: Z-score crosses 0 (spread normalized)
- Time exit: 20 trading days max hold
- Stop loss: |Z-score| > 4.0 (relationship breakdown)
- Max 5% of portfolio per pair
- Use hedge_ratio for dollar-neutral positioning
- Never more than 3 pairs from same sector
KatanaEquities is built on KatanaDNN, a proprietary 5-layer neural network originally developed for fixed income markets.
Background:
- Originated from Katana Labs (ING spinout, 2019)
- Analyzed 200M+ bond pairs with 91% accuracy
- Integrated on Bloomberg Terminal (325K+ users)
- IP acquired in 2022, adapted for equity markets
Architecture: 90→90→90→90→90→2 (or 180→90→... for 'both' spread type)
You can't vibe code a 5-layer DNN - this represents production-grade ML infrastructure, not weekend prompt engineering.
- Pairs Trading Parameter Optimization (arXiv) - Optimal entry 1.42, exit 0.37
- Cointegration vs Distance Methods - Cointegration provides stable returns
- Neural Networks for Pairs Trading
Generated by KatanaEquities V2 - Properly trained models with BatchNorm + Dropout