Spaces:
Running
Download README.md from s-ttp/slipstream: direct link, hf CLI and curl.
- Browser
- Download file 5.05 kB
-
https://huggingface.co/spaces/s-ttp/slipstream/resolve/main/README.md
- Command line
-
hf download hf://spaces/s-ttp/slipstream/README.md
-
curl -L -o README.md https://huggingface.co/spaces/s-ttp/slipstream/resolve/main/README.md
title: Slipstream
emoji: π
colorFrom: blue
colorTo: green
sdk: docker
app_port: 7860
pinned: false
short_description: Smart-money, quality, trend-adaptive paper fund + picks
Slipstream
A quality, trend-adaptive equity paper fund that drafts the smart money.
Strategy (rule v2, Oct 2026): hold the large-caps that concentrated 13F managers are collectively buying β every filer with 10β150 positions, $250Mβ$100B and β₯40% in its top 10 (rule-based, ~900β1,500 a quarter); signal = 2Β·new + add β 2Β·exit conviction positions β restricted to the top-1,000 by market cap and to companies whose ROA is in the top 30% of their sector; top-20 dollar-weighted (1β10% per name, β€5 per sector) with a dynamic sector cap (each sector 30% Β± its 12-1m relative strength, 15β45%) and a regime overlay that rotates into large-cap momentum when SPY is in a confirmed downtrend. An AI overlay excludes only names hit by a critical adverse event. Rebalanced monthly.
Backtest 2014-03 β 2026-10 (survivorship-free, data through d β 1, 20 bp/side, Sharpe net of T-bills):
CAGR 19.9% vs SPY 13.9%, Sharpe 0.85 vs 0.73, max drawdown -37.5% vs -33.7%,
alpha +3.9% (t 1.8), Ξ² 1.17. Chosen on 2016β2021 from ~210 configurations; it trailed SPY over the
never-used 2014-03 β 2016-02 window. Research and pre-registrations: Quant Model/data/research/slipstream/.
The page shows the live Alpaca paper portfolio, performance vs SPY, the current target book, and the informational Top AI Picks of the Month panels.
Setup (Space secrets)
Add these under Settings β Variables and secrets:
| Secret | Purpose |
|---|---|
ALPACA_API_KEY, ALPACA_SECRET_KEY |
your Alpaca paper account (required) |
ALPACA_PAPER_ENDPOINT |
optional, defaults to https://paper-api.alpaca.markets |
REBALANCE_TOKEN |
enables the rebalance executor (send as X-Rebalance-Token) |
GEMINI_API_KEY |
optional β picks screener + event-risk overlay (preferred). Model via GEMINI_MODEL, default gemini-flash-lite-latest (~$0.10/mo at this volume) |
ALPHAVANTAGE_API_KEY |
optional β needed to refresh the News panel with live data |
ANTHROPIC_API_KEY / OPENAI_API_KEY |
optional β fallback screeners if no GEMINI_API_KEY |
SLIPSTREAM_CASH_BUFFER |
optional, default 0.01 β fraction of equity the executor keeps in cash |
The picks panels ship with a cached fallback (data/*_deep.json): a panel whose live
refresh fails β no key, a rate-limit, a scrape change β serves the last good result flagged
stale instead of erroring. A key only enables the β» Refresh button to re-screen live.
Screener preference: Gemini β Anthropic β OpenAI.
The fund only ever trades the paper endpoint. Rebalance is dry-run by default; a real
submit needs dry=0 and the matching REBALANCE_TOKEN.
Rebalance
POST /api/rebalance?dry=1 returns the trade plan (no orders). Monthly, trigger a real
rebalance with POST /api/rebalance?dry=0 and header X-Rebalance-Token: <token>. A Hugging
Face scheduled Job (rebalance, weekdays 15:00 UTC, ops/hf_ops.py in the Refinery Space) does this
every weekday, and the Space no-ops until the first market-open day of the month.
The executor sizes the book off (1 β CASH_BUFFER) Γ equity, never 100%: a fully-invested
target plus the min-trade deadband (small overweights are never sold) had left the account on a
standing margin balance. Sells are placed first and waited for before buys go in.
Ops
- Supervisor β
GET /api/supervisoris a flag-only monitor (tracking vs SPY, guardrails, freshness). The HF scheduled Jobsupervisorruns it daily (13:00 UTC). On ALERT it opens a discussion on this Space, which HF notifies you about. It doubles as the keep-alive: free Spaces sleep after 48 h idle, and the weekday-only rebalance ping left it asleep every weekend. All schedules (refresh, rebalance, supervisor, shadow book) are HF Jobs. See the Refinery README. - Restarts are safe. All fund state lives in Alpaca.
data/caches (picks, risk screen) are ephemeral inside the container β a restart just recomputes them (one LLM call per panel, one for the screen), and the shipped caches serve meanwhile. - Public by design. The dashboard, holdings and dry-run plan are world-readable (it's a paper
account). If you flip the Space to private under Settings, give the Jobs' requests an
Authorization: Bearerheader (ops/hf_ops.pycurrently calls the public URL).
Data refresh
The smart-money signal bundle in data/ is regenerated by engine/export_bundle.py (run where
the licensed Sharadar cache lives) and committed. Refresh it weekly: 13F is quarterly and
~45-day lagged, but prices.parquet feeds the sector-strength and momentum sleeves, and the
supervisor WATCHes at 10 days / ALERTs at 14. The regime test (SPY vs 200-day MA) additionally
pulls SPY live from Alpaca, so the fund's biggest switch never waits on the bundle.