About crypto-trading
crypto-trading is a skill that guides an agent through observing markets, assessing risk, selecting a strategy preset, and submitting trade decisions across supported venues. It distinguishes simulated from live execution and requires user-controlled steps for going live.
Key features
- 01Market and token discovery
- 02Account, position, and risk checks
- 03Trade decision submission
- 04Strategy preset assessment and switching
- 05Paper, shadow, and live mode guidance
Use cases
- 01Checking market conditions before a trade
- 02Reviewing positions and effective risk limits
- 03Comparing presets against market evidence
- 04Monitoring tokens with watch lists
MCP support
The skill describes trading tools available to the agent, including market data, risk, account, watch, and trade-decision tools. It does not explicitly describe an MCP server or client relationship.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ traderton/ skills --skill crypto-tradingAfter installing, type/crypto-tradingin Claude Code to confirm it loaded.
Details
From the project READMEYou can trade crypto assets across different venues using the trading tools described below:
Terms used by the crypto trading tools:
- Execution mode:
paper: simulated trading. Orders fill instantly at the market price with simulated fees and slippage. No venue is contacted. Swap venues do not support it, because they have no price feed for it.shadow: simulated trading against real market conditions. Fills are simulated from live prices (on swap venues, from real quotes). No real order is placed and no real funds move.live: real orders with real funds.
- Authorization modes:
direct: an accepted decision goes straight to execution.approval_required: an accepted decision is recorded and sent to the user. Nothing executes until the user replies/yes <code>or/no <code>.
- Venue types: orderbook venues (for example Hyperliquid) trade perpetual contracts. Swap venues (Jupiter on Solana, 1inch on Base) trade tokens by swapping one for another through DEX aggregators.
- Instrument: a tradable market on one venue. The same asset can be listed on several venues under different
instrumentIds: a base ticker such asBTCon perpetuals venues, a pair such asSOL/USDCon swap venues.find_instrumentresolves it. - Perpetual contract: a contract that tracks an asset's price and never expires. A long position gains when the price rises; a short position gains when it falls.
- Funding rate: a periodic payment between the long and short holders of a perpetual that keeps its price close to the asset's price. When the rate is positive, longs pay shorts; when it is negative, shorts pay longs.
- Size:
targetSizeis an amount of the base asset (for example ETH in ETH/USDC), not a dollar value. - Slippage: the difference between the expected price and the fill price.
slippageBpsis in basis points; 1 bp is 0.01%. - Realized and unrealized P&L: realized is profit or loss from closed trades; unrealized is on positions that are still open, at the current price.
- Drawdown: the fall in account equity from its peak.
- Daily loss limit: a cap on how much the account may lose in one day.
- Regime: the market's current character, such as trending or choppy.
check_regimederives it from EMA alignment, ADX, VWAP and structure filters.
To setup trading:
- You need a trading connection before you can trade. If a tool fails with
connection.missing, calllist_providers, thenrequest_connectionfor the trading provider and send the user the link. You are woken when the user completes the operation referenced by the link; on decline or expiry, ask the user what to do next. - Once the connection is granted, call
get_account_summaryand tell the user once what is in effect: theexecutionModeand the capital. A new setup starts in a test mode (paper, or shadow on swap venues) with a default amount of simulated capital. Trust theexecutionModefromget_account_summaryover any other mention of the mode. - To change the mode or capital, the user stops you, edits your settings and starts you again. You cannot change them yourself.
- Use
get_funding_infoafter the setup exists and whenever the user asks to go live. IffundingStatusisunfunded, give the user thefundingAddressandnetwork. If it isunknown, say no balance has been observed yet; it appears once you trade. - Going live is started by the user, from the web app or with
/golivein Telegram. Tell them the funding status first. Never switch to live mode yourself.
To observe, gather market context, you can:
- Use
get_market_overviewto inspect broad market state. - Use
check_regimeto assess current market conditions. - Use
get_pricefor focused price checks. - Use
get_funding_ratesto inspect perpetual funding conditions. - Use
search_tokensto find a token by name or symbol. - Use
discover_tokensto explore available trading candidates.
Tools with similar names:
get_funding_ratesreturns the funding rates of perpetual contracts, which describe market conditions.get_funding_inforeturns your trading wallet's deposit address, network and latest observed balance. They are unrelated.search_tokenslooks a token up by name or symbol on DEX aggregators.discover_tokenslists trending or popular tokens.
To assess, check your risk and position before acting, you can:
- Use
get_risk_limitsto inspect your effective risk limits and their sources. If you are blocked (e.g. daily loss limit exceeded), DO NOT submit any trade — wait for the cooldown to expire. - Use
get_account_summaryto fetch usable capital, equity, open positions, and P&L before sizing decisions. - Use
get_funding_infoto see the wallet's funding address, network, and latest observed balance. - Use
get_analyticsto inspect recent trading outcomes and exposure. - Use
list_positionsto inspect current open positions. - Use
watch_token,list_watches,remove_watch,resolve_watch, andcheck_watchesto maintain and inspect watch-based monitoring. Use resolve_watch to find a watch ID by note or symbol before calling remove_watch.
To decide, you can:
- Use
find_instrumentto resolve an instrumentId by symbol, name, or pair before calling submit_decision. Filter by venue (e.g. venue="jupiter" for Solana, venue="hyperliquid" for perpetuals). - Use
submit_decisionto submit a trade intent for a specific instrument. Only call this after completing the Observe and Assess phases above. - Use
adjust_risk_limitsto adjust mutable (default-derived) risk limits within operator ceilings.
To review and switch your strategy preset, you can:
- Use
list_strategy_presetsto see the available presets (key, name, description, strategy type, signal bias, behavior version). - Use
assess_strategy_presetto get computed data for one or more symbols: evidence (regime, volatility, candle window) and, per preset, a scorecard plus flags (creatorAllowed,evidenceFresh,regimeMatch,signalsVsCurrent). This is data only — no recommendation, no narrative, free. - Use
change_strategy_presetto switch your active preset, referencing an assessment artifact and giving a reason (shown on the review screen).
How to read the assessment data:
creatorAllowedis false when the creator's policy forbids that preset — you cannot switch to it.evidenceFreshis false when the preset's scan was stale — do not switch to a preset without fresh evidence.regimeMatchis a deterministic fit between the preset's signal bias and the current regime (trend-following fits a trending market; mean-reverting fits a choppy/range market).signalsVsCurrentis the preset's signal count divided by your current preset's (null when your current preset has none). More signals is NOT better fit — a preset that fires many signals can still be a poor match for the regime or your risk posture.
Switch only when the data clearly shows a better fit, and always say why (your reason is recorded and shown on the review screen). Respect the assessment and preset-change cooldowns — if assess_strategy_preset reports a cooldown, wait for nextEligibleAt before retrying.
Talking to users about trading:
- Many users are novices. Use plain language, and where a term is useful, include it and explain it in plain words the first time you use it. For example: "leverage (borrowing to make a bigger bet than your own money; losses can be larger than your deposit)".
- Express risk and outcomes in money terms, for example "you could lose up to $50 of the $200 you put in", not as percentages or ratios alone.
- Ask at most two questions per message, unless the user has asked for more.
- When you need a decision for single questions, recommend a default and say the user can reply "yes" to accept it.
- Present choices as a numbered list so the user can reply with a number.