Appearance
Trading
Main Web3 trading tools. Defaults to dry-run. The LLM should pass confirm: true to actually submit. Called without confirm, the tool should return a preview describing exactly what it would have done.
WARNING
Treat confirm: true as the equivalent of pressing the trade button yourself. The LLM only gets it when you approve — review the dry-run output first. That said, not every LLM model has the same reasoning capability.
Side semantics
For every trade tool:
side: "long"— buy (or buy on trigger). Opens or adds to a long position; closes a short whenreduce_only.side: "short"— sell (or sell on trigger). Opens or adds to a short position; closes a long whenreduce_only.
For bracket orders, side is the entry side; TP/SL legs go the opposite direction automatically.
strike_place_market_trade
Open or close a position at market.
| Name | Type | Default | Notes |
|---|---|---|---|
symbol | string | — | Internal symbol (BTC-PERP, …) |
side | long / short | — | See above |
quantity | number > 0 | — | Base asset units; must respect size precision |
reduce_only | bool | false | If true, cannot open new exposure (routes to closeLong/closeShort) |
confirm | bool | false | Must be true to actually place |
reduce_only orders bypass the $10 minimum notional (so closing dust always works).
Example prompt:
Open a market long on
BTC-PERPwith 1% of my balance. Confirm and execute.
strike_place_limit_trade
Place a resting limit order. Returns the order ID, which can be passed to strike_cancel_order.
| Name | Type | Default | Notes |
|---|---|---|---|
symbol | string | — | |
side | long / short | — | |
quantity | number > 0 | — | Respects size precision |
price | number > 0 | — | Limit price in USD |
reduce_only | bool | false | Use for exit limits on existing positions |
confirm | bool | false | Must be true to actually place |
Reduce-only limits and empty positions
Strike rejects reduce-only limits when no position exists yet — the order has nothing to reduce. For TPs/SLs that should rest until triggered, use strike_place_take_profit / strike_place_stop_loss instead. For TPs/SLs attached to a planned new entry, use strike_place_bracket_limit.
strike_place_take_profit
Reduce-only take-profit trigger order. Rests on the book until stop_price is hit, then fills at market (if no limit_price) or as a limit at limit_price.
| Name | Type | Default | Notes |
|---|---|---|---|
symbol | string | — | |
side | long / short | — | long = buy on trigger (closes a short); short = sell on trigger (closes a long) |
quantity | number > 0 | — | |
stop_price | number > 0 | — | Trigger (mark) price |
limit_price | number > 0? | — | If set, places take_profit_limit instead of take_profit |
confirm | bool | false |
strike_place_stop_loss
Reduce-only stop-loss trigger order. Same shape as strike_place_take_profit. Use this to attach a stop to an existing position.
| Name | Type | Default | Notes |
|---|---|---|---|
symbol | string | — | |
side | long / short | — | long = buy on trigger (closes a short); short = sell on trigger (closes a long) |
quantity | number > 0 | — | |
stop_price | number > 0 | — | Trigger (mark) price |
limit_price | number > 0? | — | If set, places stop_limit instead of stop |
confirm | bool | false |
strike_place_bracket_limit
Limit entry + take-profit + (optional) stop-loss as a single Strike strategy order. The TP/SL only activate after the entry fills, so they don't get rejected for "no position to reduce" the way standalone reduce-only orders do. Strike OCO-cancels the survivor when one fills.
| Name | Type | Default | Notes |
|---|---|---|---|
symbol | string | — | |
side | long / short | — | Entry side. TP/SL go opposite automatically. |
quantity | number > 0 | — | Entry size |
entry_price | number > 0 | — | Entry limit price |
tp_stop_price | number > 0 | — | TP trigger (mark) price |
tp_limit_price | number > 0? | tp_stop_price | TP limit after trigger; defaults to the trigger |
sl_stop_price | number > 0? | — | Omit for TP-only bracket |
sl_limit_price | number > 0? | — | If omitted with sl_stop_price, SL is a market stop |
confirm | bool | false |
Example prompt:
Place a long
bracket_limitonBTC. Use 1% of my account balanace. Entry at 66,800; TP at 68,500; SL at 66,000. Dry-run first, then confirm.
For multi-TP setups (e.g. 50/30/20 sizing), call this once per TP slice with the matching quantity and TP levels.
strike_cancel_order
Cancel a resting order by ID.
| Name | Type | Default | Notes |
|---|---|---|---|
orderId | string | — | Numeric order ID or client_order_id UUID, as returned by strike_get_open_orders |
symbol | string | — | |
confirm | bool | false |
Example prompt:
List my open orders, then cancel the BTC limit at 65,000.
