Apex Trading & Analysis
Verified@joshlin111
npx machina-cli add skill @joshlin111/apex-trading --openclawApeX Trading Skill
Full trading and portfolio management for ApeX perpetual futures exchange.
Prerequisites
Install dependencies once:
cd skills/apex/scripts && npm install
Authentication
Private operations require API credentials and an Omni seed:
APEX_API_KEYAPEX_API_SECRETAPEX_API_PASSPHRASEAPEX_OMNI_SEED
Important: APEX_OMNI_SEED is required by the SDK for order-related operations. Treat it like a private key/seed phrase and keep it strictly local. Do not share it or commit it.
Testnet:
- Set
APEX_TESTNET=1(orAPEX_ENV=qa).
Core Operations
Market Data (Public)
Get price for a coin:
node scripts/apex.mjs price BTC
List available symbols:
node scripts/apex.mjs meta
Portfolio Monitoring (Private)
Check balance:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs balance
View positions with P&L:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs positions
Check open orders:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs orders
View trade history:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs fills
Trading Operations
All trading commands require the ApeX API credentials and seed.
Place limit orders:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs limit-buy BTC 0.1 45000
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs limit-sell ETH 1 3000
Market orders:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs market-buy BTC 0.5
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs market-sell ETH 2
Cancel orders:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs cancel-all
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs cancel-all BTC
Submit trade reward enrollment:
APEX_API_KEY=... APEX_API_SECRET=... APEX_API_PASSPHRASE=... APEX_OMNI_SEED=... \
node scripts/apex.mjs submit-reward 12345
Output Formatting
All commands output JSON. Parse and format for chat display:
For balance/portfolio:
- Show total equity and available balance
- List positions with size, entry price, unrealized P&L
- Summarize open orders
For trade execution:
- Confirm order details before executing
- Report order ID and status after execution
- Show filled price if immediately executed
Safety Guidelines
Before executing trades:
- Confirm trade parameters with user (symbol, size, side, price)
- Show current price and position for context
- Calculate estimated cost/proceeds
Position sizing:
- Warn if trade is >20% of account equity
- Suggest appropriate sizes based on account balance
Price checks:
- For limit orders, compare limit price to current market price
- Warn if limit price is >5% away from market (likely mistake)
Error Handling
Common errors:
- "Missing APEX credentials" → Set API key, secret, passphrase, and seed
- "Unknown symbol" → Check available symbols with
meta - HTTP errors → Check network connection and API status
When errors occur:
- Show the error message to user
- Suggest fixes (set env vars, check symbol names, verify balance)
- Don't retry trades automatically
Trigger Phrases
Use submit-reward when the user expresses enrollment intent for OpenClaw activities or contests. If no reward ID is provided, default to 300001.
English examples:
- "Enroll me in the OpenClaw trading contest"
- "Register for OpenClaw activity"
- "Sign up for the OpenClaw contest"
- "Join the OpenClaw trading contest"
Chinese examples:
- "报名活动"
- "参加活动"
- "报名OpenClaw活动"
- "参加OpenClaw交易赛"
If the user provides a reward ID, use it. Otherwise use the default.
Workflow Examples
"How's my ApeX portfolio?"
- Run
balanceto get total equity - Run
positionsto get open positions - Format summary: equity, positions with P&L, total unrealized P&L
"Buy 0.5 BTC on ApeX"
- Run
price BTCto get current price - Confirm with user: "Buy 0.5 BTC at market? Current price: $X. Estimated cost: $Y"
- Execute
market-buy BTC 0.5 - Report result
"What's the current BTC price on ApeX?"
- Run
price BTC - Format response: "BTC: $X on ApeX"
"Close my ETH position"
- Run
positionsto get current ETH position size - If long → market-sell, if short → market-buy
- Execute with position size
- Report result
"Enroll me in OpenClaw Trading Contest"
- Run
submit-reward(defaults to 300001) - Report result
Advanced Features
List all available symbols:
node scripts/apex.mjs meta
Notes
- Symbols use
-USDTformat for trading (e.g.,BTC-USDT). - Public market data endpoints often use
BTCUSDTformat. - Prices are in USD.
- ApeX uses perpetual futures, not spot trading.
- Check references/api.md for API details.
Overview
ApeX Trading & Analysis provides full trading and portfolio management for ApeX perpetual futures exchange. It supports checking balances, viewing positions with unrealized P&L, placing and canceling orders, executing market trades, and enrolling in trade rewards. Use it when you need ApeX trading assistance, portfolio status, crypto positions, activity enrollments, or to execute trades on ApeX.
How This Skill Works
The skill runs via a local script (scripts/apex.mjs) and requires ApeX API credentials plus a private Omni seed for order-related operations. Install dependencies with npm install and enable testnet mode with APEX_TESTNET=1 or APEX_ENV=qa. Core operations are divided into public market data (price, meta) and private portfolio management (balance, positions, orders, fills) plus trading actions (limit/market orders, cancel-all, and submit-reward enrollments).
When to Use It
- Check ApeX price or list available symbols (meta) to decide which asset to trade
- Review your balance and open positions with unrealized P&L before trading
- Inspect open orders or trade history (fills) to track activity
- Place or modify trades with limit or market orders on ApeX
- Submit or manage trade reward enrollments
Quick Start
- Step 1: cd skills/apex/scripts && npm install
- Step 2: Export credentials and seed (optionally enable testnet: APEX_TESTNET=1)
- Step 3: Try quick checks, e.g. node scripts/apex.mjs price BTC and node scripts/apex.mjs balance
Best Practices
- Always confirm trade parameters (symbol, size, side, price) with the user
- Show current price and your position before executing a trade
- Calculate estimated cost or proceeds before placing an order
- Keep APEX credentials and APEX_OMNI_SEED secure and local
- Use testnet for exploration; size trades conservatively and monitor risk (avoid >20% of equity; alert if limit price is >5% from market)
Example Use Cases
- Check BTC price, balance, and current positions to assess readiness
- View P&L after a recent trade to evaluate performance
- Place a limit-buy BTC 0.1 at 45000 to enter a position
- Submit a market-sell ETH 2 to exit a position
- Submit reward enrollment with ID 12345