Skip to content
Worix
BrowsePublish
Log inSign Up

Gate Exchange Spot

Gate spot trading and account operations skill. Use this skill whenever the user asks to buy/sell crypto, check account value, cancel/amend spot orders, plac...

60 downloads
Free
Reviewed

Gate Spot Trading Assistant

Execute integrated operations for Gate spot workflows, including:

  • Buy and account queries (balance checks, asset valuation, minimum order checks)
  • Smart monitoring and trading (automatic price-condition limit orders, no take-profit/stop-loss support)
  • Order management and amendment (price updates, cancellations, fill verification, cost-basis checks, swaps)

Domain Knowledge

Tool Mapping by Domain

GroupTool Calls (jsonrpc: call.method)
Account and balancesget_spot_accounts
Place/cancel/amend orderscreate_spot_order, cancel_all_spot_orders, cancel_spot_order, amend_spot_order
Open orders and fillslist_spot_orders, list_spot_my_trades
Market dataget_spot_tickers, get_spot_order_book, get_spot_candlesticks
Trading rulesget_currency, get_currency_pair
Feesget_wallet_fee

Key Trading Rules

  • Use BASE_QUOTE format for trading pairs, for example BTC_USDT.
  • Check quote-currency balance first before buy orders (for example USDT).
  • Amount-based buys must satisfy min_quote_amount (commonly 10U).
  • Quantity-based buys/sells must satisfy minimum size and precision (min_base_amount / amount_precision).
  • Condition requests (such as "buy 2% lower" or "sell when +500") are implemented by calculating a target price and placing a limit order; no background watcher process is used.
  • Take-profit/stop-loss (TP/SL) is not supported: do not create trigger orders and do not execute automatic TP/SL at target price.

Market Order Parameter Extraction Rules (Mandatory)

When calling create_spot_order with type=market, fill amount by side:

sideamount meaningExample
buyQuote-currency amount (USDT)"Buy 100U BTC" -> amount="100"
sellBase-currency quantity (BTC/ETH, etc.)"Sell 0.01 BTC" -> amount="0.01"

Pre-check before execution:

  • buy market order: verify quote-currency balance can cover amount (USDT).
  • sell market order: verify base-currency available balance can cover amount (coin quantity).

Workflow

When the user asks for any spot trading operation, follow this sequence.

Step 1: Identify Task Type

Classify the request into one of these six categories:

  1. Buy (market/limit/full-balance buy)
  2. Sell (full-position sell/conditional sell)
  3. Account query (total assets, balance checks, tradability checks)
  4. Order management (list open orders, amend, cancel)
  5. Post-trade verification (filled or not, credited amount, current holdings)
  6. Combined actions (sell then buy, buy then place sell order, trend-based buy)

Step 2: Extract Parameters and Run Pre-checks

Extract key fields:

  • currency / currency_pair
  • side (buy/sell)
  • amount (coin quantity) or quote_amount (USDT amount)
  • price or price condition (for example "2% below current")
  • trigger condition (execute only when condition is met)

When type=market, normalize parameters as:

  • side=buy: amount = quote_amount (USDT amount)
  • side=sell: amount = base_amount (base-coin quantity)

Pre-check order:

  1. Trading pair/currency tradability status
  2. Minimum order amount/size and precision
  3. Available balance sufficiency
  4. User condition satisfaction (for example "buy only below 60000")

Step 3: Final User Confirmation Before Any Order Placement (Mandatory)

Before every create_spot_order, always provide an Order Draft first, then wait for explicit confirmation.

Required execution flow:

  1. Send order draft (no trading call yet)
  2. Wait for explicit user approval
  3. Only after approval, submit the real order
  4. Without approval, perform query/estimation only, never execute trading
  5. Treat confirmation as single-use: after one execution, request confirmation again for any next order

Required confirmation fields:

  • trading pair (currency_pair)
  • side and order type (buy/sell, market/limit)
  • amount meaning and value
  • limit price (if applicable) or pricing basis
  • estimated fill / estimated cost or proceeds
  • main risk note (for example slippage)

Recommended draft wording:

  • Order Draft: BTC_USDT, buy, market, amount=100 USDT, estimated fill around current ask, risk: slippage in fast markets. Reply "Confirm order" to place it.

Allowed confirmation responses (examples):

  • Confirm order, Confirm, Proceed, Yes, place it

Hard blocking rules (non-bypassable):

  • NEVER call create_spot_order unless the user explicitly confirms in the immediately previous turn.
  • If the conversation topic changes, parameters change, or multiple options are discussed, invalidate old confirmation and request a new one.
  • For multi-leg execution (for example case 15/22), require confirmation for each leg separately before each create_spot_order.

If user confirmation is missing, ambiguous, or negative:

  • do not place the order
  • return a pending status and ask for explicit confirmation
  • continue with read-only actions only (balance checks, market quotes, fee estimation)

Step 4: Call Tools by Scenario

Use only the minimal tool set required for the task:

  • Balance and available funds: get_spot_accounts
  • Rule validation: get_currency_pair
  • Live price and moves: get_spot_tickers
  • Order placement: create_spot_order
  • Cancel/amend: cancel_all_spot_orders / cancel_spot_order / amend_spot_order
  • Open order query: list_spot_orders (use status=open)
  • Fill verification: list_spot_my_trades

Step 5: Return Actionable Result and Status

The response must include:

  • Whether execution succeeded (or why it did not execute)
  • Core numbers (price, quantity, amount, balance change)
  • If condition not met, clearly explain why no order is placed now

Case Routing Map (1-25)

A. Buy and Account Queries (1-8)

CaseUser IntentCore DecisionTool Sequence
1Market buyPlace market buy if USDT is sufficientget_spot_accounts → create_spot_order
2Buy at target priceCreate a limit buy orderget_spot_accounts → create_spot_order
3Buy with all balanceUse all available USDT balance to buyget_spot_accounts → create_spot_order
4Buy readiness checkCurrency status + min size + current unit priceget_currency → get_currency_pair → get_spot_tickers
5Asset summaryConvert all holdings to USDT valueget_spot_accounts → get_spot_tickers
6Cancel all then check balanceCancel all open orders and return balancescancel_all_spot_orders → get_spot_accounts
7Sell dustSell only if minimum size is metget_spot_accounts → get_currency_pair → create_spot_order
8Balance + minimum buy checkPlace order only if account balance and min_quote_amount are both satisfiedget_spot_accounts → get_currency_pair → create_spot_order

B. Smart Monitoring and Trading (9-16)

CaseUser IntentCore DecisionTool Sequence
9Buy 2% lowerPlace limit buy at current price -2%get_spot_tickers → create_spot_order
10Sell at +500Place limit sell at current price +500get_spot_tickers → create_spot_order
11Buy near today's lowBuy only if current price is near 24h lowget_spot_tickers → create_spot_order
12Sell on 5% drop requestCalculate target drop price and place sell limit orderget_spot_tickers → create_spot_order
13Buy top gainerAuto-pick highest 24h gainer and buyget_spot_tickers → create_spot_order
14Buy larger loserCompare BTC/ETH daily drop and buy the bigger loserget_spot_tickers → create_spot_order
15Buy then place sellMarket buy, then place sell at +2% reference pricecreate_spot_order → create_spot_order
16Fee estimateEstimate total cost from fee rate and live priceget_wallet_fee → get_spot_tickers

C. Order Management and Amendment (17-25)

CaseUser IntentCore DecisionTool Sequence
17Raise price for unfilled orderConfirm how much to raise (or target price), locate unfilled buy orders, confirm which order to amend if multiple, then amend limit pricelist_spot_orders(status=open) → amend_spot_order
18Verify fill and holdingsLast buy fill quantity + current total holdingslist_spot_my_trades → get_spot_accounts
19Cancel if not filledIf still open, cancel and then recheck balancelist_spot_orders(status=open) → cancel_spot_order → get_spot_accounts
20Rebuy at last priceUse last fill price, check balance, then place limit buylist_spot_my_trades → get_spot_accounts → create_spot_order
21Sell at break-even or betterSell only if current price is above cost basislist_spot_my_trades → get_spot_tickers → create_spot_order
22Asset swapEstimate value, if >=10U then sell then buyget_spot_accounts → get_spot_tickers → create_spot_order(sell) → create_spot_order(buy)
23Buy if price condition metBuy only when current < 60000, then report balanceget_spot_tickers → create_spot_order → get_spot_accounts
24Buy on trend conditionBuy only if 3 of last 4 hourly candles are bullishget_spot_candlesticks → create_spot_order
25Fast-fill limit buyUse best opposite-book price for fast executionget_spot_order_book → create_spot_order

Judgment Logic Summary

ConditionAction
User asks to check balance before buyingMust call get_spot_accounts first; place order only if sufficient
User specifies buy/sell at target priceUse type=limit at user-provided price
User asks for fastest fill at current marketPrefer market; if "fast limit" is requested, use best book price
Market buy (buy)Fill amount with USDT quote amount, not base quantity
Market sell (sell)Fill amount with base-coin quantity, not USDT amount
User requests take-profit/stop-lossClearly state TP/SL is not supported; provide manual limit alternative
Any order placement requestRequire explicit final user confirmation before create_spot_order
User has not replied with clear confirmationKeep order as draft; no trading execution
Confirmation is stale or not from the immediately previous turnInvalidate it and require a fresh confirmation
Multi-leg trading flowRequire per-leg confirmation before each create_spot_order
User asks to amend an unfilled buy orderConfirm price increase amount or exact target price before amend_spot_order
Multiple open buy orders match amendment requestAsk user to choose which order to amend before executing
User amount is too smallCheck min_quote_amount; if not met, ask user to increase amount
User requests all-in buy/sellUse available balance, then trim by minimum trade rules
Trigger condition not metDo not place order; return current vs target price gap

Report Template

## Execution Result

| Item | Value |
|------|-----|
| Scenario | {case_name} |
| Pair | {currency_pair} |
| Action | {action} |
| Status | {status} |
| Key Metrics | {key_metrics} |

{decision_text}

Example decision_text:

  • ✅ Condition met. Your order has been placed.
  • 📝 Order draft ready. Reply "Confirm order" to execute.
  • ⏸️ No order placed yet: current price is 60200, above your target 60000.
  • ❌ Not executed: minimum order amount is 10U, your input is 5U.

Error Handling

Error TypeTypical CauseHandling Strategy
Insufficient balanceNot enough available USDT/coinsReturn shortfall and suggest reducing order size
Minimum trade constraintBelow minimum amount/sizeReturn threshold and suggest increasing order size
Unsupported capabilityUser asks for TP/SLClearly state unsupported, propose manual limit-order workflow
Missing final confirmationUser has not clearly approved final order summaryKeep order pending and request explicit confirmation
Stale confirmationConfirmation does not match the current draft or is not in the previous turnReject execution and ask for reconfirmation
Draft-only modeUser has not confirmed yetOnly run query/estimation tools; do not call create_spot_order
Ambiguous amendment targetMultiple candidate open buy ordersKeep pending and ask user to confirm order ID/row
Order missing/already filledAmendment/cancellation target is invalidAsk user to refresh open orders and retry
Market condition not metTrigger condition is not satisfiedReturn current price, target price, and difference
Pair unavailableCurrency suspended or abnormal statusClearly state pair is currently not tradable

Cross-Skill Workflows

Workflow A: Buy Then Amend

  1. Place order with gate-exchange-spot (Case 2/9/23)
  2. If still unfilled, amend price (Case 17)

Workflow B: Cancel Then Rebuy

  1. Cancel all open orders to release funds (Case 6)
  2. Re-enter with updated strategy (Case 1/2/9)

Safety Rules

  • For all-in/full-balance/one-click requests, restate key amount and symbol before execution.
  • For condition-based requests, explicitly show how the trigger threshold is calculated.
  • If user asks for TP/SL, do not pretend support; clearly state it is not supported.
  • Before any order placement, always request explicit final user confirmation.
  • Without explicit confirmation, stay in draft/query/estimation mode and never execute trade placement.
  • Do not reuse old confirmations; if anything changes, re-draft and re-confirm.
  • For fast-fill requests, warn about possible slippage or order-book depth limits.
  • For chained actions (sell then buy), report step-by-step results clearly.
  • If any condition is not met, do not force execution; explain and provide alternatives.

Download

ZIP package — ready to use

Skill Info

Creator
Creator
Downloads
60
Published
Mar 15, 2026
Updated
Mar 16, 2026