104 financial factors. ML-combined. Walk-forward validated.
From raw market data to ranked alpha scores in 380ms.
from axion import AxionClient
client = AxionClient(api_key="axn_live_...")
top = client.signals.screen("SP500", top_n=20)
print(top.to_dataframe())
# ticker composite_score quintile rank
# 0 NVDA 0.947 1 1
# 1 META 0.923 1 2
# 2 AAPL 0.891 1 3
# ...104+ factors from Gu, Kelly & Xiu (2020). Not black-box signals — every factor documented with academic source and expected sign.
All models retrained with purged expanding windows. OOS AUC published per signal. No lookahead bias. Ever.
JSON API. Python SDK with DataFrame output. pip install, authenticate, get signals. Five minutes to first signal.
Three steps to institutional-grade signals
GitHub or Google OAuth. Free tier. No credit card required.
One click in your dashboard. Ready in seconds.
pip install axion-sdk, authenticate, and get signals. That’s it.
Start free. Scale when you're ready.
$149/mo billed annually — save 25%
Every signal includes: model version, OOS AUC, retrain date, factor count. No black boxes. You see exactly what drives each score.
{
"ticker": "NVDA",
"composite_score": 0.947,
"quintile": 1,
"rank": 1,
"model_metadata": {
"model_version": "v3.2.1",
"oos_auc": 0.631,
"retrain_date": "2026-03-28",
"factor_count": 104,
"universe": "SP500"
}
}