Install
$ agentstack add skill-senpi-ai-senpi-skills-cougar ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
🐆 COUGAR v1.0 — U.S. Equity Long/Short Hedge Fund
Cougar trades the tokenized U.S. equity market on Hyperliquid — now the fastest-growing corner of the venue (HIP-3 stock markets did >$18B in the first half of June 2026, and 23 of the top-30 HL assets by open interest are equities
- commodities, not crypto). It runs the classic equity hedge-fund play: **long
the strongest stocks, short the weakest, market-neutral — harvesting the dispersion** between leaders and laggards, which is at a multi-decade extreme. One producer script (cougar-producer.py) serves both books; the COUGAR_LEG env var selects which.
| Book | Style | Wallet env | Runtime | Scanner | |---|---|---|---|---| | long | Long the RS leaders | COUGAR_LONG_WALLET | runtime-long.yaml | cougar_long_signals | | short | Short the RS laggards | COUGAR_SHORT_WALLET | runtime-short.yaml | cougar_short_signals |
Funded ~equally, the two books' notional offsets → ~beta-neutral: Cougar makes money on the spread between the best and worst tokenized stocks, not on whether the stock market goes up or down.
What makes Cougar different
- vs. Octopus (market-neutral): same dispersion method, different universe —
Octopus ranks the crypto cross-section, Cougar ranks tokenized US equities.
- vs. Bobcat (XYZ big-tech, single-agent): Bobcat is long-only on a fixed
set; Cougar is a long/short fund that ranks the whole equity cross-section.
- vs. Spider (AI/Tech): Spider is an AI/tech sector momentum book; Cougar is
broad stock-selection across the equity universe, both directions.
The equity universe
A curated tokenized-US-equity whitelist (config.equities), intersected each tick with the live instrument board + a liquidity floor — so dead/thin names are skipped and new trade.xyz listings auto-join once added:
NVDA · TSLA · AAPL · META · MSFT · GOOGL · AMZN · AMD · MU · INTC · TSM · ORCL · NFLX · AVGO · CRM · COIN · MSTR · PLTR · SMCI · UBER · SHOP · SPCX
Tokenized equities trade 24/7 on Hyperliquid (no market-hours gating).
Scoring (both books; minScore 5)
Each tick: rank the universe by 24h relative strength = own 24h return − the equity-universe mean; take the top (long) / bottom (short) rankPoolSize, then:
| Component | Pts | |---|---| | Relative strength | +3 (≥2×rsThresholdPct 3%) / +2 (≥1×) / +1 (any lead/lag) | | 4h absolute trend | +2 (confirms direction) / skip (opposes — never long a downtrend / short an uptrend) | | 1h confirmation | +1 (confirms) / −1 (opposes) | | Own 24h momentum sign | +1 (with direction) / −1 (against) | | RSI guard | −2 (long: blow-off >80 / short: capitulation <20) |
Execution & exit
- both books: slots 4, margin_pct 20%, strict 5x clamp (equities cap low at venue), tick 300s
- DSL moderate dispersion management: phase1 max_loss 14%,
weak_peak_cutON (8h @ 2.0),dead_weight_cutON (16h — recycle a stalled leg into a fresher leader),hard_timeout7d (equities trend longer than crypto); phase28%→0 / 18%→40 / 35%→60 / 60%→78 / 100%→88
XYZ handling
The universe is all XYZ — candle fetches route with dex="xyz" (the producer keys off the xyz: prefix). The main/xyz clearinghouse sections are two VIEWS of ONE cross-margined wallet, so get_positions() takes accountValue ONCE via max() — never sums.
Risk gates (risk.guard_rails)
| Gate | long | short | |---|---|---| | dailylosslimitpct | 12 | 12 | | maxentriesperday | 6 | 6 | | maxconsecutivelosses | 4 | 4 | | cooldownminutes | 60 | 60 | | drawdownhaltpct | 20 | 20 | | perassetcooldownminutes | 240 | 240 | | dataretentionhours | 168 | 168 | | drawdownresetondayrollover | true | true |
Files
| File | Purpose | |---|---| | runtime-long.yaml / runtime-short.yaml | Per-book runtime spec | | scripts/cougar-producer.py | Book-aware producer (equity cross-section RS rank + dispersion scoring) | | scripts/cougar_config.py | Leg resolution + SenpiClient wrapper + helpers | | config/cougar-long-config.json / config/cougar-short-config.json | Per-book tunables (equity whitelist, RS threshold) |
Operator install
See [README.md](README.md) — two daemons (COUGAR_LEG=long and COUGAR_LEG=short) on two equally-funded wallets (50/50, to stay beta-neutral), each with its own runtime YAML.
Hard rule for user-conversation Claude sessions
User-conversation Claude sessions MUST NOT call any of: create_position, close_position, edit_position, ratchet_stop_add, ratchet_stop_edit, ratchet_stop_delete, cancel_order, strategy_close, strategy_close_positions.
These tools are reserved for the producer daemon (entry path) and the DSL ratchet engine (exit path). User-conversation sessions are read-only.
License
Apache-2.0 — Copyright 2026 Senpi (https://senpi.ai)
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Senpi-ai
- Source: Senpi-ai/senpi-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.