dex-original/okx-agent-trade-kit/okx-cex-bot
Claude Code and agent skill by dex-original/okx-agent-trade-kit
- community
Checking that the SKILL.md file is still in the repository.
Manage Grid bots (spot/contract/coin-margined) and DCA Martingale bots (Spot DCA 现货马丁 / Contract DCA 合约马丁) on OKX. Covers create, stop, amend, monitor P&L, TP/SL, margin/investment adjustment, and AI-recommended parameters. Requires API credentials. Not for regular orders (okx-cex-trade), market data (okx-cex-market), or account info (okx-cex-portfolio).
Install
npx vskill@latest install dex-original/okx-agent-trade-kit/okx-cex-botSKILL.md
OKX CEX Bot Trading
Grid and DCA (Spot & Contract Martingale) bot management on OKX. All bots are native OKX server-side — they run on OKX and do not require a local process.
Preflight
Before running any command, follow `../_shared/preflight.md`. Use metadata.version from this file's frontmatter as the reference for Step 2.
Prerequisites
Security: NEVER accept credentials in chat. Guide users tookx config initfor setup.
Credential & Profile Check
Run before every authenticated command. The auth method is detected during preflight Step 2 and remembered for the session.
Step A — Verify credentials
Run both commands — the apiKey field from okx auth status --json is the auth-binary's internal state and is always false regardless of whether ~/.okx/config.toml has an API-key profile. okx config show --json is the only authoritative source for API-key presence.
Apply in this order — first match wins:
config show --jsonhas any profile with a non-emptyapi_keyfield → API Key mode. Proceed to Step B.- No API-key profile AND
auth status --jsonreturns"status":"logged_in"→ OAuth mode. Proceed to Step B. - No API-key profile AND
"status":"pending"— login is in progress, wait for it to complete. - No API-key profile AND
"status":"not_logged_in"— stop, loadokx-cex-authskill and follow login steps, wait for completion.
Step B — Confirm trading mode
Resolution:
- User intent is clear ("real"/"实盘"/"live" → live; "test"/"模拟"/"demo" → demo) → use it, inform user
- No explicit declaration → check conversation context for previous choice → reuse if found
- Nothing found → ask: "Live (实盘) or Demo (模拟盘)?" — wait before proceeding
How to apply the mode depends on auth method (detected in Step A):
| Auth method | Live (实盘) | Demo (模拟盘) | |
|---|---|---|---|
| API Key | --profile <live-profile> | --profile <demo-profile> | |
| OAuth | (no flag needed, live is default) | --demo |
- API Key users: run
okx config show --jsonto discover available profile names and theirdemosettings. - OAuth users: omit flags for live; add
--demofor simulated trading.
After every command: append [mode: live] or [mode: demo]
Handling 401 Errors
Authentication error (error contains "401", "Session expired", or "Run okx auth login first"):
- Stop immediately
- Load
okx-cex-authskill and follow re-authentication steps - Retry original command
Skill Routing
| Need | Skill | |
|---|---|---|
| Market data, prices, depth | okx-cex-market | |
| Account balance, positions, fees | okx-cex-portfolio | |
| Regular spot/swap/futures orders | okx-cex-trade | |
| Grid / DCA bots | `okx-cex-bot` (this skill) |
Command Index
Grid Bot
| Command | Type | Description | |
|---|---|---|---|
okx bot grid create | WRITE | Create a grid bot (spot or contract) | |
okx bot grid amend | WRITE | Amend price range, grid count, or TP/SL of a running grid bot | |
okx bot grid stop | WRITE | Stop a grid bot | |
okx bot grid orders | READ | List active or history grid bots | |
okx bot grid details | READ | Grid bot details + PnL | |
okx bot grid sub-orders | READ | Individual grid fills or pending orders |
DCA Bot (Spot & Contract)
| Command | Type | Description | |
|---|---|---|---|
okx bot dca create | WRITE | Create a DCA (Martingale) bot (spot or contract) | |
okx bot dca stop | WRITE | Stop a DCA bot (spot or contract) | |
okx bot dca orders | READ | List active or history DCA bots (default: contract_dca) | |
okx bot dca details | READ | DCA bot details + PnL | |
okx bot dca sub-orders | READ | DCA cycles and orders within a cycle |
Operation Flow
Step 1 — Identify bot type and action
Parse user request → determine module (Grid / DCA) and action (create / stop / list / details).
Step 2 — Execute
READ commands (orders, details, sub-orders): run immediately after profile confirmation.
WRITE commands (create, amend, stop): confirm key parameters with user once before executing.
Step 3 — Verify after writes
- After create → run the corresponding
orderscommand to confirm active - After amend → run
bot grid detailsto confirm updated config - After stop → run
orders --historyto confirm stopped
Key Rules
- Never auto-transfer funds. If balance is insufficient for bot creation, report the shortfall (current available vs required) and ask the user how to proceed: (1) transfer funds manually, (2) reduce size, or (3) cancel.
- `algoId` is the bot's algo order ID (from create or list output). It is NOT a normal
ordId. Never fabricate — always obtain from a prior command. - `algoOrdType` for grid must match the bot's actual type. Always use the value from
bot grid orders— do not infer from user description alone. Mismatch causes error50016. - When operating on existing bots, always list first to get correct IDs, unless the user provides them explicitly.
- TP/SL constraints:
tpTriggerPx/tpRatioandslTriggerPx/slRatioare mutually exclusive pairs.
CLI Command Reference
Grid Bot — Create
| Param | Required | Default | Description | |
|---|---|---|---|---|
--instId | Yes | - | Instrument (e.g., BTC-USDT for spot, BTC-USDT-SWAP for USDT-M contract, BTC-USD-SWAP for coin-M contract) | |
--algoOrdType | Yes | - | grid (spot grid) or contract_grid (contract grid, including coin-margined) | |
--maxPx | Yes | - | Upper price boundary | |
--minPx | Yes | - | Lower price boundary | |
--gridNum | Yes | - | Grid levels (2–100) | |
--runType | No | 1 | 1=arithmetic spacing, 2=geometric spacing | |
--quoteSz | Cond. | - | USDT investment — spot grid only (provide quoteSz or baseSz) | |
--baseSz | Cond. | - | Base currency investment — spot grid only | |
--direction | Cond. | - | long, short, or neutral — required for contract grid | |
--lever | Cond. | - | Leverage (e.g., 5) — contract grid only | |
--sz | Cond. | - | Investment margin in USDT (USDT-M) or coin (coin-M) — contract grid only | |
--basePos / --no-basePos | No | true | Open a base position at creation — contract grid only (ignored for neutral). Use --no-basePos to disable | |
--tpTriggerPx | No | - | Take-profit trigger price (mutually exclusive with --tpRatio) | |
--slTriggerPx | No | - | Stop-loss trigger price (mutually exclusive with --slRatio) | |
--tpRatio | No | - | Take-profit ratio — contract grid only (mutually exclusive with --tpTriggerPx) | |
--slRatio | No | - | Stop-loss ratio — contract grid only (mutually exclusive with --slTriggerPx) | |
--algoClOrdId | No | - | Client-defined algo order ID (1-32 alphanumeric). Unique per user, enables idempotent creation |
Grid Bot — Amend
Supports two modes that can be combined in one call:
Price-range mode — triggered when --maxPx is provided:
| Param | Required | Description | |
|---|---|---|---|
--algoId | Yes | Grid bot algo order ID | |
--maxPx | Yes | New upper price boundary | |
--minPx | Yes (with maxPx) | New lower price boundary | |
--gridNum | Yes (with maxPx) | New grid count (integer) | |
--topUpAmt | No | Extra margin to add (contract grid only; omit to auto-use minimum required) |
TP/SL mode — triggered when at least one TP/SL param is provided; --instId is also required:
| Param | Required | Description | |
|---|---|---|---|
--instId | Yes | Instrument ID (e.g., BTC-USDT) | |
--tpTriggerPx | No | Take-profit trigger price (absolute). Pass -1 to clear | |
--slTriggerPx | No | Stop-loss trigger price (absolute). Pass -1 to clear | |
--tpRatio | No | Take-profit ratio (e.g., 0.1 = 10%). Contract grid only. Pass -1 to clear | |
--slRatio | No | Stop-loss ratio (e.g., 0.1 = 10%). Contract grid only. Pass -1 to clear | |
--topUpAmt | No | Extra margin to add (contract grid only) |
Note:tpTriggerPx/tpRatioare mutually exclusive. Same forslTriggerPx/slRatio.
Grid Bot — Stop
`--algoId` and `--algoOrdType` must come frombot grid ordersoutput. ThealgoOrdTypemust match the bot's actual type — do not guess.
--stopType | Behavior | |
|---|---|---|
1 | Stop + sell/close all positions at market (default) | |
2 | Stop + keep current assets as-is |
Grid Bot — List Orders
| Param | Required | Default | Description | |
|---|---|---|---|---|
--algoOrdType | Yes | - | grid (spot), contract_grid (contract), or moon_grid (moon) | |
--instId | No | - | Filter by instrument | |
--algoId | No | - | Filter by algo order ID. NOT a normal trade order ID | |
--history | No | false | Show completed/stopped bots instead of active |
Grid Bot — Details
Returns: bot config, current PnL (pnlRatio), grid range, number of grids, state, position info.
Grid Bot — Sub-Orders
| Flag | Effect | |
|---|---|---|
| (default) | Filled sub-orders (executed grid trades) | |
--live | Pending grid orders currently on the book |
DCA Bot — Create (Spot & Contract)
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/okx-cex-bot/SKILL.md
Popularity
- Repository stars
- 106
- Repository forks
- 2,293
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/dex-original/okx-agent-trade-kit/okx-cex-bot)