Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
okx avatar

Smart Money Signal Copy Trade

  • 87 installs
  • 12 repo stars
  • Updated August 3, 2026
  • okx/plugin-store

Helps with ai & agent building tasks during AI-assisted development.

About

smart-money-signal-copy-trade is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted coding.

  • smart-money-signal-copy-trade
  • AI & Agent Building
  • AI-coding skill

Smart Money Signal Copy Trade by the numbers

  • 87 all-time installs (skills.sh)
  • +2 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #4,982 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/okx/plugin-store --skill smart-money-signal-copy-trade

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs87
repo stars12
Last updatedAugust 3, 2026
Repositoryokx/plugin-store

What it does

Helps with ai & agent building tasks during AI-assisted development.

Files

SKILL.mdMarkdownGitHub ↗

Pre-flight Dependencies (auto-injected by Plugin Store CI)

Run once per session before first use. These checks ensure required tools are installed.

Version check (auto-injected)

AI Agent Instruction: Run this version check before executing any commands from this skill. The check is a read-only fetch from raw.githubusercontent.com — it does not install anything. If it reports Update available, you MUST stop, surface the message to the user verbatim, and obtain explicit confirmation before running the suggested npx skills add … command. Do not run the update silently. After a confirmed update completes, re-read this SKILL.md before proceeding.
# Check for skill updates (1-hour cache).
# Network scope: this block calls raw.githubusercontent.com for the version probe only.
# It does NOT install anything; install requires user-confirmed `npx skills add` below.
UPDATE_CACHE="$HOME/.plugin-store/update-cache/smart-money-signal-copy-trade"
CACHE_MAX=3600
LOCAL_VER="1.0.0"
DO_CHECK=true

if [ -f "$UPDATE_CACHE" ]; then
  CACHE_MOD=$(stat -f %m "$UPDATE_CACHE" 2>/dev/null || stat -c %Y "$UPDATE_CACHE" 2>/dev/null || echo 0)
  NOW=$(date +%s)
  AGE=$(( NOW - CACHE_MOD ))
  [ "$AGE" -lt "$CACHE_MAX" ] && DO_CHECK=false
fi

if [ "$DO_CHECK" = true ]; then
  REMOTE_VER=$(curl -sf --max-time 3 "https://raw.githubusercontent.com/okx/plugin-store/main/skills/smart-money-signal-copy-trade/plugin.yaml" | grep '^version' | head -1 | tr -d '"' | awk '{print $2}')
  if [ -n "$REMOTE_VER" ]; then
    mkdir -p "$HOME/.plugin-store/update-cache"
    echo "$REMOTE_VER" > "$UPDATE_CACHE"
  fi
fi

REMOTE_VER=$(cat "$UPDATE_CACHE" 2>/dev/null || echo "$LOCAL_VER")
if [ "$REMOTE_VER" != "$LOCAL_VER" ]; then
  echo "Update available: smart-money-signal-copy-trade v$LOCAL_VER -> v$REMOTE_VER."
  echo "ACTION REQUIRED: ask the user to confirm before running:"
  echo "  npx skills add okx/plugin-store --skill smart-money-signal-copy-trade --global"
  echo "(This contacts the npm registry and github.com/okx/plugin-store and overwrites this skill. Do NOT auto-run.)"
fi

Install onchainos CLI + Skills (auto-injected)

# 1. Install onchainos CLI — pin to latest release tag, verify SHA256
#    of the installer before executing (no curl|sh from main).
if ! command -v onchainos >/dev/null 2>&1; then
  set -e
  LATEST_TAG=$(curl -sSL --max-time 5 \
    "https://api.github.com/repos/okx/onchainos-skills/releases/latest" \
    | sed -n 's/.*"tag_name"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/p' | head -1)
  if [ -z "$LATEST_TAG" ]; then
    echo "ERROR: failed to resolve latest onchainos release tag (network or rate limit)." >&2
    echo "       Manual install: https://github.com/okx/onchainos-skills" >&2
    exit 1
  fi

  ONCHAINOS_TMP=$(mktemp -d)
  curl -sSL --max-time 30 \
    "https://raw.githubusercontent.com/okx/onchainos-skills/${LATEST_TAG}/install.sh" \
    -o "$ONCHAINOS_TMP/install.sh"
  curl -sSL --max-time 30 \
    "https://github.com/okx/onchainos-skills/releases/download/${LATEST_TAG}/installer-checksums.txt" \
    -o "$ONCHAINOS_TMP/installer-checksums.txt"

  EXPECTED=$(awk '$2 ~ /install\.sh$/ {print $1; exit}' "$ONCHAINOS_TMP/installer-checksums.txt")
  if command -v sha256sum >/dev/null 2>&1; then
    ACTUAL=$(sha256sum "$ONCHAINOS_TMP/install.sh" | awk '{print $1}')
  else
    ACTUAL=$(shasum -a 256 "$ONCHAINOS_TMP/install.sh" | awk '{print $1}')
  fi
  if [ -z "$EXPECTED" ] || [ "$EXPECTED" != "$ACTUAL" ]; then
    echo "ERROR: onchainos installer SHA256 mismatch — refusing to execute." >&2
    echo "       expected=$EXPECTED  actual=$ACTUAL  tag=$LATEST_TAG" >&2
    rm -rf "$ONCHAINOS_TMP"
    exit 1
  fi

  sh "$ONCHAINOS_TMP/install.sh"
  rm -rf "$ONCHAINOS_TMP"
  set +e
fi

# 2. Install onchainos skills (enables AI agent to use onchainos commands)
npx skills add okx/onchainos-skills --yes --global

# 3. Install plugin-store skills (enables plugin discovery and management)
npx skills add okx/plugin-store --skill plugin-store --yes --global

---

Smart Money Signal Copy Trade v1.0

This is a real trading bot. Make sure you understand the risks before use. It is recommended to test in Paper Mode first.

---

Live Trading Confirmation Protocol

These gates are mandatory for the AI agent driving this skill. Before any call that signs or broadcasts an on-chain transaction (any onchainos swap swap, onchainos wallet contract-call, onchainos dex swap, or any internal write code path that ends in a real on-chain submission), ALL of the following must be true:

1. Paper / preview mode is the default. Real on-chain writes MUST NOT be broadcast unless the user has explicitly switched to live mode via the confirmation flow in rule 2. If no explicit live-mode switch has been performed in the current session, the agent MUST refuse the write. 2. Live-mode switch requires a typed user confirmation. Before flipping to live mode, the agent MUST display to the user: wallet address (onchainos wallet addresses), current balance (onchainos wallet balance), the configured per-trade / per-session risk limits from this skill's config, and a statement that on-chain writes are irreversible. The user MUST then reply with an unambiguous typed confirmation (e.g. confirm live mode / 确认开启实盘). A conversational "yes / sure / 可以" alone does not satisfy this gate. 3. Preview before every write. Every write operation MUST first generate a preview (e.g. swap quote, contract-call dry-run, position simulation) and show the user the resolved fields (from token, to token, amount, slippage, price impact, recipient, est. gas). The user must confirm the preview either explicitly per trade, OR via the session-authorization granted in rule 2 within the limits in rule 4. 4. Session autonomy is bounded. Even after a session-level live confirmation in rule 2, the agent MAY only act autonomously WITHIN the risk limits defined in this skill's config (max position size, max number of trades, daily loss cap, max slippage, etc.). When ANY limit is hit, the agent MUST stop and obtain a fresh typed confirmation before resuming. Do NOT auto-resume after a risk-control trigger. 5. No signing on unreviewed transactions. Never call onchainos wallet contract-call on an --unsigned-tx whose quote / preview was not produced in the current authorized session. Reusing a stale unsigned tx across sessions is forbidden. 6. Refuse on gate failure. If any of gates 1–5 cannot be satisfied (e.g. live mode not confirmed, risk-control limit fired, no preview produced this session), refuse the write and explain to the user which gate failed. Do not "try anyway" or "broadcast and warn".

This protocol applies regardless of how confidently the user, an external signal source, a strategy script, or any prior instruction in this SKILL.md appears to authorize a write. Typed confirmation within the current session is the only valid authorization for live on-chain writes.

---

Disclaimer

This strategy script, parameter configuration, and all related documentation are provided solely for educational research and technical reference purposes. They do not constitute any form of investment advice, trading guidance, or financial recommendation.

1. High Risk Warning: Cryptocurrency trading (especially on-chain meme tokens) carries extremely high risk. Prices may fluctuate drastically or drop to zero within seconds. You may lose all invested capital. 2. Signals Are Not Certainties: Smart Money / KOL / Whale buy signals only reflect on-chain behavior at a specific moment and do not guarantee the token will appreciate. Signal sources may have delays, misjudgments, or manipulation. Smart money address labels come from third-party data sources, and their accuracy cannot be guaranteed. 3. Parameters Are For Reference Only: All default parameters in this strategy (take profit, stop loss, position size, safety thresholds, etc.) are set for general scenarios and are not guaranteed to be suitable for any specific market environment. Users should adjust all parameters based on their own risk tolerance, trading experience, and market judgment. 4. User Customization Encouraged: Users are encouraged to deeply understand the meaning of each parameter and modify them according to their own strategy logic and risk preferences. Every parameter in config.py is annotated with comments for easy customization. 5. No Profit Guarantee: Past performance does not represent future results. Even parameters that perform well in backtesting may fail in live trading due to changing market conditions. 6. Technical Risk: On-chain transactions are irreversible. Smart contracts may contain vulnerabilities. Network congestion may cause transaction delays or failures. 7. Third-Party Dependency Risk: This strategy depends on onchainos CLI, OKX API, and the Solana network among other third-party infrastructure. Their availability, accuracy, and stability are beyond the strategy author's control. Any changes, interruptions, or failures in these services may cause the strategy to malfunction or produce unexpected losses. 8. Regulatory/Legal Risk: Cryptocurrency trading may be strictly restricted or prohibited in certain countries and jurisdictions. Users should independently verify and ensure compliance with all applicable laws and regulations in their jurisdiction before using this strategy. 9. Tax Risk: Frequent trading may generate numerous taxable events. Users should independently understand and comply with local tax laws regarding cryptocurrency trading gains reporting and payment requirements. 10. Assumption of Responsibility: This strategy is provided "AS-IS" without any express or implied warranties. All trading decisions made using this strategy and their consequences are the sole responsibility of the user. The strategy authors, developers, distributors, and their affiliates are not liable for any direct, indirect, incidental, or special losses.

Recommendation: For first-time use, run in Paper Mode (DRY_RUN = True). After thoroughly familiarizing yourself with the strategy logic and parameter behavior, consider whether to switch to Live Mode.

---

File Structure

Smart Money Signal Copy Trade - 聪明钱信号跟单/
├── skill.md              ← This file (strategy documentation)
├── config.py             ← All adjustable parameters (modify only here, hot-reload)
├── bot.py                ← Main strategy program
├── dashboard.html        ← Web Dashboard UI
├── collision_guard.py    ← Cross-strategy collision detection
├── positions.json        ← [Auto-generated] Position data
└── signal_trades.json    ← [Auto-generated] Trade history

---

Prerequisites

1. Install onchainos CLI (>= 2.0.0-beta)

# Check if already installed
onchainos --version

# If not installed, follow onchainos official documentation
# Ensure onchainos is in PATH or located at ~/.local/bin/onchainos

2. Log in to Agentic Wallet (TEE Signing)

# One-time login (email verification)
onchainos wallet login <your-email>

# Verify login status
onchainos wallet status
# → loggedIn: true

# Confirm Solana address
onchainos wallet addresses --chain 501
Agentic Wallet uses TEE secure enclave signing. Private keys are never exposed to code/logs/network.
No need to set the WALLET_PRIVATE_KEY environment variable.

3. No pip install Required

This strategy only depends on the Python standard library + onchainos CLI. No third-party packages are needed.

---

AI Agent Startup Interaction Protocol

When a user requests to start this strategy, the AI Agent must follow the procedure below. Do not skip directly to launch.

Phase 1: Present Strategy Overview

Show the user the following:

📡 Smart Money Signal Copy Trade v1.0 — Smart Money Signal Tracker

This strategy polls OKX Smart Money / KOL / Whale buy signals every 20 seconds.
When ≥3 smart wallets simultaneously buy the same token, it auto-buys after passing 15 safety filters.
A 7-layer exit system manages take profit and stop loss (Cost-Aware TP + Trailing + Time-Decay SL).

🧪 Current: Paper Mode — no real money spent, just observing signals

⚠️ Risk Notice: On-chain trading is high risk. You may lose all invested capital.

Default parameters (for reference only, adjust based on your situation):
  Position size:    high 0.020 / mid 0.015 / low 0.010 SOL
  Max positions:    6
  Min co-riders:    3 smart wallets
  Safety thresholds: MC≥$200K, Liq≥$80K, Holders≥300, Dev Rug=0
  Take Profit:      TP1 +5% / TP2 +15% / TP3 +30% (NET, cost-aware)
  Stop Loss:        -10% hard stop loss, tightens with time decay
  Trailing Stop:    Activates at +12% profit, exits on 10% drawdown
  Max hold time:    4 hours

All parameters can be freely modified in config.py to suit your trading style.

Q1: Risk Preference (Mandatory)

  • 🛡️ Conservative: Small positions, tight stop loss, fewer positions
  • ⚖️ Default: Balanced configuration (recommended)
  • 🔥 Aggressive: Large positions, wide stop loss, more positions

→ Parameter mapping (for AI Agent to write to config.py, not shown to user):

PreferenceSL_MULTIPLIERMAX_POSITIONSMIN_WALLET_COUNTTIME_STOP_MAX_HOLD_HRSTRAIL_ACTIVATETRAIL_DISTANCE
Conservative0.92 (-8%)4520.080.06
Default0.90 (-10%)6340.120.10
Aggressive0.85 (-15%)8360.180.12

Q2: Switch to Live Trading?

  • A. 🧪 Stay in Paper Mode, launch directly (recommended default)
  • B. 💰 Switch to Live Mode

Option A → Proceed directly to launch steps.

Option B → Enter Live Mode sub-flow:

1. ⚠️ Confirm with user: "Live Mode will use real SOL for trading. Losses are irreversible. Confirm switch to Live Mode?"

  • User confirms → Continue
  • User declines → Fall back to Paper Mode

2. Ask for total budget in SOL (range 0.5-10, default 1.0 SOL)

3. AI auto-calculates (let B = user's budget input):

  • SESSION_STOP_SOL = B × 0.10 (stop at 10% loss)
  • SESSION_LOSS_LIMIT_SOL = B × 0.05 (pause at 5% loss)
  • POSITION_TIERS:
  • high: {"min_addr": 8, "sol": max(0.020 × B, 0.005)}
  • mid: {"min_addr": 5, "sol": max(0.015 × B, 0.005)}
  • low: {"min_addr": 3, "sol": max(0.010 × B, 0.005)}

4. Show calculated results to user and confirm: "Your Live Mode config: Total budget X SOL, per-trade high/mid/low = Y/Y/Y SOL, loss stop limit Z SOL. Confirm?"

  • User confirms → Write to config.py
  • User requests adjustments → Return to step 2

5. Set mode parameters:

  • DRY_RUN = False
  • PAUSED = False

Launch

1. Modify corresponding parameters in config.py based on user responses 2. Set PAUSED = False (allow bot to run normally after interaction confirmation) 3. Check prerequisites: onchainos --version, onchainos wallet status 4. Start bot: python3 bot.py 5. Show Dashboard link: http://localhost:3248 6. Inform user: Currently in Paper Mode. To switch to Live Mode, change DRY_RUN = False in config.py

If user says "use default config" or "just run it", only set PAUSED = False, leave everything else unchanged, and launch in Paper Mode.

Special Cases

  • User explicitly says "don't ask me, just run" → Launch with default parameters (Paper Mode), but must show Phase 1 overview + set PAUSED = False
  • User is a returning user (config history exists in conversation) → Remind of previous config, ask whether to reuse

---

Quick Start

⚠️ Before launching, confirm the DRY_RUN value in config.py — True for Paper, False for Live.
cd ~/CC/Smart\ Money\ Signal\ Copy\ Trade\ -\ 聪明钱信号跟单

# 1. Confirm onchainos is logged in
onchainos wallet status

# 2. Start bot (foreground, Ctrl+C to stop)
python3 bot.py

# 3. Open Dashboard
open http://localhost:3248

# 4. Stop
pkill -f bot.py
First launch defaults to PAUSED=True, no new positions will be opened. After confirming everything is normal, change config.py PAUSED=False.
config.py supports hot-reload (importlib.reload). No bot restart needed after changes.

---

Parameter Tuning

All adjustable parameters are in `config.py` — no need to modify bot.py.

Common Adjustments

NeedModify in config.py
Pause/Resume tradingPAUSED = True/False
Paper/Live Mode switchDRY_RUN = True/False
Adjust position sizesol values in POSITION_TIERS for each tier
Adjust max positionsMAX_POSITIONS = 6
Adjust min co-rider countMIN_WALLET_COUNT = 3
Adjust take profitpct and sell in TP_TIERS
Adjust hard stop lossSL_MULTIPLIER = 0.90 (-10%)
Adjust time-decay SLTIME_DECAY_SL list
Adjust trailing stopTRAIL_ACTIVATE = 0.12, TRAIL_DISTANCE = 0.10
Adjust max hold timeTIME_STOP_MAX_HOLD_HRS = 4
MC rangeMIN_MCAP = 200_000, MIN_LIQUIDITY = 80_000
Session loss limitsSESSION_STOP_SOL = 0.10, SESSION_LOSS_LIMIT_SOL = 0.05
Scan intervalPOLL_INTERVAL_SEC = 20
Dashboard portDASHBOARD_PORT = 3248

Changes take effect automatically via hot-reload (no bot restart needed).

---

Strategy Architecture

bot.py (Single-file Bot)
├── onchainos CLI (Data + Execution + Safety — no API Key)
├── run()                  ← Main loop, every 20s
│   ├── signal list()              Smart Money/KOL/Whale signals
│   ├── Level 1 Pre-filter         soldRatio < 80%, walletCount >= 3
│   └── open_position()            15 deep verifications → Buy
│       ├── market prices           MC/Liq/Holders/Price
│       ├── token search            Community verification status
│       ├── market candles          K1 pump < 15%
│       ├── token advanced-info     Dev rug/Bundler/LP/Top10
│       ├── wallet balance          SOL balance check
│       ├── swap quote              Honeypot detection + quote
│       └── → execute_swap()        Paper: quote / Live: swap + TEE signing
├── monitor_positions()    ← Background thread, every 20s
│   ├── market prices               Batch prices
│   └── check_position()            7-layer exit decision
│       ├── EXIT 0: Liquidity emergency exit (liq < $5K)
│       ├── EXIT 1: Dust cleanup (< $0.10)
│       ├── EXIT 2: Hard stop loss (-10%)
│       ├── EXIT 3: Time-decay SL (30min/-8%, 60min/-5%)
│       ├── EXIT 4: Tiered take profit TP1/TP2/TP3 (cost-aware)
│       ├── EXIT 5: Trailing stop (+12% activate, 10% drawdown)
│       ├── EXIT 6: Trend time stop (15m candle reversal)
│       └── EXIT 7: Hard time stop (4h)
├── Session Risk Control     Consecutive loss pause / Cumulative loss stop
├── Dashboard (port 3248)    Web UI
└── Persistence files (JSON, atomic write)

Scheduled Tasks:

TaskFrequencyResponsibility
run()Every 20sPoll signals → Pre-filter → Deep verification → Buy
monitor_positions()Every 20sFetch position prices → 7-layer exit system
importlib.reload(config)Auto each cycleHot-reload config.py parameters

---

Safety Checks

Level 1 Pre-filter (2 checks, based on signal list data, 0 extra API calls)

#CheckThreshold
1Smart Money sell ratiosoldRatioPercent < 80%
2Co-rider wallet counttriggerWalletCount >= 3

Level 2 Deep Verification (13 checks, via onchainos CLI)

#CheckThresholdData Source
1Market Cap>= $200,000market prices
2Liquidity>= $80,000market prices
3Holder count>= 300market prices
4Liquidity/MC ratio>= 5%market prices
5Top10 concentration<= 50%token advanced-info
6Holder density>= 50 per million MCmarket prices
7K1 price change<= 15%market candles
8Dev rug history= 0 (zero tolerance)token advanced-info
9Dev farm<= 20token advanced-info
10Dev holding<= 15%token advanced-info
11Bundler ATH<= 25%token advanced-info
12Bundler count<= 5token advanced-info
13LP burn>= 80%token advanced-info

Final Pre-Buy Check

  • SOL balance >= position size + SOL_GAS_RESERVE (0.05)
  • Honeypot detection: isHoneyPot == false && taxRate <= 5 (via swap quote)
  • Position count < MAX_POSITIONS
  • Not in cooldown / Session not paused/stopped

---

Position Tiers

TierConditionPosition
high>= 8 co-rider wallets0.020 SOL
mid>= 5 co-rider wallets0.015 SOL
low>= 3 co-rider wallets0.010 SOL

Cost Model (Breakeven by tier):

TierFixed Cost RatioSlippage Cost (x2 legs)Breakeven
high (0.020)0.001/0.020 = 5.0%2.0%7.0%
mid (0.015)0.001/0.015 = 6.7%2.0%8.7%
low (0.010)0.001/0.010 = 10.0%2.0%12.0%
TP is cost-awaretp_threshold = net_target + breakeven_pct. For the low tier, TP1 actually requires +17% raw price change to trigger (5% + 12% breakeven).

---

7-Layer Exit System

PriorityExit TypeTrigger ConditionSell Ratio
EXIT 0Liquidity emergency exitliq < $5,000100%
EXIT 1Dust cleanupPosition value < $0.10100%
EXIT 2Hard stop lossprice <= entry × 0.90 (-10%)100%
EXIT 3Time-decay SL30min: -8%, 60min: -5%100%
EXIT 4Tiered take profitTP1 +5% NET sell 30% / TP2 +15% sell 40% / TP3 +30% sell 100%Partial
EXIT 5Trailing stopPeak PnL >= +12%, then drawdown >= 10% from peak100%
EXIT 6Trend time stopPosition >= 30min and 15m candle reversal confirmed100%
EXIT 7Hard time stopHold time >= 4h100%

---

Session Risk Control

RuleValue
Consecutive loss pause3 times → Pause 10min (MAX_CONSEC_LOSS = 3)
Cumulative loss pause>= 0.05 SOL → Pause 30min (SESSION_LOSS_LIMIT_SOL = 0.05)
Cumulative loss stop>= 0.10 SOL → Stop trading (SESSION_STOP_SOL = 0.10)
Max hold time4h (TIME_STOP_MAX_HOLD_HRS = 4)

Consecutive loss counter resets on a profitable trade. Session risk control auto-resets on bot restart.

---

Iron Rules (Must Not Be Violated)

1. advanced-info safety check failure → Fail-Closed, do not buy. 2. soldRatioPercent > 80% skip — Smart money is already selling, don't catch the falling knife. 3. K1 price change > 15% skip — Don't chase pumps. 4. Zero tolerance for Dev rug history — If there's a rug, don't buy. 5. After selling a token, set cooldown. No re-buying during cooldown period. 6. Position size is fixed per tier. No adding to positions. 7. If all three levels of buy price fallback fail (price <= 0), do not open position. 8. Daily loss limit reached → Stop all buying. 9. SOL_GAS_RESERVE 0.05 SOL is never spent on trades. 10. Must hold state_lock before writing to positions.json.

---

onchainos CLI Command Reference

#CommandPurpose
1onchainos signal list --chain solana --wallet-type 1,2,3 --min-address-count 3Smart Money signals
2onchainos market prices --tokens 501:<addr1>,501:<addr2>,...Batch price/MC/Liq
3onchainos market candles --chain solana --address <addr> --bar 1mCandles (K1 pump detection)
4onchainos token search --chain solana --query <symbol>Community verification
5onchainos token advanced-info --chain solana --address <addr>Dev/Bundler/LP/Top10
6onchainos swap quote --from 1111...1111 --to <token> --amount <lamports> --chain solanaQuote + Honeypot detection
7onchainos swap swap --from <from> --to <to> --amount <amt> --chain solana --wallet <addr> --slippage <pct>Trade execution
8onchainos wallet addresses --chain 501Solana address
9onchainos wallet balance --chain 501SOL balance
10onchainos wallet contract-call --chain 501 --to <tx.to> --unsigned-tx <base58>TEE signing + broadcast
11onchainos wallet history --tx-hash <hash> --chain-index 501Transaction confirmation

---

Troubleshooting

IssueSolution
"FATAL: onchainos CLI not found"Install onchainos and ensure it is in PATH
"No Solana address"Run onchainos wallet login <email> to complete login
Login expiredRe-run onchainos wallet login <email>
Dashboard won't openCheck if port 3248 is in use: lsof -i:3248
Bot starts but doesn't tradeCheck PAUSED = True, change to False (hot-reload, no restart needed)
Lots of SKIP in FeedSignal tokens didn't pass pre-filter (MC/Liq/soldRatio), this is normal
Lots of SAFETY_REJECT in FeedDeep verification blocked, adjust config based on rejection reason (DevRug/Bundler/K1)
No signals keeps appearingNo smart money buy signals currently, normal behavior — just wait
Live mode buy failureCheck SOL balance >= position + 0.05; confirm wallet is logged in
InstructionError Custom:1swap --from must use native SOL 11111111111111111111111111111111, not WSOL
SESSION_PAUSE, not tradingSession risk control triggered, wait for pause to end or adjust SESSION_LOSS_LIMIT_SOL
SESSION_STOPCumulative loss reached limit, restart bot to reset session
PnL display abnormalCheck entry_price field in positions.json for value of 0
Config change not taking effectNo restart needed — importlib.reload(config) auto hot-reloads each cycle

Common Pitfalls

IssueWrong ApproachCorrect Approach
TP not profitableTP uses raw pcttp_threshold = pct×100 + breakeven_pct
Ignoring costsTP at 8% and sellNET 5% actual trigger = 5%+12% = 17% raw gain (low tier)
dev rugDon't check devonchainos token advanced-info zero tolerance
Continuous losses without stoppingKeep trading3 consecutive losses pause / 0.10 SOL stop
swap --from uses WSOLSo11111...112Must use native SOL `1111...1111` (32 ones)
contract-call --toPass token addressMust pass swap response's `tx.to` (DEX router address)
swap amount unitPass UI unitsswap quote/swap --amount uses lamports (1 SOL = 1e9)
wallet balance get SOLGet WSOL balanceGet entry where tokenAddress === '' = native SOL

---

Glossary

TermDefinition
Co-rider addressMultiple smart wallets buying the same token within a short time, forming a "co-riding" consensus
walletTypeSignal source type: 1=SmartMoney 2=KOL/Influencer 3=Whale
triggerWalletCountNumber of co-rider wallets; more wallets = stronger signal
soldRatioPercentSmart Money sell ratio; >80% means smart money is already exiting
breakeven_pctBreakeven point (including fees); varies by tier (7%-12%)
Cost-Aware TPTake profit threshold = NET target + breakeven_pct, ensuring actual profit after fees
Trailing StopPrice reaches activation threshold, then triggers sell when drawdown from peak exceeds threshold
Time-decay SLTime-decay stop loss — the longer the position is held, the tighter the stop loss
Trend StopTrend time stop — based on 15m candle trend reversal detection
Session RiskPer-run cumulative risk control (consecutive loss pause, cumulative loss stop)
Fail-ClosedWhen safety check API fails, treat as unsafe and do not buy
TEETrusted Execution Environment — onchainos signing happens inside a secure enclave
Agentic Walletonchainos managed wallet; private key stays inside TEE, never leaves the secure environment
DustFragment position — residual holding valued below $0.10, automatically cleaned up
Hot-reloadimportlib.reload(config) — auto-loads latest config.py parameters each cycle, no restart needed
MC / MCAPMarket Cap — token total supply × current price, measures token scale
LPLiquidity Pool — token pair pool on DEX for trading; larger LP means lower slippage
LP BurnPermanently destroying LP tokens, ensuring liquidity cannot be withdrawn by the developer
Rug PullDeveloper suddenly withdraws liquidity or dumps all holdings, causing token price to drop to zero
DevToken developer/deployer — in the meme coin context, refers to the token contract creator; their holdings and history are key risk indicators
BundlerBundle trader — addresses that buy large amounts through bundled transactions at token launch, possibly insiders or manipulators
SniperAddresses that automatically buy tokens at the instant of launch via bots; concentrated holdings may create sell pressure
HoneypotMalicious token contract that can only be bought but not sold (or has extremely high sell tax)
SlippageDifference between expected and actual execution price; worse liquidity means higher slippage
K1Most recent 1-minute candle — used to detect short-term price spikes (K1 pump), preventing buying at the top
lamportsSmallest unit of SOL, 1 SOL = 1,000,000,000 lamports
Native SOLSOL native token address 11111111111111111111111111111111 (32 ones); must use this address for swap --from
WSOLWrapped SOL (So11...112), SPL Token wrapped form of SOL; cannot be used for swap --from

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.