Hosted MCP server · #44 most used on Smithery
backtesting-arena
info-6d0w/backtesting-arena
Connect directly: https://tradingstrategies.work/api/mcp Quantitative crypto backtesting & Bitcoin market-regime analytics. 73 MCP tools: honest look-ahead-aware backtest validation with Deflated-Sharpe-Ratio correction, point-in-time 10-indicator Bitcoin cycle scoring, macro-regime composites, Edge-Library filter effects, 22 on-chain BRK series (since 2009), altcoin screener, sentiment, "buy now or wait?" decision-math, conditional historical-analog base rates & live subscriptions. Core outputs are not reproducible from public OHLCV/market-data APIs. Covers crypto plus stocks/ETFs/commodities/forex. Free tier, no credit card.
- Uses
- 9.3k
- Tools
- 65
- Runs
- Hosted
- Listed
- 4mo ago
Get started
Add it to your agent
npx -y @smithery/cli@latest install info-6d0w/backtesting-arena --client claudeSwap --client claude for cursor, vscode, windsurf or another client. The CLI asks for any required settings.
claude mcp add --transport http backtesting-arena https://server.smithery.ai/info-6d0w/backtesting-arena/mcpA hosted server: nothing to install. Run /mcp in Claude Code to sign in if it asks.
[mcp_servers.backtesting-arena]
url = "https://server.smithery.ai/info-6d0w/backtesting-arena/mcp"Add to ~/.codex/config.toml.
{
"mcpServers": {
"backtesting-arena": {
"url": "https://server.smithery.ai/info-6d0w/backtesting-arena/mcp"
}
}
}Add to ~/.cursor/mcp.json.
{
"servers": {
"backtesting-arena": {
"type": "http",
"url": "https://server.smithery.ai/info-6d0w/backtesting-arena/mcp"
}
}
}Add to .vscode/mcp.json.
gemini mcp add --transport http backtesting-arena https://server.smithery.ai/info-6d0w/backtesting-arena/mcpSaved to .gemini/settings.json.
What it can do
65 tools
arena_get_pulse1 paramDaily 0-100 heat score for the Bitcoin market, aggregated from 8 components (BTC-Cycle, F&G, Altcoin-Season, Bullmarket-Ampel, Funding-Ra…
Daily 0-100 heat score for the Bitcoin market, aggregated from 8 components (BTC-Cycle, F&G, Altcoin-Season, Bullmarket-Ampel, Funding-Rate, Hash-Ribbons, Mayer-Multiple, MVRV-Z). Returns score, band label, color, 7d/30d delta, verdict, components breakdown. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_cycle1 paramBitcoin cycle position — where are we in the BTC cycle? Latest snapshot with point-in-time 10-indicator aggregation (MVRV-Z, NUPL, Puell,…
Bitcoin cycle position — where are we in the BTC cycle? Latest snapshot with point-in-time 10-indicator aggregation (MVRV-Z, NUPL, Puell, Pi-Cycle, Funding, Hash-Ribbons, Power-Law, Rainbow, F&G, Mayer). Returns raw + adjusted score (-3..+3 Z-Score), phase classification, signal enum. Point-in-time scored — not reconstructable from a generic price API. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_altcoin_season1 paramDaily Altcoin-Season indicator (v7 Native-Filter methodology). Returns BTC-Dominance, Alt-Dominance, 4 Layer-1 signals (USDT.D, USDC.D, B…
Daily Altcoin-Season indicator (v7 Native-Filter methodology). Returns BTC-Dominance, Alt-Dominance, 4 Layer-1 signals (USDT.D, USDC.D, BTC-DOM, ETH-DOM), overall color (red/amber/green) + Top-50 CoinGecko snapshot. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_fear_greed1 paramCrypto Fear & Greed Index from alternative.me with historical context. Returns current value 0-100, classification (extreme fear/fear/neu…
Crypto Fear & Greed Index from alternative.me with historical context. Returns current value 0-100, classification (extreme fear/fear/neutral/greed/extreme greed), recent history, plus arena-specific cadence cache for change-detection. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_bullmarket_ampel1 paramBitcoin Bullmarket-Ampel current state (0-5 active stages). Returns active_count, stage_history, stage breakdown. Higher count = more bul…
Bitcoin Bullmarket-Ampel current state (0-5 active stages). Returns active_count, stage_history, stage breakdown. Higher count = more bull-market signals firing. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_funding_rate1 paramLatest aggregate Binance Perpetual Funding Rate (8h cadence). Returns value, 30d moving average and Z-Score. Positive = longs pay shorts …
Latest aggregate Binance Perpetual Funding Rate (8h cadence). Returns value, 30d moving average and Z-Score. Positive = longs pay shorts (bullish bias), negative = shorts pay longs (bearish bias). [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_hash_ribbons1 paramLatest Hash Ribbons indicator (Charles Edwards). Returns 30d and 60d hashrate moving averages — when 30d > 60d after a capitulation, sign…
Latest Hash Ribbons indicator (Charles Edwards). Returns 30d and 60d hashrate moving averages — when 30d > 60d after a capitulation, signals miner recovery (bullish). [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_mayer_multiple1 paramLatest Mayer Multiple (BTC-Price ÷ 200-day SMA). Trace Mayer (2014): <0.7 = capitulation, 0.7-1.5 = neutral, 1.5-2.4 = bullish, >2.4 = eu…
Latest Mayer Multiple (BTC-Price ÷ 200-day SMA). Trace Mayer (2014): <0.7 = capitulation, 0.7-1.5 = neutral, 1.5-2.4 = bullish, >2.4 = euphoria. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_macro_regime1 paramDaily Macro Regime snapshot from 18 components in 6 tiers (Liquidity 30%, Financial Conditions 20%, Risk Appetite 15%, Crypto Liquidity 1…
Daily Macro Regime snapshot from 18 components in 6 tiers (Liquidity 30%, Financial Conditions 20%, Risk Appetite 15%, Crypto Liquidity 10%, Business Cycle 15%, Inflation/Real Rates 10%). FRED-sourced. Returns composite_score (0-100), regime_label (risk_off/neutral/risk_on_leaning/risk_on), cycle_phase_label (contraction/early_expansion/mid_expansion/late_expansion), matrix_quadrant (sweet_spot/late_cycle_warning/crisis/recovery), tier_scores (6 sub-scores), components (flat key/value of all 18)
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_btc_macro_correlations1 paramPre-aggregated weekly correlations between Bitcoin and 13 macro components (Fed Net Liquidity, VIX, DXY, Real Yield 10Y, NFCI, HY Credit …
Pre-aggregated weekly correlations between Bitcoin and 13 macro components (Fed Net Liquidity, VIX, DXY, Real Yield 10Y, NFCI, HY Credit Spread, Yield Curve, etc.) + 4 asset classes (Gold, SPX, Nasdaq, DXY). Returns quadrant_performance (BTC return stats per 2D-matrix quadrant — annualized return, vol, max drawdown, positive-period%), component_correlations (Pearson 90d/1y/5y per macro component + quartile-performance), asset_correlations (Pearson per window + per quadrant), current_quadrant. Hi
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_btc_market_structure1 paramDaily Bitcoin market structure from 1000-bar Phantomflow adaptation (BTCUSDT 1d). Returns current_trend (up/down/sideways), last trend ch…
Daily Bitcoin market structure from 1000-bar Phantomflow adaptation (BTCUSDT 1d). Returns current_trend (up/down/sideways), last trend change timestamp, counts of waves + fractals, and last-5 fractals on each side (up = pivot highs, down = pivot lows). Educational analysis of price action — no signal, no recommendation. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_iv_snapshot2 paramsLatest Deribit volatility snapshot for BTC or ETH. Returns DVOL (30d vol index), constant-maturity ATM implied vol (30/60/90/180d via opt…
Latest Deribit volatility snapshot for BTC or ETH. Returns DVOL (30d vol index), constant-maturity ATM implied vol (30/60/90/180d via options chain), 30d realized vol, and vol risk premium (IV - RV). Useful for position sizing, options strategies, and market regime assessment. Backfill: BTC from 2021-04-01, ETH from 2022-02-15. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
currency | string | Currency to fetch IV snapshot for |
arena_get_pulse_history2 paramsHistorical daily Arena-Pulse scores (date + score + band). Returned in ascending date order. Range capped by tier. [Free 30d / Pro 365d /…
Historical daily Arena-Pulse scores (date + score + band). Returned in ascending date order. Range capped by tier. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Number of days back from today (auto-clamped by tier — Free=30, Pro=365, Power=3650). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_cycle_history2 paramsHistorical daily BTC-Cycle adj_score + z_adj_score series. Tier-capped range. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Number of days back from today (auto-clamped by tier — Free=30, Pro=365, Power=3650). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_altcoin_season_history2 paramsHistorical daily Altcoin-Season snapshots (overall_color, BTC/Alt/Stable dominance, BTC price). Tier-capped. [Free 30d / Pro 365d / Power…
Historical daily Altcoin-Season snapshots (overall_color, BTC/Alt/Stable dominance, BTC price). Tier-capped. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Number of days back from today (auto-clamped by tier — Free=30, Pro=365, Power=3650). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_funding_rate_history2 paramsHistorical Binance Perpetual aggregated funding rates (8h cadence). Tier-capped. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Number of days back from today (auto-clamped by tier — Free=30, Pro=365, Power=3650). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_mayer_multiple_history2 paramsHistorical Mayer-Multiple values (BTC-Price ÷ 200d SMA). Tier-capped. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Number of days back from today (auto-clamped by tier — Free=30, Pro=365, Power=3650). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_list_onchain_series1 paramLists all available Bitcoin Research Kit (BRK) on-chain series (21 metrics like MVRV, NUPL, SOPR, Realized-Price, Mayer, Puell, STH/LTH S…
Lists all available Bitcoin Research Kit (BRK) on-chain series (21 metrics like MVRV, NUPL, SOPR, Realized-Price, Mayer, Puell, STH/LTH SOPR, Hash-Ribbons). Returns id + label + group. Use the id with arena_get_onchain_latest / _history. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_onchain_latest2 paramsLatest value of a BRK on-chain series. series_id comes from arena_list_onchain_series. Returns { series_id, metric_name, date, value }. […
Latest value of a BRK on-chain series. series_id comes from arena_list_onchain_series. Returns { series_id, metric_name, date, value }. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
series_id | string | BRK series id, e.g. 'mvrv', 'sopr', 'realized_price'. |
arena_get_onchain_history3 paramsHistorical time series for a BRK on-chain metric. Date range auto-capped by tier. [Free 30d / Pro 365d / Power unlimited]
| Parameter | Type | Description |
|---|---|---|
days | integer | Days back from today (clamped by tier). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
series_id | string | BRK series id, e.g. 'mvrv'. |
arena_get_max_pain2 paramsLast finalized Deribit BTC options expiry: max_pain_strike, spot_at_expiry, %-diff, put_call_ratio, notional. Plus up to 10 upcoming expi…
Last finalized Deribit BTC options expiry: max_pain_strike, spot_at_expiry, %-diff, put_call_ratio, notional. Plus up to 10 upcoming expiries with current live max-pain levels and days_to_expiry. Cron collects daily 02:00 UTC from Deribit Public API. [Free tier]
| Parameter | Type | Description |
|---|---|---|
market | string | Options market. Currently only 'DERIBIT_BTC' (default). IBIT planned. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_max_pain_history3 paramsHistorical finalized Deribit BTC options expiries. Each row: expiry_date, max_pain_strike, spot_at_expiry, %-diff, P/C ratio, notional, q…
Historical finalized Deribit BTC options expiries. Each row: expiry_date, max_pain_strike, spot_at_expiry, %-diff, P/C ratio, notional, quarterly/monthly flag. Useful for backtesting Max Pain theory. Days auto-capped by tier: Pro 365d, Power 3650d. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
days | integer | Days back from today (default 90, capped by tier). |
market | string | Options market. Currently only 'DERIBIT_BTC' (default). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_drift_log2 paramsDaily drift log comparing bgeometrics (legacy) vs BRK (canonical-soon) pilot metric pairs. Returns mean / max / outlier counts per pair f…
Daily drift log comparing bgeometrics (legacy) vs BRK (canonical-soon) pilot metric pairs. Returns mean / max / outlier counts per pair for the requested window. Used by BRK-migration review (every 4 weeks). [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
days | integer | Window size in days (default 90, max 365). |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_list_strategies4 paramsLists all backtest strategies (key, label, plan, supported asset classes, primary indicators). Filterable by asset class and plan. Use th…
Lists all backtest strategies (key, label, plan, supported asset classes, primary indicators). Filterable by asset class and plan. Use this before calling arena_run_backtest to discover valid strategy names. [Free tier]
| Parameter | Type | Description |
|---|---|---|
lang | string | Localized names/taglines. Default 'en'. |
plan | string | Filter to strategies of this plan tier. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
asset_class | string | Filter to strategies supporting this asset class. |
arena_list_universes1 paramLists all asset universes (BTC, top-10 crypto, top-50 crypto, stocks-top-10, etc.) — the underlying pair-sets used by custom-report and u…
Lists all asset universes (BTC, top-10 crypto, top-50 crypto, stocks-top-10, etc.) — the underlying pair-sets used by custom-report and universe-backtest endpoints. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_universe2 paramsDetail view of one universe, including pair list. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
universe_id | string | Universe id, e.g. 'top-10-crypto'. |
arena_get_strategy_insights7 paramsAggregated backtest performance per (strategy × interval) cell. If `strategy` AND `interval` provided, returns detail with per-asset brea…
Aggregated backtest performance per (strategy × interval) cell. If `strategy` AND `interval` provided, returns detail with per-asset breakdown + param variants. Otherwise returns the full matrix (Top-10 cells for Free tier; full for Pro+). [Free Top-10 / Pro+ full]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | Detail mode: interval. |
min_runs | integer | Matrix mode: minimum runs per cell. Default 5. |
strategy | string | Detail mode: strategy key (used together with `interval`). |
asset_type | string | Restrict to one asset class. |
assets_mode | string | 'top10' restricts to top-10 pairs by run-count. |
ref_strategy | string | Benchmark reference. Default 'bh'. |
arena_get_filter_insights1 paramLift analysis of entry filters (200WMA, Altcoin-Season, ATR-Volatility, Bullmarket-Stage) per strategy combo — baseline vs filtered CAGR/…
Lift analysis of entry filters (200WMA, Altcoin-Season, ATR-Volatility, Bullmarket-Stage) per strategy combo — baseline vs filtered CAGR/win-rate/drawdown. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_volatility_insights3 paramsCAGR breakdown by volatility phase (Low / Normal / High) per asset & timeframe. Used to find regime-fit for strategies. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
asset_type | string | |
min_trades | integer | Minimum trades per cell. Default 20. |
arena_get_sentiment2 paramsCrypto sentiment — Fear & Greed, funding-rate, Altcoin-Season and Arena-Pulse aggregated into one multi-source view, plus optional ticker…
Crypto sentiment — Fear & Greed, funding-rate, Altcoin-Season and Arena-Pulse aggregated into one multi-source view, plus optional ticker-level sentiment. Configurable period. [Free tier]
| Parameter | Type | Description |
|---|---|---|
period | string | Aggregation window. Default '7d'. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_strategy_performance6 paramsAggregated backtest performance for ONE specific (strategy, asset, interval) combination. Returns run_count, avg_cagr, avg_win_rate, avg_…
Aggregated backtest performance for ONE specific (strategy, asset, interval) combination. Returns run_count, avg_cagr, avg_win_rate, avg_drawdown, effective_years, and vs_buy_hold comparison (beats_buy_hold, cagr_delta). For multi-strategy overview use arena_get_strategy_insights. Use this to answer 'How does strategy X perform on asset Y?'. [Free tier]
| Parameter | Type | Description |
|---|---|---|
asset | string | Pair / symbol (e.g. BTCUSDT, AAPL.US). Case-insensitive. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | Default '1w'. |
strategy | string | Strategy key (e.g. rsi_sma, golden_cross). See arena_get_strategies for valid keys. |
asset_type | string | Optional asset class filter to disambiguate (e.g. when same pair-name exists in two classes). |
ref_strategy | string | Benchmark reference. Default 'bh' (Buy & Hold). |
arena_get_strategy_filter_effect4 paramsPer-(strategy, asset, interval) filter-effect analysis. Returns baseline-stats (no filters) + each observed filter-variant's stats with c…
Per-(strategy, asset, interval) filter-effect analysis. Returns baseline-stats (no filters) + each observed filter-variant's stats with cagr_delta / drawdown_delta / win_rate_delta vs the time-overlap-matched baseline + best_by_cagr pick + not_applicable_filters list (e.g. altcoin_season excluded on BTC-pair). Based on REAL backtest aggregations — not theoretical 2^5 permutations. Use this to answer 'Which filters would improve my backtest for X on Y?'. [Free tier]
| Parameter | Type | Description |
|---|---|---|
asset | string | Pair / symbol (e.g. BTCUSDT). Case-insensitive. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | Default '1w'. |
strategy | string | Strategy key (see arena_get_strategies). |
arena_get_strategy_performance_by_regime5 paramsHistorical backtest performance for ONE (strategy, asset, interval) combination SPLIT BY macro market regime (sweet_spot / late_cycle_war…
Historical backtest performance for ONE (strategy, asset, interval) combination SPLIT BY macro market regime (sweet_spot / late_cycle_warning / crisis / recovery — classified at each trade's entry date), PLUS a recommendation for the CURRENT live regime. Answers the killer question 'Should I trade this strategy NOW?'. Each regime bucket returns trades, win_rate, avg_pnl_pct, reward_risk_ratio (per-trade mean/stddev, NOT annualized Sharpe), share_of_time_pct and a rating. [Free tier]
| Parameter | Type | Description |
|---|---|---|
asset | string | Pair / symbol (e.g. BTCUSDT, AAPL.US). Case-insensitive. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | Default '1w'. |
strategy | string | Strategy key (e.g. rsi_sma, golden_cross). See arena_get_strategies. |
asset_type | string | Optional asset class filter to disambiguate identical pair-names. |
arena_get_edge_reports4 paramsPlatform-wide aggregated analysis: how each Pro+ entry filter (200 WMA, ATR low/high/expansion, Altcoin Season, Bullmarket confirm/strict…
Platform-wide aggregated analysis: how each Pro+ entry filter (200 WMA, ATR low/high/expansion, Altcoin Season, Bullmarket confirm/strict) affects strategy CAGR — baseline vs. filtered, median across all real backtest runs for a given market. Verdict: helps (Δ>+1pp, ≥30 runs) / neutral / hurts / insufficient_data. Filters evaluated in isolation (no stacking). Also returns baseline_net_cagr / filtered_net_cagr (median CAGR after per-side trading costs; verdict/delta stay gross). [Free tier]
| Parameter | Type | Description |
|---|---|---|
market | string | Asset class to analyze. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
verdict | string | Filter by verdict. Default 'all'. |
strategy | string | Restrict to a single strategy key (e.g. golden_cross). Omit for all strategies. |
arena_get_winners4 paramsPublic Top-100 list of highest-CAGR backtest results across all users (with anonymized usernames). Filterable by asset_class and strategy…
Public Top-100 list of highest-CAGR backtest results across all users (with anonymized usernames). Filterable by asset_class and strategy. [Free tier]
| Parameter | Type | Description |
|---|---|---|
limit | integer | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
strategy | string | |
asset_type | string |
arena_list_backtests7 paramsLists your own backtest runs, filterable by asset_type / strategy / pair / interval. Paginated with limit + offset. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | |
limit | integer | Max 100, default 50. |
offset | integer | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | |
strategy | string | |
asset_type | string |
arena_get_backtest2 paramsDetail for one of YOUR backtest runs (or admin-readable). Returns metrics, asset, interval, date range, CAGR/winRate/drawdown, params. [A…
Detail for one of YOUR backtest runs (or admin-readable). Returns metrics, asset, interval, date range, CAGR/winRate/drawdown, params. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
id | string | UUID of the backtest run. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_backtest_trades2 paramsTrades list and per-trade equity progression for one of your backtests. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
id | string | UUID of the backtest run. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_shared_backtest2 paramsRead-only access to a publicly shared backtest by its share-id. Anyone can fetch — used for sharing strategy results with non-users. [Fre…
Read-only access to a publicly shared backtest by its share-id. Anyone can fetch — used for sharing strategy results with non-users. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
share_id | string | Public share id from /shared/backtests URL. |
arena_get_signal_status4 paramsCurrent signal-status (green/yellow/red) for a strategy on a pair+interval. Backed by the daily check-signals cron — needs at least one u…
Current signal-status (green/yellow/red) for a strategy on a pair+interval. Backed by the daily check-signals cron — needs at least one user with an active Ampel on this combination. [Free tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | Trading pair / symbol. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | Candle interval. |
strategy | string | Strategy key, e.g. 'rsi_sma'. |
validate_strategy6 paramsBacktest a trading strategy honestly — look-ahead-aware validation with Deflated-Sharpe-Ratio / multiple-testing correction (Bailey & Lóp…
Backtest a trading strategy honestly — look-ahead-aware validation with Deflated-Sharpe-Ratio / multiple-testing correction (Bailey & López de Prado). Returns an EVIDENCE verdict (insufficient_evidence | anecdote | failed_oos | passed_oos) plus metrics, flags and caveats — NOT a buy/sell recommendation. Call this before acting on a strategy or signal list. Accepts a named catalog strategy (type=rules), a timestamped BUY/SELL signal list (signal_list), or a timestamped trade list (trade_list). Ch
| Parameter | Type | Description |
|---|---|---|
oos | object | |
costs | object | Per-side fee in bps; default 10 (crypto) / 5 (else). |
market | object | |
window | object | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
strategy | object |
arena_run_backtest10 paramsTriggers a single-asset backtest with full strategy / filter / params control. Returns aggregate metrics + run-id. Sync (3-10s typical). …
Triggers a single-asset backtest with full strategy / filter / params control. Returns aggregate metrics + run-id. Sync (3-10s typical). Per-day quota: Pro=50, Power=500. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | Pair symbol, e.g. BTCUSDT, AAPL.US, EURUSD.FOREX. |
params | object | Strategy-specific params (e.g. { rsi_period: 14 }). |
capital | number | Default 10000. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
date_to | string | YYYY-MM-DD; default today. |
filters | object | |
interval | string | |
strategy | string | Strategy key — use arena_list_strategies to find valid keys. |
date_from | string | YYYY-MM-DD |
asset_type | string |
arena_compare_strategies9 paramsRun 2-5 strategies on the same pair / interval / date range and return per-strategy metrics plus comparison summary (best by CAGR, best b…
Run 2-5 strategies on the same pair / interval / date range and return per-strategy metrics plus comparison summary (best by CAGR, best by win-rate, worst by drawdown). Sequential — expect 10-50s. Per-day quota: Pro=20, Power=200. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | |
capital | number | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
date_to | string | |
filters | object | |
interval | string | |
date_from | string | |
asset_type | string | |
strategies | array |
arena_run_universe_backtest10 paramsBacktests one strategy on up to 50 pairs at once. Returns immediately with a job_id; poll arena_get_job_status to check progress. Provide…
Backtests one strategy on up to 50 pairs at once. Returns immediately with a job_id; poll arena_get_job_status to check progress. Provide either universe_id (e.g. 'crypto-top-10') OR explicit pairs[]. Background runtime: ~1.5s × n_pairs. Per-day quota: Pro=5, Power=50. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
pairs | array | Explicit pair list (max 50). Use instead of universe_id. |
params | object | |
capital | number | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
date_to | string | |
filters | object | |
interval | string | |
strategy | string | Strategy key — call arena_list_strategies. |
date_from | string | |
universe_id | string | Pre-curated universe — call arena_list_universes for valid IDs. Max 50 pairs. |
arena_get_job_status2 paramsPolls an async job by job_id (created via arena_run_universe_backtest). Returns status (pending/running/completed/failed), progress_pct, …
Polls an async job by job_id (created via arena_run_universe_backtest). Returns status (pending/running/completed/failed), progress_pct, pairs_completed, and once completed: the full result (summary + per-pair results). [Free tier]
| Parameter | Type | Description |
|---|---|---|
job_id | string | UUID job_id returned by arena_run_universe_backtest. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_run_grid_backtest12 paramsGrid-bot simulation on historical candles. Returns final value, return%, CAGR, trades, fees, buy-hold comparison. Free tier limited to BT…
Grid-bot simulation on historical candles. Returns final value, return%, CAGR, trades, fees, buy-hold comparison. Free tier limited to BTCUSDT/ETHUSDT. Per-day quota: Free=5, Pro=50, Power=500. [Free / Pro / Power tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
end_date | string | |
fee_rate | number | Per-trade fee fraction, e.g. 0.001 for 0.1%. |
grid_type | string | |
low_price | number | |
grid_count | integer | |
high_price | number | |
start_date | string | |
entry_price | number | |
stop_loss_price | number | |
total_investment | number | USDT amount; min 100. |
arena_quote_report9 paramsGet a pricing quote for a custom report (universe-backtest PDF + Excel) without committing to a purchase. Returns price, universe size + …
Get a pricing quote for a custom report (universe-backtest PDF + Excel) without committing to a purchase. Returns price, universe size + preview, excluded pairs, and filter config. Crypto-only universes use top-N tiers; stocks/ETFs use custom pair list. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
interval | string | |
strategy | string | Strategy key (use arena_list_strategies for valid values). |
asset_type | string | |
custom_pairs | array | Required when universe_tier='custom'. |
period_label | string | |
discount_code | string | Optional retention-discount code. |
universe_tier | 'top-10' / 'top-50' / 'top-100' / 'top-250' (crypto) or 'custom' for stocks/etf with customPairs[]. | |
strategy_params | object |
arena_get_report_status2 paramsPoll the status of a Custom-Report job. Lifecycle: pending_payment → queued → running → generating → success/failed. Returns progress_pct…
Poll the status of a Custom-Report job. Lifecycle: pending_payment → queued → running → generating → success/failed. Returns progress_pct, succeeded/failed counts, plus pdf_url / xlsx_url when done. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
job_id | string | Job UUID returned by checkout. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_subscribe_signal_alerts6 paramsCreates a subscription that fires when an existing Ampel-Config's signal changes (BUY ↔ SELL). User must first create an ampel-config via…
Creates a subscription that fires when an existing Ampel-Config's signal changes (BUY ↔ SELL). User must first create an ampel-config via the Web UI (`/dashboard/ampel`) and pass its UUID here. Optional signal_types filter restricts to BUY-only or SELL-only. [API Pro tier and up — 3 active subscriptions max for Pro, 20 for Power]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
expires_at | string | |
webhook_url | string | |
signal_types | array | Optional filter. Default: both BUY and SELL fire. |
ampel_config_id | string | UUID einer existierenden ampel_configs-Row im gleichen User-Account. |
delivery_method | string |
arena_subscribe_cycle_changes5 paramsCreates a subscription that fires when the BTC-Cycle band changes (e.g. capitulation → risk-off → neutral → constructive → euphoric). Opt…
Creates a subscription that fires when the BTC-Cycle band changes (e.g. capitulation → risk-off → neutral → constructive → euphoric). Optional bands filter restricts to specific targets. [API Pro tier and up — 3 active subscriptions max for Pro, 20 for Power]
| Parameter | Type | Description |
|---|---|---|
bands | array | Filter to bands of interest. Default: any change triggers. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
expires_at | string | ISO timestamp; subscription auto-deactivates after this. |
webhook_url | string | HTTPS URL — required when delivery_method=webhook. |
delivery_method | string | 'polling' (default) or 'webhook'. |
arena_subscribe_pulse_changes6 paramsCreates a subscription that fires when the daily 0-100 Arena-Pulse score crosses threshold_above (up) or threshold_below (down). At least…
Creates a subscription that fires when the daily 0-100 Arena-Pulse score crosses threshold_above (up) or threshold_below (down). At least one threshold required. [API Pro tier and up — 3 active subscriptions max for Pro, 20 for Power]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
expires_at | string | |
webhook_url | string | |
delivery_method | string | |
threshold_above | number | Fire when score rises across this value. |
threshold_below | number | Fire when score falls across this value. |
arena_subscribe_bullmarket_stage6 paramsCreates a subscription that fires when the Bullmarket-Ampel active stage count (0-5) changes. Optional direction filter (up/down/any) + s…
Creates a subscription that fires when the Bullmarket-Ampel active stage count (0-5) changes. Optional direction filter (up/down/any) + specific stages of interest. [API Pro tier and up — 3 active subscriptions max for Pro, 20 for Power]
| Parameter | Type | Description |
|---|---|---|
stages | array | Specific stages of interest. Default: any change. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
direction | string | Filter to direction. Default 'any'. |
expires_at | string | |
webhook_url | string | |
delivery_method | string |
arena_list_subscriptions1 paramReturns all active subscriptions for the current API key. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_check_subscription_updates1 paramReturns all undelivered updates for the API key, then marks them as delivered. Call regularly to consume the polling queue. Updates conta…
Returns all undelivered updates for the API key, then marks them as delivered. Call regularly to consume the polling queue. Updates contain payload with subscription_type, current value, previous value, and trigger context. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_cancel_subscription2 paramsDeactivates a subscription. Idempotent — re-cancellation is a no-op. [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
subscription_id | string | Subscription id returned by arena_subscribe_* |
arena_get_gem_scores3 paramsAltcoin screener ranking — which altcoins look strong right now? Today's CoinGecko Top-200 scored by a composite of 3 factor groups: Mean…
Altcoin screener ranking — which altcoins look strong right now? Today's CoinGecko Top-200 scored by a composite of 3 factor groups: Mean-Reversion (A), Tokenomics (B), Market-Structure (C). Backtest-validated factors, not a hype list. Limit gated by tier: Free top-10, Pro top-50, Power top-200. [Free tier, daily refresh]
| Parameter | Type | Description |
|---|---|---|
limit | integer | Number of coins to return (tier-capped) |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
from_rank | integer | Start from this rank (default 1) |
arena_get_gem_score2 paramsDetailed Altcoin Screener score for a specific coin by CoinGecko ID. Pro+ gets raw factor values (9 factors across groups A/B/C). [Free t…
Detailed Altcoin Screener score for a specific coin by CoinGecko ID. Pro+ gets raw factor values (9 factors across groups A/B/C). [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
coingecko_id | string | CoinGecko coin ID, e.g. "ethereum", "solana" |
arena_get_gem_validation2 paramsBi-weekly equal-weight basket backtest for Top-N screener picks vs BTC and market average. Shows CAGR, max drawdown, win-rate. Free: top-…
Bi-weekly equal-weight basket backtest for Top-N screener picks vs BTC and market average. Shows CAGR, max drawdown, win-rate. Free: top-10 default. Pro+: custom N. [Free tier]
| Parameter | Type | Description |
|---|---|---|
top_n | integer | Basket size (default 10, Pro+ up to 200) |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_volatility_phases2 paramsReturns the current ATR-based volatility phase (low/normal/high/expansion) for all tracked assets: Top-10 Crypto pairs, Top-10 Stocks, To…
Returns the current ATR-based volatility phase (low/normal/high/expansion) for all tracked assets: Top-10 Crypto pairs, Top-10 Stocks, Top-10 ETFs. Updated daily at 08:00 UTC. Useful for regime-aware strategy selection. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
asset_type | string | Filter by asset class. Omit for all. |
arena_get_volatility_recommendations3 paramsReturns top-3 strategies ranked by historical win-rate for the current volatility phase of a given asset pair. Phase is detected from the…
Returns top-3 strategies ranked by historical win-rate for the current volatility phase of a given asset pair. Phase is detected from the latest snapshot. Minimum 20 trades per phase required for inclusion. Use this to answer "which strategies work best right now for BTC?". [API Pro tier]
| Parameter | Type | Description |
|---|---|---|
pair | string | Asset pair, e.g. "BTCUSDT" for crypto, "AAPL.US" for stocks |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
asset_type | string | Asset class of the pair |
arena_list_knowledge1 paramDiscover what Knowledge Objects exist: lists all published types + their subjects (with min_tier, api_path, seo_slug, latest as_of). Use …
Discover what Knowledge Objects exist: lists all published types + their subjects (with min_tier, api_path, seo_slug, latest as_of). Use this BEFORE arena_get_knowledge to learn valid type/subject pairs instead of guessing. New types appear automatically. [Free tier]
| Parameter | Type | Description |
|---|---|---|
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
arena_get_knowledge4 paramsFetch a versioned, explainable Knowledge Object by type + subject (e.g. type='market_regime', subject='GLOBAL'). Returns the current publ…
Fetch a versioned, explainable Knowledge Object by type + subject (e.g. type='market_regime', subject='GLOBAL'). Returns the current published envelope: payload, explanation (factors + weights + confidence), provenance (inputs + params), ontology binding, compute version. ONE tool covers ALL knowledge types. [Free tier; per-object access additionally gated by min_tier]
| Parameter | Type | Description |
|---|---|---|
type | string | Knowledge object type, e.g. 'market_regime'. |
as_of | string | Specific date YYYY-MM-DD. Omit for latest. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
subject | string | Subject ref, e.g. 'GLOBAL', 'BTC'. |
arena_get_ontology_term3 paramsResolve a knowledge-platform term to its canonical definition (e.g. term='regime'). Returns label, definition (EN/DE), calculation, unit,…
Resolve a knowledge-platform term to its canonical definition (e.g. term='regime'). Returns label, definition (EN/DE), calculation, unit, source + source_ref, version, related terms. Use this to resolve the onto:<term>@<version> references inside Knowledge Objects. [Free tier]
| Parameter | Type | Description |
|---|---|---|
term | string | Ontology term slug, e.g. 'regime', 'liquidity', 'altcoin_season'. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
version | integer | Specific version. Omit for current. |
arena_dip_decision4 paramsBuy now or wait for the dip? Decision-math over the user's OWN assumptions (target/dip prices, probabilities, capital). Two modes: "compa…
Buy now or wait for the dip? Decision-math over the user's OWN assumptions (target/dip prices, probabilities, capital). Two modes: "compare" = expected value of Buy-Now vs Wait vs Split + the breakeven dip probability (prices as MULTIPLES of today); "allocate" = the risk-adjusted (Kelly / risk-aversion γ) optimal fraction to deploy now vs reserve for the dip (ABSOLUTE prices). Ask the user for the missing inputs, then call. Returns scenario numbers and which option wins on expected value — NOT a
| Parameter | Type | Description |
|---|---|---|
mode | string | 'compare' (default): EV of buy-now vs wait vs split + breakeven dip probability. 'allocate': risk-adjusted optimal deploy-now fraction under γ. |
compare | object | Required when mode='compare'. |
context | string | Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER |
allocate | object | Required when mode='allocate'. |
get_more_tools1 paramCheck for additional tools whenever your task might benefit from specialized capabilities - even if existing tools could work as a fallback.
| Parameter | Type | Description |
|---|---|---|
context | string | A description of your goal and what kind of tool would help accomplish it. |