Typed Python SDK and agent integrations for BotTrade historical-market benchmarks. Provides tools for backtesting trading agents, managing runs, and accessing market data.
BotTrade exposes 10 tools with reasonable naming (verb_noun pattern) and basic descriptions. However, critical gaps exist: parameter descriptions are sparse or missing entirely (e.g., 'agent_info' in start_run lacks detail), output schemas are undocumented, and error handling guidance is absent. Tool names are clear (list_scenarios, get_scenario, queue_trade, step, publish_run), but descriptions average ~60 chars, below the 194-char baseline for A+ tools. No tool documents what it returns or how to chain calls. Security-sensitive operations (publish_run) lack confirmation patterns or dry-run support despite being irreversible.
Get market observation with OHLCV bars for specified symbols and lookback period
Get a published run and its results
Get final results for a completed run
Get the current state snapshot of a run
Get a specific scenario by slug or ID
List ready public scenarios
Make a completed run and its trades public
Output schemas completely undocumented. No tool describes what fields it returns, forcing LLMs to guess structure and preventing downstream tool chaining.
Parameter descriptions missing or vague. 'agent_info' in start_run is described as 'Optional agent information' with no detail on structure or purpose. 'count' in step lacks range constraints.
Irreversible operation (publish_run) lacks confirmation pattern or dry-run support. No error guidance if publication fails. Agents could accidentally publish incomplete runs.
No error handling guidance. Tools do not document what errors are retryable, user-fixable, or fatal. No recovery hints (e.g., 'If run not found, call start_run first').
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Queue a trade order for execution in the next step
Create a private active run; this does not advance or finish it
Advance the simulation by one or more bars
Tool descriptions too short (avg ~60 chars vs 194-char baseline). Lack context on WHEN to use each tool and dependencies between them (e.g., must call start_run before queue_trade).