Skip to main content
Glama

Backtesting Arena

Get Altcoin Screener Backtest-Lite Validation

arena_get_gem_validation

Did the screener picks actually beat BTC? Equal-weight basket of the top-N screener picks, rebalanced every 14 days (grid anchored at the first snapshot — the rebalance block declares anchor and cadence, phase_spread the CAGR and vs_btc range across all 14 grid phases plus whether the vs_btc sign holds in every phase — read the headline against it, the headline is ONE phase), NET of 10 bps per side on the traded fraction at every rebalance (entry included; the BTC benchmark pays the entry fee once; slippage 0 — cost_model declares it). plain is the one-sentence reading (what holds across the phases, not the headline CAGR). Headline cagr, vs_btc, vs_market, max_dd, win_rate are net; cagr_gross, vs_btc_gross, vs_market_gross and cost_drag_pp sit beside them. is_anecdote=true when the curve spans fewer than 84 calendar days. Curves are precomputed weekly on an N ladder (10/25/50/100/200, same input and engine per rung); a requested N snaps to the nearest rung — top_n names the rung used, top_n_requested echoes the request, basis_note declares any snap and any rung above the priced universe (rungs above it are the same basket; the universe block carries the measured sizes). [Free tier]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
top_nNoBasket size (default 10, Pro+ up to 200)

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed3 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • removedInput schema / properties / context
      Removed value: -{
      -  "description": "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 use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
      -  "type": "string"
      -}
    • removedInput schema / required
      Removed value: -[
      -  "context"
      -]
  2. First observed

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, and it does so thoroughly. It discloses cost assumptions (10 bps per side, entry included, one-time BTC benchmark fee, zero slippage), rebalancing cadence, the grid-anchor semantics, the distinction between the one-phase headline and cross-phase `plain` reading, the anecdote threshold, and the nearest-rung snapping behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is information-dense and nearly every clause is relevant, but it is delivered as one long, parenthetical-heavy paragraph with no front-loaded plain-language summary. It is comprehensive but not concise or easily scannable, so it loses points on structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description must compensate for response semantics, and it does: headline fields vs gross fields, `cost_drag_pp`, `plain`, `is_anecdote`, and the `rebalance`, `phase_spread`, `cost_model`, `basis_note`, and `universe` blocks are all explained. For a single-optional-parameter getter, this is remarkably complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents `top_n` as the basket size with a default, giving 100% coverage and a baseline of 3. The description adds important behavior beyond the schema: the precomputed ladder (10/25/50/100/200), snapping to the nearest rung, the `top_n` vs `top_n_requested` distinction, and how rungs above the priced universe behave.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a concrete validation question, names the asset (altcoin screener picks), the benchmark (BTC), and the method (equal-weight basket rebalanced every 14 days). It clearly differentiates this tool from generic backtest siblings by focusing specifically on validating the screener's picks against BTC.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The rhetorical question "Did the screener picks actually beat BTC?" effectively frames when to use this tool, and the 'precomputed weekly on an N ladder' note signals that this is not an on-demand custom backtest. However, it never explicitly names alternative tools or conditions for when to prefer them, so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.6/5.0
Disambiguation2/5

Many tools cover overlapping market indicators (e.g., cycle state, pulse, bullmarket ampel, volatility phases) and several share similar get_*_history patterns, which could cause an agent to select the wrong one. However, each tool has detailed descriptions with explicit references to related tools to reduce ambiguity.

Naming Consistency3/5

Tool names generally follow a verb_noun pattern (arena_get_*, arena_list_*, arena_run_*, arena_subscribe_*), but there are inconsistencies such as 'validate_strategy' (no arena_ prefix), 'arena_status' (not a clear verb_noun), and variations like 'arena_run_grid_backtest' vs 'arena_run_backtest'.

Tool Count2/5

With 84 tools, the server is heavily over-scoped for a typical MCP server, likely causing navigation and selection overhead. While the domain (crypto backtesting and analytics) is broad, 84 tools exceed reasonable coherence and impose a high cognitive load.

Completeness4/5

The tool surface covers a wide range of analytics (market indicators, backtesting, validation, alerts, subscriptions, reports) with few obvious dead ends. Minor gaps exist like lack of direct portfolio management or strategy editing, but core workflows are well covered.