Back to MCP catalog
builder_set_strategy_config

Update strategy-level config — sizing, position policy, execution, and risk — in one patch.

Area

Strategy Builder

Group

Config & allocation

Access

Write

Risk

May change server state

Details

Full description

Set strategy-level config (sizing, position_policy, execution, risk) in one patch. Replaces the four older setters (builder_set_sizing, builder_set_position_policy, builder_set_execution, builder_set_risk).

Pass only the keys you want to update; omitted keys are left unchanged on the strategy. Returns the patched sections (only the keys actually updated) — to read the full current config snapshot, call builder_get_strategy.

Basket capital governance (capital_model, construction, rebalance) is set separately via builder_set_allocation. Use builder_discover(action='get', ref="config:sizing") (and config:position_policy / config:execution / config:risk) to see each section's fields.

Capabilities

Bounded options and operating modes surfaced above the full JSON schema.

No bounded capability options are declared for this tool.

Required Inputs

patchobjectPartial-patch dict. Only the keys present are applied; missing keys leave existing config unchanged. Sizing fields merge into the stored section; use replace_sizing=true to replace it. Valid keys: 'sizing', 'position_policy', 'execution', 'risk'. Each value is validated against the matching pydantic config type (SizingConfig, PositionPolicyConfig, ExecutionConfig, RiskPolicy). The 'execution' section also carries alert mode: pass {'execution': {'mode': 'alert', 'alert_cooldown_minutes': 30}} to turn the strategy into a notify-only monitor — entry signals emit alert notifications instead of placing orders (no fills, no positions); omit mode (or use 'trade') for normal order placement. Pass None for 'position_policy', 'execution', or 'risk' to clear that section (sizing is required and cannot be cleared). Basket capital governance (capital_model, construction, rebalance) is set separately via builder_set_allocation. Example: {'sizing': {'mode': 'pct_equity', 'allocation': 0.5}, 'risk': {'max_daily_loss_pct': 5}}. sizing also accepts 'headroom_pct' (0-100): buying power held back to absorb price drift between the bar an entry is SIZED on and the bar it FILLS on. This is what makes allocation 1.0 safe -- without headroom a full-equity entry is reduced to fit in backtest and REJECTED at a live broker whenever the next bar opens higher. Prefer {'allocation': 1.0, 'headroom_pct': 2} over silently picking allocation 0.95: it states the intent and the reserve is spent on the gap when the gap happens. Omit to use the platform default (0.25%, matching QuantConnect/LEAN); it only binds near full deployment, so it costs nothing at low allocation. Refused combinations (validated at builder_compile with the alternative named): pct_equity allocation above 1.0 (spot only, no leverage); a non-market order_type on a strategy with both a long and a short entry group; position_policy.mode='reverse' with only one entry direction; fixed_risk_pct without a fixed_targets(stop_loss_pct) or trailing_stop exit. Every other sizing x policy x order-type x direction x asset-class combination is implemented — including accumulate/scale_in with both entry groups, where the engine SKIPS an opposite-side entry while the sleeve is still invested (policy:opposite_side_while_invested) rather than mixing sides.
strategy_idstringStrategy ID

Optional Inputs

replace_sizingbooleanReplace the whole sizing section instead of merging its named fields.
Quawd

A subscription SaaS platform for designing, backtesting, and paper-trading algorithmic trading strategies on equities and crypto — described in plain English to an AI agent, no code required.

© 2026 Quawd. All rights reserved.

Quawd is a software tool, not a broker-dealer or investment adviser, and does not provide investment advice. Trading involves substantial risk of loss. Backtested and hypothetical results have inherent limitations and are not indicative of future performance.