Skip to content

Instantly share code, notes, and snippets.

@thecatfix
Last active February 4, 2026 15:42
Show Gist options
  • Select an option

  • Save thecatfix/61f71cc4bc0ede9e029d923459793393 to your computer and use it in GitHub Desktop.

Select an option

Save thecatfix/61f71cc4bc0ede9e029d923459793393 to your computer and use it in GitHub Desktop.
KatanaEquities V2 Trading Signals - 2026-01-29

KatanaEquities Trading Signals Report - V2

Generated: January 29, 2026 Models: V2 (fixed training: BatchNorm, Dropout, proper 'both' spread) Universe: S&P 500 stock pairs


Top Consensus Pairs (V2)

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

Actionable Signals (Z-Score Entry Threshold Met)

BUY SPREAD Signals (z < -1.5)

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

SELL SPREAD Signals (z > +1.5)

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

Model Performance Summary

Model Cointegrated Pairs Prob Range
both_50ep_v2 17 0.71-0.91
both_100ep_v2 13 0.70-0.88
log_50ep_v2 6 0.71-0.78
log_75ep_v2 4 0.71-0.79
coint_10ep_v2 3 0.71-0.74
coint_25ep_v2 3 0.70-0.79

Understanding the Signal Columns

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 Action Guide

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

Risk Management

Entry Criteria (ALL must be true)

  • is_cointegrated = True
  • compression_probability > 0.70 (V2 threshold)
  • |spread_zscore| > 1.5 (meaningful divergence)
  • Sector makes sense (same industry preferred)

Exit Rules

  • Profit exit: Z-score crosses 0 (spread normalized)
  • Time exit: 20 trading days max hold
  • Stop loss: |Z-score| > 4.0 (relationship breakdown)

Position Sizing

  • Max 5% of portfolio per pair
  • Use hedge_ratio for dollar-neutral positioning
  • Never more than 3 pairs from same sector

About This Project

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.

Full story and whitepaper


References


Generated by KatanaEquities V2 - Properly trained models with BatchNorm + Dropout

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment