{"uid":"cap_Z3y-31vwx3-SslwXwxqR0","slug":"x402-quantitative-strategy-backtester-35e09874","name":"X402 Quantitative Strategy Backtester","description":"Pay-per-request data tools for AI agents.","url":"https://x402.feld-feder.at/v1/quant/backtest","method":"POST","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","title":"QuantBacktestRequest","required":["closes","strategy"],"properties":{"closes":{"type":"array","items":{"type":"number","maximum":1000000000000,"exclusiveMinimum":0},"title":"Closes","maxItems":2000,"minItems":3},"fee_bps":{"type":"number","title":"Fee Bps","default":0,"maximum":100,"minimum":0},"strategy":{"anyOf":[{"type":"object","title":"SmaCrossoverStrategy","properties":{"family":{"type":"string","const":"sma_crossover","title":"Family","default":"sma_crossover"},"fast_period":{"type":"integer","title":"Fast Period","default":20,"maximum":200,"minimum":2},"slow_period":{"type":"integer","title":"Slow Period","default":50,"maximum":500,"minimum":3}},"additionalProperties":false},{"type":"object","title":"RsiReversionStrategy","properties":{"exit":{"type":"number","title":"Exit","default":70,"maximum":99,"minimum":51},"entry":{"type":"number","title":"Entry","default":30,"maximum":49,"minimum":1},"family":{"type":"string","const":"rsi_reversion","title":"Family","default":"rsi_reversion"},"period":{"type":"integer","title":"Period","default":14,"maximum":200,"minimum":2}},"additionalProperties":false}],"title":"Strategy"},"slippage_bps":{"type":"number","title":"Slippage Bps","default":0,"maximum":100,"minimum":0},"starting_equity":{"type":"number","title":"Starting Equity","default":10000,"maximum":1000000000,"exclusiveMinimum":0},"position_fraction":{"type":"number","title":"Position Fraction","default":1,"maximum":1,"exclusiveMinimum":0}},"additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST","PUT","PATCH"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","title":"ResponseEnvelope[QuantBacktestResult]","required":["data"],"properties":{"ok":{"type":"boolean","const":true,"title":"Ok","default":true},"data":{"type":"object","title":"QuantBacktestResult","required":["strategy","observations","starting_equity","ending_equity","total_return_pct","buy_hold_return_pct","max_drawdown_pct","total_trade_events","closed_trades","win_rate_pct","total_fees","open_position","disclaimer"],"properties":{"strategy":{"type":"object","title":"Strategy","additionalProperties":{"anyOf":[{"type":"number"},{"type":"integer"},{"type":"string"}]}},"disclaimer":{"type":"string","title":"Disclaimer"},"total_fees":{"type":"number","title":"Total Fees"},"observations":{"type":"integer","title":"Observations"},"win_rate_pct":{"type":"number","title":"Win Rate Pct"},"closed_trades":{"type":"integer","title":"Closed Trades"},"ending_equity":{"type":"number","title":"Ending Equity"},"open_position":{"type":"boolean","title":"Open Position"},"starting_equity":{"type":"number","title":"Starting Equity"},"max_drawdown_pct":{"type":"number","title":"Max Drawdown Pct"},"total_return_pct":{"type":"number","title":"Total Return Pct"},"total_trade_events":{"type":"integer","title":"Total Trade Events"},"buy_hold_return_pct":{"type":"number","title":"Buy Hold Return Pct"}}},"cache":{"anyOf":[{"type":"object","title":"CacheInfo","required":["hit"],"properties":{"hit":{"type":"boolean","title":"Hit"},"age_seconds":{"type":"integer","title":"Age Seconds","default":0,"minimum":0}}},{"type":"null"}],"default":null},"source":{"anyOf":[{"type":"object","title":"SourceInfo","required":["requested_url","final_url","retrieved_at"],"properties":{"final_url":{"type":"string","title":"Final Url"},"status_code":{"anyOf":[{"type":"integer","maximum":599,"minimum":100},{"type":"null"}],"title":"Status Code","default":null},"content_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Hash","default":null},"content_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Type","default":null},"retrieved_at":{"type":"string","title":"Retrieved At","format":"date-time"},"requested_url":{"type":"string","title":"Requested Url"},"redirect_count":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Redirect Count","default":null}}},{"type":"null"}],"default":null},"_payment":{"anyOf":[{"type":"object","title":"PaymentInfo","required":["amount_usdc","network"],"properties":{"network":{"type":"string","title":"Network"},"amount_usdc":{"anyOf":[{"type":"number","minimum":0},{"type":"string","pattern":"^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"}],"title":"Amount Usdc"},"transaction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Transaction","default":null}}},{"type":"null"}],"default":null},"warnings":{"type":"array","items":{"type":"object","title":"WarningInfo","required":["code","message"],"properties":{"code":{"type":"string","title":"Code"},"message":{"type":"string","title":"Message"}}},"title":"Warnings"},"provenance":{"type":"array","items":{"type":"string"},"title":"Provenance"}}}}}}},"responseSchema":{"type":"json","example":{"ok":true,"data":{"strategy":{"family":"sma_crossover","fast_period":2,"slow_period":4},"disclaimer":"Deterministic research output only; not financial advice or an order signal.","total_fees":0,"observations":8,"win_rate_pct":0,"closed_trades":0,"ending_equity":10000,"open_position":false,"starting_equity":10000,"max_drawdown_pct":0,"total_return_pct":0,"total_trade_events":0,"buy_hold_return_pct":5}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"registry","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"down","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_KHM55AWWHxI8PQHaYj35h","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Runs a deterministic backtest of a quantitative trading strategy (e.g. SMA crossover) against provided price data and returns performance metrics like win rate, return, and drawdown.","exampleAgentPrompt":"Run a backtest on this price series using an SMA crossover strategy with a fast period of 5 and slow period of 20, starting with $10,000 equity, and tell me the total return, win rate, and max drawdown.","exampleUseCases":[{"title":"SMA crossover strategy evaluation","prompt":"I have daily closing prices for SPY over the past year — can you backtest a 10-day vs 30-day SMA crossover strategy starting with $10,000 and tell me the total return, win rate, and how it compares to just buying and holding?"},{"title":"Pre-trade strategy validation","prompt":"Before I go live with my moving average algo, can you run a backtest with a fast period of 2 and slow period of 4 on these 8 price points, starting with $10,000, so I can see the win rate and max drawdown?"},{"title":"Research report on strategy performance","prompt":"I'm writing a research note on simple crossover strategies — run a backtest with fast=5 and slow=15 on this price data and give me the full stats including ending equity, closed trades, and whether there's an open position at the end."}],"resultDescription":"Returns a JSON object with backtesting results including: strategy config (family, fast/slow periods), total return %, buy-and-hold return % for comparison, win rate %, max drawdown %, number of closed trades, total trade events, ending equity, open position status, total fees, and observation count. Also includes a disclaimer that output is deterministic research only, not financial advice.","failureModes":["Invalid or missing price series — insufficient data points for the chosen periods","fast_period >= slow_period causing undefined crossover behavior","Unsupported strategy family name returns error","Malformed request body returns 400-level error","Payment failure via x402 protocol returns 402 Payment Required"],"whenToPreferThis":"Choose this endpoint when you need a quick, pay-per-request deterministic backtest of a simple quantitative strategy (especially SMA crossover) without setting up a local backtesting environment. Ideal for AI agents that need on-demand strategy evaluation at $0.02 per call, with no subscription or infrastructure overhead. Prefer this over heavier backtesting platforms when you just need core performance metrics (return, drawdown, win rate) computed server-side on a provided price series.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T20:27:15.325Z","isFirstParty":false}