From cdcx-cli
Places LIMIT/MARKET orders, amends prices/quantities, cancels orders, closes positions via CLI with dry-run previews, preflight checks, and tiered safety model.
npx claudepluginhub crypto-com/cdcx-cli --plugin cdcx-cliThis skill uses the workspace's default tool permissions.
- Place a LIMIT or MARKET order
Guides cdcx CLI limit order workflow: preflight checks, dry-run, placement, monitoring, amend, cancel, and laddered patterns for precise crypto trades.
Executes Kraken spot buy/sell orders via CLI with price reads, payload validation, human confirmation, execution, and post-trade checks. Use for safe programmatic trading.
Executes trades for stocks, ETFs, options, crypto; analyzes markets, manages portfolios and orders via apcacli CLI for Alpaca Trading API. Use for buy/sell, market data, positions, account checks.
Share bugs, ideas, or general feedback.
Requires authentication.
Every order command lives in one of two tiers:
| Tier | Commands | Behaviour |
|---|---|---|
mutate | order, amend, cancel, order-list, cancel-list, close-position | Requires acknowledged=true in MCP mode; CLI prompts unless --yes |
dangerous | cancel-all | Requires --allow-dangerous on the MCP server |
Always use --dry-run first to preview the request body.
| Tool | Purpose | Tier |
|---|---|---|
| cdcx_trade_order | Place a new BUY or SELL | mutate |
| cdcx_trade_amend | Amend price/quantity of open order | mutate |
| cdcx_trade_cancel | Cancel a single order | mutate |
| cdcx_trade_cancel_all | Cancel every order | dangerous |
| cdcx_trade_order_list | Place up to 10 orders in one call | mutate |
| cdcx_trade_cancel_list | Cancel up to 10 orders in one call | mutate |
| cdcx_trade_close_position | Close an open position (async) | mutate |
| cdcx_trade_open_orders | List open orders | sensitive_read |
| cdcx_trade_order_detail | Lookup by order_id or client_oid | sensitive_read |
# 1. Preflight — verify funds and current price
cdcx account summary -o json
cdcx market ticker BTC_USDT -o json
# 2. Preview
cdcx trade order BUY BTC_USDT 0.01 \
--type LIMIT --price 50000 \
--dry-run -o json
# 3. Place
cdcx trade order BUY BTC_USDT 0.01 \
--type LIMIT --price 50000 \
--client-oid my-buy-001 \
-o json
# 4. Confirm
cdcx trade order-detail --client-oid my-buy-001 -o json
Positional args: <side> <instrument> <quantity>. Side is BUY or SELL.
cdcx trade order BUY BTC_USDT 0.01 --type MARKET -o json
For MARKET BUYs you can alternatively use --notional to spend a fixed USDT amount: cdcx trade order BUY BTC_USDT --type MARKET --notional 500.
cdcx trade amend \
--order-id 123456789 \
--new-price 51000 \
--new-quantity 0.01 \
-o json
Both --new-price and --new-quantity are required — re-submit the original value for the field you don't want to change.
cdcx trade cancel --order-id 123456789 -o json
# or
cdcx trade cancel --client-oid my-buy-001 -o json
cdcx trade cancel-all BTC_USDT -o json # Per-instrument
cdcx trade cancel-all -o json # Every instrument — extreme caution
Omitting the instrument cancels everything account-wide. MCP mode rejects this unless the server was started with --allow-dangerous.
cdcx account positions BTCUSD-PERP -o json # Find the position
cdcx trade close-position BTCUSD-PERP --type MARKET -o json
--type MARKET closes at market. --type LIMIT --price <p> closes with a working limit. --quantity <q> closes partially.
cdcx trade order-list --order-list '[
{"instrument_name":"BTC_USDT","side":"BUY","type":"LIMIT","price":"49000","quantity":"0.01"},
{"instrument_name":"BTC_USDT","side":"BUY","type":"LIMIT","price":"48000","quantity":"0.01"}
]' -o json
Up to 10 orders per call. Use cdcx trade cancel-list with matching IDs to revert.
cdcx trade open-orders BTC_USDT -o json # Per-instrument
cdcx trade open-orders -o json # All instruments
--client-oid (≤36 chars) for correlation between your code and exchange records--dry-run is free — use it before every live order while the strategy is newprice_tick_size and quantities that don't match quantity_tick_size — get these from cdcx market instrumentsclose-position is async: the reply is an ack, not a fill. Verify with cdcx account positions afterwardscdcx history trades, not under trade