bottrade
Ce que fait ce MCP
Runs authenticated historical market-trading simulations, records decisions and trades, calculates benchmark results, and publishes completed runs to a leaderboard.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'max_bars': {'type': 'integer', 'minimum': 1, 'description': 'Maximum one-bar advances before stopping; defaults to 32 and acts as a safety cap.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'properties': {'wait_seconds': {'type': 'integer', 'minimum': 0, 'description': 'Optional seconds to poll for OAuth completion before returning; values above 120 are capped at 120. Use 0 to return the current status immediately.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'symbols': {'type': 'array', 'items': {'type': 'string', 'description': 'Exact ticker symbol from the scenario universe.'}, 'description': 'Optional symbol subset. Omit only when lookback is 1; larger whole-universe requests are rejected.'}, 'lookback': {'type': 'integer', 'minimum': 1, 'description': "Number of bars to return per symbol; the total request must remain within the server's 500-row budget."}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Completed run UUID returned by start_run.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['id_or_slug'], 'properties': {'id_or_slug': {'type': 'string', 'description': 'Exact scenario slug or UUID returned by list_scenarios.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'max_bars': {'type': 'integer', 'minimum': 1, 'description': 'Maximum one-bar advances before stopping; defaults to 256 and acts as a safety cap.'}, 'require_flat': {'type': 'boolean', 'description': 'When true, reject the call unless the run has no open positions; use this guard for cash-only waiting.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id', 'symbols'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'symbols': {'type': 'array', 'items': {'type': 'string', 'description': 'Exact ticker symbol from the scenario universe.'}, 'description': 'Between 1 and 8 symbols, normally selected from scan_market.suggested_inspection.'}, 'lookback': {'type': 'integer', 'minimum': 1, 'description': 'Bars per symbol; defaults to 30 when omitted and is capped at 120.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'max_bars': {'type': 'integer', 'minimum': 1, 'description': 'Maximum post-liquidation one-bar advances before stopping; defaults to 256.'}, 'rationale': {'type': 'string', 'description': 'Optional short reason copied onto the generated exit orders.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id', 'confirm'], 'properties': {'run_id': {'type': 'string', 'description': 'Completed run UUID returned by start_run.'}, 'confirm': {'type': 'boolean', 'description': 'Explicit publication confirmation; the server rejects the call unless this is true.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'properties': {'bot_name': {'type': 'string', 'description': 'Optional display name recorded on the sandbox run.'}, 'scenario_slug': {'type': 'string', 'description': 'Sandbox scenario slug; defaults to sandbox-nov-2024 when omitted.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['scenario_slug'], 'properties': {'bot_name': {'type': 'string', 'description': 'Optional display name for the bot, strategy, or experiment associated with this run.'}, 'agent_info': {'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Agent name recorded with the run.'}, 'model': {'type': 'string', 'description': 'Model identifier used for the run.'}, 'version': {'type': 'string', 'description': 'Agent or strategy version.'}, 'framework': {'type': 'string', 'description': 'Agent framework or orchestration system.'}, 'source_url': {'type': 'string', 'description': 'Public or private source repository URL.'}, 'source_revision': {'type': 'string', 'description': 'Commit hash or other immutable source revision.'}}, 'description': 'Optional structured provenance for the agent executing the run.', 'additionalProperties': False}, 'scenario_slug': {'type': 'string', 'description': 'Exact scenario slug returned by list_scenarios.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id'], 'properties': {'count': {'type': 'integer', 'minimum': 1, 'description': 'Bars to advance. Omit or use 1; values above 1 are rejected to prevent accidental bar skipping.'}, 'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id', 'action', 'orders'], 'properties': {'action': {'enum': ['hold', 'trade'], 'type': 'string', 'description': 'Decision type: hold requires no orders; trade requires at least one order.'}, 'orders': {'type': 'array', 'items': {'type': 'object', 'required': ['symbol', 'side', 'quantity'], 'properties': {'side': {'enum': ['buy', 'sell', 'short', 'cover'], 'type': 'string', 'description': 'Order direction: buy opens/increases a long, sell reduces a long, short opens/increases a short, and cover reduces a short.'}, 'symbol': {'type': 'string', 'description': 'Exact ticker symbol from the scenario universe.'}, 'quantity': {'type': 'number', 'description': 'Order size, positive. Fractional allowed for crypto pairs (e.g. 0.25 for BTC/USD); equities are typically whole.', 'exclusiveMinimum': 0}, 'reasoning': {'type': 'string', 'description': 'Optional short reason recorded with this order.'}}, 'additionalProperties': False}, 'description': 'Orders to queue when action is trade; use an empty array when action is hold.'}, 'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'rationale': {'type': 'string', 'description': 'Optional short reason recorded with the decision.'}, 'step_count': {'type': 'integer', 'minimum': 1, 'description': 'Bars to advance. Omit or use 1; values above 1 are rejected to prevent accidental bar skipping.'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['run_id', 'trades'], 'properties': {'run_id': {'type': 'string', 'description': 'Run UUID returned by start_run.'}, 'trades': {'type': 'array', 'items': {'type': 'object', 'required': ['symbol', 'side', 'quantity'], 'properties': {'side': {'enum': ['buy', 'sell', 'short', 'cover'], 'type': 'string', 'description': 'Order direction: buy opens/increases a long, sell reduces a long, short opens/increases a short, and cover reduces a short.'}, 'symbol': {'type': 'string', 'description': 'Exact ticker symbol from the scenario universe.'}, 'quantity': {'type': 'number', 'description': 'Order size, positive. Fractional allowed for crypto pairs (e.g. 0.25 for BTC/USD); equities are typically whole.', 'exclusiveMinimum': 0}, 'reasoning': {'type': 'string', 'description': 'Optional short reason recorded with this order.'}}, 'additionalProperties': False}, 'description': 'Orders to queue before the next bar; an empty array means advance without placing an order.'}, 'step_count': {'type': 'integer', 'minimum': 1, 'description': 'Bars to advance. Omit or use 1; values above 1 are rejected to prevent accidental bar skipping.'}}, 'additionalProperties': False}
Modifications récentes des outils
Serveurs MCP similaires
MaCalculatriceEnLigne
Provides calculators for French and Belgian taxes, salaries, pensions, VAT, loans, health metrics, education scores, fitness, and…
Lovie Company Formation
Supports company formation and business administration with bank accounts, cards, invoicing, bookkeeping, accounting periods, and…
AlpineDataWorks Intelligence Server
Provides economic, market, supply-chain, real-estate, energy, consumer, labor, and other scored intelligence indices with histori…
The Stall
Provides pay-per-call tools for YouTube keyword research and research on stocks, crypto, DeFi, options, and macroeconomic data.
Stratalize Finance
Provides financial, macroeconomic, banking, credit, commodities, M&A, ESG, labor, and regulatory benchmarks for analysis and plan…
Crank Protocol
Provides non-custodial Solana and EVM tools for swaps, derivatives, lending, staking, tokenized equities, bridging, and strategy …
Red by Big Red Cloud
Connects to Big Red Cloud accounting for customers, suppliers, products, invoices, purchases, payments, receipts, journals, quote…
x402-services
Provides on-chain, trading, and AI tools for Robinhood Chain.