{"uid":"cap_I5KEIwmksm7rqVPBLNKIN","slug":"strategy-backtest-b91998ad","name":"Strategy Backtest","description":"Run a bounded declarative historical spot strategy backtest.","url":"https://mcp.dropenginehq.com/api/backtest-strategy?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"end":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"start":{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},"market":{"type":"string","pattern":"^[A-Z0-9]{4,20}$"},"fee_bps":{"type":"number","default":10,"maximum":500,"minimum":0},"strategy":{"type":"object","required":["type"],"properties":{"type":{"enum":["moving_average_crossover","rsi_mean_reversion","momentum","breakout","buy_and_hold"],"type":"string"},"parameters":{"type":"object","default":{},"propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}}},"additionalProperties":false},"timeframe":{"enum":["1h","4h","1d"],"type":"string"},"slippage_bps":{"type":"number","default":5,"maximum":500,"minimum":0},"initial_capital":{"type":"number","maximum":100000000,"minimum":10}}},"responseSchema":{"type":"json","example":{"data":{},"meta":{"cache":{"hit":false,"age_ms":0},"partial":false,"sources":[],"latency_ms":1,"failed_sources":[]},"tool":"crypto_intelligence_tool","success":true,"timestamp":"2026-01-01T00:00:00.000Z"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.1","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_lCwZVItGCNj5SDtenRyRJ","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.1","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Runs a bounded declarative historical spot trading strategy backtest over a specified date range and market, returning performance metrics.","exampleAgentPrompt":"Run a historical backtest of a moving average crossover strategy on BTCUSDT from 2023-01-01 to 2023-12-31 using a 1d timeframe, 10,000 initial capital, 10 bps fees, and 5 bps slippage.","exampleUseCases":[{"title":"Evaluate momentum strategy on ETH","prompt":"Backtest a momentum strategy on ETHUSDT from 2024-01-01 to 2024-06-30 using a 4h timeframe with 15,000 starting capital and 10 bps fees — show me how it performed."},{"title":"Compare buy-and-hold vs breakout on SOL","prompt":"Run a buy-and-hold backtest on SOLUSDT over all of 2023 with a 1d timeframe and 50,000 initial capital, 10 bps trading fees and 5 bps slippage, so I can compare it to a breakout strategy I'm testing."},{"title":"RSI mean reversion with tight fee assumptions","prompt":"Simulate an RSI mean reversion strategy on BTCUSDT from 2022-06-01 to 2023-06-01 on a 1h timeframe, starting with 5,000 capital and using 5 bps fees and 2 bps slippage."}],"resultDescription":"A JSON object containing backtest results including performance metrics (e.g. total return, Sharpe ratio, drawdown), trade-level data, and metadata about the run such as cache hit status, latency, and timestamp. The 'data' field holds the strategy-specific results.","failureModes":["Invalid date format or out-of-range date returns a validation error","Market symbol not recognized or unsupported returns an error","Start date after end date causes a bad request error","Strategy type not in allowed enum returns a validation error","fee_bps or slippage_bps outside 0-500 range returns a validation error","Initial capital below 10 or above 100,000,000 returns a validation error","Payment failure (x402 protocol) results in 402 response and no backtest executed","Insufficient historical data for the requested market/timeframe may return partial results"],"whenToPreferThis":"Choose this endpoint when you need to evaluate a predefined declarative trading strategy (moving average crossover, RSI mean reversion, momentum, breakout, or buy-and-hold) against historical spot market data with configurable fees and slippage. It is ideal for quick quantitative validation of strategy concepts without writing custom code. Prefer this over generic analytics endpoints when you specifically need backtesting with realistic transaction cost modeling on crypto spot markets.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-02T03:20:25.686Z","isFirstParty":false,"canonicalSlug":"strategy-backtest-b91998ad"}