Skip to main content
PUT
Update Strategy

Path Parameters

strategy_id
string<uuid>
required

Body

application/json
name
string | null
Maximum string length: 200
archetype
enum<string> | null
Available options:
mean_reversion,
trend_following,
momentum,
volatility,
custom
instrument
enum<string> | null
Available options:
stocks,
options,
both
timeframe
enum<string> | null
Available options:
scalping,
intraday,
swing
automation_level
enum<string> | null
Available options:
monitor,
supervised,
autonomous
universe
UniverseConfig · object | null
strategy_kind
enum<string> | null

Orthogonal structural discriminator (NOT a behavioral archetype).

rule_driven -> per-symbol entry/exit rules (StrategyRules) cross_sectional -> rank the universe → basket → vol-scale (CrossSectionalSpec)

Available options:
rule_driven,
cross_sectional
rules
StrategyRules · object | null
cross_sectional_spec
CrossSectionalSpec · object | null
risk_controls
RiskControls · object | null
canvas_layout
CanvasLayoutPersisted · object | null

Typed strategy.canvas_layout JSONB shape — security review M1 fix.

The frontend's CanvasLayoutPersisted interface in lib/canvas/types.ts is the source of truth for the shape; this Pydantic model enforces the contract at the API boundary so malformed writes are rejected with 422 rather than silently corrupting the user's canvas state.

contract_selection
RuleBasedContractConfig · object

Rule-based options contract selection.

Maps directly to ContractCriteria in contract_recommender.py via contract_selection_bridge.config_to_criteria().

last_verdict
enum<string> | null
Available options:
shown_promise_for_regime,
not_yet,
rejected

Response

Successful Response

id
string<uuid>
required
user_id
string<uuid>
required
name
string
required
instrument
enum<string>
required
Available options:
stocks,
options,
both
timeframe
enum<string>
required
Available options:
scalping,
intraday,
swing
automation_level
enum<string>
required
Available options:
monitor,
supervised,
autonomous
universe
Universe · object
required
risk_controls
Risk Controls · object
required
deployment_phase
enum<string>
required
Available options:
backtest,
paper,
shadow,
live
deployment_ramp_pct
integer
required
version
integer
required
is_active
boolean
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
archetype
string | null
strategy_kind
string
default:rule_driven
rules
Rules · object | null
cross_sectional_spec
Cross Sectional Spec · object | null
canvas_layout
Canvas Layout · object | null
contract_selection
Contract Selection · object | null
forked_from_run_id
string<uuid> | null
derived_from_strategy_id
string<uuid> | null
last_verdict
enum<string> | null
Available options:
shown_promise_for_regime,
not_yet,
rejected