Not in the top 1,000 by GitHub stars
agiprolabs/claude-trading-skills
68 trading, DeFi, and quantitative finance Agent Skills. Works with Claude Code, Cursor, Codex, Gemini CLI, and 30+ other tools.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/backtrader/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/birdeye-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/coingecko-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/cointegration-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/copy-trading/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/correlation-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/cost-basis-engine/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/crypto-tax-export/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/custom-indicators/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/defillama-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/dex-execution/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/dex-pool-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/dexscreener-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/exit-strategies/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/feature-engineering/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/fixed-income/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/helius-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/impermanent-loss/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/jito-bundles/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/kalshi-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/kalshi-crypto-index-markets/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/kalshi-weather-markets/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/kelly-criterion/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/liquidity-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/lp-math/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/market-microstructure/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/market-microstructure-traditional/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/mean-reversion/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/mev-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/ohlcv-processing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/options-pricing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/pandas-ta/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/polymarket-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/portfolio-analytics/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/position-sizing/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/prediction-market-live-ops/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/prediction-market-strategy/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/pumpfun-mechanics/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/raptor-dex/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/regime-detection/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/regulatory-reporting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/risk-management/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/rl-execution/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/sentiment-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/shredstream/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/signal-classification/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/slippage-modeling/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/solana-rpc/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/solana-tx-building/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/solanatracker-api/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/strategy-framework/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/sybil-detection/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/ta-lib/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/tax-liability-tracking/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/tax-loss-harvesting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/token-economics/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/token-holder-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/trade-accounting/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/trade-journal/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/trading-visualization/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/vectorbt/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/volatility-modeling/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/walk-forward-validation/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/wallet-profiling/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/wash-sale-detection/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/whale-tracking/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/yellowstone-grpc/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 981e1d736cdc
No earlier version was observed for comparison.
skills/yield-analysis/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
981e1d736cdc → 981e1d736cdc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 981e1d736cdc
No earlier version was observed for comparison.
Verified commit 981e1d736cdc02bdc1c55c74ec9224e956414706
git clone --filter=blob:none --no-checkout https://github.com/agiprolabs/claude-trading-skills.git .hotskills/agiprolabs-claude-trading-skills && git -C .hotskills/agiprolabs-claude-trading-skills checkout --detach 981e1d736cdc02bdc1c55c74ec9224e956414706
# Copy each selected skill directory from .hotskills/agiprolabs-claude-trading-skills into .claude/skills/<skill-name>/Heat
3.6- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- backtrader
skills/backtrader - birdeye-api
skills/birdeye-api - coingecko-api
skills/coingecko-api - cointegration-analysis
skills/cointegration-analysis - copy-trading
skills/copy-trading - correlation-analysis
skills/correlation-analysis - cost-basis-engine
skills/cost-basis-engine - crypto-tax-export
skills/crypto-tax-export - custom-indicators
skills/custom-indicators - defillama-api
skills/defillama-api - dex-execution
skills/dex-execution - dex-pool-analysis
skills/dex-pool-analysis - dexscreener-api
skills/dexscreener-api - exit-strategies
skills/exit-strategies - feature-engineering
skills/feature-engineering - fixed-income
skills/fixed-income - helius-api
skills/helius-api - impermanent-loss
skills/impermanent-loss - jito-bundles
skills/jito-bundles - kalshi-api
skills/kalshi-api - kalshi-crypto-index-markets
skills/kalshi-crypto-index-markets - kalshi-weather-markets
skills/kalshi-weather-markets - kelly-criterion
skills/kelly-criterion - liquidity-analysis
skills/liquidity-analysis - lp-math
skills/lp-math - market-microstructure
skills/market-microstructure - market-microstructure-traditional
skills/market-microstructure-traditional - mean-reversion
skills/mean-reversion - mev-analysis
skills/mev-analysis - ohlcv-processing
skills/ohlcv-processing - options-pricing
skills/options-pricing - pandas-ta
skills/pandas-ta - polymarket-api
skills/polymarket-api - portfolio-analytics
skills/portfolio-analytics - position-sizing
skills/position-sizing - prediction-market-live-ops
skills/prediction-market-live-ops - prediction-market-strategy
skills/prediction-market-strategy - pumpfun-mechanics
skills/pumpfun-mechanics - raptor-dex
skills/raptor-dex - regime-detection
skills/regime-detection - regulatory-reporting
skills/regulatory-reporting - risk-management
skills/risk-management - rl-execution
skills/rl-execution - sentiment-analysis
skills/sentiment-analysis - shredstream
skills/shredstream - signal-classification
skills/signal-classification - slippage-modeling
skills/slippage-modeling - solana-rpc
skills/solana-rpc - solana-tx-building
skills/solana-tx-building - solanatracker-api
skills/solanatracker-api - strategy-framework
skills/strategy-framework - sybil-detection
skills/sybil-detection - ta-lib
skills/ta-lib - tax-liability-tracking
skills/tax-liability-tracking - tax-loss-harvesting
skills/tax-loss-harvesting - token-economics
skills/token-economics - token-holder-analysis
skills/token-holder-analysis - trade-accounting
skills/trade-accounting - trade-journal
skills/trade-journal - trading-visualization
skills/trading-visualization - vectorbt
skills/vectorbt - volatility-modeling
skills/volatility-modeling - walk-forward-validation
skills/walk-forward-validation - wallet-profiling
skills/wallet-profiling - wash-sale-detection
skills/wash-sale-detection - whale-tracking
skills/whale-tracking - yellowstone-grpc
skills/yellowstone-grpc - yield-analysis
skills/yield-analysis
How it works
backtrader
When your agent uses it
Event-driven backtesting with bar-by-bar execution, complex order types, multiple analyzers, and custom indicators
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
2,535 tokensWhen the skill is activated
Reference documents
4,352 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Event-Driven vs Vectorized
- Core Concepts
- Order Types
- Position Sizing (Sizers)
- Crypto Considerations
- Multi-Timeframe
- Custom Indicators
- Plotting
- Integration with Other Skills
- Files
- Quick Start
Scripts executed separately
scripts/backtest_strategy.pyscripts/bracket_orders.py
Files
../../.claude-plugin/marketplace.jsonasset896 bytes../../.claude-plugin/plugin.jsonasset365 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesSKILL.mdcore9,792 bytesreferences/api_guide.mddoc7,843 bytesreferences/strategy_patterns.mddoc8,188 bytesscripts/backtest_strategy.pyruns14,870 bytesscripts/bracket_orders.pyruns16,198 bytes
Read SKILL.md
# Backtrader
Backtrader is a Python event-driven backtesting framework that processes data bar-by-bar, simulating realistic execution with a built-in broker, order management, and position tracking. Unlike vectorized frameworks (vectorbt, pandas), backtrader walks through history one bar at a time, firing callbacks that let you implement complex order logic that depends on previous fills, partial executions, and conditional brackets.
## Event-Driven vs Vectorized
| Aspect | Backtrader (event-driven) | vectorbt (vectorized) |
|---|---|---|
| Execution model | Bar-by-bar callbacks | Whole-array operations |
| Speed | Slower (Python loop) | Fast (NumPy/Numba) |
| Order types | Market, limit, stop, stop-limit, bracket, OCO | Market only (native) |
| Realism | Built-in broker with commission, slippage, margin | Manual slippage modeling |
| Multi-timeframe | Native resampledata | Manual alignment |
| Best for | Complex strategies, bracket orders, portfolio | Fast parameter sweeps, simple signals |View the complete source on GitHubbirdeye-api
When your agent uses it
Solana token market data via Birdeye — prices, OHLCV, trades, token metadata, security checks, and trader activity
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
2,230 tokensWhen the skill is activated
Reference documents
4,494 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Core Endpoints
- Wallet Endpoints
- WebSocket API
- Pricing & CU Budget
- Files
Scripts executed separately
scripts/fetch_ohlcv.pyscripts/token_screener.py
Files
SKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesSKILL.mdcore7,398 bytesreferences/birdeye_endpoints.mddoc4,999 bytesreferences/error_handling.mddoc5,931 bytesreferences/token_overview_fields.mddoc4,138 bytesscripts/fetch_ohlcv.pyruns8,613 bytesscripts/token_screener.pyruns11,303 bytes
Read SKILL.md
# Birdeye API — Solana Market Data
Birdeye aggregates market data across all Solana DEXes (and 13 other chains). Prices, OHLCV candles, trade history, token metadata, security info, and wallet analytics. Primary data source for Solana token research and historical analysis.
**Note**: For real-time trading systems, use Yellowstone gRPC (see `yellowstone-grpc` skill). Birdeye is best for historical data, research, and analysis workflows.
## Quick Start
### 1. Get an API Key
Sign up at [birdeye.so](https://birdeye.so) — free tier: 30K compute units/month, 1 req/sec.
```bash
[Credential-related source omitted]View the complete source on GitHubcoingecko-api
When your agent uses it
Broad crypto market data from CoinGecko covering 13,000+ tokens. Global market stats, historical price data going back years, exchange volumes, trending tokens, and category filters. Best for macro analysis and long-term historical data.
What it loads into context
Frontmatter
98 tokensAlways available to the agent
SKILL.md
1,792 tokensWhen the skill is activated
Reference documents
5,409 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use This Skill
- Quick Start
- Authentication
- Rate Limiting
- Finding CoinGecko Token IDs
- Key Limitations
- Files
Scripts executed separately
scripts/fetch_market_data.pyscripts/historical_analysis.py
Files
SKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesSKILL.mdcore6,472 bytesreferences/data_quality.mddoc4,875 bytesreferences/endpoints.mddoc8,042 bytesreferences/id_mapping.mddoc4,880 bytesscripts/fetch_market_data.pyruns9,794 bytesscripts/historical_analysis.pyruns12,755 bytes
Read SKILL.md
# CoinGecko API Skill
Query the CoinGecko API for comprehensive crypto market data — prices, historical
charts, exchange volumes, trending tokens, global stats, and category breakdowns.
The free tier requires no API key and supports 30 calls/min.
## When to Use This Skill
- **Macro analysis**: Global market cap, BTC dominance, total volume trends
- **Historical data**: Daily/hourly OHLCV going back years (not minutes-level)
- **Cross-exchange comparisons**: Exchange volume rankings and trust scores
- **Trending/discovery**: What tokens are trending on CoinGecko in the last 24h
- **Category analysis**: Compare DeFi vs L1 vs meme coin market caps
- **Token research**: Full metadata including links, description, community statsView the complete source on GitHubcointegration-analysis
When your agent uses it
Cointegration testing for pairs trading using Engle-Granger, Johansen, and rolling stability analysis
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
2,167 tokensWhen the skill is activated
Reference documents
4,079 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What Is Cointegration?
- Methods
- Practical Workflow
- Rolling Cointegration
- Crypto Pairs Candidates
- Common Pitfalls
- Integration with Other Skills
- Files
Scripts executed separately
scripts/pairs_backtest.pyscripts/test_cointegration.py
Files
SKILL.mdcore8,573 bytesSKILL.mdcore8,573 bytesSKILL.mdcore8,573 bytesSKILL.mdcore8,573 bytesSKILL.mdcore8,573 bytesSKILL.mdcore8,573 bytesreferences/methodology.mddoc6,779 bytesreferences/pairs_trading.mddoc7,943 bytesscripts/pairs_backtest.pyruns20,818 bytesscripts/test_cointegration.pyruns23,162 bytes
Read SKILL.md
# Cointegration Analysis
Cointegration testing identifies pairs of assets that share a long-run equilibrium
relationship, enabling statistical arbitrage and pairs trading strategies.
## What Is Cointegration?
Two price series are **cointegrated** when they are individually non-stationary
(random walks) but a linear combination of them is stationary (mean-reverting).
Intuitively, the prices may wander apart temporarily but are pulled back to an
equilibrium spread over time.
### Cointegration vs Correlation
View the complete source on GitHubcopy-trading
When your agent uses it
Wallet evaluation, monitoring, and copy-trade strategy design for Solana DEX trading
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,253 tokensWhen the skill is activated
Reference documents
5,728 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What Copy Trading Means on Solana
- The Copy-Trade Pipeline
- Wallet Scoring for Copy Suitability
- Position Sizing for Copy Trades
- Anti-Patterns to Avoid
- Integration with Other Skills
- Files
Scripts executed separately
scripts/evaluate_wallet.pyscripts/monitor_wallet.py
Files
SKILL.mdcore9,675 bytesSKILL.mdcore9,675 bytesSKILL.mdcore9,675 bytesSKILL.mdcore9,675 bytesSKILL.mdcore9,675 bytesreferences/execution_strategy.mddoc8,647 bytesreferences/risk_framework.mddoc7,461 bytesreferences/wallet_discovery.mddoc7,348 bytesscripts/evaluate_wallet.pyruns20,444 bytesscripts/monitor_wallet.pyruns16,712 bytes
Read SKILL.md
# Copy Trading
Wallet evaluation, monitoring, and copy-trade strategy design for Solana DEX trading. Identify profitable wallets on-chain, evaluate whether their edge is real and replicable, monitor their activity in real time, and execute proportionally-sized trades with independent risk controls.
## What Copy Trading Means on Solana
Copy trading is the practice of monitoring one or more wallets that have demonstrated consistent profitability and replicating their trades in your own wallet. On Solana, every DEX swap is publicly visible on-chain within seconds, making it technically feasible to detect and follow any wallet's activity.
### How It Differs from TradFi Copy Trading
| Dimension | TradFi (eToro, etc.) | Solana On-Chain |
|-----------|---------------------|-----------------|
| Data source | Platform-reported P&L | Verifiable on-chain transactions |
| Latency | Minutes to hours | Seconds (websocket) to sub-second (gRPC) |View the complete source on GitHubcorrelation-analysis
When your agent uses it
Cross-asset correlation analysis including rolling correlation, hierarchical clustering, tail dependence, and regime-dependent correlation
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,224 tokensWhen the skill is activated
Reference documents
3,793 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Correlation Matters
- Correlation Methods
- Rolling Correlation
- Correlation Matrix Analysis
- Hierarchical Clustering
- Tail Dependence
- Regime-Dependent Correlation
- Crypto-Specific Correlation Patterns
- Integration with Other Skills
- Files
Scripts executed separately
scripts/correlation_matrix.pyscripts/rolling_correlation.py
Files
SKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesSKILL.mdcore9,619 bytesreferences/methodology.mddoc6,797 bytesreferences/portfolio_applications.mddoc7,751 bytesscripts/correlation_matrix.pyruns17,636 bytesscripts/rolling_correlation.pyruns20,140 bytes
Read SKILL.md
# Correlation Analysis
Cross-asset correlation analysis for diversification assessment, risk management, pairs trading signal generation, and portfolio construction.
## Why Correlation Matters
Correlation measures how assets move together. In crypto markets this is critical for:
- **Diversification**: holding correlated assets provides no diversification benefit — you are effectively holding one concentrated position
- **Risk management**: portfolio risk depends on the correlation structure, not just individual asset volatility
- **Pairs trading**: highly correlated assets that temporarily diverge create mean-reversion opportunities
- **Portfolio construction**: optimal allocation requires accurate correlation estimates
- **Crash protection**: understanding tail dependence reveals whether assets crash together
View the complete source on GitHubcost-basis-engine
When your agent uses it
Multi-method cost basis computation including specific identification, FIFO, LIFO, HIFO, and proportional average cost with partial sell handling
What it loads into context
Frontmatter
61 tokensAlways available to the agent
SKILL.md
3,482 tokensWhen the skill is activated
Reference documents
2,614 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Prerequisites
- Methods Overview
- 1. FIFO (First-In, First-Out)
- 2. LIFO (Last-In, First-Out)
- 3. HIFO (Highest-In, First-Out)
- 4. Specific Identification
- 5. Proportional / Average Cost Method
- 6. Special Events
- 7. LP Entry/Exit as Token Swaps
- 8. Multi-Hop Swaps
- 9. Comparison View
- Quick Start
- Use Cases
- Files
Scripts executed separately
scripts/cost_basis_calculator.py
Files
SKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesSKILL.mdcore12,604 bytesreferences/planned_features.mddoc9,344 bytesscripts/cost_basis_calculator.pyruns24,368 bytes
Read SKILL.md
# Cost Basis Engine
Compute cost basis for crypto trades using multiple accounting methods and compare the resulting tax liability across methods. This skill handles the full complexity of on-chain activity: partial sells, token migrations, airdrops, staking rewards, LP entry/exit, and multi-hop swaps.
> **Disclaimer**: This skill provides computational tools for informational purposes only. It does not constitute tax, legal, or financial advice. Consult a qualified tax professional for your specific situation. Tax law varies by jurisdiction and changes frequently.
## Prerequisites
- Python 3.10+
- No external dependencies required (standard library only)
- Trade history as a list of dicts or CSV with columns: `date`, `action`, `token`, `quantity`, `price_usd`, `fee_usd`
## Methods Overview
View the complete source on GitHubcrypto-tax-export
When your agent uses it
Export trade history and tax calculations in formats compatible with Koinly, CoinTracker, CoinLedger, TokenTax, and IRS Form 8949
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
2,348 tokensWhen the skill is activated
Reference documents
1,849 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Prerequisites
- Capabilities
- Supported Export Formats
- Solana Transaction Classification
- Cost Basis Methods
- Reconciliation
- Quick Start
- Use Cases
- Files
- Related Skills
Scripts executed separately
scripts/tax_exporter.py
Files
SKILL.mdcore9,489 bytesSKILL.mdcore9,489 bytesSKILL.mdcore9,489 bytesSKILL.mdcore9,489 bytesSKILL.mdcore9,489 bytesSKILL.mdcore9,489 bytesdemo_cointracker_export.csvasset567 bytesdemo_form_8949.csvasset890 bytesdemo_koinly_export.csvasset1,309 bytesreferences/planned_features.mddoc7,473 bytesscripts/tax_exporter.pyruns24,302 bytes
Read SKILL.md
# Crypto Tax Export
Export trade history and tax calculations for tax software and IRS filing. Handles Solana-specific transaction types (Jupiter swaps, LP operations, staking rewards, airdrops) and generates CSVs compatible with Koinly, CoinTracker, CoinLedger, TokenTax, TurboTax/TaxAct, and IRS Form 8949.
> **Disclaimer:** This skill provides data formatting and calculation tools only. It does not constitute tax advice. Consult a qualified tax professional for guidance on reporting cryptocurrency transactions. Tax laws vary by jurisdiction and change frequently.
## Prerequisites
- Python 3.10+
- Trade history data (from internal trade journal, on-chain history, or exchange exports)
- For on-chain reconciliation: Solana RPC or Helius API access (see `helius-api` skill)
- For cost basis: historical price data (see `birdeye-api` or `coingecko-api` skills)
## CapabilitiesView the complete source on GitHubcustom-indicators
When your agent uses it
Crypto-native indicators including NVT ratio, exchange flow, funding rate signals, holder momentum, and smart money flow
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
3,083 tokensWhen the skill is activated
Reference documents
4,372 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Standard TA Falls Short for Crypto
- Files
- Indicator 1: NVT Ratio
- Indicator 2: MVRV Ratio
- Indicator 3: Exchange Flow
- Indicator 4: Funding Rate Signal
- Indicator 5: Open Interest Momentum
- Indicator 6: Holder Momentum
- Indicator 7: Liquidity Score
- Indicator 8: Smart Money Flow
- Indicator 9: Token Velocity
- Combining Indicators
- Dependencies
- Disclaimer
Scripts executed separately
scripts/compute_crypto_indicators.pyscripts/holder_momentum.py
Files
SKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesSKILL.mdcore12,047 bytesreferences/indicator_formulas.mddoc8,521 bytesreferences/signal_interpretation.mddoc8,172 bytesscripts/compute_crypto_indicators.pyruns24,444 bytesscripts/holder_momentum.pyruns16,274 bytes
Read SKILL.md
# Custom Crypto Indicators
## Why Standard TA Falls Short for Crypto
Traditional technical analysis was built for equities and forex — markets with
fixed supply, regulated exchanges, and institutional-dominated order flow.
Crypto markets have unique properties that demand purpose-built indicators:
- **On-chain transparency**: Every transaction is public. We can measure real
economic activity, not just price and volume on a single exchange.
- **Supply mechanics**: Fixed or programmatic supply schedules make
supply-side analysis (velocity, holder distribution) meaningful.
- **Derivatives dominance**: Perpetual futures funding rates and open interest
often drive spot price, not the other way around.View the complete source on GitHubdefillama-api
When your agent uses it
Free DeFi analytics across all chains — TVL, token prices, DEX volumes, fees/revenue, stablecoins, and bridges
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
2,253 tokensWhen the skill is activated
Reference documents
3,395 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Base URLs
- TVL & Protocol Data
- Token Prices
- DEX Volumes
- Fees & Revenue
- Stablecoins
- Bridges
- Common Patterns
- Free vs Pro Endpoints
- When to Use DeFiLlama vs Alternatives
- Files
Scripts executed separately
scripts/defi_snapshot.pyscripts/price_lookup.py
Files
SKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesSKILL.mdcore7,814 bytesreferences/coin_identifiers.mddoc3,397 bytesreferences/endpoints.mddoc4,589 bytesreferences/error_handling.mddoc3,330 bytesscripts/defi_snapshot.pyruns8,177 bytesscripts/price_lookup.pyruns7,878 bytes
Read SKILL.md
# DeFiLlama API — DeFi Macro Analytics
DeFiLlama is the largest DeFi TVL aggregator. Its API is **free with no authentication** for most endpoints — covering TVL, token prices, DEX volumes, fees/revenue, stablecoins, and bridges across all chains.
## Quick Start
```python
import httpx
# No auth required for free endpoints
BASE = "https://api.llama.fi"
COINS = "https://coins.llama.fi"
# Current TVL for a protocolView the complete source on GitHubdex-execution
When your agent uses it
Solana DEX swap execution via Jupiter aggregator including quoting, transaction building, signing, and confirmation
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
2,441 tokensWhen the skill is activated
Reference documents
5,867 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Execution Pipeline
- Jupiter API v6 Endpoints
- Key Parameters
- Priority Fee Estimation
- Transaction Confirmation Strategy
- Error Handling
- Safety Requirements
- Integration with Other Skills
- Files
Scripts executed separately
scripts/get_quote.pyscripts/simulate_swap.py
Files
SKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesSKILL.mdcore9,513 bytesreferences/jupiter_api.mddoc6,738 bytesreferences/safety_checklist.mddoc8,293 bytesreferences/transaction_lifecycle.mddoc7,069 bytesscripts/get_quote.pyruns14,155 bytesscripts/simulate_swap.pyruns16,433 bytes
Read SKILL.md
# DEX Execution — Solana Swap Execution via Jupiter
Execute token swaps on Solana through Jupiter, the dominant DEX aggregator routing across Raydium, Orca, Meteora, Phoenix, Lifinity, and 20+ other venues.
## Overview
Jupiter aggregates liquidity across all major Solana DEXes to find optimal swap routes. A single swap may split across multiple pools and hop through intermediate tokens to minimize price impact. The Jupiter v6 API handles route discovery, transaction building, and fee optimization — your code handles quoting, user confirmation, signing, and submission.
**Base URL**: `https://quote-api.jup.ag/v6`
## Execution Pipeline
Every swap follows this seven-step pipeline. Never skip steps 2-3 (display and confirm).
View the complete source on GitHubdex-pool-analysis
When your agent uses it
AMM pool mechanics comparison across Raydium, Orca, and Meteora including fee structures, pool types, creation patterns, and volume efficiency
What it loads into context
Frontmatter
38 tokensAlways available to the agent
SKILL.md
3,971 tokensWhen the skill is activated
Reference documents
4,123 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 1. Pool Types on Solana
- 2. Fee Structure Comparison
- 3. Pool Creation Patterns
- 4. Volume Efficiency (Volume/TVL Ratio)
- 5. Pool Health Metrics
- 6. Best Pool Selection for Execution
- 7. Program IDs Quick Reference
- 8. Integration Points
- 9. Workflow Example
- Files
Scripts executed separately
scripts/analyze_pools.pyscripts/pool_monitor.py
Files
SKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesSKILL.mdcore13,774 bytesreferences/pool_analysis_guide.mddoc7,411 bytesreferences/pool_mechanics.mddoc6,972 bytesscripts/analyze_pools.pyruns24,681 bytesscripts/pool_monitor.pyruns22,057 bytes
Read SKILL.md
# DEX Pool Analysis — Solana AMM Pool Mechanics & Comparison
Solana's DEX ecosystem spans multiple AMM designs: constant-product pools (Raydium V4), concentrated liquidity (Raydium CLMM, Orca Whirlpool), and bin-based liquidity (Meteora DLMM). Each pool type has distinct fee structures, capital efficiency characteristics, and risk profiles. Understanding these differences is essential for selecting the best execution venue, evaluating liquidity quality, and identifying pool-level risks.
This skill covers:
- Pool type mechanics and fee structures across Solana DEXes
- Pool health metrics (TVL, volume efficiency, fee APR, LP count)
- Pool creation patterns (PumpFun graduation, manual creation)
- Best pool selection for trade execution
- Pool age and risk assessment
**Related skills**: See `lp-math` for AMM formulas, `liquidity-analysis` for depth assessment, `impermanent-loss` for LP risk, `slippage-modeling` for execution cost.
---View the complete source on GitHubdexscreener-api
When your agent uses it
Free, no-auth multi-chain DEX pair data — prices, volume, liquidity, transactions, and token profiles
What it loads into context
Frontmatter
32 tokensAlways available to the agent
SKILL.md
2,145 tokensWhen the skill is activated
Reference documents
2,489 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Base URL
- Core Endpoints
- Pair Response Schema
- Common Patterns
- Supported Chains
- Limitations
- When to Use DexScreener vs Alternatives
- Files
Scripts executed separately
scripts/boost_monitor.pyscripts/token_lookup.py
Files
SKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesSKILL.mdcore7,335 bytesreferences/endpoints.mddoc4,988 bytesreferences/error_handling.mddoc3,798 bytesscripts/boost_monitor.pyruns10,094 bytesscripts/token_lookup.pyruns9,717 bytes
Read SKILL.md
# DexScreener API — Free Multi-Chain DEX Data
DexScreener provides DEX pair data across 80+ chains with **no API key required**. Prices, volume, liquidity, transaction counts, and token profiles — all free. Best for quick lookups, cross-chain comparison, and lightweight monitoring.
## Quick Start
No authentication needed. Just make requests:
```python
import httpx
# Search for a token
resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": "BONK"})
pairs = resp.json()["pairs"]View the complete source on GitHubexit-strategies
When your agent uses it
Systematic exit rules, stop-loss methods, take-profit strategies, and trailing stop implementations for crypto trading
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
2,483 tokensWhen the skill is activated
Reference documents
6,269 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Exits Matter
- Exit Categories
- PumpFun-Specific Exit Rules
- Combining Exit Rules
- Common Exit Mistakes
- Integration with Other Skills
- Files
Scripts executed separately
scripts/exit_simulator.pyscripts/stop_loss_calculator.py
Files
SKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesSKILL.mdcore9,340 bytesreferences/stop_loss_methods.mddoc7,702 bytesreferences/take_profit_strategies.mddoc7,235 bytesreferences/trailing_stops.mddoc8,489 bytesscripts/exit_simulator.pyruns16,502 bytesscripts/stop_loss_calculator.pyruns9,909 bytes
Read SKILL.md
# Exit Strategies
Entries are easy, exits are everything. A mediocre entry with a disciplined exit will
outperform a perfect entry with no exit plan. This skill covers systematic, rule-based
exit methods for crypto and Solana token trading.
## Why Exits Matter
- **Entries** determine _if_ you participate. **Exits** determine _how much_ you keep.
- Most traders spend 90% of effort on entries and 10% on exits — invert this.
- Without defined exits you rely on emotion, which guarantees inconsistency.
- Every trade should have **three exits defined before entry**: stop loss, take profit,
and trailing stop.
View the complete source on GitHubfeature-engineering
When your agent uses it
Feature construction from market data for ML trading models including price, volume, on-chain, and microstructure features
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
2,766 tokensWhen the skill is activated
Reference documents
4,367 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Features Beat Models
- Feature Categories
- Stationarity
- Normalization
- No-Lookahead Guarantee
- Feature Selection
- Label Creation
- Integration with Other Skills
- Files
Scripts executed separately
scripts/build_features.pyscripts/feature_importance.py
Files
SKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesSKILL.mdcore10,728 bytesreferences/feature_catalog.mddoc7,902 bytesreferences/pitfalls.mddoc8,803 bytesscripts/build_features.pyruns19,478 bytesscripts/feature_importance.pyruns18,010 bytes
Read SKILL.md
# Feature Engineering for Trading ML
Feature engineering is the single highest-leverage activity in building ML trading
models. Model selection (XGBoost vs. neural net vs. logistic regression) matters far
less than the quality and diversity of input features. A simple model on great
features will outperform a complex model on raw prices every time.
This skill covers constructing, validating, and selecting features from market data
for use in classification (signal-classification) and regression models targeting
crypto/Solana token trading.
## Why Features Beat Models
Raw OHLCV data is non-stationary, noisy, and high-dimensional. Models trainedView the complete source on GitHubfixed-income
When your agent uses it
[STUB] Bond pricing, yield curves, duration and convexity analysis, and DeFi lending rate modeling
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
1,519 tokensWhen the skill is activated
Reference documents
1,675 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Current Capabilities
- Planned Capabilities
- Prerequisites
- Use Cases
- Quick Reference: Bond Pricing Formulas
- Files
- Contributing
Scripts executed separately
scripts/bond_calculator.py
Files
SKILL.mdcore6,613 bytesSKILL.mdcore6,613 bytesSKILL.mdcore6,613 bytesSKILL.mdcore6,613 bytesreferences/planned_features.mddoc6,363 bytesscripts/bond_calculator.pyruns15,683 bytes
Read SKILL.md
# Fixed Income
> **Status: STUB** — This skill provides a basic bond calculator and an overview of planned capabilities. Full implementation is awaiting community contribution.
Fixed income analysis bridges traditional bond mathematics with DeFi lending rate modeling. Bond pricing fundamentals — present value of cash flows, yield curves, duration, and convexity — translate directly to analyzing DeFi lending protocols where depositors earn variable or fixed rates on crypto assets.
On Solana, lending protocols like Marginfi, Kamino, and Solend offer variable-rate lending/borrowing. Understanding term structure and rate dynamics helps optimize yield farming strategies and compare opportunities across protocols.
This skill is informational and analytical only. It does not provide financial advice or trading recommendations.
---
## Current Capabilities
View the complete source on GitHubhelius-api
When your agent uses it
Enhanced Solana RPC with DAS API, parsed transactions, webhooks, and priority fee estimation via Helius
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
2,224 tokensWhen the skill is activated
Reference documents
5,637 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- DAS API (Digital Asset Standard)
- Enhanced Transactions API
- Webhooks
- Priority Fee API
- Pricing & Rate Limits
- Files
Scripts executed separately
scripts/token_lookup.pyscripts/wallet_analysis.py
Files
SKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesSKILL.mdcore7,941 bytesreferences/das_api.mddoc4,298 bytesreferences/enhanced_transactions.mddoc5,444 bytesreferences/error_handling.mddoc5,086 bytesreferences/webhooks.mddoc5,111 bytesscripts/token_lookup.pyruns10,516 bytesscripts/wallet_analysis.pyruns10,242 bytes
Read SKILL.md
# Helius API — Enhanced Solana RPC
Helius extends standard Solana RPC with parsed transaction history, a unified Digital Asset Standard (DAS) API, webhooks, and priority fee estimation. Essential for wallet analysis, token metadata, and transaction monitoring.
## Quick Start
### 1. Get an API Key
Sign up at [dashboard.helius.dev](https://dashboard.helius.dev) — free tier available (1M credits/mo, no card required).
```bash
[Credential-related source omitted]
```
View the complete source on GitHubimpermanent-loss
When your agent uses it
Impermanent loss calculation, modeling, and breakeven analysis for AMM liquidity provision across pool types
What it loads into context
Frontmatter
28 tokensAlways available to the agent
SKILL.md
1,997 tokensWhen the skill is activated
Reference documents
4,409 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why "Impermanent"?
- Key Insight
- Constant-Product IL Formula
- Concentrated Liquidity (CLMM) Amplified IL
- IL vs Fees: Breakeven Analysis
- Modeling IL Over Time
- IL Mitigation Strategies
- When IL Is Acceptable
- When to Avoid LPing
- Related Skills
- Files
Scripts executed separately
scripts/il_calculator.pyscripts/il_scenario_modeler.py
Files
SKILL.mdcore7,696 bytesSKILL.mdcore7,696 bytesreferences/breakeven_analysis.mddoc7,384 bytesreferences/il_formulas.mddoc6,407 bytesscripts/il_calculator.pyruns16,425 bytesscripts/il_scenario_modeler.pyruns18,241 bytes
Read SKILL.md
# Impermanent Loss — Calculation, Modeling & Breakeven Analysis
Impermanent loss (IL) is the cost of providing liquidity to an automated market maker (AMM) relative to simply holding the tokens. When you deposit tokens into a liquidity pool, the AMM continuously rebalances your position as prices move. This rebalancing always works against you — selling winners and buying losers — resulting in less value than if you had just held the original tokens.
## Why "Impermanent"?
IL is called "impermanent" because it only crystallizes when you withdraw. If prices return to their original ratio, IL reverts to zero. However, in practice, prices rarely return exactly, so IL is usually quite real.
## Key Insight
IL is a function of the **price ratio change**, not the absolute price. A token moving from $1 to $2 produces the same IL as a token moving from $100 to $200 — both are a 2x ratio change. Direction does not matter either: a 2x increase and a 0.5x decrease produce the same IL magnitude.
## Constant-Product IL Formula
View the complete source on GitHubjito-bundles
When your agent uses it
Jito bundle submission for MEV protection on Solana — bundle building, tip strategies, block engine endpoints, and landing rate optimization
What it loads into context
Frontmatter
36 tokensAlways available to the agent
SKILL.md
2,619 tokensWhen the skill is activated
Reference documents
5,871 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use Bundles
- Core Concepts
- API Methods
- Bundle Construction Pattern
- Tip Sizing Guide
- Common Errors and Fixes
- Landing Rate Optimization
- Safety Checklist (Execution)
- Files
Scripts executed separately
scripts/build_bundle.pyscripts/check_bundle_status.py
Files
SKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesSKILL.mdcore10,806 bytesreferences/best_practices.mddoc8,257 bytesreferences/bundle_api.mddoc6,371 bytesreferences/tip_strategies.mddoc7,265 bytesscripts/build_bundle.pyruns12,643 bytesscripts/check_bundle_status.pyruns14,399 bytes
Read SKILL.md
# Jito Bundle Submission for Solana
Jito bundles allow you to submit up to 5 Solana transactions that execute **atomically** — either all land in the same slot or none do. This is the primary mechanism for MEV protection and competitive transaction execution on Solana. Approximately 85%+ of Solana validators run the Jito-modified client, making bundles the standard for reliable, front-run-resistant execution.
> **EXECUTION SKILL — SAFETY WARNING**: Submitting bundles spends real SOL on tips. Always test with `--demo` mode first. Never submit bundles with real funds without explicit confirmation. Default to simulation/dry-run in all scripts and examples.
## When to Use Bundles
| Scenario | Use Bundle? | Why |
|----------|-------------|-----|
| Swap on illiquid token | Yes | Prevents sandwich attacks |
| Multi-step arbitrage | Yes | Atomic execution prevents partial fills |
| Liquidation | Yes | Competitive — tip determines priority |
| Simple SOL transfer | No | Priority fees are cheaper and sufficient |View the complete source on GitHubkalshi-api
When your agent uses it
Kalshi exchange mechanics — RSA-PSS auth, order schema, YES/NO orderbook convention, WebSocket, and endpoint surface. Market-type-agnostic shared layer for all Kalshi skills.
What it loads into context
Frontmatter
48 tokensAlways available to the agent
SKILL.md
2,239 tokensWhen the skill is activated
Reference documents
3,725 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Quick Start
- YES/NO Order-Book Convention
- Order Schema
- Endpoint Summary
- Files
Scripts executed separately
scripts/kalshi_orderbook.py
Files
SKILL.mdcore8,093 bytesSKILL.mdcore8,093 bytesSKILL.mdcore8,093 bytesSKILL.mdcore8,093 bytesreferences/auth-and-orders.mddoc4,937 bytesreferences/endpoints-and-marketdata.mddoc5,267 bytesreferences/websocket.mddoc2,917 bytesscripts/kalshi_orderbook.pyruns4,711 bytes
Read SKILL.md
# Kalshi API
CFTC-regulated US event exchange. USD-denominated binary contracts settle at $1.00 (YES wins) or $0.00 (NO wins). REST + WebSocket, RSA-PSS authentication on every request.
For contract semantics and settlement rules, see the `kalshi-weather-markets` and `kalshi-crypto-index-markets` skills. For strategy, sizing, and backtesting, see `prediction-market-strategy`.
---
> **VERIFY BEFORE CODING.**
> The Kalshi API has broken backward compatibility before: the host changed (old `trading-api.kalshi.com` → dead), and the order schema changed (integer cents → dollar strings). Always smoke-test signing and order bodies against a live response before shipping.
>
> Canonical sources:
> - API reference: <https://docs.kalshi.com> (legacy mirror: <https://trading-api.readme.io>)
> - Official Python starter: <https://github.com/Kalshi/kalshi-starter-code-python>View the complete source on GitHubkalshi-crypto-index-markets
When your agent uses it
Kalshi daily and hourly range markets on crypto prices (BTC, ETH) and equity indices (S&P 500, Nasdaq-100) — bracket structure, Gaussian P(YES) modeling on price/vol, close-offset decision timing, longshot-sell edge with honest evidence bounds
What it loads into context
Frontmatter
69 tokensAlways available to the agent
SKILL.md
1,951 tokensWhen the skill is activated
Reference documents
1,741 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Series & Market-Type Mapping
- Bracket Structure
- Gaussian P(YES) on Price/Vol
- Decision Timing — Close-Offset, Not a City Hour
- Settlement — Verify the Rulebook Reference
- Edge: Longshot-Sell Generalization
- Market Microstructure Notes
- Files
Files
SKILL.mdcore8,602 bytesSKILL.mdcore8,602 bytesSKILL.mdcore8,602 bytesSKILL.mdcore8,602 bytesreferences/structure-and-modeling.mddoc7,005 bytes
Read SKILL.md
# Kalshi Crypto & Index Range Markets
Kalshi lists daily (and for crypto, hourly) **range bracket markets** on the level of four liquid underlyings: S&P 500, Nasdaq-100, Bitcoin, and Ethereum. The math is the same partition-and-Gaussian framework as weather brackets — the variable is just price/return and σ comes from the underlying's realized or implied volatility, not a temperature model.
> Cross-references: for Kalshi API mechanics see `kalshi-api`; for the strategy, sizing, and backtesting framework see `prediction-market-strategy`; for the temperature counterpart see `kalshi-weather-markets`; for the shared bracket/overround formulas see `prediction-markets/references/brackets-and-settlement.md`.
---
## Series & Market-Type Mapping
```python
SERIES_MARKET = {
"KXINX": "index", # S&P 500 index level
"KXNASDAQ100": "index", # Nasdaq-100 index levelView the complete source on GitHubkalshi-weather-markets
When your agent uses it
Daily temperature high/low bracket and threshold contracts on Kalshi — contract structure, forecast→P(YES) map, settlement rules, cross-venue divergences, and weather-specific pitfalls
What it loads into context
Frontmatter
47 tokensAlways available to the agent
SKILL.md
2,385 tokensWhen the skill is activated
Reference documents
2,485 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Contract Types
- Forecast → P(YES)
- Deriving (μ, σ) from Ensemble Quantiles
- CLI-Space Bias Correction
- Settlement Rules
- Cross-Venue Divergence
- Nowcast Blending (Same-Day Path)
- Calibrated Model Performance (Reference Numbers)
- Weather Pitfalls
- Files
Scripts executed separately
scripts/weather_brackets.py
Files
SKILL.mdcore8,927 bytesreferences/brackets-and-settlement.mddoc4,635 bytesreferences/forecasting.mddoc4,526 bytesscripts/weather_brackets.pyruns6,614 bytes
Read SKILL.md
# Kalshi Weather Markets — Daily Temperature High/Low
Kalshi lists daily high and low temperature options for ~20 US cities as binary contracts that settle YES ($1.00) or NO ($0.00). This skill covers the market structure, the forecast-to-probability map, exact settlement mechanics, and hard-won pitfalls. It builds on the exchange layer — for Kalshi API mechanics (host, auth, orders, order book, candlesticks) see the `kalshi-api` skill; for strategy, sizing, and backtesting see `prediction-market-strategy`.
## Contract Types
### Brackets — `B<center>`
A bracket ticker `B<center>` is a **2°F-wide, both-ends-inclusive** window.
- `B74.5` covers the **two integers {74, 75}°F**.
- YES iff the settled temperature is exactly 74 **or** 75.
- Brackets in one event are mutually exclusive and (with two open tail markets) collectively exhaustive.
- Their YES prices sum to the **overround** (fair = 1.0; > 1.0 = aggregate overpricing).View the complete source on GitHubkelly-criterion
When your agent uses it
Kelly criterion optimal sizing with fractional variants, edge estimation, and practical application for crypto trading
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,789 tokensWhen the skill is activated
Reference documents
5,068 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The Kelly Formula
- Why Use Fractional Kelly
- Estimating Your Edge
- Multi-Bet Kelly (Simultaneous Positions)
- PumpFun / Meme Token Kelly
- When Kelly Does Not Work
- Continuous Kelly (For Portfolio Returns)
- Integration with Other Skills
- Files
Scripts executed separately
scripts/kelly_calculator.pyscripts/kelly_from_trades.py
Files
SKILL.mdcore10,973 bytesSKILL.mdcore10,973 bytesSKILL.mdcore10,973 bytesSKILL.mdcore10,973 bytesSKILL.mdcore10,973 bytesSKILL.mdcore10,973 bytesreferences/kelly_derivation.mddoc6,688 bytesreferences/practical_kelly.mddoc9,129 bytesscripts/kelly_calculator.pyruns12,061 bytesscripts/kelly_from_trades.pyruns17,446 bytes
Read SKILL.md
# Kelly Criterion — Optimal Bet Sizing
The Kelly criterion is the mathematically optimal bet size that maximizes long-term geometric growth of capital. Developed by John Kelly at Bell Labs in 1956, it answers a precise question: given a known edge, what fraction of your bankroll should you risk to maximize the compounding rate?
**Core insight**: Betting too small leaves growth on the table. Betting too large increases ruin risk and actually *reduces* long-term growth. Kelly finds the exact optimum between these extremes.
**Practical insight**: You should almost never use full Kelly. Estimation error in your edge means full Kelly will overbets in practice. Use fractional Kelly (0.25x to 0.5x) for real trading.
---
## The Kelly Formula
For a binary outcome (win or lose):
View the complete source on GitHubliquidity-analysis
When your agent uses it
DEX liquidity depth assessment, slippage estimation, and pool composition analysis for Solana tokens
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
3,738 tokensWhen the skill is activated
Reference documents
5,638 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Liquidity Analysis Matters
- Key Concepts
- Data Sources
- Core Analysis Pipeline
- Risk Flags
- Position Sizing from Liquidity
- Slippage Estimation
- Pool Types
- Integration with Other Skills
- Example Workflow
- Files
Scripts executed separately
scripts/analyze_liquidity.pyscripts/pool_comparison.py
Files
SKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesSKILL.mdcore13,908 bytesreferences/data_sources.mddoc7,795 bytesreferences/pool_types.mddoc6,236 bytesreferences/slippage_curves.mddoc6,669 bytesscripts/analyze_liquidity.pyruns16,419 bytesscripts/pool_comparison.pyruns14,401 bytes
Read SKILL.md
# Liquidity Analysis — DEX Depth Assessment for Solana Tokens
Liquidity analysis answers three critical questions before every trade: **Can I get in at a reasonable price?** **Can I get out when I need to?** and **Is this pool safe?** Without it, you risk excessive slippage, failed exits, and rug pulls.
## Why Liquidity Analysis Matters
**Position sizing**: Maximum position size is bounded by available liquidity. A $10K position in a pool with $20K TVL will move the price significantly. Rule of thumb: keep trade size under 2% of pool depth to limit slippage below 1%.
**Execution cost**: Slippage is a direct cost. On a 5 SOL buy, the difference between 0.3% and 3% slippage is real money lost on every entry and exit.
**Rug risk detection**: Thin liquidity, single pools, unlocked LP tokens, and newly created pools are warning signs. Liquidity analysis catches these before you enter.
**Exit planning**: Entry liquidity may differ from exit liquidity. If LP is unlocked and owned by one wallet, it can be pulled at any time.
View the complete source on GitHublp-math
When your agent uses it
AMM liquidity provision mathematics including constant-product, concentrated liquidity, price impact, and LP share calculations
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
2,871 tokensWhen the skill is activated
Reference documents
3,778 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 1. Constant Product AMM (xy = k)
- 2. Concentrated Liquidity (CLMM)
- 3. Price Impact
- 4. LP Share Calculations
- 5. Fee Accrual
- 6. Solana Pool Types
- 7. Practical Decision Framework
- Files
- Quick Reference
Scripts executed separately
scripts/amm_calculator.pyscripts/clmm_calculator.py
Files
SKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesSKILL.mdcore10,035 bytesreferences/amm_formulas.mddoc6,326 bytesreferences/pool_mechanics.mddoc6,417 bytesscripts/amm_calculator.pyruns20,504 bytesscripts/clmm_calculator.pyruns22,554 bytes
Read SKILL.md
# LP Math — AMM Liquidity Provision Mathematics
Automated Market Makers (AMMs) replace traditional orderbooks with liquidity pools. Instead of matching buyers and sellers, a mathematical formula determines prices based on reserve ratios. Liquidity providers (LPs) deposit both assets into a pool and earn fees from every trade.
Understanding the math behind AMMs is essential for:
- Evaluating whether providing liquidity is profitable after impermanent loss
- Estimating price impact before executing large trades
- Comparing capital efficiency across pool types (constant product vs concentrated)
- Calculating expected fee revenue for a given pool position
**Related skills**: See `impermanent-loss` for IL calculations, `yield-analysis` for LP yield modeling, `liquidity-analysis` for pool depth assessment.
---
View the complete source on GitHubmarket-microstructure
When your agent uses it
DEX orderflow analysis, trade classification, buyer/seller pressure, and microstructure signals for Solana tokens
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
2,770 tokensWhen the skill is activated
Reference documents
5,523 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Why Microstructure Matters on DEXes
- Trade Classification
- Volume Profiles
- Buyer/Seller Pressure Metrics
- Trade Size Distribution
- Momentum Signals from Trade Flow
- Token Velocity
- Wash Trading Detection
- Data Sources
- Composite Momentum Score
- Integration with Other Skills
- Files
Scripts executed separately
scripts/trade_flow_analysis.pyscripts/volume_profile.py
Files
SKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesSKILL.mdcore11,390 bytesreferences/flow_signals.mddoc7,619 bytesreferences/trade_classification.mddoc6,894 bytesreferences/wash_trading.mddoc7,086 bytesscripts/trade_flow_analysis.pyruns20,819 bytesscripts/volume_profile.pyruns14,998 bytes
Read SKILL.md
# Market Microstructure — DEX Orderflow Analysis
## Overview
Market microstructure on Solana DEXes differs fundamentally from traditional finance.
There are no orderbooks on AMMs — every trade is a swap against a liquidity pool. Yet
trade flow analysis remains powerful: the sequence, size, and direction of swaps reveal
accumulation, distribution, whale activity, and wash trading patterns.
This skill covers:
- **Trade classification** — identifying buys vs sells from swap direction
- **Volume profiles** — time-based and size-based breakdowns
- **Buyer/seller pressure** — ratio metrics, net flow, trade count asymmetry
- **Trade size distribution** — whale detection, retail vs institutional flowView the complete source on GitHubmarket-microstructure-traditional
When your agent uses it
Traditional market microstructure concepts applied to crypto — order book dynamics, market making theory, price formation models, execution quality measurement, and CEX vs DEX structural differences
What it loads into context
Frontmatter
44 tokensAlways available to the agent
SKILL.md
2,805 tokensWhen the skill is activated
Reference documents
5,618 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core Concepts
- Bid-Ask Spread Decomposition
- Price Formation Models
- Price Impact Models
- Order Book Imbalance
- Trade Arrival Processes
- Market Maker Economics
- Execution Quality Measurement
- CEX Order Book vs DEX AMM
- Maker/Taker Fee Structures
- Files
- Dependencies
- Related Skills
Scripts executed separately
scripts/market_maker_sim.pyscripts/spread_analysis.py
Files
SKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesSKILL.mdcore11,618 bytesreferences/cex_vs_dex.mddoc7,835 bytesreferences/execution_quality.mddoc7,836 bytesreferences/price_formation.mddoc6,614 bytesscripts/market_maker_sim.pyruns18,638 bytesscripts/spread_analysis.pyruns16,906 bytes
Read SKILL.md
# Market Microstructure (Traditional)
Market microstructure studies how orders become trades and how trades become
prices. Understanding these mechanics is essential for execution optimization,
market making, and detecting informed flow. This skill covers limit order book
(LOB) theory as applied to crypto markets on centralized exchanges, and compares
LOB mechanics to the AMM-based structure of DEXes.
## Core Concepts
| Concept | What It Tells You |
|---|---|
| **Bid-ask spread** | Cost of immediacy — how much you pay to trade now vs later |
| **Price impact** | How your order moves the market price |View the complete source on GitHubmean-reversion
When your agent uses it
Mean-reversion strategy tools including Hurst exponent, half-life estimation, z-score signals, ADF testing, and Ornstein-Uhlenbeck modeling
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
2,568 tokensWhen the skill is activated
Reference documents
4,524 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When Mean Reversion Works
- When Mean Reversion Fails
- Testing for Mean Reversion
- Half-Life Estimation
- Z-Score Signal Framework
- Ornstein-Uhlenbeck (OU) Process
- Strategy Types
- Crypto-Specific Considerations
- Integration with Other Skills
- Files
- Quick Start
Scripts executed separately
scripts/mean_reversion_test.pyscripts/pairs_scanner.py
Files
SKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesSKILL.mdcore9,955 bytesreferences/statistical_tests.mddoc7,934 bytesreferences/strategy_design.mddoc8,261 bytesscripts/mean_reversion_test.pyruns24,541 bytesscripts/pairs_scanner.pyruns17,301 bytes
Read SKILL.md
# Mean Reversion
Mean reversion is the statistical tendency for prices, spreads, or other financial variables to return toward a long-run average after deviating from it. A mean-reverting series overshoots its mean, then corrects back -- creating predictable oscillations that can be traded.
## When Mean Reversion Works
- **Ranging markets**: Sideways price action with clear support/resistance
- **Pairs spreads**: Spread between cointegrated assets reverts to equilibrium
- **Oversold/overbought extremes**: RSI, Bollinger Band, or z-score extremes in stationary series
- **Funding rate arbitrage**: Perpetual funding rates revert to baseline
- **Stablecoin depegs**: Classic mean-reversion opportunity (peg = known mean)
- **Post-dump recovery**: Brief mean-reversion windows after initial PumpFun dumps
## When Mean Reversion FailsView the complete source on GitHubmev-analysis
When your agent uses it
MEV exposure assessment, sandwich attack detection, and protection strategies for Solana DEX trading
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
3,158 tokensWhen the skill is activated
Reference documents
4,053 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What Is MEV on Solana?
- MEV Types on Solana
- Estimating MEV Exposure
- MEV Protection Strategies
- Detecting Sandwich Attacks
- Integration with Other Skills
- Files
Scripts executed separately
scripts/mev_risk_estimator.pyscripts/sandwich_detector.py
Files
SKILL.mdcore12,438 bytesSKILL.mdcore12,438 bytesSKILL.mdcore12,438 bytesSKILL.mdcore12,438 bytesSKILL.mdcore12,438 bytesreferences/protection_strategies.mddoc9,314 bytesreferences/solana_mev_mechanics.mddoc7,033 bytesscripts/mev_risk_estimator.pyruns23,716 bytesscripts/sandwich_detector.pyruns24,491 bytes
Read SKILL.md
# MEV Analysis for Solana DEX Trading
Maximal Extractable Value (MEV) is the profit that validators and searchers can extract by reordering, inserting, or censoring transactions within a block. On Solana DEXes, MEV primarily manifests as sandwich attacks against swaps, cross-DEX arbitrage, and liquidation extraction. This skill covers detection, estimation, and protection strategies.
## What Is MEV on Solana?
MEV occurs when someone with transaction ordering power profits at other traders' expense. On Solana, the MEV supply chain works as follows:
1. **You submit a swap** through an RPC endpoint
2. **Searchers observe** your transaction (via RPC forwarding, block engine access, or leader TPU sniffing)
3. **Searcher constructs a profitable bundle** (e.g., sandwich your swap)
4. **Bundle submitted to Jito block engine** with a tip to the validator
5. **Validator includes the bundle** in the block, earning the tip
6. **You receive worse execution**; the searcher profits the differenceView the complete source on GitHubohlcv-processing
When your agent uses it
Market data preparation including OHLCV resampling, gap handling, anomaly detection, normalization, and multi-source merging
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
3,333 tokensWhen the skill is activated
Reference documents
3,728 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Data Validation
- Gap Handling
- Anomaly Detection
- Resampling
- Normalization
- Multi-Source Merging
- Timezone Handling
- Data Quality Report
- Files
Scripts executed separately
scripts/merge_sources.pyscripts/process_ohlcv.py
Files
SKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesSKILL.mdcore12,365 bytesreferences/data_quality.mddoc6,966 bytesreferences/resampling_guide.mddoc7,006 bytesscripts/merge_sources.pyruns17,828 bytesscripts/process_ohlcv.pyruns23,686 bytes
Read SKILL.md
# OHLCV Processing — Market Data Preparation
Clean, consistent OHLCV data is the foundation of every trading analysis. Garbage in, garbage out — a single anomalous candle can trigger false signals, corrupt indicator calculations, and produce misleading backtest results. This skill covers the full data preparation pipeline: validation, cleaning, resampling, normalization, and multi-source merging.
**Why this matters**: Crypto OHLCV data is messier than traditional markets. 24/7 trading means no official close, DEX aggregators disagree on prices, low-liquidity tokens produce impossible candles, and API outages create gaps. Every analysis workflow should start with this pipeline.
## Quick Start
### 1. Install Dependencies
```bash
uv pip install pandas numpy httpx
```
View the complete source on GitHuboptions-pricing
When your agent uses it
[STUB] Options pricing models including Black-Scholes, binomial trees, Monte Carlo, implied volatility surfaces, and Greeks for crypto options
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
1,293 tokensWhen the skill is activated
Reference documents
1,345 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Current Capabilities
- Planned Capabilities
- Prerequisites
- Use Cases
- Quick Reference: Black-Scholes Formulas
- Files
- Contributing
Scripts executed separately
scripts/black_scholes.py
Files
SKILL.mdcore5,594 bytesSKILL.mdcore5,594 bytesSKILL.mdcore5,594 bytesSKILL.mdcore5,594 bytesreferences/planned_features.mddoc4,800 bytesscripts/black_scholes.pyruns14,100 bytes
Read SKILL.md
# Options Pricing
> **Status: STUB** — This skill provides a basic Black-Scholes implementation and an overview of planned capabilities. Full implementation is awaiting community contribution.
Options pricing is the quantitative foundation of derivatives trading. For crypto markets, options on BTC and ETH trade actively on Deribit, Lyra, and Aevo, while Solana options are emerging on platforms like Zeta Markets and PsyOptions. Understanding pricing models, implied volatility surfaces, and Greeks is essential for hedging, volatility trading, and constructing structured products.
This skill is informational and analytical only. It does not provide financial advice or trading recommendations.
---
## Current Capabilities
This stub includes a working Black-Scholes calculator with Greeks computation and a basic implied volatility solver. See `scripts/black_scholes.py` for the implementation.
View the complete source on GitHubpandas-ta
When your agent uses it
Technical analysis with 130+ indicators using pandas-ta for crypto market data
What it loads into context
Frontmatter
21 tokensAlways available to the agent
SKILL.md
2,683 tokensWhen the skill is activated
Reference documents
7,521 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Installation
- Quick Start
- OHLCV DataFrame Format
- Core Indicator Categories
- Strategy Class
- Crypto-Specific Considerations
- Common Indicator Combinations
- Integration with Other Skills
- Files
Scripts executed separately
scripts/compute_indicators.pyscripts/multi_indicator_scan.py
Files
SKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesSKILL.mdcore9,162 bytesreferences/common_pitfalls.mddoc9,235 bytesreferences/indicator_guide.mddoc7,019 bytesreferences/strategy_patterns.mddoc8,410 bytesscripts/compute_indicators.pyruns16,789 bytesscripts/multi_indicator_scan.pyruns18,251 bytes
Read SKILL.md
# pandas-ta — Technical Analysis for Crypto Markets
pandas-ta is a Python library that extends pandas DataFrames with 130+ technical analysis indicators accessible via `df.ta`. It covers trend, momentum, volatility, volume, and overlap indicator categories — all callable with a single method on any OHLCV DataFrame.
## Installation
```bash
uv pip install pandas-ta pandas httpx
```
## Quick Start
```python
import pandas as pdView the complete source on GitHubpolymarket-api
When your agent uses it
Polymarket exchange mechanics — on-chain Polygon CTF, Gamma/CLOB/Data APIs, EIP-712 auth, identifier model, WebSocket, settlement, and geo/KYC constraint
What it loads into context
Frontmatter
45 tokensAlways available to the agent
SKILL.md
1,644 tokensWhen the skill is activated
Reference documents
2,484 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Identifier model
- Quick Start
- API surface overview
- WebSocket
- On-chain settlement and redemption
- US geo / KYC constraint
- Cross-references
- Files
Files
SKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesSKILL.mdcore6,383 bytesreferences/clob-and-gamma-apis.mddoc5,086 bytesreferences/settlement-and-ops.mddoc4,252 bytes
Read SKILL.md
# Polymarket API
Polymarket is a **prediction market on Polygon mainnet**. Every market is a pair of YES/NO **ERC-1155** tokens issued by the Conditional Token Framework (CTF), collateralized 1:1 in USDC. Off-chain CLOB matching, on-chain settlement, **zero taker fees**. Prices are in [0.00, 1.00] USDC; YES + NO ≈ 1.0 per market.
---
> **Before you write any API code — read the live docs first.**
>
> - Docs: https://docs.polymarket.com
> - Official Python SDK: https://github.com/Polymarket/py-clob-client
>
> Polymarket endpoints and auth flows have changed without notice. Prefer the official `py-clob-client` SDK over hand-rolled HTTP; it handles EIP-712 derivation, API credential management, and order signing. Only hand-roll when the SDK doesn't expose what you need.
---View the complete source on GitHubportfolio-analytics
When your agent uses it
Portfolio-level performance measurement including return metrics, risk metrics, risk-adjusted ratios, rolling analysis, and HTML reports
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
3,021 tokensWhen the skill is activated
Reference documents
3,896 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use This Skill
- Prerequisites
- Input Format
- Return Metrics
- Risk Metrics
- Risk-Adjusted Ratios
- Rolling Analysis
- Trade-Level Analysis
- Monthly / Yearly Return Tables
- Benchmark Comparison
- Quantstats HTML Reports
- Integration with Vectorbt
- Files
- Related Skills
Scripts executed separately
scripts/analyze_portfolio.pyscripts/compare_strategies.py
Files
SKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesSKILL.mdcore11,502 bytesreferences/metrics_guide.mddoc7,457 bytesreferences/quantstats_guide.mddoc7,294 bytesscripts/analyze_portfolio.pyruns23,107 bytesscripts/compare_strategies.pyruns17,323 bytes
Read SKILL.md
# Portfolio Analytics
Compute portfolio-level performance metrics from equity curves and trade logs. Covers return metrics, risk metrics, risk-adjusted ratios, drawdown analysis, rolling windows, benchmark comparison, trade-level statistics, and automated HTML report generation via quantstats.
## When to Use This Skill
- After backtesting a strategy (e.g., from `vectorbt` or `strategy-framework`)
- Comparing multiple strategies or parameter sets side-by-side
- Generating investor-ready performance reports
- Evaluating live trading performance against benchmarks
- Assessing risk-adjusted returns for portfolio allocation decisions
## Prerequisites
View the complete source on GitHubposition-sizing
When your agent uses it
Trade sizing methods including fixed fractional, volatility-adjusted, Kelly criterion, and liquidity-constrained sizing
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,390 tokensWhen the skill is activated
Reference documents
4,268 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Methods Covered
- 1. Fixed Fractional Sizing
- 2. Volatility-Adjusted Sizing
- 3. Kelly Criterion
- 4. Liquidity-Constrained Sizing
- 5. Anti-Martingale Sizing
- Position Sizing Ladder
- Account-Level Limits
- PumpFun / Meme Token Sizing
- Integration with Other Skills
- Files
- Quick Reference
Scripts executed separately
scripts/portfolio_sizer.pyscripts/size_calculator.py
Files
SKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesSKILL.mdcore9,731 bytesreferences/practical_guide.mddoc7,200 bytesreferences/sizing_formulas.mddoc7,171 bytesscripts/portfolio_sizer.pyruns17,126 bytesscripts/size_calculator.pyruns19,136 bytes
Read SKILL.md
# Position Sizing
Position sizing is the single most important risk management decision in trading. Your entry signal determines direction; your position size determines survival. A mediocre strategy with proper sizing will outperform a great strategy with reckless sizing over any meaningful time horizon.
**Core principle**: Size determines survival, not entries. Two traders with the same signals but different sizing will have wildly different outcomes. The one who sizes conservatively survives drawdowns and compounds capital; the one who oversizes blows up.
## Methods Covered
| Method | Best For | Key Input |
|--------|----------|-----------|
| Fixed Fractional | General trading, most recommended | Account risk % |
| Volatility-Adjusted | Volatile markets, multi-asset | ATR or realized vol |
| Kelly Criterion | Quantified edge with track record | Win rate + payoff ratio |
| Liquidity-Constrained | Low-liquidity Solana tokens | Pool depth |View the complete source on GitHubprediction-market-live-ops
When your agent uses it
Use when building, backtesting, operating, or scaling automated trading on prediction markets (Kalshi or similar) — evidence-gated methodology, live-execution safety rails, and falsification protocols distilled from a real live-money campaign
What it loads into context
Frontmatter
55 tokensAlways available to the agent
SKILL.md
1,394 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The prime directive
- Backtest hygiene (each rule was violated once, expensively)
- Live execution rules (the incident ledger)
- Scaling doctrine
- Experiment operations
Files
SKILL.mdcore6,182 bytes
Read SKILL.md
# Prediction-Market Trading Doctrine
Hard-won operational knowledge from a live Kalshi campaign (Aug–Sep 2026:
crypto/commodity maker ladders, regime tilts, tennis dust vacuum — all
falsified honestly, infrastructure open-sourced). Reference implementation: https://github.com/agiprolabs/kalshi-stack.
Complements `prediction-market-strategy` (edge selection/sizing) — this skill
covers the OPERATIONAL side: validating, executing, and killing strategies
against a live venue without losing more than the lesson costs.
## The prime directive
Every strategy decision is evidence-gated: backtest → paper → live micro-probe
→ ratchet. Each stage has a PRE-DECLARED kill condition with correctly
calibrated probability math, written down BEFORE the data arrives. When aView the complete source on GitHubprediction-market-strategy
When your agent uses it
Venue- and market-type-agnostic strategy, sizing, and backtesting layer for binary prediction markets (Kalshi, Polymarket, ForecastEx). Covers the durable edge thesis, fee-aware selection, fractional-Kelly sizing, and leak-free validation methodology.
What it loads into context
Frontmatter
61 tokensAlways available to the agent
SKILL.md
3,182 tokensWhen the skill is activated
Reference documents
4,886 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Core Thesis
- Strategy Catalog
- Fee-Aware Sizing & Edge Gates
- Backtesting Methodology
- Why Forecast Skill ≠ Trading Edge
- Evidence & Literature
- Files
Scripts executed separately
scripts/sizing.py
Files
SKILL.mdcore13,740 bytesSKILL.mdcore13,740 bytesSKILL.mdcore13,740 bytesreferences/backtesting-methodology.mddoc5,797 bytesreferences/evidence-and-literature.mddoc4,346 bytesreferences/sizing-and-edge-gates.mddoc5,061 bytesreferences/strategy-catalog.mddoc5,809 bytesscripts/sizing.pyruns7,212 bytes
Read SKILL.md
# Prediction Market Strategy
Binary prediction markets price contracts as probabilities. This skill covers the *strategy, sizing, and validation* layer that applies across all venues and market types. API mechanics live in `kalshi-api` / `polymarket-api`; contract semantics and settlement live in `kalshi-weather-markets` / `kalshi-crypto-index-markets`. This is the strategy/sizing/validation layer that applies across all of them.
## Core Thesis
**Price = implied probability.** A contract priced at $0.18 claims an 18% chance of resolving YES. Brackets in a series sum to just above $1.00 — the overround is the house margin (roughly 5–8% for weather markets on Kalshi).
**Takers systematically lose; makers systematically win.** Across 300k+ Kalshi contracts, the average pre-fee return is ≈ −20%, concentrated in takers (market-order users) and in longshot buyers. Makers (resting limit orders) earn positive returns. On Polymarket (588M+ trades), the top ~1% of accounts capture ~76.5% of profit, predominantly by resting limit orders. This is the foundational result.
**Favorite–longshot bias is the durable mechanism.** Cheap longshots are systematically overpriced: a $0.05 contract historically wins ~2%; sub-$0.10 contracts lose ~60% of stake to buyers. Favorites are fairly- to slightly-underpriced. The repeatable expression is **selling the overpriced longshot tail, maker-side** — resting NO bids on brackets priced ~$0.05–$0.20, diversified across many events to survive the rare hit. This is structural/behavioral, not a forecasting edge.
**Forecast skill ≠ trading edge.** A good weather or event forecast is largely redundant with the market price at decision time. Markets aggregate information efficiently enough that even a measurably better model produces near-zero net edge after fees unless it finds systematic mispricings (which are behavioral, not informational). The exception is official-label ML in lightly-traded markets — but that is bounded by fill-rate and capacity, not forecast accuracy.
View the complete source on GitHubpumpfun-mechanics
When your agent uses it
PumpFun bonding curve math, graduation mechanics, instruction parsing, and PumpSwap migration
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,544 tokensWhen the skill is activated
Reference documents
5,136 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Bonding Curve Math
- Graduation
- Program IDs & Addresses
- Event Parsing
- Instruction Discriminators
- Price Impact & Sizing
- Files
Scripts executed separately
scripts/curve_calculator.pyscripts/parse_events.py
Files
SKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesSKILL.mdcore8,667 bytesreferences/bonding_curve_math.mddoc4,233 bytesreferences/graduation_process.mddoc5,082 bytesreferences/instruction_reference.mddoc7,743 bytesscripts/curve_calculator.pyruns10,635 bytesscripts/parse_events.pyruns12,634 bytes
Read SKILL.md
# PumpFun Mechanics — Bonding Curves, Graduation & Instruction Parsing
PumpFun is the dominant Solana token launchpad. Understanding its bonding curve math, graduation process, and instruction formats is essential for analyzing new token launches, building trading strategies around graduation events, and parsing on-chain PumpFun activity.
## Bonding Curve Math
PumpFun uses a **virtual constant-product (CPMM)** bonding curve:
```
k = virtualSolReserves × virtualTokenReserves
```
### Initial Parameters
View the complete source on GitHubraptor-dex
When your agent uses it
Self-hosted Solana DEX aggregator by SolanaTracker — multi-hop routing across 25+ DEXes, WebSocket streaming, Yellowstone Jet TPU submission, no rate limits
What it loads into context
Frontmatter
45 tokensAlways available to the agent
SKILL.md
2,539 tokensWhen the skill is activated
Reference documents
2,631 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Execution Flow
- API Endpoints
- Get a Quote
- Build and Sign a Swap
- WebSocket Streaming
- Supported DEXes (25+)
- Configuration
- Priority Fee Levels
- Raptor vs Jupiter
- Deployment
- Files
Scripts executed separately
scripts/raptor_quote.pyscripts/raptor_swap.py
Files
SKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesSKILL.mdcore9,010 bytesreferences/api_reference.mddoc4,920 bytesreferences/deployment.mddoc4,576 bytesscripts/raptor_quote.pyruns7,819 bytesscripts/raptor_swap.pyruns10,664 bytes
Read SKILL.md
# Raptor — Self-Hosted Solana DEX Aggregator
Raptor is a self-hosted Rust binary that aggregates swap quotes across 25+ Solana DEXes. Unlike Jupiter, Raptor runs on your own infrastructure with **no rate limits**, **no API key**, and **no dependency on external API availability**. Free during public beta.
- **Program ID (Mainnet)**: `RaptorD5ojtsqDDtJeRsunPLg6GvLYNnwKJWxYE4m87`
- **GitHub**: [solanatracker/raptor-binary](https://github.com/solanatracker/raptor-binary)
- **Docs**: [docs.solanatracker.io/raptor/overview](https://docs.solanatracker.io/raptor/overview)
## Quick Start
```bash
# Clone the binary repo (includes required signature file)
git clone https://github.com/solanatracker/raptor-binary
cd raptor-binaryView the complete source on GitHubregime-detection
When your agent uses it
Market regime identification using volatility clustering, trend detection, and statistical methods for adaptive trading
What it loads into context
Frontmatter
24 tokensAlways available to the agent
SKILL.md
2,875 tokensWhen the skill is activated
Reference documents
3,924 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Regime Detection Matters
- Core Regime Dimensions
- Simple Approaches (No ML Required)
- Statistical Approaches
- Crypto-Specific Considerations
- Combined Regime Classification
- Strategy Adaptation
- Integration with Other Skills
- Files
Scripts executed separately
scripts/detect_regime.pyscripts/regime_backtest.py
Files
SKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesSKILL.mdcore10,654 bytesreferences/methodology.mddoc6,862 bytesreferences/strategy_adaptation.mddoc7,421 bytesscripts/detect_regime.pyruns18,839 bytesscripts/regime_backtest.pyruns19,702 bytes
Read SKILL.md
# Regime Detection
Identify the current market regime so you can pick the right strategy, size positions correctly, and avoid deploying trend-following logic in a ranging market (or vice versa).
## Why Regime Detection Matters
Every strategy has a "home regime." A momentum strategy prints money in a clean uptrend but bleeds in a choppy range. A mean-reversion grid thrives in low-volatility consolidation but gets steamrolled by a trending breakout. Regime detection tells you **which playbook to use right now**.
Key benefits:
- **Strategy selection**: Route signals to the right strategy for the current environment
- **Position sizing**: Reduce exposure in hostile regimes, increase in favorable ones
- **Stop adaptation**: Wider stops in high-vol regimes, tighter in low-vol trends
- **Drawdown control**: Sit out "danger zone" regimes (high vol + no trend)
View the complete source on GitHubregulatory-reporting
When your agent uses it
[STUB] Regulatory report generation including IRS Form 8949, Schedule D, FinCEN FBAR, and state-specific crypto reporting requirements
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
2,086 tokensWhen the skill is activated
Reference documents
1,988 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Disclaimer
- Current Status
- Prerequisites
- Key Concepts
- Quick Start
- Use Cases
- Files
- Limitations
- Reporting Deadlines (U.S. Federal)
- Contributing
- Related Skills
Scripts executed separately
scripts/form_8949_generator.py
Files
SKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesreferences/planned_features.mddoc8,001 bytesscripts/form_8949_generator.pyruns17,371 bytes
Read SKILL.md
# Regulatory Reporting
> **STATUS: STUB** — This skill outlines planned capabilities for crypto tax and regulatory reporting. All generated output must be reviewed by a qualified tax professional before filing. Nothing in this skill constitutes tax or legal advice.
## Overview
Track and generate required regulatory reports for cryptocurrency trading activity. Covers U.S. federal forms (IRS Form 8949, Schedule D), FinCEN foreign account reporting (FBAR), state-specific crypto obligations, large-transaction flagging, and deadline tracking.
Crypto tax reporting is complex and evolving. Rules change frequently, cost-basis methods vary by jurisdiction, and DeFi activities (swaps, LP positions, airdrops, staking rewards) have ambiguous treatment under current guidance. This skill provides a structured framework for organizing trade data into the formats regulators expect — but a tax professional must validate every filing.
## Disclaimer
> **WARNING**: This skill is for informational and educational purposes only. It does NOT constitute tax, legal, or financial advice. Cryptocurrency tax law is complex, jurisdiction-specific, and rapidly evolving. You MUST consult a qualified tax professional (CPA, EA, or tax attorney with crypto expertise) before relying on any output from this skill for actual tax filings. Errors in tax reporting can result in penalties, interest, and legal consequences. The authors accept no liability for any use of this material.
View the complete source on GitHubrisk-management
When your agent uses it
Portfolio-level risk controls, drawdown management, exposure limits, and circuit breakers for crypto trading
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,211 tokensWhen the skill is activated
Reference documents
5,349 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Risk Management Hierarchy
- Portfolio-Level Controls
- Drawdown Management
- Circuit Breakers
- Risk Metrics
- Crypto-Specific Risks
- PumpFun Risk Framework
- Integration with Other Skills
- Files
- Quick Start
Scripts executed separately
scripts/drawdown_analyzer.pyscripts/risk_dashboard.py
Files
SKILL.mdcore9,156 bytesSKILL.mdcore9,156 bytesSKILL.mdcore9,156 bytesSKILL.mdcore9,156 bytesSKILL.mdcore9,156 bytesreferences/circuit_breakers.mddoc8,127 bytesreferences/drawdown_management.mddoc6,869 bytesreferences/exposure_limits.mddoc6,451 bytesscripts/drawdown_analyzer.pyruns17,332 bytesscripts/risk_dashboard.pyruns23,281 bytes
Read SKILL.md
# Risk Management
Portfolio-level risk controls for crypto and Solana trading. This skill provides frameworks for drawdown management, exposure limits, circuit breakers, and crypto-specific risk considerations.
## Risk Management Hierarchy
Every decision must respect this priority order:
1. **Survival** — Never risk account ruin. No single trade, day, or week should threaten your ability to continue trading.
2. **Capital preservation** — Protect what you have. Losses compound geometrically; recovery requires outsized gains.
3. **Growth** — Only after survival and preservation are secured, pursue returns.
Violating this hierarchy (chasing growth at the expense of survival) is the primary cause of account blowups.
View the complete source on GitHubrl-execution
When your agent uses it
Reinforcement learning for trade execution optimization including order splitting, adaptive timing, and impact minimization
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
1,817 tokensWhen the skill is activated
Reference documents
3,708 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Execution Optimization Matters
- The RL Framework for Execution
- Standard Execution Algorithms
- Price Impact Model
- When to Use This Skill
- Practical Limitations
- Integration with Other Skills
- Quick Start
- Files
- Dependencies
- Further Reading
- Disclaimer
Scripts executed separately
scripts/almgren_chriss.pyscripts/execution_simulator.py
Files
SKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesSKILL.mdcore7,964 bytesreferences/execution_algorithms.mddoc6,793 bytesreferences/rl_framework.mddoc8,050 bytesscripts/almgren_chriss.pyruns15,586 bytesscripts/execution_simulator.pyruns17,923 bytes
Read SKILL.md
# RL Execution Optimization
Reinforcement learning (RL) for trade execution teaches an agent to split and
time large orders so that total market impact is minimized. Instead of following
a fixed schedule (TWAP, VWAP), an RL agent observes real-time market state and
adapts its trading rate on the fly.
## Why Execution Optimization Matters
Every trade has a cost beyond the quoted spread:
| Cost Component | Cause | Typical Magnitude |
|---|---|---|
| Spread cost | Crossing the bid-ask | 5-50 bps on DEXs |View the complete source on GitHubsentiment-analysis
When your agent uses it
Market sentiment extraction from social media, news, and on-chain data including mention velocity, fear and greed indices, and influencer tracking
What it loads into context
Frontmatter
32 tokensAlways available to the agent
SKILL.md
2,458 tokensWhen the skill is activated
Reference documents
4,754 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- When to Use This Skill
- Core Concepts
- Integration With Other Skills
- Practical Workflow
- Limitations and Warnings
- Files
Scripts executed separately
scripts/keyword_sentiment.pyscripts/sentiment_scanner.py
Files
SKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesSKILL.mdcore9,605 bytesreferences/data_sources.mddoc8,349 bytesreferences/scoring_methods.mddoc7,969 bytesscripts/keyword_sentiment.pyruns15,338 bytesscripts/sentiment_scanner.pyruns24,924 bytes
Read SKILL.md
# Sentiment Analysis
Extract and quantify market sentiment from social media, news feeds, and on-chain
data to identify crowd positioning and potential contrarian opportunities.
## When to Use This Skill
- Gauge crowd sentiment before entering or exiting a position
- Detect euphoria/panic extremes that precede reversals
- Monitor social mention velocity for early trend detection
- Track influencer activity around specific tokens
- Build composite sentiment scores for systematic strategies
## Core ConceptsView the complete source on GitHubshredstream
When your agent uses it
Pre-execution Solana transaction streaming via Jito ShredStream, Shyft RabbitStream, and Triton Deshred
What it loads into context
Frontmatter
33 tokensAlways available to the agent
SKILL.md
2,540 tokensWhen the skill is activated
Reference documents
4,437 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How It Works
- Three Ways to Get Pre-Execution Data
- Option 1: Jito ShredStream Proxy
- Option 2: Shyft RabbitStream
- Option 3: Triton Deshred
- Parsing Pre-Execution Transactions
- Common Architecture: ShredStream + Yellowstone
- Deployment Requirements
- Files
Scripts executed separately
scripts/parse_shredstream_entries.pyscripts/rabbitstream_monitor.py
Files
SKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesSKILL.mdcore10,125 bytesreferences/deployment.mddoc6,014 bytesreferences/proto_reference.mddoc6,594 bytesreferences/providers_compared.mddoc4,923 bytesscripts/parse_shredstream_entries.pyruns14,219 bytesscripts/rabbitstream_monitor.pyruns11,721 bytes
Read SKILL.md
# ShredStream — Pre-Execution Solana Data
ShredStream gives you transaction data **before the validator executes the block** — typically 100-500ms earlier than standard Yellowstone gRPC. You see transaction *intent*, not confirmed results.
This is the fastest path to Solana data for time-critical trading strategies.
## How It Works
Solana validators produce blocks by serializing transactions into **shreds** (~1,228 bytes each, sized for UDP MTU). Shreds propagate through Turbine (Solana's fanout protocol, 2-3 hops). ShredStream bypasses Turbine by receiving shreds **directly from leader validators** via Jito's Block Engine.
```
Leader Validator
│
├── Turbine (standard, 2-3 hops, 200-500ms)View the complete source on GitHubsignal-classification
When your agent uses it
ML trading signal classifiers using XGBoost and LightGBM with walk-forward validation, SHAP feature importance, and threshold optimization
What it loads into context
Frontmatter
33 tokensAlways available to the agent
SKILL.md
2,658 tokensWhen the skill is activated
Reference documents
3,771 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Tree-Based Models Dominate Trading ML
- Classification Types
- Walk-Forward Validation
- Model Training Pipeline
- SHAP Feature Importance
- Threshold Optimization
- Crypto-Specific Considerations
- Integration with Other Skills
- Files
- Dependencies
- Key Takeaways
Scripts executed separately
scripts/train_classifier.pyscripts/walk_forward_backtest.py
Files
SKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesSKILL.mdcore11,435 bytesreferences/model_guide.mddoc7,028 bytesreferences/validation_methods.mddoc8,092 bytesscripts/train_classifier.pyruns21,804 bytesscripts/walk_forward_backtest.pyruns22,096 bytes
Read SKILL.md
# Signal Classification
Predict whether an asset's price will move up or down over a forward horizon using supervised machine learning classifiers. This skill covers the full pipeline: label creation, model training, walk-forward validation, feature importance analysis, and threshold optimization for trading applications.
## Why Tree-Based Models Dominate Trading ML
XGBoost and LightGBM are the workhorses of quantitative trading ML for good reason:
- **Non-linear relationships**: Financial features interact in complex, non-linear ways that trees capture naturally
- **Robust to feature scale**: No need to normalize or standardize inputs — trees split on rank order
- **Built-in feature importance**: Understand which features drive predictions without separate analysis
- **Fast training and inference**: Train on thousands of samples in seconds, predict in microseconds
- **Handle missing values**: Native support for NaN without imputation hacks
- **Regularization built in**: max_depth, min_child_weight, subsample all prevent overfittingView the complete source on GitHubslippage-modeling
When your agent uses it
Execution cost estimation, slippage curve modeling, and optimal trade sizing based on AMM liquidity depth
What it loads into context
Frontmatter
28 tokensAlways available to the agent
SKILL.md
2,021 tokensWhen the skill is activated
Reference documents
3,526 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What Is Slippage?
- Sources of Slippage
- Constant-Product Slippage Formula
- CLMM Slippage
- Empirical Slippage Measurement
- Total Execution Cost Model
- Optimal Trade Sizing
- Slippage by Token Category
- Integration Points
- Files
Scripts executed separately
scripts/execution_cost.pyscripts/slippage_curve.py
Files
SKILL.mdcore7,926 bytesreferences/cost_model.mddoc6,280 bytesreferences/slippage_math.mddoc5,699 bytesscripts/execution_cost.pyruns16,218 bytesscripts/slippage_curve.pyruns16,254 bytes
Read SKILL.md
# Slippage Modeling
Estimate execution costs, model slippage curves from AMM mechanics and empirical quotes, and determine optimal trade sizes that keep costs within acceptable thresholds.
## What Is Slippage?
Slippage is the difference between the **expected price** at the time you decide to trade and the **actual execution price** you receive. On decentralized exchanges, slippage is deterministic and measurable — unlike CEX slippage, which depends on hidden order book dynamics.
**Example**: You expect to buy a token at 0.001 SOL. Your trade executes at 0.00105 SOL. That 5% difference is slippage — it directly reduces your profit and increases your break-even threshold.
## Sources of Slippage
### 1. AMM Price Impact (Primary Source)
View the complete source on GitHubsolana-rpc
When your agent uses it
Direct Solana blockchain interaction via JSON-RPC — account lookups, token balances, transaction submission, and program queries
What it loads into context
Frontmatter
32 tokensAlways available to the agent
SKILL.md
2,463 tokensWhen the skill is activated
Reference documents
3,684 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- RPC Providers
- Core Read Methods
- Write Methods
- Commitment Levels
- Common Patterns
- Key Program IDs
- When to Use Direct RPC vs Higher-Level APIs
- Files
Scripts executed separately
scripts/token_holders.pyscripts/wallet_scanner.py
Files
SKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesSKILL.mdcore9,137 bytesreferences/error_handling.mddoc4,805 bytesreferences/methods.mddoc5,606 bytesreferences/providers.mddoc3,374 bytesscripts/token_holders.pyruns9,893 bytesscripts/wallet_scanner.pyruns11,013 bytes
Read SKILL.md
# Solana RPC — Direct Blockchain Interaction
The Solana JSON-RPC API provides direct read/write access to the blockchain. Use it for account state queries, token balance lookups, transaction building and submission, and program account enumeration. This is the low-level foundation when higher-level APIs (Birdeye, Helius, SolanaTracker) don't have the data you need.
## Quick Start
```python
import httpx
RPC = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com")
def rpc_call(method: str, params: list = None) -> dict:
resp = httpx.post(RPC, json={
"jsonrpc": "2.0", "id": 1,View the complete source on GitHubsolana-tx-building
When your agent uses it
Solana transaction construction including instruction building, account resolution, compute budget, priority fees, and versioned transactions
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
2,829 tokensWhen the skill is activated
Reference documents
4,032 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Transaction Anatomy
- Legacy vs Versioned Transactions
- Compute Budget
- Common Transaction Patterns
- Simulation
- Error Handling
- Transaction Decoding
- Integration with Other Skills
- Safety Checklist
- Files
Scripts executed separately
scripts/build_transfer.pyscripts/decode_transaction.py
Files
SKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesSKILL.mdcore12,371 bytesreferences/common_instructions.mddoc7,352 bytesreferences/transaction_anatomy.mddoc7,587 bytesscripts/build_transfer.pyruns23,099 bytesscripts/decode_transaction.pyruns23,482 bytes
Read SKILL.md
# Solana Transaction Building
This skill covers how to construct, simulate, and inspect Solana transactions programmatically. It addresses the full anatomy of a Solana transaction — from raw instruction encoding to versioned transaction formats, compute budget management, priority fees, and address lookup tables.
**Safety**: This skill is for transaction *construction* and *analysis* only. Scripts in this skill NEVER sign or submit real transactions. Always simulate before sending. Never auto-sign.
## Transaction Anatomy
A Solana transaction consists of:
1. **Signatures**: One or more Ed25519 signatures (64 bytes each)
2. **Message**: The serializable payload containing:
- **Header**: Counts of required signers, read-only signers, read-only non-signers
- **Account keys**: Array of all pubkeys referenced by instructionsView the complete source on GitHubsolanatracker-api
When your agent uses it
Solana token data, PnL, risk scores, 1-second OHLCV, wallet analytics, and self-hosted swap execution via Raptor
What it loads into context
Frontmatter
41 tokensAlways available to the agent
SKILL.md
2,123 tokensWhen the skill is activated
Reference documents
5,351 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Authentication & Pricing
- Core Data Endpoints
- Raptor — Self-Hosted DEX Aggregator
- DataStream WebSocket
- When to Use SolanaTracker vs Alternatives
- Files
Scripts executed separately
scripts/token_analysis.pyscripts/wallet_pnl.py
Files
SKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesSKILL.mdcore7,530 bytesreferences/data_api_endpoints.mddoc6,247 bytesreferences/raptor_setup.mddoc6,249 bytesreferences/risk_and_pnl.mddoc6,137 bytesscripts/token_analysis.pyruns11,437 bytesscripts/wallet_pnl.pyruns11,344 bytes
Read SKILL.md
# SolanaTracker API — Token Data, Analytics & Raptor DEX Aggregator
SolanaTracker provides comprehensive Solana token data with unique features: **1-second OHLCV resolution**, **wallet PnL tracking**, **risk scoring**, **bundler/sniper detection**, and a **self-hosted DEX aggregator (Raptor)** supporting 25+ DEXes with no rate limits.
## Quick Start
```python
import httpx
[Credential-related source omitted]
BASE = "https://data.solanatracker.io"
[Credential-related source omitted]
# Token info with risk score, pools, holdersView the complete source on GitHubstrategy-framework
When your agent uses it
Standardized template for defining trading strategies with entry rules, exit rules, position sizing, risk parameters, and performance criteria
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
2,547 tokensWhen the skill is activated
Reference documents
3,892 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why a Strategy Framework Matters
- Strategy Definition Template
- Strategy Lifecycle
- Strategy Evaluation Criteria
- Strategy Types for Crypto
- Common Strategy Mistakes
- Integration with Other Skills
- Files
Scripts executed separately
scripts/define_strategy.pyscripts/strategy_scorecard.py
Files
SKILL.mdcore10,454 bytesSKILL.mdcore10,454 bytesSKILL.mdcore10,454 bytesSKILL.mdcore10,454 bytesreferences/strategy_template.mddoc5,835 bytesreferences/strategy_types.mddoc8,507 bytesscripts/define_strategy.pyruns17,789 bytesscripts/strategy_scorecard.pyruns21,554 bytes
Read SKILL.md
# Strategy Framework
A standardized system for defining, documenting, testing, and managing trading strategies. This skill provides templates and tools that enforce discipline, enable reproducibility, and make strategies testable.
## Why a Strategy Framework Matters
Trading without a written strategy framework leads to:
- **Inconsistency**: ad-hoc decisions driven by emotion rather than rules
- **Untestability**: vague ideas that cannot be backtested or evaluated
- **Scope creep**: strategies that drift without version-controlled definitions
- **Unmanaged risk**: missing stop losses, position limits, or drawdown halts
A strategy framework forces you to:
1. State a falsifiable hypothesis about a market inefficiencyView the complete source on GitHubsybil-detection
When your agent uses it
Coordinated wallet cluster detection, wash trading identification, and fake activity analysis for Solana tokens
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
2,640 tokensWhen the skill is activated
Reference documents
4,278 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Sybil Detection Matters
- Detection Categories
- Key Metrics
- Composite Risk Score
- Data Sources
- Workflow: Evaluate a Token
- Integration with Other Skills
- Files
Scripts executed separately
scripts/detect_sybils.pyscripts/funding_tracer.py
Files
SKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesSKILL.mdcore10,331 bytesreferences/bundler_detection.mddoc8,672 bytesreferences/clustering_methods.mddoc9,737 bytesscripts/detect_sybils.pyruns24,187 bytesscripts/funding_tracer.pyruns17,189 bytes
Read SKILL.md
# Sybil Detection — Coordinated Wallet & Fake Activity Analysis
Sybil attacks in Solana token markets involve a single entity operating many wallets to create the illusion of organic activity. This skill covers detecting coordinated wallet clusters, wash trading, bundled transactions, and fake holder inflation — critical for evaluating whether a token's metrics reflect real demand or manufactured signals.
## Why Sybil Detection Matters
Token markets on Solana are rife with manufactured signals:
- **Inflated holder counts**: 500 "holders" that are really 10 entities with 50 wallets each
- **Fake volume**: Wash trading between self-controlled wallets to simulate demand
- **Artificial social proof**: Many wallets holding small amounts to appear broadly distributed
- **Rug preparation**: Creator distributes supply across many wallets, then sells coordinated
- **Bundled launches**: PumpFun tokens where creator buys via Jito bundle in first slot
View the complete source on GitHubta-lib
When your agent uses it
C-optimized technical analysis with 150+ functions and 61 candlestick pattern recognition functions via TA-Lib
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
2,590 tokensWhen the skill is activated
Reference documents
4,972 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What TA-Lib Is
- Installation
- When to Use TA-Lib vs pandas-ta
- Quick Start
- Function API vs Abstract API
- Function Groups
- Crypto Considerations
- Integration with Other Skills
- Listing Available Functions
- Files
Scripts executed separately
scripts/compute_indicators.pyscripts/pattern_scanner.py
Files
SKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesSKILL.mdcore9,702 bytesreferences/candlestick_patterns.mddoc7,913 bytesreferences/function_reference.mddoc7,860 bytesscripts/compute_indicators.pyruns18,755 bytesscripts/pattern_scanner.pyruns21,384 bytes
Read SKILL.md
# ta-lib — C-Optimized Technical Analysis
TA-Lib (Technical Analysis Library) is a C library with a Python wrapper providing 150+ technical analysis functions and 61 candlestick pattern recognition functions. It is the industry standard for performance-critical indicator computation, used in production trading systems where pandas-ta or pure-Python alternatives are too slow.
## What TA-Lib Is
TA-Lib was originally written in C for financial market data analysis. The Python wrapper (`TA-Lib` on PyPI, imported as `talib`) provides:
- **150+ indicator functions** across overlap, momentum, volume, volatility, cycle, and math categories
- **61 candlestick pattern recognition functions** — the most comprehensive pattern library available
- **C-speed computation** — 10-100x faster than pure-Python equivalents on large datasets
- **Two APIs**: a function API (pass arrays directly) and an abstract API (pass dict of arrays)
- **NumPy native** — all inputs and outputs are NumPy arrays
View the complete source on GitHubtax-liability-tracking
When your agent uses it
Real-time tax liability analysis for active crypto traders with proportional cost basis, gain classification, and tax-aware trading signals
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
2,158 tokensWhen the skill is activated
Reference documents
1,699 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why This Matters
- Core Concepts
- Capabilities
- Prerequisites
- Quick Start
- Use Cases
- Accounting Methods
- Integration with Trading Workflow
- Files
- Limitations
- Disclaimer
Scripts executed separately
scripts/tax_tracker.py
Files
SKILL.mdcore9,542 bytesSKILL.mdcore9,542 bytesreferences/planned_features.mddoc6,379 bytesscripts/tax_tracker.pyruns23,979 bytes
Read SKILL.md
# Tax Liability Tracking
Real-time tax liability analysis purpose-built for active Solana traders. Track proportional cost basis across partial sells, classify realized vs unrealized gains, project quarterly tax obligations, and surface tax-aware signals that feed back into trading decisions.
## Why This Matters
Active crypto traders generate hundreds of taxable events per year. Without real-time tracking:
- You do not know your actual after-tax P&L until year-end
- Partial sells (the "house money" play) create cost basis confusion
- Short-term vs long-term classification shifts your effective tax rate by 15-20%
- Tax-loss harvesting windows close without you noticing
- Quarterly estimated payments become guesswork
View the complete source on GitHubtax-loss-harvesting
When your agent uses it
Tax-loss harvesting opportunity identification, scoring, and planning with wash sale compliance and annual carryforward tracking
What it loads into context
Frontmatter
56 tokensAlways available to the agent
SKILL.md
2,750 tokensWhen the skill is activated
Reference documents
1,857 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- How Tax-Loss Harvesting Works
- Ranking Unrealized Losses
- Net Benefit Calculation
- Year-End "Use It or Lose It"
- Wash Sale Compliance
- Annual Loss Carryforward Tracking
- Prerequisites
- Capabilities
- Quick Start
- Use Cases
- Files
Scripts executed separately
scripts/harvest_scanner.py
Files
SKILL.mdcore11,858 bytesSKILL.mdcore11,858 bytesSKILL.mdcore11,858 bytesSKILL.mdcore11,858 bytesSKILL.mdcore11,858 bytesreferences/planned_features.mddoc7,927 bytesscripts/harvest_scanner.pyruns23,436 bytes
Read SKILL.md
# Tax-Loss Harvesting
Identify, score, and plan tax-loss harvesting (TLH) opportunities across a crypto portfolio. This skill covers unrealized-loss ranking, net-benefit calculation, wash sale compliance, annual loss carryforward tracking, and year-end "use it or lose it" strategies.
> **Disclaimer:** This skill provides informational analysis only. It is NOT tax advice. Tax rules vary by jurisdiction and change frequently. Consult a qualified tax professional before making any tax-related trading decisions.
## How Tax-Loss Harvesting Works
Tax-loss harvesting is the practice of intentionally realizing investment losses to offset realized capital gains, thereby reducing your current-year tax liability.
### Core Mechanism
1. **Identify** positions with unrealized losses in your portfolio.
2. **Sell** those positions to realize the loss.View the complete source on GitHubtoken-economics
When your agent uses it
Token supply dynamics, vesting analysis, inflation modeling, and valuation frameworks for crypto tokens
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,588 tokensWhen the skill is activated
Reference documents
4,700 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Tokenomics Matters
- Key Supply Concepts
- Supply Dynamics
- Vesting and Unlock Schedules
- Token Distribution Analysis
- Valuation Frameworks
- PumpFun Token Economics
- Integration with Other Skills
- Files
Scripts executed separately
scripts/supply_modeler.pyscripts/tokenomics_analyzer.py
Files
SKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesSKILL.mdcore10,085 bytesreferences/supply_analysis.mddoc8,764 bytesreferences/valuation_frameworks.mddoc9,859 bytesscripts/supply_modeler.pyruns18,088 bytesscripts/tokenomics_analyzer.pyruns16,738 bytes
Read SKILL.md
# Token Economics
Tokenomics — the study of token supply dynamics, distribution, and value accrual — is one of the most important factors in crypto asset analysis. Supply changes directly affect price: new tokens entering circulation create selling pressure, while burns and locks reduce it. Understanding these dynamics lets you estimate dilution risk, identify overvalued or undervalued tokens, and anticipate price-moving unlock events.
## Why Tokenomics Matters
Price is a function of demand **and** supply. In crypto, supply is programmable and constantly changing:
- A token inflating at 50%/year needs 50% demand growth just to maintain price
- A large unlock releasing 10% of circulating supply in one day often causes 5-20% drawdowns
- Tokens with >80% of supply locked have extreme dilution risk ahead
- Protocols that burn fees can become net deflationary, creating structural price support
## Key Supply ConceptsView the complete source on GitHubtoken-holder-analysis
When your agent uses it
Token holder distribution, concentration metrics, insider detection, and supply analysis for Solana tokens
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,787 tokensWhen the skill is activated
Reference documents
4,227 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Quick Start
- Data Sources
- Concentration Metrics
- Insider Detection Patterns
- Complete Analysis Pipeline
- Risk Classification Summary
- Known Exclusions
- Files
Scripts executed separately
scripts/analyze_holders.pyscripts/concentration_scanner.py
Files
SKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesSKILL.mdcore10,518 bytesreferences/concentration_metrics.mddoc4,828 bytesreferences/data_sources.mddoc5,053 bytesreferences/insider_patterns.mddoc6,390 bytesscripts/analyze_holders.pyruns12,046 bytesscripts/concentration_scanner.pyruns8,818 bytes
Read SKILL.md
# Token Holder Analysis — Concentration, Distribution & Risk
Analyze who holds a token, how concentrated ownership is, and whether insider patterns suggest risk. This is a critical pre-trade safety check — high concentration means a few wallets can crash the price.
## Quick Start
```python
import httpx
import math
# Using Helius DAS API for holder data
HELIUS_KEY = os.getenv("HELIUS_API_KEY", "")
[Credential-related source omitted]
View the complete source on GitHubtrade-accounting
When your agent uses it
Double-entry bookkeeping for trading operations with ledger management, P&L statements, balance sheets, and cash flow reporting
What it loads into context
Frontmatter
57 tokensAlways available to the agent
SKILL.md
3,040 tokensWhen the skill is activated
Reference documents
2,282 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Traders Need Accounting
- Account Types
- Double-Entry Bookkeeping
- Transaction Types
- Reports
- Trading P&L vs Tax P&L
- Entity Considerations
- Quick Start
- Use Cases
- Prerequisites
- Files
Scripts executed separately
scripts/trading_ledger.py
Files
SKILL.mdcore13,253 bytesSKILL.mdcore13,253 bytesSKILL.mdcore13,253 bytesreferences/planned_features.mddoc7,852 bytesscripts/trading_ledger.pyruns30,693 bytes
Read SKILL.md
# Trade Accounting
Run your trading operation like a business. Every SOL spent, every token acquired, every fee paid, every gain realized — tracked with double-entry bookkeeping so your books always balance. Whether you trade through a personal wallet or an LLC, proper accounting turns chaos into clarity.
**Core principle**: Every transaction touches at least two accounts. Buy a token? Cash goes down, token holdings go up — by the same amount. This double-entry constraint catches errors automatically: if debits do not equal credits, something is wrong.
## Why Traders Need Accounting
Most traders track P&L loosely — "I started with 50 SOL and now I have 62 SOL." That tells you nothing about:
- How much came from realized trades vs unrealized positions
- What you paid in cumulative fees (gas, priority fees, swap fees)
- Whether your staking and LP income covers your operating costs
- Your actual cost basis for each holding (critical for taxes)View the complete source on GitHubtrade-journal
When your agent uses it
Structured trade logging, performance review, behavioral pattern detection, and strategy attribution for systematic improvement
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,699 tokensWhen the skill is activated
Reference documents
4,344 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Journaling Matters
- Trade Record Structure
- Storage Format
- Analytics from Journal Data
- Behavioral Pattern Detection
- Review Cadence
- Partial Exits and Scaled Entries
- Files
- Dependencies
- Disclaimer
Scripts executed separately
scripts/journal_analyzer.pyscripts/trade_logger.py
Files
SKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesSKILL.mdcore10,430 bytesreferences/record_format.mddoc7,476 bytesreferences/review_framework.mddoc8,384 bytesscripts/journal_analyzer.pyruns27,696 bytesscripts/trade_logger.pyruns25,380 bytes
Read SKILL.md
# Trade Journal
Structured trade journaling for systematic improvement. Log every trade with context, review performance at multiple cadences, detect behavioral patterns that destroy edge, and attribute returns to specific strategies.
## Why Journaling Matters
Most traders fail not from bad strategies but from bad behavior. A trade journal transforms subjective "feel" into objective data:
- **Strategy Attribution**: Know which setups actually make money vs. which feel profitable
- **Behavioral Detection**: Catch revenge trading, FOMO entries, and premature exits before they compound
- **Pattern Recognition**: Discover that your Monday morning trades lose money, or that you cut SOL winners too early
- **Accountability**: Written rationale before entry forces deliberate decision-making
- **Improvement Tracking**: Measure whether changes to your process actually improve results
View the complete source on GitHubtrading-visualization
When your agent uses it
Professional trading charts including candlesticks, equity curves, drawdowns, correlation heatmaps, and return distributions
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
3,046 tokensWhen the skill is activated
Reference documents
4,866 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Chart Types Covered
- Libraries
- Styling: Dark Theme Default
- Chart Composition: Multi-Panel Layout
- Candlestick Charts with Overlays
- Equity Curve with Drawdown Panel
- Return Distribution
- Correlation Heatmap
- Trade Markers on Price Chart
- Output Formats
- Integration with Other Skills
- Files
Scripts executed separately
scripts/chart_generator.pyscripts/performance_report.py
Files
SKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytesSKILL.mdcore11,339 bytescandlestick.pngasset117,295 bytesequity_drawdown.pngasset163,018 bytesreferences/chart_recipes.mddoc9,456 bytesreferences/styling_guide.mddoc6,445 bytesreturn_distribution.pngasset87,285 bytesscripts/chart_generator.pyruns16,027 bytesscripts/performance_report.pyruns16,840 bytestrade_markers.pngasset149,382 bytes
Read SKILL.md
# Trading Visualization
Visualization is the primary interface between a trader and their data. Charts reveal patterns that tables and numbers cannot: breakdowns in strategy, regime transitions, clustering of losses, and the shape of risk. A well-designed chart communicates more in a glance than a page of statistics.
**Three uses of trading charts:**
1. **Pattern recognition** — Spot structural changes in price, volume, and momentum that quantitative filters miss.
2. **Strategy evaluation** — Equity curves, drawdown plots, and return distributions expose whether a strategy is robust or curve-fit.
3. **Reporting** — Communicate performance to stakeholders, journals, or your future self with publication-quality visuals.
---
## Chart Types Covered
View the complete source on GitHubvectorbt
When your agent uses it
High-performance vectorized backtesting with parameter optimization, portfolio simulation, and rich performance metrics
What it loads into context
Frontmatter
24 tokensAlways available to the agent
SKILL.md
2,842 tokensWhen the skill is activated
Reference documents
4,260 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Installation
- Core Concepts
- Basic Workflow
- Key Portfolio Parameters
- Performance Metrics
- Parameter Optimization
- Crypto-Specific Considerations
- Common Strategy Patterns
- Related Skills
- Files
Scripts executed separately
scripts/backtest_example.pyscripts/parameter_sweep.py
Files
SKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesSKILL.mdcore10,330 bytesreferences/api_guide.mddoc7,673 bytesreferences/optimization_guide.mddoc8,786 bytesscripts/backtest_example.pyruns12,591 bytesscripts/parameter_sweep.pyruns14,351 bytes
Read SKILL.md
# Vectorized Backtesting with vectorbt
## Overview
vectorbt is a Python library for **vectorized backtesting** — running strategy simulations using NumPy/pandas array operations instead of bar-by-bar loops. This makes it 100–1000x faster than event-driven frameworks (backtrader, zipline), enabling parameter optimization across thousands of combinations in seconds.
**Key strengths:**
- Blazing speed via NumPy vectorization
- Built-in parameter grid search and optimization
- 50+ built-in performance metrics (Sharpe, Sortino, Calmar, max drawdown, profit factor)
- Rich plotting (equity curves, drawdowns, trade markers, heatmaps)
- Native pandas integration — your data stays in DataFrames throughout
## InstallationView the complete source on GitHubvolatility-modeling
When your agent uses it
Volatility estimation, forecasting, and regime classification using GARCH, EWMA, realized volatility, and volatility cones
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
2,113 tokensWhen the skill is activated
Reference documents
3,486 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Volatility Matters
- Types of Volatility
- Estimation Methods
- Volatility Cones
- Crypto Volatility Characteristics
- Volatility Forecasting
- Practical Applications
- Files
- Related Skills
- Dependencies
Scripts executed separately
scripts/estimate_volatility.pyscripts/vol_forecast.py
Files
SKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesSKILL.mdcore8,367 bytesreferences/estimators.mddoc5,789 bytesreferences/volatility_cones.mddoc6,255 bytesscripts/estimate_volatility.pyruns17,478 bytesscripts/vol_forecast.pyruns18,658 bytes
Read SKILL.md
# Volatility Modeling
Volatility — the magnitude of price fluctuations — is arguably the single most
important quantity in trading. It drives position sizing, stop placement, option
pricing, and regime detection. This skill covers estimation, forecasting, and
practical application of volatility in crypto markets.
## Why Volatility Matters
| Use Case | How Volatility Is Used |
|---|---|
| **Position sizing** | Scale position inversely with vol so each trade risks a consistent dollar amount |
| **Stop placement** | ATR-based stops widen in high-vol regimes, tighten in low-vol |
| **Strategy selection** | Mean-reversion works in low vol; momentum works in high vol |View the complete source on GitHubwalk-forward-validation
When your agent uses it
Walk-forward validation framework for trading strategies and ML models with time-series-aware splits, overfit detection, and regime-aware validation
What it loads into context
Frontmatter
32 tokensAlways available to the agent
SKILL.md
2,153 tokensWhen the skill is activated
Reference documents
5,591 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Standard Cross-Validation Fails
- Walk-Forward Framework
- Purging and Embargo
- Combinatorial Purged Cross-Validation (CPCV)
- Overfit Detection
- Crypto-Specific Considerations
- Practical Window Sizes for Crypto
- Quick Start
- Files
Scripts executed separately
scripts/overfit_detector.pyscripts/walk_forward.py
Files
SKILL.mdcore8,768 bytesSKILL.mdcore8,768 bytesSKILL.mdcore8,768 bytesSKILL.mdcore8,768 bytesreferences/methodology.mddoc7,440 bytesreferences/overfit_detection.mddoc6,729 bytesreferences/practical_guide.mddoc7,557 bytesscripts/overfit_detector.pyruns21,139 bytesscripts/walk_forward.pyruns18,449 bytes
Read SKILL.md
# Walk-Forward Validation
Walk-forward validation framework for trading strategies and ML models. Standard cross-validation (k-fold, random splits) fails catastrophically for financial time series because it introduces lookahead bias and ignores autocorrelation. This skill covers proper time-series validation techniques including rolling and expanding windows, purged cross-validation, combinatorial purged cross-validation (CPCV), and overfit detection metrics.
## Why Standard Cross-Validation Fails
Standard k-fold CV assumes data points are independent and identically distributed (IID). Financial time series violate both assumptions:
1. **Lookahead bias** — Random splits let the model train on future data and predict past data, artificially inflating performance.
2. **Autocorrelation** — Adjacent observations are correlated. A random split that puts Monday in test and Tuesday in train leaks information.
3. **Regime dependence** — Markets shift between regimes. A model trained on a bull market and tested on a bull market tells you nothing about bear market performance.
4. **Label overlap** — If labels are computed over windows (e.g., 24h forward return), adjacent train/test samples share label computation periods, leaking information.
## Walk-Forward FrameworkView the complete source on GitHubwallet-profiling
When your agent uses it
Behavioral classification, performance analysis, and trading style detection for Solana wallets
What it loads into context
Frontmatter
23 tokensAlways available to the agent
SKILL.md
2,229 tokensWhen the skill is activated
Reference documents
4,504 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Wallet Profiling Matters
- Wallet Classification
- Performance Metrics
- Data Sources
- Copy-Trade Evaluation Framework
- Integration with Other Skills
- Quick Start
- Files
- Dependencies
- Environment Variables
Scripts executed separately
scripts/compare_wallets.pyscripts/profile_wallet.py
Files
SKILL.mdcore9,407 bytesSKILL.mdcore9,407 bytesSKILL.mdcore9,407 bytesSKILL.mdcore9,407 bytesSKILL.mdcore9,407 bytesSKILL.mdcore9,407 bytesreferences/classification_methods.mddoc8,420 bytesreferences/performance_metrics.mddoc8,942 bytesscripts/compare_wallets.pyruns16,947 bytesscripts/profile_wallet.pyruns22,039 bytes
Read SKILL.md
# Wallet Profiling
Behavioral classification, performance analysis, and trading style detection for Solana wallets. Profile any wallet to understand how it trades, how well it performs, and whether it is worth following.
## Why Wallet Profiling Matters
### Copy-Trade Evaluation
Before mirroring another wallet's trades, you need evidence that its historical performance is genuine, consistent, and not the result of a single lucky hit. Profiling quantifies win rate, profit factor, hold time, and consistency so you can make informed decisions about which wallets merit attention.
### Smart Money Identification
Wallets that consistently buy tokens early and exit profitably are signal sources. Profiling separates genuinely skilled traders from lucky gamblers and wash-trading bots. Key differentiators: sustained profit factor above 2.0, win rates above 45% across 100+ trades, and diversified token selection.
### Counterparty Analysis
When a large wallet enters a position you hold, understanding its historical behavior (sniper vs. holder, bot vs. human) helps you anticipate what will happen next. A sniper wallet buying suggests a quick dump is coming; a swing trader buying suggests multi-day conviction.View the complete source on GitHubwash-sale-detection
When your agent uses it
Wash sale detection under 2025 US crypto rules with 61-day window monitoring, disallowed loss tracking, and safe re-entry countdown
What it loads into context
Frontmatter
63 tokensAlways available to the agent
SKILL.md
2,205 tokensWhen the skill is activated
Reference documents
2,150 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Background
- Key Concepts
- Prerequisites
- Capabilities
- Quick Start
- Use Cases
- Edge Cases and Automation Hazards
- Safe Re-Entry Strategy
- Basis Adjustment Walkthrough
- Files
- Limitations
Scripts executed separately
scripts/wash_sale_scanner.py
Files
SKILL.mdcore9,111 bytesSKILL.mdcore9,111 bytesreferences/planned_features.mddoc8,077 bytesscripts/wash_sale_scanner.pyruns17,926 bytes
Read SKILL.md
# Wash Sale Detection
Detect wash sales under current US crypto tax rules (effective 2025), monitor the 61-day window around realized losses, track disallowed losses with basis adjustments, and compute safe re-entry countdowns.
> **Disclaimer**: This skill provides informational analysis only. It is NOT tax advice. Consult a qualified tax professional or CPA for guidance on your specific situation. Tax law is complex, and the application of wash sale rules to cryptocurrency may vary based on individual circumstances, IRS guidance updates, and court rulings.
## Background
Before 2025, cryptocurrency was not subject to the wash sale rule because digital assets were classified as property rather than securities. The **Infrastructure Investment and Jobs Act** and subsequent IRS rulemaking extended wash sale treatment to digital assets beginning January 1, 2025.
Under **IRC Section 1091** (as amended for digital assets), if you sell or dispose of a cryptocurrency at a loss and acquire a **substantially identical** asset within a **61-day window** (30 days before the sale through 30 days after), the loss is **disallowed** for tax purposes. The disallowed loss is added to the cost basis of the replacement position.
## Key Concepts
View the complete source on GitHubwhale-tracking
When your agent uses it
Large wallet monitoring, accumulation and distribution detection, and smart money signal generation for Solana tokens
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,779 tokensWhen the skill is activated
Reference documents
3,988 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Whale Tracking Matters
- What Constitutes a Whale
- Accumulation vs Distribution Patterns
- Whale Watchlist Management
- Cross-Token Analysis
- Data Sources
- Signal Generation
- Integration with Other Skills
- Files
- Limitations and Caveats
Scripts executed separately
scripts/track_whales.pyscripts/whale_alerts.py
Files
SKILL.mdcore11,944 bytesSKILL.mdcore11,944 bytesSKILL.mdcore11,944 bytesSKILL.mdcore11,944 bytesreferences/data_sources.mddoc7,252 bytesreferences/detection_methods.mddoc8,069 bytesscripts/track_whales.pyruns19,476 bytesscripts/whale_alerts.pyruns19,051 bytes
Read SKILL.md
# Whale Tracking for Solana Tokens
Whale tracking monitors the on-chain behavior of large wallets to detect accumulation, distribution, and smart money movements before they become visible in price action. On Solana, where token ownership is highly concentrated and whale transactions can move markets instantly, tracking large holders is one of the highest-signal alpha sources available.
## Why Whale Tracking Matters
A single large wallet selling 5% of a token's supply can crash the price 30-50% on thin Solana DEX liquidity. Conversely, a known profitable wallet accumulating a new token often precedes major price runs. Whale tracking converts on-chain transparency into actionable intelligence.
Key use cases:
- **Early warning**: Detect large holder sells before the price impact fully propagates
- **Smart money following**: Identify wallets with strong track records and monitor their new positions
- **Accumulation detection**: Spot gradual buying by whales who split orders to avoid detection
- **Distribution detection**: Catch insiders or early investors offloading positionsView the complete source on GitHubyellowstone-grpc
When your agent uses it
Real-time Solana transaction and account streaming via Yellowstone gRPC (Geyser plugin)
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
2,421 tokensWhen the skill is activated
Reference documents
6,520 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Yellowstone gRPC
- Quick Start
- Core Concepts
- Common Subscription Patterns
- Parsing Transaction Updates
- Production Architecture
- Key Program IDs for Trading
- Files
Scripts executed separately
scripts/monitor_wallets.pyscripts/subscribe_transactions.py
Files
SKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesSKILL.mdcore9,468 bytesreferences/performance.mddoc6,513 bytesreferences/proto_reference.mddoc6,821 bytesreferences/providers.mddoc4,783 bytesreferences/subscription_filters.mddoc7,802 bytesscripts/monitor_wallets.pyruns12,790 bytesscripts/subscribe_transactions.pyruns11,732 bytes
Read SKILL.md
# Yellowstone gRPC — Real-Time Solana Streaming
Stream every transaction, account update, slot, and block on Solana in real-time using Yellowstone gRPC. This is the foundation for any latency-sensitive Solana trading system — replacing REST polling with push-based streaming at ~5ms slot latency.
## Why Yellowstone gRPC
| Method | Slot Latency (p90) | Use Case |
|--------|-------------------|----------|
| REST polling (`getTransaction`) | ~150ms+ | Historical lookups |
| WebSocket (`onLogs`) | ~10ms | Simple notifications |
| **Yellowstone gRPC** | **~5ms** | **Production trading systems** |
Yellowstone is a Geyser plugin that exposes Solana validator data over gRPC. Every major RPC provider runs it. You subscribe to filtered streams of transactions, account changes, slots, blocks, and entries — and the data pushes to you.
View the complete source on GitHubyield-analysis
When your agent uses it
DeFi yield evaluation including fee APR, real vs nominal yield, net APY after costs, and yield sustainability analysis
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
2,404 tokensWhen the skill is activated
Reference documents
4,109 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why Yield Analysis Matters
- Yield Components
- Real vs Nominal Yield
- Fee APR Calculation
- Emission Sustainability
- Yield Comparison Framework
- Solana Yield Sources
- Data Sources
- Integration with Other Skills
- Files
Scripts executed separately
scripts/yield_calculator.pyscripts/yield_comparison.py
Files
SKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesSKILL.mdcore9,239 bytesreferences/sustainability_analysis.mddoc8,695 bytesreferences/yield_math.mddoc6,475 bytesscripts/yield_calculator.pyruns15,603 bytesscripts/yield_comparison.pyruns17,757 bytes
Read SKILL.md
# Yield Analysis — DeFi Yield Evaluation & Comparison
DeFi yields are often misleading. A pool advertising 200% APY may deliver negative real returns once you account for impermanent loss, gas costs, and emission token depreciation. This skill provides the framework to decompose, evaluate, and compare yield opportunities accurately.
## Why Yield Analysis Matters
Most DeFi yield dashboards show **nominal** yield — the headline number. Real yield requires decomposing that number into its components and subtracting all costs. Without this decomposition:
- LPs chase high-APY pools that destroy capital through IL
- Emission-driven yields collapse as reward tokens lose value
- Gas and rebalancing costs eat into thin margins
- Opportunity cost is ignored (you could be staking SOL at ~7%)
## Yield ComponentsView the complete source on GitHubSkills included
- backtrader
- birdeye-api
- coingecko-api
- cointegration-analysis
- copy-trading
- correlation-analysis
- cost-basis-engine
- crypto-tax-export
- custom-indicators
- defillama-api
- dex-execution
- dex-pool-analysis
- dexscreener-api
- exit-strategies
- feature-engineering
- fixed-income
- helius-api
- impermanent-loss
- jito-bundles
- kalshi-api
- kalshi-crypto-index-markets
- kalshi-weather-markets
- kelly-criterion
- liquidity-analysis
- lp-math
- market-microstructure
- market-microstructure-traditional
- mean-reversion
- mev-analysis
- ohlcv-processing
- options-pricing
- pandas-ta
- polymarket-api
- portfolio-analytics
- position-sizing
- prediction-market-live-ops
- prediction-market-strategy
- pumpfun-mechanics
- raptor-dex
- regime-detection
- regulatory-reporting
- risk-management
- rl-execution
- sentiment-analysis
- shredstream
- signal-classification
- slippage-modeling
- solana-rpc
- solana-tx-building
- solanatracker-api
- strategy-framework
- sybil-detection
- ta-lib
- tax-liability-tracking
- tax-loss-harvesting
- token-economics
- token-holder-analysis
- trade-accounting
- trade-journal
- trading-visualization
- vectorbt
- volatility-modeling
- walk-forward-validation
- wallet-profiling
- wash-sale-detection
- whale-tracking
- yellowstone-grpc
- yield-analysis
Repository facts
- License
- MIT
- Created
- Mar 11, 2026
- Last pushed
- Sep 3, 2026
- Forks
- 106
- Open issues
- 4
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 536 notes
skills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/backtrader/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 15 dangerous shell commandsin 4 files: shredstream/references/deployment.md:19 raptor-dex/references/deployment.md:74 ta-lib/SKILL.md:30 and 1 more
- 1,055 network referencesin 141 files: defillama-api/SKILL.md:15 coingecko-api/SKILL.md:44 helius-api/SKILL.md:14 and 138 more
- 7 obfuscation signalsin 7 files: dex-execution/SKILL.md:85 dex-execution/references/transaction_lifecycle.md:15 dex-execution/scripts/simulate_swap.py:265 and 4 more
- No instruction overrides
- 118 executable scriptsin 118 files: backtrader/scripts/backtest_strategy.py:1 backtrader/scripts/bracket_orders.py:1 birdeye-api/scripts/fetch_ohlcv.py:1 and 115 more
- 287 references to secretsin 65 files: market-microstructure/scripts/volume_profile.py:10 copy-trading/scripts/monitor_wallet.py:17 helius-api/SKILL.md:17 and 62 more
- No requests to vote in Hot
Show all 1,482 signals by file
.claude-plugin/marketplace.json
- Network accessline 1
{ "$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 2
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 16
"source": { "source": "url", "url": "https://github.com/agiprolabs/claude-trading-skills.git" - Network accessline 17
"source": "url", "url": "https://github.com/agiprolabs/claude-trading-skills.git" }, - Network accessline 18
"url": "https://github.com/agiprolabs/claude-trading-skills.git" - Network accessline 19
}, "category": "finance", "homepage": "https://github.com/agiprolabs/claude-trading-skills" - Network accessline 20
"category": "finance", "homepage": "https://github.com/agiprolabs/claude-trading-skills" } - Network accessline 21
"homepage": "https://github.com/agiprolabs/claude-trading-skills"
.claude-plugin/plugin.json
- Network accessline 7
}, "license": "MIT", "repository": "https://github.com/agiprolabs/claude-trading-skills" - Network accessline 8
"license": "MIT", "repository": "https://github.com/agiprolabs/claude-trading-skills" } - Network accessline 9
"repository": "https://github.com/agiprolabs/claude-trading-skills"
skills/backtrader/scripts/backtest_strategy.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/backtrader/scripts/bracket_orders.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/birdeye-api/SKILL.md
- Network accessline 16
Sign up at [birdeye.so](https://birdeye.so) — free tier: 30K compute units/month, 1 req/sec. - Access to secretsline 19
[Credential-related source omitted] - Access to secretsline 33
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted] - Network accessline 36
# Get SOL price resp = httpx.get( - Network accessline 37
resp = httpx.get( - Network accessline 38
"https://public-api.birdeye.so/defi/price", - Network accessline 48
All endpoints use base URL `https://public-api.birdeye.so` with `X-API-KEY` and `x-chain` headers.
skills/birdeye-api/references/birdeye_endpoints.md
- Network accessline 3
Base URL: `https://public-api.birdeye.so`
skills/birdeye-api/references/error_handling.md
- Access to secretsline 46
[Credential-related source omitted] - Access to secretsline 55
[Credential-related source omitted] - Access to secretsline 66
[Credential-related source omitted] - Network accessline 68
"accept": "application/json", } url = f"https://public-api.birdeye.so{endpoint}" - Network accessline 70
url = f"https://public-api.birdeye.so{endpoint}" - Network accessline 72
for attempt in range(max_retries + 1): try: resp = httpx.get(url, headers=headers, params=params, timeout=30.0) - Network accessline 74
resp = httpx.get(url, headers=headers, params=params, timeout=30.0) - Access to secretsline 150
[Credential-related source omitted] - Access to secretsline 169
[Credential-related source omitted] - Access to secretsline 186
[Credential-related source omitted] - Access to secretsline 197
[Credential-related source omitted]
skills/birdeye-api/scripts/fetch_ohlcv.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Network accessline 17
TOKEN_ADDRESS: Token mint address (default: SOL) TIMEFRAME: Candle interval (default: 1H) DAYS_BACK: How many days of history to fetch (default: 30) - Network accessline 18
TIMEFRAME: Candle interval (default: 1H) DAYS_BACK: How many days of history to fetch (default: 30) """ - Network accessline 19
DAYS_BACK: How many days of history to fetch (default: 30) - Access to secretsline 33
[Credential-related source omitted] - Network accessline 34
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted] - Network accessline 35
[Credential-related source omitted] - Access to secretsline 35
[Credential-related source omitted] - Network accessline 36
print(" Get a key at https://birdeye.so") - Network accessline 45
BASE_URL = "https://public-api.birdeye.so" - Access to secretsline 47
[Credential-related source omitted] - Network accessline 87
resp = httpx.get( - Network accessline 250
try: resp = httpx.get( - Network accessline 251
resp = httpx.get(
skills/birdeye-api/scripts/token_screener.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 29
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 38
BASE_URL = "https://public-api.birdeye.so" - Access to secretsline 40
[Credential-related source omitted] - Network accessline 62
for attempt in range(3): try: resp = httpx.get( - Network accessline 63
try: resp = httpx.get( f"{BASE_URL}{endpoint}", - Network accessline 64
resp = httpx.get(
skills/coingecko-api/SKILL.md
- Network accessline 44
# No API key needed for free tier resp = httpx.get( - Network accessline 45
resp = httpx.get( - Network accessline 46
"https://api.coingecko.com/api/v3/simple/price", - Network accessline 60
resp = httpx.get( - Network accessline 61
"https://api.coingecko.com/api/v3/coins/markets", - Network accessline 77
resp = httpx.get( - Network accessline 78
"https://api.coingecko.com/api/v3/coins/solana/market_chart", - Network accessline 93
resp = httpx.get( - Network accessline 94
"https://api.coingecko.com/api/v3/coins/solana/ohlc", - Network accessline 108
resp = httpx.get("https://api.coingecko.com/api/v3/global") - Network accessline 121
resp = httpx.get("https://api.coingecko.com/api/v3/search/trending") - Network accessline 129
The free tier requires no API key (30 calls/min). For higher limits, get a Pro key from https://www.coingecko.com/en/api/pricing and set: - Network accessline 130
key from https://www.coingecko.com/en/api/pricing and set: - Access to secretsline 133
[Credential-related source omitted] - Network accessline 141
[Credential-related source omitted] - Access to secretsline 141
[Credential-related source omitted] - Network accessline 142
[Credential-related source omitted] - Access to secretsline 142
[Credential-related source omitted] - Network accessline 143
BASE_URL = "https://pro-api.coingecko.com/api/v3" - Network accessline 144
[Credential-related source omitted] - Access to secretsline 144
[Credential-related source omitted] - Network accessline 145
else: BASE_URL = "https://api.coingecko.com/api/v3" HEADERS = {} - Network accessline 146
BASE_URL = "https://api.coingecko.com/api/v3" - Network accessline 158
"""GET with retry on rate limit.""" for attempt in range(max_retries): resp = httpx.get(url, params=params, headers=HEADERS, timeout=15.0) - Network accessline 159
for attempt in range(max_retries): resp = httpx.get(url, params=params, headers=HEADERS, timeout=15.0) if resp.status_code == 429: - Network accessline 160
resp = httpx.get(url, params=params, headers=HEADERS, timeout=15.0) - Network accessline 181
# Look up by Solana contract address contract = "So11111111111111111111111111111111111111112" resp = httpx.get( - Network accessline 182
contract = "So11111111111111111111111111111111111111112" resp = httpx.get( "https://api.coingecko.com/api/v3/coins/solana/contract/" - Network accessline 183
resp = httpx.get( - Network accessline 184
"https://api.coingecko.com/api/v3/coins/solana/contract/"
skills/coingecko-api/references/data_quality.md
- Network accessline 88
"""Fetch with exponential backoff on rate limits.""" for attempt in range(max_retries): resp = httpx.get(url, params=params, timeout=15.0) - Network accessline 89
for attempt in range(max_retries): resp = httpx.get(url, params=params, timeout=15.0) if resp.status_code == 429: - Network accessline 90
resp = httpx.get(url, params=params, timeout=15.0)
skills/coingecko-api/references/endpoints.md
- Network accessline 3
Base URL (free): `https://api.coingecko.com/api/v3` - Network accessline 4
Base URL (pro): `https://pro-api.coingecko.com/api/v3` - Network accessline 36
- **Example**: `curl "https://api.coingecko.com/api/v3/simple/price?ids=solana&vs_currencies=usd&include_24hr_change=true"` - Network accessline 76
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/markets?vs_currency=usd&per_page=10&page=1"` - Network accessline 93
| `sparkline` | No | `false` | Include 7-day sparkline | - **Notes**: Large response (~50KB). Set unneeded sections to `false` to reduce size. - **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana?tickers=false&community_data= - Network accessline 95
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana?tickers=false&community_data=false"` - Network accessline 123
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana/market_chart?vs_currency=usd&days=90&interval=daily"` - Network accessline 140
- 31-365 days: 4-day candles - **Response**: `[[timestamp, open, high, low, close], ...]` - **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana/ohlc?vs_currency=usd&days=30"` - Network accessline 142
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana/ohlc?vs_currency=usd&days=30"` - Network accessline 159
"symbol": "PEPE", "market_cap_rank": 30, "thumb": "https://...", - Network accessline 160
"market_cap_rank": 30, "thumb": "https://...", "score": 0 - Network accessline 161
"thumb": "https://...", - Network accessline 167
- **Example**: `curl "https://api.coingecko.com/api/v3/search/trending"` - Network accessline 189
- **Example**: `curl "https://api.coingecko.com/api/v3/global"` - Network accessline 204
"market_cap_change_24h": 2.1, "volume_24h": 5000000000, "top_3_coins": ["https://...", "https://...", "https://..."], - Network accessline 205
"volume_24h": 5000000000, "top_3_coins": ["https://...", "https://...", "https://..."], "updated_at": "2025-03-10T00:00:00Z" - Network accessline 206
"top_3_coins": ["https://...", "https://...", "https://..."], - Network accessline 210
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/categories"` - Network accessline 231
- **Example**: `curl "https://api.coingecko.com/api/v3/exchanges?per_page=10"` - Network accessline 248
- **Example**: `curl "https://api.coingecko.com/api/v3/search?query=solana"` - Network accessline 256
- **Path params**: `platform_id` (e.g., `solana`, `ethereum`), `contract_address`. - **Notes**: Returns the same structure as `/coins/{id}`. Use this to map Solana mint addresses to CoinGecko IDs. - **Example**: `curl "https://api.coingecko - Network accessline 258
- **Example**: `curl "https://api.coingecko.com/api/v3/coins/solana/contract/So11111111111111111111111111111111111111112"`
skills/coingecko-api/references/id_mapping.md
- Network accessline 29
def search_coin(query: str) -> list[dict]: """Search CoinGecko for coins matching a query string.""" resp = httpx.get( - Network accessline 30
"""Search CoinGecko for coins matching a query string.""" resp = httpx.get( "https://api.coingecko.com/api/v3/search", - Network accessline 31
resp = httpx.get( - Network accessline 32
"https://api.coingecko.com/api/v3/search", - Network accessline 57
"""Look up a CoinGecko coin by its contract/mint address.""" url = ( f"https://api.coingecko.com/api/v3/coins/{platform}" - Network accessline 58
url = ( f"https://api.coingecko.com/api/v3/coins/{platform}" f"/contract/{contract}" - Network accessline 59
f"https://api.coingecko.com/api/v3/coins/{platform}" - Network accessline 60
f"/contract/{contract}" ) resp = httpx.get(url, timeout=15.0) - Network accessline 61
) resp = httpx.get(url, timeout=15.0) if resp.status_code == 404: - Network accessline 62
resp = httpx.get(url, timeout=15.0) - Network accessline 84
def get_all_coins(include_platform: bool = True) -> list[dict]: """Fetch the full CoinGecko coins list with platform addresses.""" resp = httpx.get( - Network accessline 85
"""Fetch the full CoinGecko coins list with platform addresses.""" resp = httpx.get( "https://api.coingecko.com/api/v3/coins/list", - Network accessline 86
resp = httpx.get( - Network accessline 87
"https://api.coingecko.com/api/v3/coins/list",
skills/coingecko-api/scripts/fetch_market_data.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Network accessline 34
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted] - Network accessline 35
[Credential-related source omitted] - Access to secretsline 35
[Credential-related source omitted] - Network accessline 36
BASE_URL = "https://pro-api.coingecko.com/api/v3" - Network accessline 37
[Credential-related source omitted] - Access to secretsline 37
[Credential-related source omitted] - Network accessline 38
else: BASE_URL = "https://api.coingecko.com/api/v3" HEADERS = {} - Network accessline 39
BASE_URL = "https://api.coingecko.com/api/v3" - Network accessline 118
url = f"{BASE_URL}{endpoint}" for attempt in range(max_retries): resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0) - Network accessline 119
for attempt in range(max_retries): resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0) if resp.status_code == 429: - Network accessline 120
resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0)
skills/coingecko-api/scripts/historical_analysis.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 17
[Credential-related source omitted] - Network accessline 42
[Credential-related source omitted] - Access to secretsline 42
[Credential-related source omitted] - Network accessline 43
[Credential-related source omitted] - Access to secretsline 43
[Credential-related source omitted] - Network accessline 44
BASE_URL = "https://pro-api.coingecko.com/api/v3" - Network accessline 45
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Network accessline 46
else: BASE_URL = "https://api.coingecko.com/api/v3" HEADERS = {} - Network accessline 47
BASE_URL = "https://api.coingecko.com/api/v3" - Network accessline 97
url = f"{BASE_URL}{endpoint}" for attempt in range(max_retries): resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0) - Network accessline 98
for attempt in range(max_retries): resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0) if resp.status_code == 429: - Network accessline 99
resp = httpx.get(url, params=params or {}, headers=HEADERS, timeout=15.0)
skills/cointegration-analysis/scripts/pairs_backtest.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/cointegration-analysis/scripts/test_cointegration.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/copy-trading/references/execution_strategy.md
- Network accessline 27
"params": [wallet, {"limit": 5}] } resp = httpx.post(rpc_url, json=payload) - Network accessline 28
} resp = httpx.post(rpc_url, json=payload) sigs = resp.json().get("result", []) - Network accessline 29
resp = httpx.post(rpc_url, json=payload) - Access to secretsline 54
[Credential-related source omitted] - Access to secretsline 56
[Credential-related source omitted]
skills/copy-trading/references/wallet_discovery.md
- Network accessline 11
- **Endpoint**: `GET https://data.solanatracker.io/top-traders/{token_address}` - Network accessline 17
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Network accessline 18
"https://data.solanatracker.io/top-traders/So11111111111111111111111111111111111111112" - Network accessline 27
- **Endpoint**: `GET https://data.solanatracker.io/pnl/{wallet_address}` - Network accessline 31
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
"https://data.solanatracker.io/pnl/WALLET_ADDRESS_HERE" - Network accessline 39
- **Endpoint**: `GET https://public-api.birdeye.so/defi/v3/token/trade/top-traders` - Network accessline 45
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Network accessline 46
"https://public-api.birdeye.so/defi/v3/token/trade/top-traders?address=TOKEN&time_frame=24h&sort_by=pnl" - Network accessline 53
[Credential-related source omitted] - Network accessline 84
[Credential-related source omitted] - Access to secretsline 84
[Credential-related source omitted] - Network accessline 85
[Credential-related source omitted] - Network accessline 86
[Credential-related source omitted] - Network accessline 87
[Credential-related source omitted] - Access to secretsline 87
[Credential-related source omitted] - Network accessline 88
async with httpx.AsyncClient() as client: - Access to secretsline 169
[Credential-related source omitted] - Access to secretsline 175
[Credential-related source omitted]
skills/copy-trading/scripts/evaluate_wallet.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 18
[Credential-related source omitted] - Network accessline 36
[Credential-related source omitted] - Access to secretsline 36
[Credential-related source omitted] - Network accessline 37
ST_BASE_URL = "https://data.solanatracker.io" - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 120
[Credential-related source omitted] - Network accessline 122
with httpx.Client(timeout=30.0) as client:
skills/copy-trading/scripts/monitor_wallet.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 17
[Credential-related source omitted] - Network accessline 36
[Credential-related source omitted] - Access to secretsline 36
[Credential-related source omitted] - Network accessline 37
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" ) - Network accessline 38
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 39
) POLL_INTERVAL_SECONDS = 10 DEXSCREENER_BASE = "https://api.dexscreener.com/latest/dex" - Network accessline 41
DEXSCREENER_BASE = "https://api.dexscreener.com/latest/dex" - Network accessline 105
[Credential-related source omitted] - Access to secretsline 106
[Credential-related source omitted] - Network accessline 107
[Credential-related source omitted] - Access to secretsline 107
[Credential-related source omitted] - Network accessline 109
with httpx.Client(timeout=15.0) as client: - Access to secretsline 125
[Credential-related source omitted] - Network accessline 128
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Network accessline 129
with httpx.Client(timeout=15.0) as client: - Network accessline 148
], } with httpx.Client(timeout=15.0) as client: - Network accessline 149
} with httpx.Client(timeout=15.0) as client: try: - Network accessline 150
with httpx.Client(timeout=15.0) as client: - Network accessline 168
url = f"{DEXSCREENER_BASE}/tokens/{token_address}" with httpx.Client(timeout=10.0) as client: - Network accessline 169
with httpx.Client(timeout=10.0) as client: - Access to secretsline 287
[Credential-related source omitted] - Network accessline 454
[Credential-related source omitted] - Access to secretsline 454
[Credential-related source omitted] - Access to secretsline 455
[Credential-related source omitted]
skills/correlation-analysis/scripts/correlation_matrix.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 32
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 61
resp = client.get(url, params=params, timeout=15) else: resp = httpx.get(url, params=params, timeout=15) - Network accessline 62
else: resp = httpx.get(url, params=params, timeout=15) resp.raise_for_status() - Network accessline 63
resp = httpx.get(url, params=params, timeout=15) - Network accessline 397
price_data: dict[str, pd.Series] = {} with httpx.Client() as client: - Network accessline 398
with httpx.Client() as client:
skills/correlation-analysis/scripts/rolling_correlation.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 30
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 56
resp = client.get(url, params=params, timeout=15) else: resp = httpx.get(url, params=params, timeout=15) - Network accessline 57
else: resp = httpx.get(url, params=params, timeout=15) resp.raise_for_status() - Network accessline 58
resp = httpx.get(url, params=params, timeout=15) - Network accessline 473
with httpx.Client() as client:
skills/cost-basis-engine/scripts/cost_basis_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/crypto-tax-export/scripts/tax_exporter.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/custom-indicators/scripts/compute_crypto_indicators.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 48
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 49
DEFILLAMA_BASE = "https://api.llama.fi" - Network accessline 72
} try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 73
try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) resp.raise_for_status() - Network accessline 74
resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 95
params = {"vs_currency": "usd", "days": str(days)} try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 96
try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) resp.raise_for_status() - Network accessline 97
resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 114
url = f"{DEFILLAMA_BASE}/protocol/{protocol}" try: resp = httpx.get(url, timeout=REQUEST_TIMEOUT) - Network accessline 115
try: resp = httpx.get(url, timeout=REQUEST_TIMEOUT) resp.raise_for_status() - Network accessline 116
resp = httpx.get(url, timeout=REQUEST_TIMEOUT)
skills/custom-indicators/scripts/holder_momentum.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 37
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 97
params = {"vs_currency": "usd", "days": str(days)} try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 98
try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) resp.raise_for_status() - Network accessline 99
resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT)
skills/defillama-api/SKILL.md
- Network accessline 15
# No auth required for free endpoints BASE = "https://api.llama.fi" - Network accessline 16
BASE = "https://api.llama.fi" - Network accessline 17
COINS = "https://coins.llama.fi" - Network accessline 19
# Current TVL for a protocol tvl = httpx.get(f"{BASE}/tvl/raydium").json() - Network accessline 20
tvl = httpx.get(f"{BASE}/tvl/raydium").json() - Network accessline 23
# Token prices (multi-chain) resp = httpx.get(f"{COINS}/prices/current/solana:So11111111111111111111111111111111111111112") - Network accessline 24
resp = httpx.get(f"{COINS}/prices/current/solana:So11111111111111111111111111111111111111112") - Network accessline 30
| Service | Base URL | Auth | |---------|----------|------| | TVL / Protocols | `https://api.llama.fi` | Free | - Network accessline 31
|---------|----------|------| | TVL / Protocols | `https://api.llama.fi` | Free | | Coin Prices | `https://coins.llama.fi` | Free | - Network accessline 32
| TVL / Protocols | `https://api.llama.fi` | Free | - Network accessline 33
| Coin Prices | `https://coins.llama.fi` | Free | - Network accessline 34
| Stablecoins | `https://stablecoins.llama.fi` | Free | - Network accessline 35
| Yields | `https://yields.llama.fi` | Pro ($300/mo) | - Network accessline 36
| Bridges | `https://bridges.llama.fi` | Free (list) / Pro (detail) | - Network accessline 37
| Pro API | `https://pro-api.llama.fi/{KEY}/api/...` | Pro key in URL path | - Network accessline 141
# All stablecoins with supply data GET https://stablecoins.llama.fi/stablecoins - Network accessline 142
GET https://stablecoins.llama.fi/stablecoins - Network accessline 145
# Historical market cap GET https://stablecoins.llama.fi/stablecoincharts/all - Network accessline 146
GET https://stablecoins.llama.fi/stablecoincharts/all - Network accessline 148
# Chain-specific stablecoin data GET https://stablecoins.llama.fi/stablecoincharts/{chain} - Network accessline 149
GET https://stablecoins.llama.fi/stablecoincharts/{chain} - Network accessline 151
# Stablecoin prices (deviation tracking) GET https://stablecoins.llama.fi/stablecoinprices - Network accessline 152
GET https://stablecoins.llama.fi/stablecoinprices - Network accessline 158
# List all bridges GET https://bridges.llama.fi/bridges - Network accessline 159
GET https://bridges.llama.fi/bridges - Network accessline 171
results = [] for slug in slugs: resp = httpx.get(f"https://api.llama.fi/tvl/{slug}", timeout=15.0) - Network accessline 172
for slug in slugs: resp = httpx.get(f"https://api.llama.fi/tvl/{slug}", timeout=15.0) if resp.status_code == 200: - Network accessline 173
resp = httpx.get(f"https://api.llama.fi/tvl/{slug}", timeout=15.0) - Network accessline 183
"""Get USD prices for Solana tokens via DeFiLlama.""" coins = ",".join(f"solana:{m}" for m in mints) resp = httpx.get(f"https://coins.llama.fi/prices/current/{coins}") - Network accessline 184
coins = ",".join(f"solana:{m}" for m in mints) resp = httpx.get(f"https://coins.llama.fi/prices/current/{coins}") data = resp.json().get("coins", {}) - Network accessline 185
resp = httpx.get(f"https://coins.llama.fi/prices/current/{coins}") - Network accessline 197
def solana_defi_snapshot() -> dict: """Get a snapshot of Solana DeFi activity.""" chain_tvl = httpx.get("https://api.llama.fi/v2/chains").json() - Network accessline 198
"""Get a snapshot of Solana DeFi activity.""" chain_tvl = httpx.get("https://api.llama.fi/v2/chains").json() sol_tvl = next((c["tvl"] for c in chain_tvl if c["name"] == "Solana"), 0) - Network accessline 199
chain_tvl = httpx.get("https://api.llama.fi/v2/chains").json() - Network accessline 202
dex_vol = httpx.get("https://api.llama.fi/overview/dexs/Solana").json() - Network accessline 203
fees = httpx.get("https://api.llama.fi/overview/fees/Solana").json() - Network accessline 223
dt = datetime.strptime(date_str, "%Y-%m-%d").replace(tzinfo=timezone.utc) ts = int(dt.timestamp()) resp = httpx.get(f"https://coins.llama.fi/prices/historical/{ts}/{coin}") - Network accessline 224
ts = int(dt.timestamp()) resp = httpx.get(f"https://coins.llama.fi/prices/historical/{ts}/{coin}") data = resp.json().get("coins", {}) - Network accessline 225
resp = httpx.get(f"https://coins.llama.fi/prices/historical/{ts}/{coin}")
skills/defillama-api/references/coin_identifiers.md
- Network accessline 42
coins = ",".join(SOLANA_COINS.values()) resp = httpx.get(f"https://coins.llama.fi/prices/current/{coins}") - Network accessline 43
resp = httpx.get(f"https://coins.llama.fi/prices/current/{coins}") - Network accessline 58
# Current vs 7 days ago current = httpx.get(f"https://coins.llama.fi/prices/current/{coin}").json() - Network accessline 59
current = httpx.get(f"https://coins.llama.fi/prices/current/{coin}").json() - Network accessline 60
historical = httpx.get(f"https://coins.llama.fi/prices/historical/{week_ago}/{coin}").json() - Network accessline 68
# Use CoinGecko IDs resp = httpx.get("https://coins.llama.fi/prices/current/coingecko:bitcoin,coingecko:ethereum,coingecko:solana") - Network accessline 69
resp = httpx.get("https://coins.llama.fi/prices/current/coingecko:bitcoin,coingecko:ethereum,coingecko:solana") - Network accessline 82
def get_reliable_price(coin: str) -> float | None: resp = httpx.get(f"https://coins.llama.fi/prices/current/{coin}") - Network accessline 83
resp = httpx.get(f"https://coins.llama.fi/prices/current/{coin}") - Network accessline 95
# For illiquid tokens, increase searchWidth resp = httpx.get(f"https://coins.llama.fi/prices/current/{coin}?searchWidth=24h") - Network accessline 96
resp = httpx.get(f"https://coins.llama.fi/prices/current/{coin}?searchWidth=24h")
skills/defillama-api/references/endpoints.md
- Network accessline 7
## TVL & Protocols (`https://api.llama.fi`) - Network accessline 29
## Coin Prices (`https://coins.llama.fi`) - Network accessline 62
## DEX Volumes (`https://api.llama.fi`) - Network accessline 75
## Fees & Revenue (`https://api.llama.fi`) - Network accessline 88
## Stablecoins (`https://stablecoins.llama.fi`) - Network accessline 107
## Bridges (`https://bridges.llama.fi`) - Network accessline 115
## Options (`https://api.llama.fi`) - Network accessline 130
All require API key in URL path: `https://pro-api.llama.fi/{KEY}/api/...`
skills/defillama-api/references/error_handling.md
skills/defillama-api/scripts/defi_snapshot.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 24
CHAIN = os.getenv("CHAIN", "Solana") BASE = "https://api.llama.fi" - Network accessline 25
BASE = "https://api.llama.fi" - Network accessline 26
COINS = "https://coins.llama.fi" - Network accessline 41
for attempt in range(3): try: resp = httpx.get(url, params=params or {}, timeout=30.0) - Network accessline 42
try: resp = httpx.get(url, params=params or {}, timeout=30.0) if resp.status_code == 429: - Network accessline 43
resp = httpx.get(url, params=params or {}, timeout=30.0) - Network accessline 158
stables = llama_get("https://stablecoins.llama.fi/stablecoins")
skills/defillama-api/scripts/price_lookup.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 25
COINS_BASE = "https://coins.llama.fi" - Network accessline 49
for attempt in range(max_retries): try: resp = httpx.get(url, timeout=30.0) - Network accessline 50
try: resp = httpx.get(url, timeout=30.0) if resp.status_code == 200: - Network accessline 51
resp = httpx.get(url, timeout=30.0)
skills/dex-execution/SKILL.md
- Network accessline 14
**Base URL**: `https://quote-api.jup.ag/v6` - Network accessline 29
"slippageBps": 50, # 0.5% } resp = httpx.get("https://quote-api.jup.ag/v6/quote", params=params) - Network accessline 30
} resp = httpx.get("https://quote-api.jup.ag/v6/quote", params=params) quote = resp.json() - Network accessline 31
resp = httpx.get("https://quote-api.jup.ag/v6/quote", params=params) - Network accessline 71
"prioritizationFeeLamports": "auto", } resp = httpx.post("https://quote-api.jup.ag/v6/swap", json=swap_body) - Network accessline 72
} resp = httpx.post("https://quote-api.jup.ag/v6/swap", json=swap_body) swap_data = resp.json() - Network accessline 73
resp = httpx.post("https://quote-api.jup.ag/v6/swap", json=swap_body) - Possible obfuscationline 85
raw_tx = base64.b64decode(swap_tx) - Access to secretsline 87
[Credential-related source omitted] - Network accessline 94
[Credential-related source omitted] - Access to secretsline 94
[Credential-related source omitted] - Network accessline 103
], } resp = httpx.post(rpc_url, json=payload) - Network accessline 104
} resp = httpx.post(rpc_url, json=payload) sig = resp.json()["result"] - Network accessline 105
resp = httpx.post(rpc_url, json=payload) - Network accessline 107
print(f"Submitted: https://solscan.io/tx/{sig}") - Network accessline 119
"params": [[sig], {"searchTransactionHistory": False}], } resp = httpx.post(rpc_url, json=payload) - Network accessline 120
} resp = httpx.post(rpc_url, json=payload) status = resp.json()["result"]["value"][0] - Network accessline 121
resp = httpx.post(rpc_url, json=payload) - Network accessline 184
[Credential-related source omitted] - Network accessline 185
[Credential-related source omitted] - Network accessline 190
"options": {"recommended": True}}], } resp = httpx.post(helius_url, json=payload) - Network accessline 191
} resp = httpx.post(helius_url, json=payload) fee = resp.json()["result"]["priorityFeeEstimate"] - Network accessline 192
resp = httpx.post(helius_url, json=payload)
skills/dex-execution/references/jupiter_api.md
- Network accessline 3
Base URL: `https://quote-api.jup.ag/v6` - Network accessline 79
curl "https://quote-api.jup.ag/v6/quote?\ - Network accessline 127
curl -X POST "https://quote-api.jup.ag/v6/swap" \ - Network accessline 165
**URL**: `https://price.jup.ag/v2/price` - Network accessline 205
"name": "Wrapped SOL", "symbol": "SOL", "logoURI": "https://...", - Network accessline 206
"symbol": "SOL", "logoURI": "https://...", "tags": ["old-registry"], - Network accessline 207
"logoURI": "https://...",
skills/dex-execution/references/safety_checklist.md
- Network accessline 10
def validate_token(mint: str, expected_symbol: str) -> bool: """Verify mint address matches expected token.""" resp = httpx.get(f"https://quote-api.jup.ag/v6/tokens") - Network accessline 11
"""Verify mint address matches expected token.""" resp = httpx.get(f"https://quote-api.jup.ag/v6/tokens") tokens = {t["address"]: t for t in resp.json()} - Network accessline 12
resp = httpx.get(f"https://quote-api.jup.ag/v6/tokens") - Network accessline 154
"params": [[signature], {"searchTransactionHistory": True}], } resp = httpx.post(rpc_url, json=payload) - Network accessline 155
} resp = httpx.post(rpc_url, json=payload) status = resp.json()["result"]["value"][0] - Network accessline 156
resp = httpx.post(rpc_url, json=payload)
skills/dex-execution/references/transaction_lifecycle.md
- Possible obfuscationline 15
raw_tx = base64.b64decode(swap_response["swapTransaction"]) - Network accessline 32
rpc_url = "https://api.mainnet-beta.solana.com" - Network accessline 45
], } resp = httpx.post(rpc_url, json=payload) - Network accessline 46
} resp = httpx.post(rpc_url, json=payload) result = resp.json()["result"]["value"] - Network accessline 47
resp = httpx.post(rpc_url, json=payload) - Network accessline 91
], } resp = httpx.post(rpc_url, json=payload) - Network accessline 92
} resp = httpx.post(rpc_url, json=payload) sig = resp.json()["result"] - Network accessline 93
resp = httpx.post(rpc_url, json=payload) - Network accessline 114
"params": [[signature], {"searchTransactionHistory": False}], } resp = httpx.post(rpc_url, json=payload) - Network accessline 115
} resp = httpx.post(rpc_url, json=payload) statuses = resp.json()["result"]["value"] - Network accessline 116
resp = httpx.post(rpc_url, json=payload) - Network accessline 160
}], } resp = httpx.post(helius_rpc_url, json=payload) - Network accessline 161
} resp = httpx.post(helius_rpc_url, json=payload) estimate = resp.json()["result"] - Network accessline 162
resp = httpx.post(helius_rpc_url, json=payload)
skills/dex-execution/scripts/get_quote.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 21
[Credential-related source omitted] - Network accessline 37
JUPITER_BASE_URL = "https://quote-api.jup.ag/v6" - Network accessline 38
JUPITER_PRICE_URL = "https://price.jup.ag/v2/price" - Access to secretsline 56
[Credential-related source omitted] - Access to secretsline 205
[Credential-related source omitted] - Network accessline 208
[Credential-related source omitted] - Access to secretsline 208
[Credential-related source omitted] - Access to secretsline 315
[Credential-related source omitted] - Network accessline 387
with httpx.Client() as client:
skills/dex-execution/scripts/simulate_swap.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 52
JUPITER_BASE_URL = "https://quote-api.jup.ag/v6" - Network accessline 53
DEFAULT_RPC_URL = "https://api.mainnet-beta.solana.com" - Possible obfuscationline 265
tx_bytes = base64.b64decode(tx_b64) if tx_b64 else b"" - Network accessline 431
with httpx.Client() as client:
skills/dex-pool-analysis/SKILL.md
- Network accessline 342
# Step 1: Fetch all pools for a token from DexScreener async def analyze_token_pools(token_mint: str) -> dict: url = f"https://api.dexscreener.com/tokens/v1/solana/{token_mint}" - Network accessline 343
async def analyze_token_pools(token_mint: str) -> dict: url = f"https://api.dexscreener.com/tokens/v1/solana/{token_mint}" async with httpx.AsyncClient() as client: - Network accessline 344
url = f"https://api.dexscreener.com/tokens/v1/solana/{token_mint}" async with httpx.AsyncClient() as client: resp = await client.get(url) - Network accessline 345
async with httpx.AsyncClient() as client:
skills/dex-pool-analysis/scripts/analyze_pools.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 35
DEXSCREENER_BASE = "https://api.dexscreener.com" - Network accessline 315
url = f"{DEXSCREENER_BASE}/tokens/v1/solana/{token_mint}" with httpx.Client(timeout=REQUEST_TIMEOUT) as client: - Network accessline 316
with httpx.Client(timeout=REQUEST_TIMEOUT) as client: - Network accessline 508
buys_24h=d["buys_24h"], sells_24h=d["sells_24h"], url=f"https://dexscreener.com/solana/{d['pool_address']}", - Network accessline 509
sells_24h=d["sells_24h"], url=f"https://dexscreener.com/solana/{d['pool_address']}", ) - Network accessline 510
url=f"https://dexscreener.com/solana/{d['pool_address']}",
skills/dex-pool-analysis/scripts/pool_monitor.py
skills/dexscreener-api/SKILL.md
- Network accessline 17
# Search for a token resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": "BONK"}) - Network accessline 18
resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": "BONK"}) - Network accessline 25
# Or with curl curl "https://api.dexscreener.com/latest/dex/search?q=BONK" - Network accessline 26
curl "https://api.dexscreener.com/latest/dex/search?q=BONK" - Network accessline 31
`https://api.dexscreener.com` - Network accessline 91
"chainId": "solana", "dexId": "raydium", "url": "https://dexscreener.com/solana/PAIR_ADDR", - Network accessline 92
"dexId": "raydium", "url": "https://dexscreener.com/solana/PAIR_ADDR", "pairAddress": "3nMFwZX...", - Network accessline 93
"url": "https://dexscreener.com/solana/PAIR_ADDR", - Network accessline 111
"pairCreatedAt": 1688106058000, "info": { "imageUrl": "https://cdn.dexscreener.com/...", - Network accessline 112
"info": { "imageUrl": "https://cdn.dexscreener.com/...", "websites": [{ "url": "https://...", "label": "Website" }], - Network accessline 113
"imageUrl": "https://cdn.dexscreener.com/...", - Network accessline 114
"websites": [{ "url": "https://...", "label": "Website" }], - Network accessline 115
"socials": [{ "url": "https://x.com/...", "type": "twitter" }] - Network accessline 132
def lookup_token(address: str) -> dict | None: """Get the best pair for a token by liquidity.""" resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{address}") - Network accessline 133
"""Get the best pair for a token by liquidity.""" resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{address}") pairs = resp.json().get("pairs", []) - Network accessline 134
resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{address}") - Network accessline 146
def find_best_price(symbol: str) -> list[dict]: """Find a token across all chains and compare prices.""" resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": symbol}) - Network accessline 147
"""Find a token across all chains and compare prices.""" resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": symbol}) pairs = resp.json().get("pairs", []) - Network accessline 148
resp = httpx.get("https://api.dexscreener.com/latest/dex/search", params={"q": symbol}) - Network accessline 166
def get_newly_boosted() -> list[dict]: """Get tokens that were recently boosted (paid promotion).""" resp = httpx.get("https://api.dexscreener.com/token-boosts/latest/v1") - Network accessline 167
"""Get tokens that were recently boosted (paid promotion).""" resp = httpx.get("https://api.dexscreener.com/token-boosts/latest/v1") return [ - Network accessline 168
resp = httpx.get("https://api.dexscreener.com/token-boosts/latest/v1")
skills/dexscreener-api/references/endpoints.md
- Network accessline 3
All endpoints use base URL `https://api.dexscreener.com`. No authentication required. - Network accessline 17
curl "https://api.dexscreener.com/latest/dex/search?q=BONK" - Network accessline 29
curl "https://api.dexscreener.com/latest/dex/pairs/solana/PAIR_ADDRESS" - Network accessline 31
curl "https://api.dexscreener.com/latest/dex/pairs/solana/PAIR1,PAIR2,PAIR3" - Network accessline 42
curl "https://api.dexscreener.com/latest/dex/tokens/So11111111111111111111111111111111111111112" - Network accessline 54
curl "https://api.dexscreener.com/token-pairs/v1/solana/TOKEN_MINT" - Network accessline 66
curl "https://api.dexscreener.com/tokens/v1/solana/TOKEN1,TOKEN2" - Network accessline 81
"chainId": "solana", "tokenAddress": "TOKEN...", "icon": "https://...", - Network accessline 82
"tokenAddress": "TOKEN...", "icon": "https://...", "header": "https://...", - Network accessline 83
"icon": "https://...", - Network accessline 84
"header": "https://...", - Network accessline 85
"description": "...", "links": [ { "label": "Website", "type": "website", "url": "https://..." }, - Network accessline 86
"links": [ { "label": "Website", "type": "website", "url": "https://..." }, { "label": "Twitter", "type": "twitter", "url": "https://x.com/..." } - Network accessline 87
{ "label": "Website", "type": "website", "url": "https://..." }, - Network accessline 88
{ "label": "Twitter", "type": "twitter", "url": "https://x.com/..." } - Network accessline 104
"amount": 500, "totalAmount": 2500, "icon": "https://...", - Network accessline 105
"totalAmount": 2500, "icon": "https://...", "description": "..." - Network accessline 106
"icon": "https://...",
skills/dexscreener-api/references/error_handling.md
- Network accessline 35
"""GET with exponential backoff for rate limits.""" for attempt in range(max_retries): resp = httpx.get(url, timeout=15.0) - Network accessline 37
resp = httpx.get(url, timeout=15.0) - Network accessline 104
# Bad: 10 requests for addr in addresses: resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{addr}") - Network accessline 106
resp = httpx.get(f"https://api.dexscreener.com/latest/dex/tokens/{addr}") - Network accessline 108
# Good: 1 request (max 30 addresses) joined = ",".join(addresses[:30]) resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{joined}") - Network accessline 110
resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{joined}")
skills/dexscreener-api/scripts/boost_monitor.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 25
CHAIN_FILTER = os.getenv("CHAIN_FILTER", "") # e.g., "solana" to filter BASE_URL = "https://api.dexscreener.com" - Network accessline 26
BASE_URL = "https://api.dexscreener.com" - Network accessline 44
for attempt in range(max_retries): try: resp = httpx.get(url, timeout=15.0) - Network accessline 46
resp = httpx.get(url, timeout=15.0)
skills/dexscreener-api/scripts/token_lookup.py
skills/exit-strategies/scripts/exit_simulator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/exit-strategies/scripts/stop_loss_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/feature-engineering/scripts/build_features.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted] - Access to secretsline 121
[Credential-related source omitted] - Access to secretsline 129
[Credential-related source omitted] - Network accessline 142
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 143
[Credential-related source omitted] - Network accessline 160
response = httpx.get(url, headers=headers, params=params, timeout=30.0) - Network accessline 560
type=int, default=200, help="Number of bars to generate/fetch (default: 200).", - Network accessline 561
default=200, help="Number of bars to generate/fetch (default: 200).", ) - Network accessline 562
help="Number of bars to generate/fetch (default: 200).", - Access to secretsline 579
[Credential-related source omitted] - Access to secretsline 580
[Credential-related source omitted] - Access to secretsline 584
[Credential-related source omitted]
skills/feature-engineering/scripts/feature_importance.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/fixed-income/scripts/bond_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/helius-api/SKILL.md
- Network accessline 14
Sign up at [dashboard.helius.dev](https://dashboard.helius.dev) — free tier available (1M credits/mo, no card required). - Access to secretsline 17
[Credential-related source omitted] - Network accessline 30
[Credential-related source omitted] - Network accessline 31
[Credential-related source omitted] - Network accessline 32
[Credential-related source omitted] - Network accessline 33
[Credential-related source omitted] - Network accessline 44
[Credential-related source omitted] - Access to secretsline 44
[Credential-related source omitted] - Network accessline 45
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Network accessline 47
resp = httpx.post(RPC_URL, json={ - Network accessline 62
resp = httpx.post(RPC_URL, json={ - Network accessline 82
resp = httpx.post(RPC_URL, json={ - Network accessline 120
[Credential-related source omitted] - Access to secretsline 120
[Credential-related source omitted] - Network accessline 122
resp = httpx.post(API_URL, json={ - Network accessline 136
url = f"https://api-mainnet.helius-rpc.com/v0/addresses/{wallet}/transactions" resp = httpx.get(url, params={ - Network accessline 137
resp = httpx.get(url, params={ - Access to secretsline 138
[Credential-related source omitted] - Network accessline 171
[Credential-related source omitted] - Access to secretsline 171
[Credential-related source omitted] - Network accessline 172
resp = httpx.post(url, json={ - Network accessline 173
"webhookURL": "https://your-server.com/helius-hook", - Network accessline 193
[Credential-related source omitted] - Network accessline 194
[Credential-related source omitted] - Access to secretsline 194
[Credential-related source omitted] - Network accessline 196
[Credential-related source omitted] - Network accessline 197
[Credential-related source omitted] - Access to secretsline 197
[Credential-related source omitted] - Network accessline 198
"webhookURL": "https://new-url.com/hook", - Network accessline 204
[Credential-related source omitted] - Network accessline 205
[Credential-related source omitted] - Access to secretsline 205
[Credential-related source omitted] - Network accessline 215
resp = httpx.post(RPC_URL, json={
skills/helius-api/references/das_api.md
- Network accessline 6
[Credential-related source omitted] - Network accessline 19
"id": "So11111111111111111111111111111111111111112", "content": { "json_uri": "https://...", - Network accessline 20
"content": { "json_uri": "https://...", "files": [{"uri": "...", "cdn_uri": "...", "mime": "image/png"}], - Network accessline 21
"json_uri": "https://...",
skills/helius-api/references/enhanced_transactions.md
- Network accessline 6
https://api-mainnet.helius-rpc.com/v0/
skills/helius-api/references/error_handling.md
- Network accessline 88
for attempt in range(max_retries + 1): try: resp = httpx.post(url, json=payload, timeout=30.0) - Network accessline 90
resp = httpx.post(url, json=payload, timeout=30.0) - Access to secretsline 151
[Credential-related source omitted] - Access to secretsline 157
[Credential-related source omitted] - Network accessline 161
url = f"https://api-mainnet.helius-rpc.com/v0/addresses/{address}/transactions" resp = httpx.get(url, params=params, timeout=30.0) - Network accessline 162
resp = httpx.get(url, params=params, timeout=30.0)
skills/helius-api/references/webhooks.md
- Network accessline 7
[Credential-related source omitted] - Network accessline 28
[Credential-related source omitted] - Access to secretsline 28
[Credential-related source omitted] - Network accessline 29
[Credential-related source omitted] - Access to secretsline 29
[Credential-related source omitted] - Network accessline 31
resp = httpx.post(url, json={ - Network accessline 32
"webhookURL": "https://your-server.com/helius-hook", - Network accessline 45
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Network accessline 52
resp = httpx.get( - Network accessline 53
[Credential-related source omitted] - Access to secretsline 53
[Credential-related source omitted] - Network accessline 60
resp = httpx.put( - Network accessline 61
[Credential-related source omitted] - Access to secretsline 61
[Credential-related source omitted] - Network accessline 62
json={ "webhookURL": "https://your-server.com/helius-hook", "transactionTypes": ["SWAP"], - Network accessline 63
"webhookURL": "https://your-server.com/helius-hook", - Network accessline 74
resp = httpx.delete( - Network accessline 75
[Credential-related source omitted] - Access to secretsline 75
[Credential-related source omitted] - Access to secretsline 152
[Credential-related source omitted]
skills/helius-api/scripts/token_lookup.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 29
[Credential-related source omitted] - Network accessline 30
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Network accessline 31
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
print(" Get a free key at https://dashboard.helius.dev") - Network accessline 39
[Credential-related source omitted] - Access to secretsline 39
[Credential-related source omitted] - Network accessline 59
for attempt in range(retries + 1): try: resp = httpx.post( - Network accessline 60
try: resp = httpx.post( RPC_URL, - Network accessline 61
resp = httpx.post(
skills/helius-api/scripts/wallet_analysis.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
[Credential-related source omitted] - Access to secretsline 32
[Credential-related source omitted] - Network accessline 33
[Credential-related source omitted] - Access to secretsline 33
[Credential-related source omitted] - Network accessline 34
print(" Get a free key at https://dashboard.helius.dev") - Network accessline 43
[Credential-related source omitted] - Access to secretsline 43
[Credential-related source omitted] - Network accessline 44
API_URL = f"https://api-mainnet.helius-rpc.com/v0" - Network accessline 66
resp = httpx.post( - Access to secretsline 93
[Credential-related source omitted] - Network accessline 97
resp = httpx.get(
skills/impermanent-loss/scripts/il_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/impermanent-loss/scripts/il_scenario_modeler.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/jito-bundles/SKILL.md
- Network accessline 59
| Region | Endpoint | |--------|----------| | New York | `https://mainnet.block-engine.jito.wtf` | - Network accessline 60
|--------|----------| | New York | `https://mainnet.block-engine.jito.wtf` | | Amsterdam | `https://amsterdam.block-engine.jito.wtf` | - Network accessline 61
| New York | `https://mainnet.block-engine.jito.wtf` | - Network accessline 62
| Amsterdam | `https://amsterdam.block-engine.jito.wtf` | - Network accessline 63
| Frankfurt | `https://frankfurt.block-engine.jito.wtf` | - Network accessline 64
| Tokyo | `https://tokyo.block-engine.jito.wtf` | - Network accessline 77
BLOCK_ENGINE = "https://mainnet.block-engine.jito.wtf" - Network accessline 88
resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 102
"params": [[bundle_id]] } resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 103
} resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) statuses = resp.json()["result"]["value"] - Network accessline 104
resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 119
"params": [] } resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 120
} resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) tip_accounts = resp.json()["result"] # List of 8 base58 pubkeys - Network accessline 121
resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 134
"params": [[bundle_id]] } resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 135
} resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) # status: "Pending", "Failed", "Landed" - Network accessline 136
resp = httpx.post(f"{BLOCK_ENGINE}/api/v1/bundles", json=payload) - Network accessline 253
for attempt in range(max_retries): # Submit to all endpoints in parallel async with httpx.AsyncClient() as client: - Network accessline 254
# Submit to all endpoints in parallel async with httpx.AsyncClient() as client: tasks = [ - Network accessline 255
async with httpx.AsyncClient() as client:
skills/jito-bundles/references/best_practices.md
- Network accessline 72
or (time.time() - self._fetched_at) > self.max_age ): resp = httpx.post(self.rpc_url, json={ - Network accessline 73
): resp = httpx.post(self.rpc_url, json={ "jsonrpc": "2.0", "id": 1, - Network accessline 74
resp = httpx.post(self.rpc_url, json={ - Network accessline 92
JITO_ENDPOINTS = [ "https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 93
"https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 94
"https://amsterdam.block-engine.jito.wtf/api/v1/bundles", - Network accessline 95
"https://frankfurt.block-engine.jito.wtf/api/v1/bundles", - Network accessline 96
"https://tokyo.block-engine.jito.wtf/api/v1/bundles", - Network accessline 108
"params": [bundle_txs], } async with httpx.AsyncClient(timeout=5.0) as client: - Network accessline 109
} async with httpx.AsyncClient(timeout=5.0) as client: tasks = [client.post(ep, json=payload) for ep in endpoints] - Network accessline 110
async with httpx.AsyncClient(timeout=5.0) as client:
skills/jito-bundles/references/bundle_api.md
- Network accessline 7
**Base URLs:** - `https://mainnet.block-engine.jito.wtf/api/v1/bundles` - Network accessline 8
- `https://mainnet.block-engine.jito.wtf/api/v1/bundles` - Network accessline 9
- `https://amsterdam.block-engine.jito.wtf/api/v1/bundles` - Network accessline 10
- `https://frankfurt.block-engine.jito.wtf/api/v1/bundles` - Network accessline 11
- `https://tokyo.block-engine.jito.wtf/api/v1/bundles` - Network accessline 74
**curl example:** - Network accessline 76
curl -X POST "https://mainnet.block-engine.jito.wtf/api/v1/bundles" \
skills/jito-bundles/scripts/build_bundle.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 35
BLOCK_ENGINE_URLS = { "mainnet": "https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 36
"mainnet": "https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 37
"amsterdam": "https://amsterdam.block-engine.jito.wtf/api/v1/bundles", - Network accessline 38
"frankfurt": "https://frankfurt.block-engine.jito.wtf/api/v1/bundles", - Network accessline 39
"tokyo": "https://tokyo.block-engine.jito.wtf/api/v1/bundles", - Network accessline 163
"params": [], } resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 164
} resp = httpx.post(block_engine_url, json=payload, timeout=10.0) resp.raise_for_status() - Network accessline 165
resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 200
"params": [bundle_txs], } resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 201
} resp = httpx.post(block_engine_url, json=payload, timeout=10.0) resp.raise_for_status() - Network accessline 202
resp = httpx.post(block_engine_url, json=payload, timeout=10.0)
skills/jito-bundles/scripts/check_bundle_status.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 30
BLOCK_ENGINE_URLS = { "mainnet": "https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 31
"mainnet": "https://mainnet.block-engine.jito.wtf/api/v1/bundles", - Network accessline 32
"amsterdam": "https://amsterdam.block-engine.jito.wtf/api/v1/bundles", - Network accessline 33
"frankfurt": "https://frankfurt.block-engine.jito.wtf/api/v1/bundles", - Network accessline 34
"tokyo": "https://tokyo.block-engine.jito.wtf/api/v1/bundles", - Network accessline 99
"params": [], } resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 100
} resp = httpx.post(block_engine_url, json=payload, timeout=10.0) resp.raise_for_status() - Network accessline 101
resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 136
"params": [bundle_ids], } resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 137
} resp = httpx.post(block_engine_url, json=payload, timeout=10.0) resp.raise_for_status() - Network accessline 138
resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 175
"params": [bundle_ids], } resp = httpx.post(block_engine_url, json=payload, timeout=10.0) - Network accessline 176
} resp = httpx.post(block_engine_url, json=payload, timeout=10.0) resp.raise_for_status() - Network accessline 177
resp = httpx.post(block_engine_url, json=payload, timeout=10.0)
skills/kalshi-api/SKILL.md
- Network accessline 16
> > Canonical sources: > - API reference: <https://docs.kalshi.com> (legacy mirror: <https://trading-api.readme.io>) - Network accessline 17
> Canonical sources: > - API reference: <https://docs.kalshi.com> (legacy mirror: <https://trading-api.readme.io>) > - Official Python starter: <https://github.com/Kalshi/kalshi-starter-code-python> - Network accessline 18
> - API reference: <https://docs.kalshi.com> (legacy mirror: <https://trading-api.readme.io>) - Network accessline 19
> - Official Python starter: <https://github.com/Kalshi/kalshi-starter-code-python> - Network accessline 25
- **Base URL:** `https://api.elections.kalshi.com/trade-api/v2` - Network accessline 61
BASE = "https://api.elections.kalshi.com/trade-api/v2" - Access to secretsline 62
[Credential-related source omitted] - Access to secretsline 63
[Credential-related source omitted] - Network accessline 82
def get(path: str, params=None): # Sign the path only — query goes into params, not the signature r = httpx.get(BASE + path, params=params, - Network accessline 83
# Sign the path only — query goes into params, not the signature r = httpx.get(BASE + path, params=params, headers=_headers("GET", "/trade-api/v2" + path)) - Network accessline 84
r = httpx.get(BASE + path, params=params, - Network accessline 89
def post(path: str, body: dict): r = httpx.post(BASE + path, json=body, - Network accessline 90
r = httpx.post(BASE + path, json=body,
skills/kalshi-api/references/auth-and-orders.md
- Network accessline 148
> Re-confirm the exact fee percentage against <https://docs.kalshi.com> before sizing — Kalshi has adjusted fee tiers before.
skills/kalshi-api/references/endpoints-and-marketdata.md
- Network accessline 6
https://api.elections.kalshi.com/trade-api/v2
skills/kalshi-api/scripts/kalshi_orderbook.py
skills/kalshi-weather-markets/SKILL.md
- Network accessline 104
| Resource | URL | |----------|-----| | Kalshi market rules / Rulebook | <https://docs.kalshi.com> (per-market "Rulebook") | - Network accessline 105
|----------|-----| | Kalshi market rules / Rulebook | <https://docs.kalshi.com> (per-market "Rulebook") | | NWS Climatological Report (CLI) | <https://www.weather.gov/wrh/Climate> | - Network accessline 106
| Kalshi market rules / Rulebook | <https://docs.kalshi.com> (per-market "Rulebook") | | NWS Climatological Report (CLI) | <https://www.weather.gov/wrh/Climate> | | IEM ASOS daily download | <https://mesonet.agron.iastate.edu/request/daily. - Network accessline 107
| NWS Climatological Report (CLI) | <https://www.weather.gov/wrh/Climate> | | IEM ASOS daily download | <https://mesonet.agron.iastate.edu/request/daily.phtml> | | Polymarket resolution (WU) | <https://www.wunderground.com> | - Network accessline 108
| IEM ASOS daily download | <https://mesonet.agron.iastate.edu/request/daily.phtml> | - Network accessline 109
| Polymarket resolution (WU) | <https://www.wunderground.com> | - Network accessline 110
| Polymarket disputes (UMA) | <https://docs.uma.xyz> |
skills/kalshi-weather-markets/references/brackets-and-settlement.md
- Network accessline 5
> **Settlement-source references (verify the per-market spec before trusting any of this):** > - Kalshi market rules: <https://docs.kalshi.com> (per-market "Rulebook") - Network accessline 6
> - Kalshi market rules: <https://docs.kalshi.com> (per-market "Rulebook") > - NWS Climatological Report (CLI): <https://www.weather.gov/wrh/Climate> > - IEM ASOS daily download: <https://mesonet.agron.iastate.edu/request/daily.phtml> (100% - Network accessline 7
> - NWS Climatological Report (CLI): <https://www.weather.gov/wrh/Climate> > - IEM ASOS daily download: <https://mesonet.agron.iastate.edu/request/daily.phtml> (100% match to Kalshi) > - Polymarket resolution via Weather Underground: <https - Network accessline 8
> - IEM ASOS daily download: <https://mesonet.agron.iastate.edu/request/daily.phtml> (100% match to Kalshi) - Network accessline 9
> - Polymarket resolution via Weather Underground: <https://www.wunderground.com> + UMA: <https://docs.uma.xyz>
skills/kalshi-weather-markets/scripts/weather_brackets.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/kelly-criterion/scripts/kelly_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/kelly-criterion/scripts/kelly_from_trades.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/liquidity-analysis/SKILL.md
- Network accessline 64
def get_pools(mint: str) -> list[dict]: """Fetch all DEX pools for a token from DexScreener.""" resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{mint}") - Network accessline 65
"""Fetch all DEX pools for a token from DexScreener.""" resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{mint}") resp.raise_for_status() - Network accessline 66
resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{mint}") - Network accessline 108
results = [] base_price = None async with httpx.AsyncClient() as client: - Network accessline 109
base_price = None async with httpx.AsyncClient() as client: for sol in sol_amounts: - Network accessline 110
async with httpx.AsyncClient() as client: - Network accessline 112
lamports = int(sol * LAMPORTS) resp = await client.get( "https://api.jup.ag/quote/v1", - Network accessline 113
resp = await client.get( "https://api.jup.ag/quote/v1", params={ - Network accessline 114
"https://api.jup.ag/quote/v1", - Network accessline 324
# 1. Get pools resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{TOKEN}") - Network accessline 325
resp = httpx.get(f"https://api.dexscreener.com/tokens/v1/solana/{TOKEN}")
skills/liquidity-analysis/references/data_sources.md
- Network accessline 9
- **Endpoint**: `GET https://api.dexscreener.com/tokens/v1/solana/{tokenAddress}` - **Rate Limit**: 60 requests/minute - Network accessline 33
def get_dexscreener_pools(mint: str) -> list[dict]: """Fetch all pools for a token from DexScreener.""" resp = httpx.get( - Network accessline 34
"""Fetch all pools for a token from DexScreener.""" resp = httpx.get( f"https://api.dexscreener.com/tokens/v1/solana/{mint}", - Network accessline 35
resp = httpx.get( - Network accessline 36
f"https://api.dexscreener.com/tokens/v1/solana/{mint}", - Network accessline 45
- **Endpoint**: `GET https://api.dexscreener.com/latest/dex/search?q={query}` - Network accessline 50
- **Endpoint**: `GET https://api.dexscreener.com/latest/dex/pairs/solana/{pairAddress}` - Network accessline 59
- **Endpoint**: `GET https://api.jup.ag/quote/v1` - Network accessline 90
def get_jupiter_quote(token_mint: str, sol_amount: float) -> dict | None: """Get Jupiter quote for a specific trade size.""" resp = httpx.get( - Network accessline 91
"""Get Jupiter quote for a specific trade size.""" resp = httpx.get( "https://api.jup.ag/quote/v1", - Network accessline 92
resp = httpx.get( - Network accessline 93
"https://api.jup.ag/quote/v1", - Network accessline 131
- **Endpoint**: `GET https://public-api.birdeye.so/defi/v3/token/trade-data/single` - Network accessline 141
- **Endpoint**: `GET https://public-api.birdeye.so/defi/v2/markets` - Access to secretsline 153
[Credential-related source omitted] - Access to secretsline 154
[Credential-related source omitted] - Access to secretsline 155
[Credential-related source omitted] - Network accessline 157
resp = httpx.get( - Network accessline 158
"https://public-api.birdeye.so/defi/v2/markets", - Access to secretsline 160
[Credential-related source omitted] - Network accessline 184
reading the associated token vault accounts. """ resp = httpx.post( - Network accessline 185
""" resp = httpx.post( rpc_url, - Network accessline 186
resp = httpx.post(
skills/liquidity-analysis/references/slippage_curves.md
- Network accessline 130
async with httpx.AsyncClient(timeout=15) as client: - Network accessline 131
for sol in SIZES: resp = await client.get( "https://api.jup.ag/quote/v1", - Network accessline 132
resp = await client.get( "https://api.jup.ag/quote/v1", params={ - Network accessline 133
"https://api.jup.ag/quote/v1",
skills/liquidity-analysis/scripts/analyze_liquidity.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 30
LAMPORTS = 1_000_000_000 SLIPPAGE_TEST_SIZES = [0.1, 0.5, 1.0, 5.0, 10.0, 25.0] DEXSCREENER_BASE = "https://api.dexscreener.com" - Network accessline 31
SLIPPAGE_TEST_SIZES = [0.1, 0.5, 1.0, 5.0, 10.0, 25.0] DEXSCREENER_BASE = "https://api.dexscreener.com" JUPITER_QUOTE_URL = "https://api.jup.ag/quote/v1" - Network accessline 32
DEXSCREENER_BASE = "https://api.dexscreener.com" - Network accessline 33
JUPITER_QUOTE_URL = "https://api.jup.ag/quote/v1" - Network accessline 84
try: resp = httpx.get( - Network accessline 85
resp = httpx.get( - Network accessline 148
with httpx.Client() as client:
skills/liquidity-analysis/scripts/pool_comparison.py
skills/lp-math/scripts/amm_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/lp-math/scripts/clmm_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/market-microstructure-traditional/scripts/market_maker_sim.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/market-microstructure-traditional/scripts/spread_analysis.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/market-microstructure/scripts/trade_flow_analysis.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 10
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Access to secretsline 39
[Credential-related source omitted] - Access to secretsline 57
[Credential-related source omitted] - Access to secretsline 63
[Credential-related source omitted] - Network accessline 73
url = "https://public-api.birdeye.so/defi/txs/token" - Access to secretsline 74
[Credential-related source omitted] - Network accessline 77
trades: list[dict] = [] with httpx.Client(timeout=30) as client: - Network accessline 78
with httpx.Client(timeout=30) as client: - Network accessline 109
url = f"https://api.dexscreener.com/latest/dex/tokens/{token_mint}" try: with httpx.Client(timeout=15) as client: - Network accessline 110
try: with httpx.Client(timeout=15) as client: resp = client.get(url) - Network accessline 111
with httpx.Client(timeout=15) as client: - Access to secretsline 548
[Credential-related source omitted] - Access to secretsline 550
[Credential-related source omitted]
skills/market-microstructure/scripts/volume_profile.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 10
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Access to secretsline 39
[Credential-related source omitted] - Access to secretsline 47
[Credential-related source omitted] - Network accessline 53
[Credential-related source omitted] - Access to secretsline 53
[Credential-related source omitted] - Network accessline 55
limit: Number of candles to fetch (168 = 7 days of hourly). - Network accessline 64
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 65
[Credential-related source omitted] - Network accessline 77
with httpx.Client(timeout=30) as client: - Access to secretsline 416
[Credential-related source omitted] - Access to secretsline 417
[Credential-related source omitted] - Access to secretsline 421
[Credential-related source omitted]
skills/mean-reversion/SKILL.md
skills/mean-reversion/scripts/mean_reversion_test.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 15
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Access to secretsline 410
[Credential-related source omitted] - Access to secretsline 418
[Credential-related source omitted] - Network accessline 433
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 449
[Credential-related source omitted] - Network accessline 451
try: with httpx.Client(timeout=30) as client: - Network accessline 452
with httpx.Client(timeout=30) as client: - Access to secretsline 688
[Credential-related source omitted] - Access to secretsline 689
[Credential-related source omitted] - Access to secretsline 690
[Credential-related source omitted] - Access to secretsline 696
[Credential-related source omitted]
skills/mean-reversion/scripts/pairs_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/mev-analysis/SKILL.md
- Network accessline 191
JITO_BLOCK_ENGINE = "https://mainnet.block-engine.jito.wtf" - Network accessline 204
Bundle ID for tracking. """ async with httpx.AsyncClient() as client: - Network accessline 205
""" async with httpx.AsyncClient() as client: resp = await client.post( - Network accessline 206
async with httpx.AsyncClient() as client:
skills/mev-analysis/references/protection_strategies.md
- Network accessline 69
JITO_BLOCK_ENGINE = "https://mainnet.block-engine.jito.wtf" - Network accessline 71
async def get_tip_accounts() -> list[str]: """Fetch current Jito tip accounts.""" async with httpx.AsyncClient() as client: - Network accessline 72
"""Fetch current Jito tip accounts.""" async with httpx.AsyncClient() as client: resp = await client.post( - Network accessline 73
async with httpx.AsyncClient() as client: - Network accessline 99
""" encoded = [base64.b64encode(tx).decode() for tx in serialized_txs] async with httpx.AsyncClient() as client: - Network accessline 100
encoded = [base64.b64encode(tx).decode() for tx in serialized_txs] async with httpx.AsyncClient() as client: resp = await client.post( - Network accessline 101
async with httpx.AsyncClient() as client: - Network accessline 130
async def check_bundle_status(bundle_id: str) -> dict: """Check if a bundle was included.""" async with httpx.AsyncClient() as client: - Network accessline 131
"""Check if a bundle was included.""" async with httpx.AsyncClient() as client: resp = await client.post( - Network accessline 132
async with httpx.AsyncClient() as client: - Network accessline 172
[Credential-related source omitted] - Network accessline 173
[Credential-related source omitted] - Access to secretsline 173
[Credential-related source omitted] - Network accessline 175
async def send_protected_transaction(signed_tx_base64: str) -> str: """Send transaction via Helius staked connection.""" async with httpx.AsyncClient() as client: - Network accessline 176
"""Send transaction via Helius staked connection.""" async with httpx.AsyncClient() as client: resp = await client.post( - Network accessline 177
async with httpx.AsyncClient() as client:
skills/mev-analysis/references/solana_mev_mechanics.md
- Network accessline 89
- **Mainnet block engine**: `https://mainnet.block-engine.jito.wtf`
skills/mev-analysis/scripts/mev_risk_estimator.py
skills/mev-analysis/scripts/sandwich_detector.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 18
[Credential-related source omitted] - Network accessline 32
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 33
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Access to secretsline 35
[Credential-related source omitted] - Network accessline 39
[Credential-related source omitted] - Access to secretsline 39
[Credential-related source omitted] - Network accessline 40
[Credential-related source omitted] - Access to secretsline 40
[Credential-related source omitted] - Network accessline 689
with httpx.Client() as client:
skills/ohlcv-processing/scripts/merge_sources.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/ohlcv-processing/scripts/process_ohlcv.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Network accessline 28
BIRDEYE_BASE = "https://public-api.birdeye.so" - Access to secretsline 159
[Credential-related source omitted] - Access to secretsline 160
[Credential-related source omitted] - Access to secretsline 161
[Credential-related source omitted] - Access to secretsline 165
[Credential-related source omitted] - Network accessline 181
resp = httpx.get(
skills/options-pricing/references/planned_features.md
- Network accessline 110
- **Base URL:** `https://www.deribit.com/api/v2/`
skills/options-pricing/scripts/black_scholes.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/pandas-ta/scripts/compute_indicators.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 18
[Credential-related source omitted] - Network accessline 33
[Credential-related source omitted] - Access to secretsline 33
[Credential-related source omitted] - Network accessline 35
BIRDEYE_BASE_URL = "https://public-api.birdeye.so" - Network accessline 118
token_mint: Solana token mint address. interval: Candle interval (1m, 5m, 15m, 30m, 1H, 4H, 1D). limit: Number of candles to fetch (max 1000). - Network accessline 120
limit: Number of candles to fetch (max 1000). - Access to secretsline 126
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Access to secretsline 129
[Credential-related source omitted] - Access to secretsline 130
[Credential-related source omitted] - Access to secretsline 158
[Credential-related source omitted] - Network accessline 162
try: with httpx.Client(timeout=30.0) as client: - Network accessline 163
with httpx.Client(timeout=30.0) as client:
skills/pandas-ta/scripts/multi_indicator_scan.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 17
[Credential-related source omitted] - Network accessline 32
[Credential-related source omitted] - Access to secretsline 32
[Credential-related source omitted] - Network accessline 34
BIRDEYE_BASE_URL = "https://public-api.birdeye.so" - Access to secretsline 146
[Credential-related source omitted] - Access to secretsline 147
[Credential-related source omitted] - Access to secretsline 167
[Credential-related source omitted] - Network accessline 175
try: with httpx.Client(timeout=30.0) as client: - Network accessline 176
with httpx.Client(timeout=30.0) as client:
skills/polymarket-api/SKILL.md
- Network accessline 12
> **Before you write any API code — read the live docs first.** > > - Docs: https://docs.polymarket.com - Network accessline 13
> > - Docs: https://docs.polymarket.com > - Official Python SDK: https://github.com/Polymarket/py-clob-client - Network accessline 14
> - Docs: https://docs.polymarket.com - Network accessline 15
> - Official Python SDK: https://github.com/Polymarket/py-clob-client - Network accessline 41
# CRITICAL: default sort is OLDEST-first — always override or you silently get closed markets events = httpx.get("https://gamma-api.polymarket.com/events", params={ - Network accessline 42
events = httpx.get("https://gamma-api.polymarket.com/events", params={ - Network accessline 69
client = ClobClient( "https://clob.polymarket.com", - Network accessline 70
"https://clob.polymarket.com", - Access to secretsline 72
[Credential-related source omitted] - Access to secretsline 86
[Credential-related source omitted] - Network accessline 92
| API | Host | Auth | Purpose | |-----|------|------|---------| | Gamma | `https://gamma-api.polymarket.com` | none | Events/markets/conditions/prices metadata | - Network accessline 93
|-----|------|------|---------| | Gamma | `https://gamma-api.polymarket.com` | none | Events/markets/conditions/prices metadata | | CLOB | `https://clob.polymarket.com` | EIP-712 | Order book, order placement/cancel | - Network accessline 94
| Gamma | `https://gamma-api.polymarket.com` | none | Events/markets/conditions/prices metadata | - Network accessline 95
| CLOB | `https://clob.polymarket.com` | EIP-712 | Order book, order placement/cancel | - Network accessline 96
| Data | `https://data-api.polymarket.com` | none | Historical trades |
skills/polymarket-api/references/clob-and-gamma-apis.md
- Network accessline 3
> Verify all endpoints and parameters against the live docs before use. > Docs: https://docs.polymarket.com | SDK: https://github.com/Polymarket/py-clob-client - Network accessline 4
> Docs: https://docs.polymarket.com | SDK: https://github.com/Polymarket/py-clob-client - Network accessline 10
| API | Host | Auth | |-----|------|------| | Gamma | `https://gamma-api.polymarket.com` | None | - Network accessline 11
|-----|------|------| | Gamma | `https://gamma-api.polymarket.com` | None | | CLOB | `https://clob.polymarket.com` | EIP-712 (see below) | - Network accessline 12
| Gamma | `https://gamma-api.polymarket.com` | None | - Network accessline 13
| CLOB | `https://clob.polymarket.com` | EIP-712 (see below) | - Network accessline 14
| Data | `https://data-api.polymarket.com` | None | - Access to secretsline 54
[Credential-related source omitted] - Access to secretsline 62
[Credential-related source omitted]
skills/polymarket-api/references/settlement-and-ops.md
skills/portfolio-analytics/scripts/analyze_portfolio.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/portfolio-analytics/scripts/compare_strategies.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/position-sizing/scripts/portfolio_sizer.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/position-sizing/scripts/size_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/prediction-market-live-ops/SKILL.md
- Network accessline 8
Hard-won operational knowledge from a live Kalshi campaign (Aug–Sep 2026: crypto/commodity maker ladders, regime tilts, tennis dust vacuum — all falsified honestly, infrastructure open-sourced). Reference implementation: https://github.com/ - Network accessline 9
crypto/commodity maker ladders, regime tilts, tennis dust vacuum — all falsified honestly, infrastructure open-sourced). Reference implementation: https://github.com/agiprolabs/kalshi-stack. Complements `prediction-market-strategy` (edge se - Network accessline 10
falsified honestly, infrastructure open-sourced). Reference implementation: https://github.com/agiprolabs/kalshi-stack.
skills/prediction-market-strategy/scripts/sizing.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/pumpfun-mechanics/scripts/curve_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/pumpfun-mechanics/scripts/parse_events.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 32
RPC_URL = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 226
for attempt in range(3): try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 227
try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) if resp.status_code == 429: - Network accessline 228
resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Possible obfuscationline 261
raw = base64.b64decode(data)
skills/raptor-dex/SKILL.md
- Network accessline 10
- **Program ID (Mainnet)**: `RaptorD5ojtsqDDtJeRsunPLg6GvLYNnwKJWxYE4m87` - **GitHub**: [solanatracker/raptor-binary](https://github.com/solanatracker/raptor-binary) - Network accessline 11
- **GitHub**: [solanatracker/raptor-binary](https://github.com/solanatracker/raptor-binary) - Network accessline 12
- **Docs**: [docs.solanatracker.io/raptor/overview](https://docs.solanatracker.io/raptor/overview) - Network accessline 17
# Clone the binary repo (includes required signature file) git clone https://github.com/solanatracker/raptor-binary - Network accessline 18
git clone https://github.com/solanatracker/raptor-binary - Network accessline 21
# Run with required environment variables export RPC_URL="https://your-solana-rpc.com" - Network accessline 22
export RPC_URL="https://your-solana-rpc.com" - Network accessline 23
export YELLOWSTONE_ENDPOINT="https://your-yellowstone-grpc.com" - Access to secretsline 24
[Credential-related source omitted] - Network accessline 60
RAPTOR = "http://localhost:8080" - Network accessline 62
resp = httpx.get(f"{RAPTOR}/quote", params={ - Network accessline 96
# Step 2: Build transaction from quote resp = httpx.post(f"{RAPTOR}/swap", json={ - Network accessline 97
resp = httpx.post(f"{RAPTOR}/swap", json={ - Possible obfuscationline 112
tx_bytes = base64.b64decode(swap["swapTransaction"]) - Access to secretsline 114
[Credential-related source omitted] - Network accessline 118
# Step 4: Submit via Yellowstone Jet TPU resp = httpx.post(f"{RAPTOR}/send-transaction", json={ - Network accessline 119
resp = httpx.post(f"{RAPTOR}/send-transaction", json={ - Network accessline 125
# Step 5: Track status resp = httpx.get(f"{RAPTOR}/transaction/{result['signature']}") - Network accessline 126
resp = httpx.get(f"{RAPTOR}/transaction/{result['signature']}") - Network accessline 225
- `references/api_reference.md` — Complete HTTP and WebSocket API with request/response schemas - `references/deployment.md` — Docker, Fly.io, bare metal deployment with signature file handling - [docs.solanatracker.io/raptor/overview](http - Network accessline 226
- `references/deployment.md` — Docker, Fly.io, bare metal deployment with signature file handling - [docs.solanatracker.io/raptor/overview](https://docs.solanatracker.io/raptor/overview) — Official Raptor documentation - [github.com/solanat - Network accessline 227
- [docs.solanatracker.io/raptor/overview](https://docs.solanatracker.io/raptor/overview) — Official Raptor documentation - Network accessline 228
- [github.com/solanatracker/raptor-binary](https://github.com/solanatracker/raptor-binary) — Binary releases and README
skills/raptor-dex/references/deployment.md
- Network accessline 32
# Option A: Clone from GitHub git clone https://github.com/solanatracker/raptor-binary - Network accessline 33
git clone https://github.com/solanatracker/raptor-binary - Network accessline 36
# Option B: Download binary directly curl -L https://github.com/solanatracker/raptor/releases/latest/download/raptor-linux-amd64 -o raptor - Network accessline 37
curl -L https://github.com/solanatracker/raptor/releases/latest/download/raptor-linux-amd64 -o raptor - Network accessline 41
# Set environment and run export RPC_URL="https://your-rpc.com" - Network accessline 42
export RPC_URL="https://your-rpc.com" - Network accessline 43
export YELLOWSTONE_ENDPOINT="https://your-yellowstone.com" - Access to secretsline 44
[Credential-related source omitted] - Network accessline 59
WorkingDirectory=/opt/raptor ExecStart=/opt/raptor/raptor Environment=RPC_URL=https://your-rpc.com - Network accessline 60
ExecStart=/opt/raptor/raptor Environment=RPC_URL=https://your-rpc.com Environment=YELLOWSTONE_ENDPOINT=https://your-yellowstone.com - Network accessline 61
Environment=RPC_URL=https://your-rpc.com - Network accessline 62
Environment=YELLOWSTONE_ENDPOINT=https://your-yellowstone.com - Access to secretsline 63
[Credential-related source omitted] - Dangerous shell operationline 74
sudo systemctl daemon-reload - Dangerous shell operationline 75
sudo systemctl enable --now raptor - Dangerous shell operationline 76
sudo journalctl -u raptor -f # watch logs - Network accessline 91
docker build -t raptor . docker run -d \ -e RPC_URL="https://your-rpc.com" \ - Network accessline 92
docker run -d -e RPC_URL="https://your-rpc.com" - Network accessline 93
-e RPC_URL="https://your-rpc.com" \ - Network accessline 94
-e YELLOWSTONE_ENDPOINT="https://your-yellowstone.com" \ - Network accessline 111
[env] RPC_URL = "https://your-rpc.com" - Network accessline 112
RPC_URL = "https://your-rpc.com" - Network accessline 113
YELLOWSTONE_ENDPOINT = "https://your-yellowstone.com" - Network accessline 160
curl http://localhost:8080/health
skills/raptor-dex/scripts/raptor_quote.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 14
Environment Variables: RAPTOR_URL: Raptor instance URL (default: http://localhost:8080) - Network accessline 15
RAPTOR_URL: Raptor instance URL (default: http://localhost:8080) - Network accessline 24
RAPTOR_URL = os.getenv("RAPTOR_URL", "http://localhost:8080") - Network accessline 140
resp = httpx.get(f"{RAPTOR_URL}/quote", params=params, timeout=10.0)
skills/raptor-dex/scripts/raptor_swap.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 16
Environment Variables: RAPTOR_URL: Raptor instance URL (default: http://localhost:8080) - Network accessline 17
RAPTOR_URL: Raptor instance URL (default: http://localhost:8080) - Network accessline 29
RAPTOR_URL = os.getenv("RAPTOR_URL", "http://localhost:8080") - Network accessline 79
resp = httpx.get( - Network accessline 112
resp = httpx.post( - Possible obfuscationline 141
tx_bytes = base64.b64decode(tx_b64) - Network accessline 159
resp = httpx.post( - Network accessline 180
start = time.time() while time.time() - start < timeout_s: resp = httpx.get(f"{RAPTOR_URL}/transaction/{signature}", timeout=10.0) - Network accessline 181
while time.time() - start < timeout_s: resp = httpx.get(f"{RAPTOR_URL}/transaction/{signature}", timeout=10.0) if resp.status_code == 404: - Network accessline 182
resp = httpx.get(f"{RAPTOR_URL}/transaction/{signature}", timeout=10.0) - Access to secretsline 288
[Credential-related source omitted]
skills/regime-detection/scripts/detect_regime.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 15
[Credential-related source omitted] - Access to secretsline 28
[Credential-related source omitted] - Access to secretsline 112
[Credential-related source omitted] - Access to secretsline 118
[Credential-related source omitted] - Network accessline 134
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 151
[Credential-related source omitted] - Network accessline 153
try: resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Network accessline 154
resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Access to secretsline 555
[Credential-related source omitted] - Access to secretsline 556
[Credential-related source omitted] - Access to secretsline 559
[Credential-related source omitted]
skills/regime-detection/scripts/regime_backtest.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/regulatory-reporting/scripts/form_8949_generator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/risk-management/scripts/drawdown_analyzer.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/risk-management/scripts/risk_dashboard.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/rl-execution/scripts/almgren_chriss.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/rl-execution/scripts/execution_simulator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/sentiment-analysis/references/data_sources.md
- Network accessline 9
- **Base URL**: `https://api.twitter.com/2/` - Network accessline 31
- **Base URL**: `https://oauth.reddit.com/` - Network accessline 50
- **Bot API URL**: `https://api.telegram.org/bot{token}/` - Network accessline 59
# Poll for new messages in monitored channels updates = httpx.get(f"{BOT_URL}/getUpdates?offset={last_id}").json() - Network accessline 60
updates = httpx.get(f"{BOT_URL}/getUpdates?offset={last_id}").json() - Network accessline 69
- **Bot Gateway**: WebSocket-based, requires bot token - **REST API**: `https://discord.com/api/v10/` - Network accessline 70
- **REST API**: `https://discord.com/api/v10/` - Network accessline 82
- **Endpoint**: `GET https://api.alternative.me/fng/` - Network accessline 106
- **Base URL**: `https://lunarcrush.com/api4/public/` - Network accessline 120
- **Base URL**: `https://api.santiment.net/graphql` - Network accessline 143
- **Endpoint**: `GET https://fapi.binance.com/fapi/v1/fundingRate` - Network accessline 166
- **Endpoint**: `GET https://fapi.binance.com/futures/data/globalLongShortAccountRatio` - Network accessline 185
- **Endpoint**: `GET https://api.coingecko.com/api/v3/coins/{id}` - Network accessline 211
- **CryptoQuant API**: `https://api.cryptoquant.com/v1/` - Network accessline 212
- `GET /btc/exchange-flows/netflow` — Net exchange flow - Auth: API key, free tier available with limited data - **Glassnode API**: `https://api.glassnode.com/v1/metrics/` - Network accessline 213
- Auth: API key, free tier available with limited data - **Glassnode API**: `https://api.glassnode.com/v1/metrics/` - `GET /transactions/transfers_volume_exchanges_net` — Net transfer volume - Network accessline 214
- **Glassnode API**: `https://api.glassnode.com/v1/metrics/`
skills/sentiment-analysis/scripts/keyword_sentiment.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/sentiment-analysis/scripts/sentiment_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 37
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 38
FEAR_GREED_URL = "https://api.alternative.me/fng/" - Network accessline 39
BINANCE_FUTURES_BASE = "https://fapi.binance.com" - Network accessline 664
with httpx.Client(timeout=REQUEST_TIMEOUT) as client:
skills/shredstream/SKILL.md
- Network accessline 57
1. Generate a Solana keypair: `solana-keygen new -o shred_auth.json` 2. Apply at [Jito's form](https://web.miniextensions.com/WV3gZjFwqNqITsMufIEp) with your public key - Network accessline 58
2. Apply at [Jito's form](https://web.miniextensions.com/WV3gZjFwqNqITsMufIEp) with your public key - Network accessline 65
# Clone and build git clone https://github.com/jito-labs/shredstream-proxy.git --recurse-submodules - Network accessline 66
git clone https://github.com/jito-labs/shredstream-proxy.git --recurse-submodules - Network accessline 69
# Run with gRPC enabled (key flag: --grpc-service-port) RUST_LOG=info cargo run --release --bin jito-shredstream-proxy -- shredstream \ --block-engine-url https://mainnet.block-engine.jito.wtf \ - Network accessline 70
RUST_LOG=info cargo run --release --bin jito-shredstream-proxy -- shredstream --block-engine-url https://mainnet.block-engine.jito.wtf - Network accessline 71
--block-engine-url https://mainnet.block-engine.jito.wtf \ - Network accessline 81
docker run -d --name shredstream-proxy --rm --network host -e RUST_LOG=info -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf - Network accessline 82
--network host \ -e RUST_LOG=info \ -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ - Network accessline 83
-e RUST_LOG=info \ -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ -e AUTH_KEYPAIR=/app/shred_auth.json \ - Network accessline 84
-e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ - Network accessline 95
| Parameter | Description | Example | |-----------|-------------|---------| | `BLOCK_ENGINE_URL` | Jito block engine endpoint | `https://mainnet.block-engine.jito.wtf` | - Network accessline 96
|-----------|-------------|---------| | `BLOCK_ENGINE_URL` | Jito block engine endpoint | `https://mainnet.block-engine.jito.wtf` | | `AUTH_KEYPAIR` | Path to whitelisted Solana keypair | `shred_auth.json` | - Network accessline 97
| `BLOCK_ENGINE_URL` | Jito block engine endpoint | `https://mainnet.block-engine.jito.wtf` | - Dangerous shell operationline 110
sudo tcpdump 'udp and dst port 20000' - Network accessline 122
let mut client = ShredstreamProxyClient::connect("http://127.0.0.1:7777").await?; - Network accessline 153
export GRPC_ENDPOINT="https://rabbitstream.ny.shyft.to" - Access to secretsline 154
[Credential-related source omitted] - Access to secretsline 162
[Credential-related source omitted]
skills/shredstream/references/deployment.md
- Network accessline 17
### Software - **Rust toolchain** (for building from source) or Docker - **Solana CLI** (for keypair generation): `sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)"` - Dangerous shell operationline 19
- **Solana CLI** (for keypair generation): `sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)"` - Network accessline 19
- **Solana CLI** (for keypair generation): `sh -c "$(curl -sSfL https://release.anza.xyz/stable/install)"` - Network accessline 51
Check the current IP allowlist at: https://docs.jito.wtf/lowlatencytxnfeed/ - Dangerous shell operationline 56
sudo ufw allow proto udp from <JITO_IP> to any port 20000 - Network accessline 66
git clone https://github.com/jito-labs/shredstream-proxy.git --recurse-submodules - Network accessline 81
Environment=RUST_LOG=info ExecStart=/opt/shredstream/target/release/jito-shredstream-proxy shredstream \ --block-engine-url https://mainnet.block-engine.jito.wtf \ - Network accessline 82
ExecStart=/opt/shredstream/target/release/jito-shredstream-proxy shredstream --block-engine-url https://mainnet.block-engine.jito.wtf - Network accessline 83
--block-engine-url https://mainnet.block-engine.jito.wtf \ - Dangerous shell operationline 97
sudo cp shredstream.service /etc/systemd/system/ - Dangerous shell operationline 98
sudo systemctl daemon-reload - Dangerous shell operationline 99
sudo systemctl enable --now shredstream - Dangerous shell operationline 100
sudo journalctl -u shredstream -f # monitor logs - Network accessline 106
docker run -d --name shredstream --network host --restart unless-stopped -e RUST_LOG=info -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf - Network accessline 108
--restart unless-stopped \ -e RUST_LOG=info \ -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ - Network accessline 109
-e RUST_LOG=info \ -e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ -e AUTH_KEYPAIR=/app/shred_auth.json \ - Network accessline 110
-e BLOCK_ENGINE_URL=https://mainnet.block-engine.jito.wtf \ - Network accessline 131
[env] RUST_LOG = "info" BLOCK_ENGINE_URL = "https://mainnet.block-engine.jito.wtf" - Network accessline 132
RUST_LOG = "info" BLOCK_ENGINE_URL = "https://mainnet.block-engine.jito.wtf" DESIRED_REGIONS = "ny" - Network accessline 133
BLOCK_ENGINE_URL = "https://mainnet.block-engine.jito.wtf" - Dangerous shell operationline 157
sudo tcpdump -i any 'udp and dst port 20000' -c 10 - Dangerous shell operationline 160
sudo tcpdump -i any 'udp and dst port 20000' -w /dev/null 2>&1 | head -1 - Network accessline 188
1. Check keypair is whitelisted (re-apply if needed) 2. Verify UDP port is open: `sudo ufw status | grep 20000` 3. Check Block Engine URL is reachable: `curl -s https://mainnet.block-engine.jito.wtf` - Dangerous shell operationline 189
2. Verify UDP port is open: `sudo ufw status | grep 20000` - Network accessline 189
2. Verify UDP port is open: `sudo ufw status | grep 20000` 3. Check Block Engine URL is reachable: `curl -s https://mainnet.block-engine.jito.wtf` 4. Ensure no NAT between you and the internet - Network accessline 190
3. Check Block Engine URL is reachable: `curl -s https://mainnet.block-engine.jito.wtf`
skills/shredstream/references/proto_reference.md
- Network accessline 3
Source: [jito-labs/mev-protos](https://github.com/jito-labs/mev-protos/blob/master/shredstream.proto)
skills/shredstream/references/providers_compared.md
- Network accessline 21
### Pros - Free during beta (no Jito fees) - Open-source proxy ([jito-labs/shredstream-proxy](https://github.com/jito-labs/shredstream-proxy)) - Network accessline 22
- Free during beta (no Jito fees) - Open-source proxy ([jito-labs/shredstream-proxy](https://github.com/jito-labs/shredstream-proxy)) - Direct from Block Engine — no intermediary - Network accessline 23
- Open-source proxy ([jito-labs/shredstream-proxy](https://github.com/jito-labs/shredstream-proxy)) - Network accessline 36
### Access 1. Generate keypair: `solana-keygen new -o shred_auth.json` 2. Submit public key at: https://web.miniextensions.com/WV3gZjFwqNqITsMufIEp - Network accessline 37
1. Generate keypair: `solana-keygen new -o shred_auth.json` 2. Submit public key at: https://web.miniextensions.com/WV3gZjFwqNqITsMufIEp 3. Wait for approval - Network accessline 38
2. Submit public key at: https://web.miniextensions.com/WV3gZjFwqNqITsMufIEp
skills/shredstream/scripts/parse_shredstream_entries.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 20
1. Run jito-shredstream-proxy with --grpc-service-port 7777 2. Generate Python stubs from jito-labs/mev-protos: git clone https://github.com/jito-labs/mev-protos.git - Network accessline 21
2. Generate Python stubs from jito-labs/mev-protos: git clone https://github.com/jito-labs/mev-protos.git python -m grpc_tools.protoc \\ - Network accessline 22
git clone https://github.com/jito-labs/mev-protos.git
skills/shredstream/scripts/rabbitstream_monitor.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 25
git clone https://github.com/rpcpool/yellowstone-grpc.git - Access to secretsline 50
[Credential-related source omitted] - Access to secretsline 54
[Credential-related source omitted] - Network accessline 100
Args: endpoint: RabbitStream endpoint (without https://). - Network accessline 101
endpoint: RabbitStream endpoint (without https://).
skills/signal-classification/scripts/train_classifier.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/signal-classification/scripts/walk_forward_backtest.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/slippage-modeling/scripts/execution_cost.py
skills/slippage-modeling/scripts/slippage_curve.py
skills/solana-rpc/SKILL.md
- Network accessline 15
RPC = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 17
def rpc_call(method: str, params: list = None) -> dict: resp = httpx.post(RPC, json={ - Network accessline 18
resp = httpx.post(RPC, json={ - Network accessline 252
for i, (method, params) in enumerate(calls) ] resp = httpx.post(RPC, json=payload, timeout=30.0) - Network accessline 253
] resp = httpx.post(RPC, json=payload, timeout=30.0) results = resp.json() - Network accessline 254
resp = httpx.post(RPC, json=payload, timeout=30.0)
skills/solana-rpc/references/error_handling.md
skills/solana-rpc/references/providers.md
- Network accessline 17
[Credential-related source omitted] - Network accessline 18
[Credential-related source omitted] - Network accessline 25
### QuickNode - **URL format**: `https://YOUR_ENDPOINT.solana-mainnet.quiknode.pro/YOUR_KEY` - Network accessline 26
- **URL format**: `https://YOUR_ENDPOINT.solana-mainnet.quiknode.pro/YOUR_KEY` - Network accessline 41
[Credential-related source omitted] - Network accessline 42
[Credential-related source omitted] - Access to secretsline 42
[Credential-related source omitted] - Network accessline 49
### Alchemy - **URL format**: `https://solana-mainnet.g.alchemy.com/v2/YOUR_KEY` - Network accessline 50
- **URL format**: `https://solana-mainnet.g.alchemy.com/v2/YOUR_KEY` - Network accessline 72
For testing only — rate limited, unreliable, no SLA: - `https://api.mainnet-beta.solana.com` - Network accessline 73
- `https://api.mainnet-beta.solana.com` - Network accessline 74
- `https://api.devnet.solana.com` - Network accessline 75
- `https://api.testnet.solana.com` - Network accessline 82
[Credential-related source omitted] - Network accessline 83
[Credential-related source omitted] - Network accessline 85
# For development, also set devnet export SOLANA_DEVNET_URL="https://api.devnet.solana.com" - Network accessline 86
export SOLANA_DEVNET_URL="https://api.devnet.solana.com" - Network accessline 90
import os RPC = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 91
RPC = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com")
skills/solana-rpc/scripts/token_holders.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
RPC_URL = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 53
for attempt in range(3): try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 55
resp = httpx.post(RPC_URL, json=payload, timeout=30.0)
skills/solana-rpc/scripts/wallet_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
RPC_URL = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 60
for attempt in range(3): try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 62
resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 100
resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 197
joined = ",".join(batch) try: resp = httpx.get( - Network accessline 198
try: resp = httpx.get( f"https://api.dexscreener.com/tokens/v1/solana/{joined}", - Network accessline 199
resp = httpx.get( - Network accessline 200
f"https://api.dexscreener.com/tokens/v1/solana/{joined}",
skills/solana-tx-building/SKILL.md
- Network accessline 126
def get_priority_fees(rpc_url: str, accounts: list[str]) -> list[dict]: """Fetch recent prioritization fees for given accounts.""" resp = httpx.post(rpc_url, json={ - Network accessline 127
"""Fetch recent prioritization fees for given accounts.""" resp = httpx.post(rpc_url, json={ "jsonrpc": "2.0", - Network accessline 128
resp = httpx.post(rpc_url, json={ - Network accessline 218
Simulation result with logs and compute units consumed. """ resp = httpx.post(rpc_url, json={ - Network accessline 219
""" resp = httpx.post(rpc_url, json={ "jsonrpc": "2.0", - Network accessline 220
resp = httpx.post(rpc_url, json={ - Network accessline 305
Parsed transaction data. """ resp = httpx.post(rpc_url, json={ - Network accessline 306
""" resp = httpx.post(rpc_url, json={ "jsonrpc": "2.0", - Network accessline 307
resp = httpx.post(rpc_url, json={
skills/solana-tx-building/references/common_instructions.md
- Network accessline 267
cleanupInstruction, and addressLookupTableAddresses. """ resp = httpx.post( - Network accessline 268
""" resp = httpx.post( "https://quote-api.jup.ag/v6/swap-instructions", - Network accessline 269
resp = httpx.post( - Network accessline 270
"https://quote-api.jup.ag/v6/swap-instructions",
skills/solana-tx-building/references/transaction_anatomy.md
skills/solana-tx-building/scripts/build_transfer.py
skills/solana-tx-building/scripts/decode_transaction.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 23
[Credential-related source omitted] - Network accessline 33
DEFAULT_RPC_URL = "https://api.mainnet-beta.solana.com" - Access to secretsline 35
[Credential-related source omitted] - Access to secretsline 88
[Credential-related source omitted] - Network accessline 99
[Credential-related source omitted] - Network accessline 100
[Credential-related source omitted] - Access to secretsline 100
[Credential-related source omitted] - Network accessline 101
[Credential-related source omitted] - Access to secretsline 101
[Credential-related source omitted] - Network accessline 121
try: resp = httpx.post( - Network accessline 122
resp = httpx.post(
skills/solanatracker-api/SKILL.md
- Network accessline 15
[Credential-related source omitted] - Access to secretsline 15
[Credential-related source omitted] - Network accessline 16
BASE = "https://data.solanatracker.io" - Access to secretsline 17
[Credential-related source omitted] - Network accessline 19
# Token info with risk score, pools, holders resp = httpx.get(f"{BASE}/tokens/{mint}", headers=HEADERS) - Network accessline 20
resp = httpx.get(f"{BASE}/tokens/{mint}", headers=HEADERS) - Network accessline 24
# Wallet PnL resp = httpx.get(f"{BASE}/pnl/{wallet}", headers=HEADERS) - Network accessline 25
resp = httpx.get(f"{BASE}/pnl/{wallet}", headers=HEADERS) - Network accessline 199
Raptor is SolanaTracker's self-hosted DEX aggregator: 25+ DEXes, no rate limits, no API key, Yellowstone Jet TPU submission. [GitHub](https://github.com/solanatracker/raptor-binary) | [Docs](https://docs.solanatracker.io/raptor/overview) - Network accessline 240
- `references/raptor_setup.md` — Raptor quick-start reference (full docs in the `raptor-dex` skill) - `references/risk_and_pnl.md` — Risk scoring methodology and PnL calculation details - [docs.solanatracker.io/llms-full.txt](https://docs.s - Network accessline 242
- [docs.solanatracker.io/llms-full.txt](https://docs.solanatracker.io/llms-full.txt) — Complete SolanaTracker documentation (13K+ lines, LLM-optimized) covering Data API, Swap API, Datastream WebSocket, Solana RPC, Yellowstone gRPC, SDK lib
skills/solanatracker-api/references/data_api_endpoints.md
- Network accessline 3
Base URL: `https://data.solanatracker.io` - Network accessline 16
[Credential-related source omitted] - Network accessline 88
[Credential-related source omitted] - Network accessline 89
"https://data.solanatracker.io/chart/TOKEN?type=1m&time_from=1700000000&time_to=1700003600" - Network accessline 184
[Credential-related source omitted] - Network accessline 185
"https://data.solanatracker.io/search?minLiquidity=50000&minRiskScore=5&market=raydium&sortBy=volume&limit=20"
skills/solanatracker-api/references/raptor_setup.md
- Network accessline 8
# Clone the binary repo git clone https://github.com/solanatracker/raptor-binary - Network accessline 9
git clone https://github.com/solanatracker/raptor-binary - Network accessline 12
# Run with minimum required config RPC_URL="https://your-solana-rpc.com" \ - Network accessline 13
RPC_URL="https://your-solana-rpc.com" \ - Network accessline 14
YELLOWSTONE_ENDPOINT="https://your-yellowstone-grpc.com" \ - Network accessline 65
RAPTOR = "http://localhost:8080" - Network accessline 67
resp = httpx.get(f"{RAPTOR}/quote", params={ - Network accessline 82
resp = httpx.post(f"{RAPTOR}/swap", json={ - Possible obfuscationline 101
tx_bytes = base64.b64decode(swap["swapTransaction"]) - Access to secretsline 103
[Credential-related source omitted] - Network accessline 111
resp = httpx.post(f"{RAPTOR}/send-transaction", json={ - Network accessline 122
resp = httpx.get(f"{RAPTOR}/transaction/{result['signature']}") - Network accessline 177
[env] RPC_URL = "https://your-rpc.com" - Network accessline 178
RPC_URL = "https://your-rpc.com" - Network accessline 179
YELLOWSTONE_ENDPOINT = "https://your-yellowstone.com"
skills/solanatracker-api/references/risk_and_pnl.md
- Network accessline 163
[Credential-related source omitted] - Access to secretsline 163
[Credential-related source omitted] - Network accessline 164
"""Analyze first buyers and their outcomes.""" resp = httpx.get( f"https://data.solanatracker.io/first-buyers/{token}", - Network accessline 165
resp = httpx.get( - Network accessline 166
f"https://data.solanatracker.io/first-buyers/{token}", - Access to secretsline 167
[Credential-related source omitted]
skills/solanatracker-api/scripts/token_analysis.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 29
[Credential-related source omitted] - Network accessline 30
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Network accessline 31
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
print(" Get a key at https://www.solanatracker.io/data-api") - Network accessline 39
BASE_URL = "https://data.solanatracker.io" - Access to secretsline 40
[Credential-related source omitted] - Network accessline 58
for attempt in range(3): try: resp = httpx.get( - Network accessline 59
try: resp = httpx.get( f"{BASE_URL}{endpoint}", - Network accessline 60
resp = httpx.get(
skills/solanatracker-api/scripts/wallet_pnl.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 29
[Credential-related source omitted] - Network accessline 30
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Network accessline 31
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
print(" Get a key at https://www.solanatracker.io/data-api") - Network accessline 42
BASE_URL = "https://data.solanatracker.io" - Access to secretsline 43
[Credential-related source omitted] - Network accessline 58
for attempt in range(3): try: resp = httpx.get( - Network accessline 59
try: resp = httpx.get( f"{BASE_URL}{endpoint}", - Network accessline 60
resp = httpx.get(
skills/strategy-framework/scripts/define_strategy.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/strategy-framework/scripts/strategy_scorecard.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/sybil-detection/SKILL.md
- Network accessline 31
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Network accessline 32
[Credential-related source omitted] - Network accessline 33
[Credential-related source omitted] - Network accessline 34
[Credential-related source omitted] - Access to secretsline 34
[Credential-related source omitted]
skills/sybil-detection/references/bundler_detection.md
- Network accessline 40
and distributes to multiple wallets. """ url = f"https://api.helius.xyz/v0/addresses/{token_mint}/transactions" - Network accessline 41
[Credential-related source omitted] - Network accessline 42
[Credential-related source omitted] - Network accessline 43
[Credential-related source omitted] - Access to secretsline 116
[Credential-related source omitted] - Network accessline 117
) -> dict: """Check for bundled transactions via SolanaTracker API.""" url = f"https://data.solanatracker.io/tokens/{token_mint}/bundled" - Network accessline 118
[Credential-related source omitted] - Network accessline 119
[Credential-related source omitted] - Network accessline 120
[Credential-related source omitted] - Access to secretsline 120
[Credential-related source omitted]
skills/sybil-detection/references/clustering_methods.md
skills/sybil-detection/scripts/detect_sybils.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 10
[Credential-related source omitted] - Network accessline 19
[Credential-related source omitted] - Network accessline 20
[Credential-related source omitted] - Access to secretsline 20
[Credential-related source omitted] - Network accessline 21
SOLANA_RPC_URL: Solana RPC endpoint (default: https://api.mainnet-beta.solana.com) - Network accessline 39
[Credential-related source omitted] - Access to secretsline 39
[Credential-related source omitted] - Network accessline 40
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" ) - Network accessline 41
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 68
"params": [token_mint], } resp = httpx.post(rpc_url, json=payload, timeout=15) - Network accessline 69
} resp = httpx.post(rpc_url, json=payload, timeout=15) resp.raise_for_status() - Network accessline 70
resp = httpx.post(rpc_url, json=payload, timeout=15) - Network accessline 103
"params": [token_account, {"encoding": "jsonParsed"}], } resp = httpx.post(rpc_url, json=payload, timeout=15) - Network accessline 104
} resp = httpx.post(rpc_url, json=payload, timeout=15) if resp.status_code != 200: - Network accessline 105
resp = httpx.post(rpc_url, json=payload, timeout=15) - Network accessline 130
url = f"https://api.helius.xyz/v0/addresses/{wallet}/transactions" try: resp = httpx.get( - Network accessline 131
try: resp = httpx.get( url, - Network accessline 132
resp = httpx.get( - Network accessline 170
url = f"https://api.helius.xyz/v0/addresses/{token_mint}/transactions" try: resp = httpx.get( - Network accessline 171
try: resp = httpx.get( url, - Network accessline 172
resp = httpx.get( - Access to secretsline 707
[Credential-related source omitted] - Access to secretsline 708
[Credential-related source omitted] - Access to secretsline 709
[Credential-related source omitted] - Access to secretsline 710
[Credential-related source omitted] - Access to secretsline 715
[Credential-related source omitted]
skills/sybil-detection/scripts/funding_tracer.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 10
[Credential-related source omitted] - Network accessline 19
[Credential-related source omitted] - Network accessline 20
[Credential-related source omitted] - Access to secretsline 20
[Credential-related source omitted] - Network accessline 21
SOLANA_RPC_URL: Solana RPC endpoint (default: https://api.mainnet-beta.solana.com) - Network accessline 38
[Credential-related source omitted] - Access to secretsline 38
[Credential-related source omitted] - Network accessline 39
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" ) - Network accessline 40
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 96
url = f"https://api.helius.xyz/v0/addresses/{wallet}/transactions" try: resp = httpx.get( - Network accessline 97
try: resp = httpx.get( url, - Network accessline 98
resp = httpx.get( - Access to secretsline 479
[Credential-related source omitted] - Access to secretsline 484
[Credential-related source omitted] - Access to secretsline 485
[Credential-related source omitted] - Access to secretsline 486
[Credential-related source omitted] - Access to secretsline 491
[Credential-related source omitted]
skills/ta-lib/SKILL.md
- Dangerous shell operationline 30
sudo apt-get install -y ta-lib - Network accessline 33
# From source (any platform) wget https://github.com/ta-lib/ta-lib/releases/download/v0.6.4/ta-lib-0.6.4-src.tar.gz - Network accessline 34
wget https://github.com/ta-lib/ta-lib/releases/download/v0.6.4/ta-lib-0.6.4-src.tar.gz - Dangerous shell operationline 38
make && sudo make install
skills/ta-lib/scripts/compute_indicators.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/ta-lib/scripts/pattern_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/tax-liability-tracking/scripts/tax_tracker.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/tax-loss-harvesting/scripts/harvest_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/token-economics/references/supply_analysis.md
skills/token-economics/scripts/supply_modeler.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/token-economics/scripts/tokenomics_analyzer.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 33
COINGECKO_BASE = "https://api.coingecko.com/api/v3" - Network accessline 229
for attempt in range(3): try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 230
try: resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) if resp.status_code == 429: - Network accessline 231
resp = httpx.get(url, params=params, timeout=REQUEST_TIMEOUT) - Network accessline 237
raise ValueError( f"Token '{token_id}' not found on CoinGecko. " f"Check the ID at https://www.coingecko.com/en/coins/{token_id}" - Network accessline 238
f"Token '{token_id}' not found on CoinGecko. " f"Check the ID at https://www.coingecko.com/en/coins/{token_id}" ) - Network accessline 239
f"Check the ID at https://www.coingecko.com/en/coins/{token_id}" - Network accessline 261
url = f"{COINGECKO_BASE}/search" try: resp = httpx.get(url, params={"query": query}, timeout=REQUEST_TIMEOUT) - Network accessline 262
try: resp = httpx.get(url, params={"query": query}, timeout=REQUEST_TIMEOUT) resp.raise_for_status() - Network accessline 263
resp = httpx.get(url, params={"query": query}, timeout=REQUEST_TIMEOUT)
skills/token-holder-analysis/SKILL.md
- Network accessline 16
[Credential-related source omitted] - Access to secretsline 17
[Credential-related source omitted] - Network accessline 18
[Credential-related source omitted] - Network accessline 20
# Or using SolanaTracker for holder + risk data ST_KEY = os.getenv("SOLANATRACKER_API_KEY", "") ST = "https://data.solanatracker.io" - Access to secretsline 21
[Credential-related source omitted] - Network accessline 22
ST = "https://data.solanatracker.io" - Network accessline 24
# Get top holders via RPC def get_top_holders(mint: str) -> list[dict]: resp = httpx.post(HELIUS, json={ - Network accessline 25
def get_top_holders(mint: str) -> list[dict]: resp = httpx.post(HELIUS, json={ "jsonrpc": "2.0", "id": 1, - Network accessline 26
resp = httpx.post(HELIUS, json={
skills/token-holder-analysis/references/data_sources.md
- Network accessline 46
[Credential-related source omitted] - Network accessline 47
[Credential-related source omitted] - Network accessline 67
# Top 100 holders resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/holders/top", headers=HEADERS) - Network accessline 68
resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/holders/top", headers=HEADERS) - Network accessline 71
# Top 20 (lighter call) resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/holders/top20", headers=HEADERS) - Network accessline 72
resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/holders/top20", headers=HEADERS) - Network accessline 74
# Bundler detection resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/bundlers", headers=HEADERS) - Network accessline 75
resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}/bundlers", headers=HEADERS) - Network accessline 78
# First buyers with PnL resp = httpx.get(f"https://data.solanatracker.io/first-buyers/{mint}", headers=HEADERS) - Network accessline 79
resp = httpx.get(f"https://data.solanatracker.io/first-buyers/{mint}", headers=HEADERS) - Network accessline 82
# Full token info with risk score resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}", headers=HEADERS) - Network accessline 83
resp = httpx.get(f"https://data.solanatracker.io/tokens/{mint}", headers=HEADERS) - Network accessline 93
# Token security info resp = httpx.get("https://public-api.birdeye.so/defi/token_security", - Network accessline 94
resp = httpx.get("https://public-api.birdeye.so/defi/token_security",
skills/token-holder-analysis/references/insider_patterns.md
- Network accessline 74
[Credential-related source omitted] - Access to secretsline 74
[Credential-related source omitted] - Network accessline 75
"""Check deployer's track record.""" resp = httpx.get( f"https://data.solanatracker.io/tokens/deployer/{deployer}", - Network accessline 76
resp = httpx.get( - Network accessline 77
f"https://data.solanatracker.io/tokens/deployer/{deployer}", - Access to secretsline 78
[Credential-related source omitted] - Network accessline 112
""" sources = [] resp = httpx.get( - Network accessline 113
sources = [] resp = httpx.get( f"https://api.helius.xyz/v0/addresses/{wallet}/transactions", - Network accessline 114
resp = httpx.get( - Network accessline 115
f"https://api.helius.xyz/v0/addresses/{wallet}/transactions",
skills/token-holder-analysis/scripts/analyze_holders.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 18
[Credential-related source omitted] - Network accessline 30
RPC_URL = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Access to secretsline 31
[Credential-related source omitted] - Network accessline 43
for attempt in range(3): try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 44
try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) if resp.status_code == 429: - Network accessline 45
resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 65
return None try: resp = httpx.get( - Network accessline 66
try: resp = httpx.get( f"https://data.solanatracker.io{endpoint}", - Network accessline 67
resp = httpx.get( - Network accessline 68
f"https://data.solanatracker.io{endpoint}", - Access to secretsline 363
[Credential-related source omitted]
skills/token-holder-analysis/scripts/concentration_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 29
RPC_URL = os.getenv("SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com") - Network accessline 47
for attempt in range(3): try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) - Network accessline 48
try: resp = httpx.post(RPC_URL, json=payload, timeout=30.0) if resp.status_code == 429: - Network accessline 49
resp = httpx.post(RPC_URL, json=payload, timeout=30.0)
skills/trade-accounting/scripts/trading_ledger.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/trade-journal/scripts/journal_analyzer.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/trade-journal/scripts/trade_logger.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/trading-visualization/scripts/chart_generator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/trading-visualization/scripts/performance_report.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vectorbt/scripts/backtest_example.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vectorbt/scripts/parameter_sweep.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/volatility-modeling/scripts/estimate_volatility.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 30
[Credential-related source omitted] - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 120
[Credential-related source omitted] - Network accessline 134
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 141
[Credential-related source omitted] - Network accessline 143
try: resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Network accessline 144
resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Access to secretsline 480
[Credential-related source omitted]
skills/volatility-modeling/scripts/vol_forecast.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Access to secretsline 31
[Credential-related source omitted] - Access to secretsline 86
[Credential-related source omitted] - Access to secretsline 87
[Credential-related source omitted] - Network accessline 101
url = "https://public-api.birdeye.so/defi/ohlcv" - Access to secretsline 103
[Credential-related source omitted] - Network accessline 105
try: resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Network accessline 106
resp = httpx.get(url, params=params, headers=headers, timeout=30.0) - Access to secretsline 515
[Credential-related source omitted]
skills/walk-forward-validation/scripts/overfit_detector.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/walk-forward-validation/scripts/walk_forward.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/wallet-profiling/SKILL.md
- Network accessline 127
[Credential-related source omitted] - Network accessline 128
[Credential-related source omitted] - Access to secretsline 128
[Credential-related source omitted] - Network accessline 129
resp = httpx.get(url, headers=headers) - Access to secretsline 208
[Credential-related source omitted] - Access to secretsline 219
[Credential-related source omitted] - Access to secretsline 247
[Credential-related source omitted]
skills/wallet-profiling/scripts/compare_wallets.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 14
[Credential-related source omitted] - Access to secretsline 26
[Credential-related source omitted] - Access to secretsline 121
[Credential-related source omitted] - Access to secretsline 126
[Credential-related source omitted] - Network accessline 137
url = f"https://data.solanatracker.io/pnl/{wallet}" - Access to secretsline 138
[Credential-related source omitted] - Network accessline 140
try: resp = httpx.get(url, headers=headers, timeout=30) - Network accessline 141
resp = httpx.get(url, headers=headers, timeout=30) - Access to secretsline 439
[Credential-related source omitted] - Access to secretsline 440
[Credential-related source omitted] - Access to secretsline 447
[Credential-related source omitted]
skills/wallet-profiling/scripts/profile_wallet.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 14
[Credential-related source omitted] - Access to secretsline 27
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Access to secretsline 85
[Credential-related source omitted] - Network accessline 96
url = f"https://data.solanatracker.io/pnl/{wallet}" - Access to secretsline 97
[Credential-related source omitted] - Network accessline 99
try: resp = httpx.get(url, headers=headers, timeout=30) - Network accessline 100
resp = httpx.get(url, headers=headers, timeout=30) - Access to secretsline 630
[Credential-related source omitted] - Access to secretsline 632
[Credential-related source omitted] - Access to secretsline 635
[Credential-related source omitted]
skills/wash-sale-detection/scripts/wash_sale_scanner.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/whale-tracking/SKILL.md
- Network accessline 193
# Webhook configuration for whale wallet monitoring webhook_config = { "webhookURL": "https://your-server.com/whale-alerts", - Network accessline 194
webhook_config = { "webhookURL": "https://your-server.com/whale-alerts", "transactionTypes": ["SWAP", "TRANSFER"], - Network accessline 195
"webhookURL": "https://your-server.com/whale-alerts",
skills/whale-tracking/references/data_sources.md
- Network accessline 23
[Credential-related source omitted] - Network accessline 68
[Credential-related source omitted] - Network accessline 73
{ "webhookURL": "https://your-server.com/whale-webhook", - Network accessline 74
"webhookURL": "https://your-server.com/whale-webhook", - Network accessline 98
[Credential-related source omitted] - Network accessline 126
GET https://data.solanatracker.io/top-traders/{mint} - Access to secretsline 129
[Credential-related source omitted] - Network accessline 152
GET https://data.solanatracker.io/pnl/{wallet} - Network accessline 158
GET https://data.solanatracker.io/wallet/{wallet}/trades - Network accessline 166
GET https://data.solanatracker.io/top-traders/all?period=7d&limit=50 - Network accessline 178
GET https://public-api.birdeye.so/defi/v2/tokens/top_traders - Access to secretsline 181
[Credential-related source omitted] - Network accessline 194
GET https://public-api.birdeye.so/defi/v2/tokens/holder
skills/whale-tracking/scripts/track_whales.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Network accessline 36
[Credential-related source omitted] - Access to secretsline 36
[Credential-related source omitted] - Network accessline 37
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" ) - Network accessline 38
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 39
[Credential-related source omitted] - Network accessline 40
[Credential-related source omitted] - Network accessline 41
[Credential-related source omitted] - Access to secretsline 41
[Credential-related source omitted] - Access to secretsline 42
[Credential-related source omitted] - Network accessline 43
else "" ) HELIUS_API_BASE = "https://api.helius.xyz/v0" - Network accessline 45
HELIUS_API_BASE = "https://api.helius.xyz/v0" - Access to secretsline 213
[Credential-related source omitted] - Access to secretsline 217
[Credential-related source omitted] - Access to secretsline 525
[Credential-related source omitted] - Access to secretsline 527
[Credential-related source omitted] - Access to secretsline 528
[Credential-related source omitted] - Network accessline 533
with httpx.Client() as client:
skills/whale-tracking/scripts/whale_alerts.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 16
[Credential-related source omitted] - Network accessline 37
[Credential-related source omitted] - Access to secretsline 37
[Credential-related source omitted] - Network accessline 38
SOLANA_RPC_URL = os.getenv( "SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" ) - Network accessline 39
"SOLANA_RPC_URL", "https://api.mainnet-beta.solana.com" - Network accessline 41
HELIUS_API_BASE = "https://api.helius.xyz/v0" - Access to secretsline 95
[Credential-related source omitted] - Access to secretsline 100
[Credential-related source omitted] - Access to secretsline 467
[Credential-related source omitted] - Access to secretsline 469
[Credential-related source omitted] - Network accessline 481
with httpx.Client() as client: - Access to secretsline 577
[Credential-related source omitted] - Access to secretsline 579
[Credential-related source omitted]
skills/yellowstone-grpc/SKILL.md
- Network accessline 41
# Generate Python stubs from proto files git clone https://github.com/rpcpool/yellowstone-grpc.git - Network accessline 42
git clone https://github.com/rpcpool/yellowstone-grpc.git - Network accessline 69
export GRPC_ENDPOINT="https://grpc.ny.shyft.to" # your provider endpoint - Access to secretsline 70
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Access to secretsline 81
[Credential-related source omitted]
skills/yellowstone-grpc/references/proto_reference.md
- Network accessline 3
Source: [rpcpool/yellowstone-grpc](https://github.com/rpcpool/yellowstone-grpc/blob/master/yellowstone-grpc-proto/proto/geyser.proto)
skills/yellowstone-grpc/references/providers.md
- Network accessline 11
- **Historical replay**: Up to 150 slots lookback - **Unique feature**: RabbitStream — pre-execution shred-level data (transactions before confirmation, no metadata) - **DeFi parsing examples**: [github.com/Shyft-to/solana-defi](https://git - Network accessline 12
- **Unique feature**: RabbitStream — pre-execution shred-level data (transactions before confirmation, no metadata) - **DeFi parsing examples**: [github.com/Shyft-to/solana-defi](https://github.com/Shyft-to/solana-defi) — Raydium, PumpFun, - Network accessline 13
- **DeFi parsing examples**: [github.com/Shyft-to/solana-defi](https://github.com/Shyft-to/solana-defi) — Raydium, PumpFun, Orca, Meteora parsers - Network accessline 14
- **Connection management**: Clear stale connections via `https://grpc.{region}.shyft.to/clear-connections?xtoken=YOUR_TOKEN` - Access to secretsline 95
[Credential-related source omitted] - Access to secretsline 96
[Credential-related source omitted]
skills/yellowstone-grpc/scripts/monitor_wallets.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 19
Environment Variables: GRPC_ENDPOINT: Your Yellowstone gRPC endpoint (e.g., https://grpc.ny.shyft.to) - Network accessline 20
GRPC_ENDPOINT: Your Yellowstone gRPC endpoint (e.g., https://grpc.ny.shyft.to) - Access to secretsline 43
[Credential-related source omitted]
skills/yellowstone-grpc/scripts/subscribe_transactions.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 15
Environment Variables: GRPC_ENDPOINT: Your Yellowstone gRPC endpoint (e.g., https://grpc.ny.shyft.to) - Network accessline 16
GRPC_ENDPOINT: Your Yellowstone gRPC endpoint (e.g., https://grpc.ny.shyft.to) - Network accessline 22
git clone https://github.com/rpcpool/yellowstone-grpc.git - Access to secretsline 47
[Credential-related source omitted] - Network accessline 49
[Credential-related source omitted] - Network accessline 50
[Credential-related source omitted] - Network accessline 51
print(" export GRPC_ENDPOINT='https://grpc.ny.shyft.to'") - Access to secretsline 52
[Credential-related source omitted] - Network accessline 106
print() print("Generate them first:") print(" git clone https://github.com/rpcpool/yellowstone-grpc.git") - Network accessline 107
print("Generate them first:") print(" git clone https://github.com/rpcpool/yellowstone-grpc.git") print(" mkdir -p generated") - Network accessline 108
print(" git clone https://github.com/rpcpool/yellowstone-grpc.git")
skills/yield-analysis/SKILL.md
- Network accessline 232
# All yield pools pools = httpx.get("https://yields.llama.fi/pools").json() - Network accessline 233
pools = httpx.get("https://yields.llama.fi/pools").json() - Network accessline 246
- Raydium: `https://api-v3.raydium.io/pools/info/list` - Network accessline 247
- Orca: `https://api.mainnet.orca.so/v1/whirlpool/list`
skills/yield-analysis/scripts/yield_calculator.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/yield-analysis/scripts/yield_comparison.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 36
DEFILLAMA_YIELDS_URL = "https://yields.llama.fi/pools" - Network accessline 160
try: response = httpx.get(DEFILLAMA_YIELDS_URL, timeout=REQUEST_TIMEOUT) - Network accessline 161
response = httpx.get(DEFILLAMA_YIELDS_URL, timeout=REQUEST_TIMEOUT)
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 500 facts
- Executable script in code of a file that runsbacktrader/scripts/backtest_strategy.py:1High confidence
- Executable script in code of a file that runsbacktrader/scripts/bracket_orders.py:1High confidence
- Network access in prose of the SKILL.mdbirdeye-api/SKILL.md:16Low confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valuebirdeye-api/SKILL.md:19Low confidence
- Access to secrets in code of the SKILL.md: a variable, placeholder or call, not a stored valuebirdeye-api/SKILL.md:33Low confidence
- Access to secrets in code of the SKILL.mdbirdeye-api/SKILL.md:34High confidence
- Network access in code of the SKILL.mdbirdeye-api/SKILL.md:36High confidence
- Network access in code of the SKILL.mdbirdeye-api/SKILL.md:37High confidence
- Network access in code of the SKILL.mdbirdeye-api/SKILL.md:38High confidence
- Network access in prose of the SKILL.mdbirdeye-api/SKILL.md:48Low confidence
- Network access in prose of documentationbirdeye-api/references/birdeye_endpoints.md:3Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:46Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:55Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:66Low confidence
- Network access in code of documentationbirdeye-api/references/error_handling.md:68Low confidence
- Network access in code of documentationbirdeye-api/references/error_handling.md:70Low confidence
- Network access in code of documentationbirdeye-api/references/error_handling.md:72Low confidence
- Network access in code of documentationbirdeye-api/references/error_handling.md:74Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:150Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:169Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:186Low confidence
- Access to secrets in code of documentationbirdeye-api/references/error_handling.md:197Low confidence
- Executable script in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:1High confidence
- Access to secrets in prose of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:16Low confidence
- Network access in prose of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:17Low confidence
- Network access in prose of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:18Low confidence
- Network access in prose of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:19Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuebirdeye-api/scripts/fetch_ohlcv.py:33Low confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:34High confidence
- Access to secrets in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:34High confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:35High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuebirdeye-api/scripts/fetch_ohlcv.py:35Low confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:36High confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:45High confidence
- Access to secrets in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:47High confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:87High confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:250High confidence
- Network access in code of a file that runsbirdeye-api/scripts/fetch_ohlcv.py:251High confidence
- Executable script in code of a file that runsbirdeye-api/scripts/token_screener.py:1High confidence
- Access to secrets in prose of a file that runsbirdeye-api/scripts/token_screener.py:16Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuebirdeye-api/scripts/token_screener.py:29Low confidence
- Access to secrets in code of a file that runsbirdeye-api/scripts/token_screener.py:30High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuebirdeye-api/scripts/token_screener.py:31Low confidence
- Network access in code of a file that runsbirdeye-api/scripts/token_screener.py:38High confidence
- Access to secrets in code of a file that runsbirdeye-api/scripts/token_screener.py:40High confidence
- Network access in code of a file that runsbirdeye-api/scripts/token_screener.py:62High confidence
- Network access in code of a file that runsbirdeye-api/scripts/token_screener.py:63High confidence
- Network access in code of a file that runsbirdeye-api/scripts/token_screener.py:64High confidence
- Network access in code of the SKILL.mdcoingecko-api/SKILL.md:44High confidence
- Network access in code of the SKILL.mdcoingecko-api/SKILL.md:45High confidence
and 450 more
Only the first 500 facts are listed.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/backtrader/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/backtrader/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/backtrader/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/backtrader/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/backtrader/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.