Skip to main content
Glama

verify_execution

Read-onlyIdempotent

Verify a claimed Sharpe ratio by re-deriving P&L from positions and committed asset returns, recomputing the Sharpe, and checking it matches—with results bound to a data hash.

Instructions

VERIFIABLE EXECUTION — instead of trusting a reported Sharpe, numguard RE-DERIVES it: it reconstructs the P&L from your positions applied to the committed asset returns (r_t = pos_{t-1}·assetret_t − costs), recomputes the Sharpe from that, and checks it matches what you claimed — catching a number that these decisions on this data do not actually produce. Binds the result to a data hash, and composes a Deflated Sharpe on the re-derived series. HONEST SCOPE: proves the number is reconstructible from decisions-on- committed-data, NOT that the data is the real market (pass canonical_hash to assert that) or that the positions weren't overfit (that's Deflated Sharpe / PBO). It does not run your strategy code.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyYesYour metering key — any stable string identifying you; it tracks your free-tier calls and prepaid credit balance.
cost_bpsNoRound-trip cost in bps applied to turnover.
n_trialsNoHow many strategies/params were tried (for the composed DSR).
positionsYesThe strategy's per-period position/signal series (the decisions).
asset_returnsYesThe aligned underlying-asset per-period returns (the market data the result is bound to).
canonical_hashNoOptional SHA-256 of a canonical public data source; if given, the committed data must match it or it's rejected.
reported_sharpeNoThe Sharpe the operator claims — checked against the re-derived one.
periods_per_yearNoPeriods per year (252 daily).
Behavior5/5

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

With annotations declaring readOnly, idempotent, and non-destructive, the description adds rich behavioral detail: it reconstructs P&L via a formula, binds to a data hash, composes a Deflated Sharpe, and catches mismatches. It also discloses limitations ('NOT that the data is the real market', 'NOT that positions weren't overfit') and clearly states it does not run strategy code.

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

Conciseness4/5

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

The description is long and uses all-caps headers, but every sentence earns its place, explaining the algorithm, the honest scope, and exclusions. It is front-loaded with the core idea. Slightly verbose but appropriate for a complex tool.

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

Completeness3/5

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

The description thoroughly explains the verification logic and limitations, but it does not state the return value format or behavior on mismatch (e.g., what the tool returns when verification fails). Since there is no output schema, this is a notable gap for an agent to fully understand invocation results.

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

Parameters5/5

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

Schema coverage is 100%, so baseline is 3, but the description significantly enhances parameter meaning by providing the exact formula (r_t = pos_{t-1}·assetret_t − costs), explaining how positions and asset returns interact, and clarifying the roles of reported_sharpe, n_trials, and canonical_hash. This goes well beyond the schema's field-level descriptions.

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 clearly states the tool re-derives a Sharpe ratio from positions and asset returns, recomputes it from an explicit formula, and checks it against the claimed value. It distinguishes itself from siblings by emphasizing 'instead of trusting a reported Sharpe' and by honestly scoping what it proves vs. does not prove (data authenticity, overfitting).

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 description gives clear context: it is used when you want to verify a Sharpe claim from decisions-on-committed-data, and explicitly says it does not run strategy code or prove data is real market (suggesting canonical_hash for that). It does not name specific sibling tools but enough exclusions and scope to guide selection.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ipezygj/numguard'

If you have feedback or need assistance with the MCP directory API, please join our Discord server