Infrastructure for Quantitative Research & Market Execution
A JSON DSL small enough for an AI to generate safely, running against real market data — without you having to build your own backtesting infrastructure.
{ "assetPair": "BTC-USDC", "initialDate": "2020-01-01", "finalDate": "2024-12-31", "strategySnapshotJson": { "configuration": { "timeframe": "1H" }, "inputs": { "emaFast": "ema(close, 9)", "emaSlow": "ema(close, 21)", "rsi": "rsi(close, 14)" }, "conditions": { "trend": "emaFast > emaSlow", "momentum": "rsi > 45 AND rsi < 70" }, "score": { "trend": 30, "momentum": 20 }, "decision": { "entry": "score >= 40" } } }
Programmable infrastructure, ready for you to plug into.
EmidLabs is the infrastructure layer for quantitative research and market execution — ready to use, with no environment for you to build. Integrate via API, connect an AI agent via MCP, or operate it directly like a ready-made lab. Every capability is already there, waiting to be used.
One API per Capability
Send a JSON payload, get structured results back. Backtesting, live execution, and strategy storage — each is an endpoint, not a screen to click through.
Execution at Scale
~260ms for 5 years of market data, warm cache, server-side. Run thousands of concurrent workflows with no queue.
1% Stop, 1:3 Reward, Always in R
Configurable risk model, defaulting to that. Results in R-units, not dollar amounts — easier to compare one strategy against another. Full condition diagnostics and score distribution on every backtest.
From Dev to Trader — No Environment to Set Up
For dev-traders, independent quants, and companies integrating via API or MCP. And for the trader who just wants to connect an AI agent and start operating — no code to write, no infrastructure to stand up. Same platform, whichever entry point you pick.
Infrastructure modules for quantitative workflows.
Start with the Backtesting API, then subscribe a validated strategy for live signals. More modules are being built as the infrastructure evolves.
Backtesting API
Quantitative research infrastructure
Execute backtests server-side via API. Define strategies using our DSL, send JSON payloads, and receive detailed quantitative results — trades, metrics, score distributions, and condition diagnostics.
Capabilities
Live Execution API
BetaReal-time strategy signals
Subscribe a validated strategy to live market data. The same Strategy DSL and evaluation engine as the Backtesting API, running continuously — get a signal the moment your entry or exit condition fires on a real, closed candle.
Capabilities
MCP Servers
Native connector for AI agents
Connect Claude, ChatGPT, or any MCP-compatible agent directly to the Backtesting, Live Execution, and Strategy Storage APIs — no SDK, no custom integration code to write.
Capabilities
The quantitative research loop.
EmidLabs exposes the entire research lifecycle as a programmable API workflow — not a dashboard. Each step is an execution node. The loop runs until you have edge.
Hypothesis
Define what market behavior you're trying to capture. Frame it as a quantitative thesis, not a gut feeling.
Quantitative thesisStrategy DSL
Formalize the hypothesis using the EmidLabs DSL — or generate it with an AI model. Composable inputs, conditions, score weights, decision rules.
Strategy objectJSON Payload
Serialize the strategy into a structured JSON payload. Specify asset pair, date range, and execution parameters.
POST /backtestIterate
Feed results back into the strategy. Tighten conditions. Adjust weights. Run concurrent variations. Loop until the edge is validated.
→ back to 01Metrics & Analysis
Receive structured quantitative output: trades, win rate, expectancy R, profit factor, condition diagnostics, score distribution.
result{}API Execution
The infrastructure receives the payload, evaluates the strategy server-side against historical OHLCV data, candle by candle.
Backtest IDHypothesis
Define what market behavior you're trying to capture. Frame it as a quantitative thesis, not a gut feeling.
Quantitative thesisStrategy DSL
Formalize the hypothesis using the EmidLabs DSL — or generate it with an AI model. Composable inputs, conditions, score weights, decision rules.
Strategy objectJSON Payload
Serialize the strategy into a structured JSON payload. Specify asset pair, date range, and execution parameters.
POST /backtestAPI Execution
The infrastructure receives the payload, evaluates the strategy server-side against historical OHLCV data, candle by candle.
Backtest IDMetrics & Analysis
Receive structured quantitative output: trades, win rate, expectancy R, profit factor, condition diagnostics, score distribution.
result{}Iterate
Feed results back into the strategy. Tighten conditions. Adjust weights. Run concurrent variations. Loop until the edge is validated.
→ back to 01A composable DSL for machine-readable strategies.
Define quantitative strategies as structured JSON objects. Composable inputs, boolean conditions, scoring weights, and decision rules — designed to be generated, iterated, and executed programmatically.
Configuration
Set the execution timeframe for your strategy.
Inputs
Reusable computed values from market data and built-in functions.
Conditions
Boolean expressions evaluated per candle using inputs, operators, and market data.
Score & Decision
Weight conditions and define the entry threshold. Focus on statistical edge over raw signals.
Built-in Functions
Indicators
Signals
Series Operators
Structure
Candle Anatomy
Candlestick Patterns
{
"configuration": {
"timeframe": "1H"
},
"inputs": {
"emaFast": "ema(close, 9)",
"emaSlow": "ema(close, 21)",
"rsiValue": "rsi(close, 14)"
},
"conditions": {
"trendUp": "emaFast > emaSlow",
"rsiHealthy": "rsiValue > 40 AND rsiValue < 65"
},
"score": {
"trendUp": 20,
"rsiHealthy": 30
},
"decision": {
"entry": "score >= 40"
}
}Execution performance at infrastructure scale.
Latency, throughput, and concurrency numbers for the Backtesting API. Measured on production infrastructure. All results are reproducible via the API.
Execution time by timeframe · BTC/USDC · 5 years
Benchmarks measured on production infrastructure using BTC/USDC data from Coinbase, warm data cache, maxOpenPositions: 1. One execution per timeframe. Results are reproducible via the API.
Rigorous by design.
The backtest engine enforces deterministic execution with a configurable risk model — no ambiguity, no lookahead bias.
Entry on close
Entries execute on the same candle close where the entry condition evaluates to true.
Configurable risk model
Stop-loss and take-profit are configurable per strategy (percent or ATR-based stop-loss; risk-reward or percent take-profit). Defaults to 1% stop-loss / 1:3 risk-reward. Results in R-units, not dollar amounts.
Signal exits
An optional decision.exit expression closes a position on signal, independent of stop-loss/take-profit. If both trigger on the same candle, stop-loss/take-profit wins.
Multiple positions
Every valid entry signal opens a new independent trade by default. Positions can coexist simultaneously — or cap concurrency with configuration.maxOpenPositions.
Fee simulation
Optional configuration.entryFeePct/exitFeePct simulate a per-leg exchange fee, converted into R-units using each trade's own stop distance. Results are net-of-fee by construction — a trade that's marginally profitable pre-fee can correctly flip to a loss.
Conservative ambiguity
If stop-loss and take-profit hit in the same candle, stop-loss is assumed to trigger first.
No lookahead bias
Strict enforcement: all calculations use only past or current candle data. Randomness forbidden.
Strategy diagnostics
Condition frequency and score distribution tracked per candle for deep strategy quality analysis.
Infrastructure Plans for Quantitative Research
Monthly execution capacity, renewed automatically. Start free, upgrade as your research scales.
Free
$0
- 5 execution units / month
- 1 concurrent live subscriptions
Try the platform before committing — a handful of backtests to see it work.
Typical for
- Validating the platform before committing
- One-off exploratory tests
Explorer
$9.90/mo
- 100 execution units / month
- 3 concurrent live subscriptions
Exploratory research, workflow development, and initial backtesting.
Typical for
- Single-pair or focused-pair studies
- Strategy prototyping and exploratory development
- Shallow to mid-depth historical backtests
Research
$29.90/mo
- 500 execution units / month
- 10 concurrent live subscriptions
Production capacity for systematic multi-pair backtesting and strategy iteration.
Typical for
- Systematic multi-pair backtesting
- Strategy iteration and parameter sensitivity testing
- Extensive historical depth across asset classes
Institutional
$99.90/mo
- 2,500 execution units / month
- 25 concurrent live subscriptions
High-volume capacity for research teams running continuous, large-scale backtesting operations.
Typical for
- High-volume backtesting across a full research cycle
- Broad pair coverage with deep historical data
- Continuous, ongoing research operations
All plans include API, Console, and Documentation access, plus all three MCP servers (backtest-mcp, live-mcp, strategy-mcp) for AI agent workflows.
Need more mid-cycle? Buy top-up capacity anytime — it never expires and is spent only after your monthly plan allowance runs out.
Enterprise Agreements
Custom infrastructure agreements for large-scale quantitative workloads.
- High-volume execution support
- Custom workload limits
- Direct engineering contact
- Infrastructure roadmap alignment
Infrastructure usage is calculated proportionally to processed market data workloads. Consumption details available in the documentation.
Infrastructure FAQ
How is infrastructure usage calculated?
Usage is calculated proportionally to processed market workloads, including asset count, timeframe resolution, and execution range.
How do I get access to the platform?
Create an account at the console to get immediate access to the Backtesting API, documentation, and included starter execution capacity.
Where the infrastructure is going.
The Backtesting API is the first module. The vision is a complete quantitative infrastructure stack.
Backtesting API
Server-side backtest execution. DSL strategy system. Long/short direction and signal-based exits. JSON API. Metrics and diagnostics. Pay-as-you-go pricing.
MCP Server
Hosted Model Context Protocol server at mcp.backtest.emidlabs.com. Connect any MCP-compatible AI agent directly — submit backtests, read results, and discover available assets, no custom integration.
Live Execution API
Subscribe a validated strategy to live market data and get a signal the moment its entry or exit condition fires on a real, closed candle. Same DSL and evaluation engine as the Backtesting API.
Signal Infrastructure
Programmable signal generation, distribution, and processing. Build signal pipelines as composable infrastructure.
Quantitative Infrastructure Expansion
New markets, new datasets, portfolio management, multi-strategy orchestration, and automated quantitative pipelines.
Start building quantitative infrastructure.
Open the console. Run your first backtest in minutes — no environment to set up.
Or view Benchmarks