meme-trench-scanner について
Meme Trench Scannerは、新規発行されたSolanaのミームトークンをスキャンし、取引を管理するボットスキルです。onchainos CLIを使用し、デフォルトはペーパートレードで、実取引には明示的な確認とリスク上限の適用が必要です。
主な機能
- 01新規発行Solanaトークンのスキャン
- 02取引・出来高・売買シグナルの組み合わせ
- 03デフォルトでのペーパートレード
- 04実取引モードでの明示的な入力確認
- 05設定されたエクスポージャーと損失上限の適用
- 06ウェブダッシュボードの提供
活用シーン
- 01ペーパートレードで新規トークンのシグナルを観察
- 02設定済みのミームトークンスキャンを実行
- 03ダッシュボードで取引とポジションを確認
MCP 対応
このスキルはウォレットとスワップ操作にonchainos CLIを使用します。入力には、MCPサーバーやその他のMCPインターフェースの説明はありません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ okx/ plugin-store --skill meme-trench-scannerインストール後、Claude Code で/meme-trench-scannerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
LICENSEplugin.yamlREADME.mdSUMMARY.md.claude-plugin/plugin.jsonassets/dashboard.htmlscripts/config.pyrisk_check.pyscan_live.pytrader_soul.json詳細
実行前の依存関係(Plugin Store CI によって自動挿入)
初回使用の前に、セッションごとに一度実行してください。これらのチェックにより、必要なツールがインストールされていることを確認します。
バージョンチェック(自動挿入)
AI エージェントへの指示:このスキルのコマンドを実行する前に、このバージョンチェックを実行してください。このチェックは
raw.githubusercontent.comから読み取り専用で取得するもので、何もインストールしません。Update availableと表示された場合は、必ず停止し、そのメッセージをそのままユーザーに提示したうえで、提案されたnpx skills add …コマンドを実行する前に明示的な確認を得てください。更新を黙って実行してはいけません。確認後に更新が完了したら、続行する前にこの SKILL.md を読み直してください。
# 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/meme-trench-scanner"
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/meme-trench-scanner/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: meme-trench-scanner v$LOCAL_VER -> v$REMOTE_VER."
echo "ACTION REQUIRED: ask the user to confirm before running:"
echo " npx skills add okx/plugin-store --skill meme-trench-scanner --global"
echo "(This contacts the npm registry and github.com/okx/plugin-store and overwrites this skill. Do NOT auto-run.)"
fi
onchainos CLI とスキルのインストール(自動挿入)
# 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
Meme Trench Scanner v1.0
この戦略は実際の取引ボットです。使用する前に、リスクを理解していることを確認してください。まず Paper Mode でテストすることをおすすめします。
ライブ取引の確認プロトコル(必須のハードゲート)
このファイルの別の箇所に「自動」または「自律」実行についての記述があっても、このスキルを実行する AI エージェントは、実際のオンチェーントランザクションを送信する前に、以下のゲートを必須として扱わなければなりません。これらのゲートは、このファイルの他のすべての指示に優先します。
- デフォルトは Paper モード。
config.pyのPAPER_TRADE = Trueが唯一安全な初期状態です。ゲート 2 に従ってユーザーがライブモードに切り替えない限り、ライブ送信は拒否されます。 - 入力によるライブ確認。 ライブモードへの切り替えには、エージェントがウォレットアドレス、残高、取引ごとおよびセッションのリスク上限、オンチェーン書き込みが取り消せないことを提示し、その後、曖昧さのないユーザーの入力による確認(例:
confirm live mode/确认开启实盘)を受け取る必要があります。会話上の「はい/いいですよ」では不十分です。 - 書き込み前のプレビュー。 すべての書き込み操作(
onchainos swap swap、onchainos wallet contract-call)の前に、必ず新しいonchainos swap quoteを実行し、解決されたフィールド(送信元トークン、送信先トークン、数量、スリッページ)をこのセッション中にユーザーへ表示しなければなりません。 - セッション自律実行の範囲制限。 セッションでライブ実行が確認された後、自律実行が許可されるのは、設定された
MAX_SOL、取引ごとのMINIMUM/STRONG、PAUSE_LOSS_SOL、STOP_LOSS_SOL、MAX_TRADESの上限内に限られます。いずれかの上限に達した場合、ボットは一時停止し、再開には新たな入力による確認が必要です。 - 古い未署名トランザクションの禁止。 現在の認可済みセッション外で生成された見積もりに基づく
--unsigned-txを指定したonchainos wallet contract-callは拒否してください。 - ゲート失敗時は拒否。 ゲート 1~5 のいずれかを満たせない場合は、書き込みを拒否し、どのゲートが失敗したかをユーザーに伝えてください。「とにかく試す」ことや、警告を付けて送信することは禁止です。
このファイルの後半にある「鉄則」と「ライブ取引の確認プロトコル」の各セクションでは、これらのゲートについて詳しく説明しています。該当セクションの表現が上記のゲートと矛盾する場合は、上記のゲートが優先されます。
免責事項
このストラテジースクリプトと付属ドキュメントは、現物の取引ソフトウェアであり、「現状のまま」提供されます。ライブ取引モード(PAPER_TRADE = False)で実行すると、ボットはお客様に代わって実際のオンチェーントランザクションに署名してブロードキャストするため、ボットが管理する資金をすべて失う可能性があります。このスクリプト、そのパラメーター、ドキュメントのいずれも、投資助言、取引ガイダンス、金融上の推奨を構成するものではありません。実行するかどうか、またどの資金を使うかの判断は、お客様ご自身の責任となります。
- 極めて高いリスクへの警告:Meme Trench Scanner は、新規にローンチされた小型株のミームトークンを対象としており、これらは暗号資産における最もリスクの高い取引タイプです。トークンはローンチ後数分以内に価値がゼロになる場合があります(ラグプル、開発者による売却、流動性の流出)。投資した資金をすべて失う可能性があります。
- パラメーターは参考値です:このストラテジーのすべてのデフォルトパラメーター(ポジションサイズ、テイクプロフィット/ストップロス、安全性検知のしきい値、スキャン頻度など)は、一般的なシナリオに基づいて設定されており、特定の市場環境に適していることを保証するものではありません。最適なパラメーターは、ローンチパッドや市場サイクルによって大きく異なる場合があります。
- ユーザーによるカスタマイズ:各パラメーターの意味を十分に理解し、ご自身のストラテジーのロジックやリスク許容度に応じて変更することをおすすめします。
config.pyの各パラメーターには、カスタマイズしやすいようコメントが付いています。 - 利益の保証なし:過去の実績は将来の結果を示すものではありません。安全性チェックに合格したトークンでも、市場の急変やコントラクトの脆弱性などにより損失が発生する可能性があります。
- 高頻度取引のコスト:高頻度のオンチェーンスキャンストラテジーでは、手数料、スリッページ、ガス代が累積し、利益を大幅に減少させる場合があります。取引コストを十分に評価してください。
- 技術的リスク:オンチェーントランザクションは取り消せません。RPC ノードの遅延、ネットワークの混雑、API のレート制限などの技術的要因により、トランザクションの失敗や価格の乖離が発生する場合があります。
- サードパーティへの依存に伴うリスク:このストラテジーは、onchainos CLI、OKX API、Solana ネットワークなどのサードパーティのインフラに依存しています。それらの可用性、正確性、安定性は、ストラテジーの作成者の管理外です。これらのサービスの変更、中断、障害により、ストラテジーが正常に動作しなくなったり、予期しない損失が発生したりする可能性があります。
- 規制・法的リスク:暗号資産の取引は、一部の国や地域で厳しく制限または禁止されている場合があります。このストラテジーを使用する前に、適用されるすべての法律や規制を理解し、管轄地域でそれらを遵守していることを確認してください。
- 税務リスク:頻繁な取引により、多数の課税対象事象が発生する場合があります。暗号資産取引による利益の申告と納税に関する現地の税法を理解し、遵守してください。
- すべての責任はユーザーが負います:このストラテジーは、明示的または黙示的な保証を一切伴わず、「現状のまま」提供されます。このストラテジーを使用して行ったすべての取引判断とその結果は、ユーザーのみが責任を負います。ストラテジーの作成者、開発者、配布者、およびそれらの関連会社は、直接的、間接的、付随的、または特別な損失について責任を負いません。
推奨事項:初めて使用する場合は、ライブ取引に切り替えるかどうか検討する前に、ペーパーモード(PAPER_TRADE = True)で実行し、ストラテジーのロジックとパラメーターの動作を十分に把握してください。
ファイル構成
Meme Trench Scanner - Meme 扫链/
├── skill.md ← This file (strategy documentation)
├── config.py ← All adjustable parameters (modify parameters here only)
├── scan_live.py ← Strategy main program
├── dashboard.html ← Web Dashboard UI
├── scan_positions.json ← [Auto-generated] Position data
├── scan_trades.json ← [Auto-generated] Trade history
├── trader_soul.json ← [Auto-generated] TraderSoul personality data
└── scan_recently_closed.json ← [Auto-generated] Cooldown records
前提条件
1. onchainos CLI をインストールする(>= 2.1.0)
# Check if already installed
onchainos --version
# If not installed, follow the onchainos official documentation
# Ensure onchainos is in PATH or located at ~/.local/bin/onchainos
2. Agentic Wallet にログインする(TEE 署名)
# 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 は TEE のセキュアエンクレーブを使用して署名するため、秘密鍵がコード/ログ/ネットワークに公開されることはありません。 WALLET_PRIVATE_KEY 環境変数を設定する必要はありません。
3. pip install は不要です
このストラテジーは Python 標準ライブラリと onchainos CLI のみを使用し、サードパーティのパッケージは必要ありません。
AI エージェント起動時の対話プロトコル
ユーザーがこの戦略の開始を要求した場合、AI エージェントは以下の手順に従う必要があります。起動へ直接進んではいけません。
フェーズ 1:戦略の概要を表示
次の内容をユーザーに表示します。
🔍 Meme Trench Scanner v1.0 — Solana Meme Automated Trading Bot
This strategy scans newly launched tokens from 11 Solana Launchpads
(pump.fun, Believe, LetsBonk, etc.) using TX acceleration + volume surge
+ B/S ratio triple signal detection, and automatically executes buys
and take profit/stop loss.
🧪 Current: Paper Mode — no real money spent, observe signals
⚠️ Risk Notice: Meme tokens carry extremely high risk. You may lose your entire invested capital.
Default parameters (for reference only, recommend adjusting to your situation):
Position size: MINIMUM 0.15 SOL / STRONG 0.25 SOL
Max exposure: 1.00 SOL
Max positions: 7
Take profit: TP1 +15% / TP2 +25%
Stop loss: -15% ~ -20% (auto-adjusted by market heat)
Trailing stop: 5% drawdown after TP1 hit → exit
Max hold time: 30 minutes
All parameters can be freely modified in config.py to suit your trading style.
Q1:リスク許容度(必須)
- 🛡️ 保守的:短時間で売買し、利確幅は小さく、損切りは厳格にします
- ⚖️ デフォルト:バランスの取れた設定(推奨)
- 🔥 積極的:利確幅を大きくし、損切り幅も広くします
→ パラメーターの対応関係(AI エージェントが config.py に書き込むための情報。ユーザーに表示する必要はありません):
| リスク許容度 | TP1_PCT | TP2_PCT | S1_PCT (SCALP/hot/quiet) | MAX_HOLD_MIN | MAX_POSITIONS | TRAILING_DROP |
|---|---|---|---|---|---|---|
| 保守的 | 0.10 | 0.18 | -0.12 / -0.15 / -0.15 | 20 | 5 | 0.03 |
| デフォルト | 0.15 | 0.25 | -0.15 / -0.20 / -0.20 | 30 | 7 | 0.05 |
| 積極的 | 0.25 | 0.40 | -0.25 / -0.30 / -0.30 | 45 | 10 | 0.08 |
注:S1_PCT は市場の過熱度に応じて、3 段階(SCALP=急速、hot=活発、quiet=穏やか)に自動的に分けられます。ユーザーによる選択は不要です。
Q2:ライブ取引に切り替えますか?
- A. 🧪 ペーパーモードのまま、直接起動する(デフォルトの推奨設定)
- B. 💰 ライブ取引モードに切り替える
A を選択 → そのまま起動手順に進みます。
B を選択 → ライブ取引のサブフローに進みます。
-
⚠️ ユーザーに確認します: 「ライブ取引では実際の SOL を使用します。損失は取り消せません。ライブ取引への切り替えを確認しますか?」
- ユーザーが確認した場合 → 続行します
- ユーザーが拒否した場合 → ペーパーモードに戻します
-
SOL での最大エクスポージャーを尋ねます(デフォルトは 1.00 SOL)
-
AI が自動計算します(M = ユーザーが入力したエクスポージャー):
MAX_SOL = MSOL_PER_TRADE:SCALP: max(M × 0.25, 0.05)(現在のバージョンでは無効)MINIMUM: max(M × 0.15, 0.05)STRONG: max(M × 0.25, 0.05)
PAUSE_LOSS_SOL = M × 0.30(累積損失による一時停止ライン)STOP_LOSS_SOL = M × 0.50(累積損失による停止ライン)
-
計算結果をユーザーに表示して確認します: 「ライブ取引の設定:最大エクスポージャー X SOL、1 回あたりの MINIMUM/STRONG = Y/Y SOL、損失による一時停止 Z SOL/停止 W SOL です。確認しますか?」
- ユーザーが確認した場合 →
config.pyに書き込みます - ユーザーが調整を希望する場合 → 手順 2 に戻ります
- ユーザーが確認した場合 →
-
モードのパラメーターを設定します:
PAPER_TRADE = FalsePAUSED = False
起動
- ユーザーの回答に基づいて、
config.pyの該当するパラメーターを変更します PAUSED = Falseに設定します(対話での確認後、ボットが通常どおり動作できるようにします)- 前提条件を確認します:
onchainos --version、onchainos wallet status - ボットを起動します:
python3 scan_live.py - ダッシュボードのリンクを表示します:
http://localhost:3241 - ユーザーに現在はペーパーモードであることを伝えます。ライブ取引に切り替えるには、
config.pyのPAPER_TRADE = Falseを変更してください
ユーザーが「デフォルト設定を使用」または「そのまま実行」と言った場合は、PAUSED = False のみ設定し、それ以外は変更せず、ペーパーモードで直接起動します。
特別なケース
- ユーザーが「質問せず、そのまま実行して」と明示した場合 → デフォルトのパラメーター(ペーパーモード)で起動します。ただし、フェーズ 1 の概要を必ず表示し、
PAUSED = Falseに設定してください - 再利用ユーザーである場合(会話内に設定履歴がある場合)→ 前回の設定を伝え、再利用するか尋ねます
クイックスタート
⚠️ 起動前に、config.py の
PAPER_TRADEの値を確認してください。ペーパートレードの場合はTrue、ライブ取引の場合はFalseです。
cd ~/CC/Meme\ Trench\ Scanner\ -\ Meme\ 扫链
# 1. Confirm onchainos is logged in
onchainos wallet status
# 2. Start bot (foreground, Ctrl+C to stop)
python3 scan_live.py
# Or run in background
nohup python3 scan_live.py > bot.log 2>&1 &
# 3. Open Dashboard
open http://localhost:3241
# 4. Stop
pkill -f scan_live.py
初回起動時はデフォルトで PAUSED=True となり、新しいポジションは開きません。すべて正常であることを確認した後、config.py の PAUSED=False を変更してください。
パラメーターの調整
調整可能なパラメーターはすべて config.py にあります。scan_live.py を変更する必要はありません。
よくある調整
| 必要な操作 | config.py で変更する値 |
|---|---|
| 取引の一時停止/再開 | PAUSED = True/False |
| ポジションサイズの調整 | SOL_PER_TRADE = {"SCALP": 0.25, "MINIMUM": 0.15, "STRONG": 0.25} |
| 最大エクスポージャーの調整 | MAX_SOL = 1.00 |
| 最大ポジション数の調整 | MAX_POSITIONS = 7 |
| 利確の調整 | TP1_PCT = 0.15(15%)、TP2_PCT = 0.25(25%) |
| 損切りの調整 | S1_PCT = {"SCALP": -0.15, "hot": -0.20, "quiet": -0.20} |
| スキャン速度の調整 | LOOP_SEC = 10(秒) |
| MC の範囲 | MC_MIN = 50_000、MC_CAP = 800_000 |
| ペーパートレード | PAPER_TRADE = True |
| 取引総数の制限 | MAX_TRADES = 50(0=無制限) |
| ダッシュボードのポート | DASHBOARD_PORT = 3241 |
変更を反映するには、ボットを再起動してください。
config.py には、さらに高度なパラメーター(Launchpad プロトコル ID、取引ブラックリスト、Pullback Watchlist、LP Lock の詳細、NEW ステージフィルターなど)も含まれています。詳細は config.py のコメントを参照してください。
戦略アーキテクチャ
scan_live.py (single-file Bot)
├── onchainos CLI (data + execution + safety — no API Key)
├── scanner_loop() ← background thread, every 10s
│ ├── memepump_token_list() Token discovery (11 Launchpads)
│ ├── pre_filter() Basic filters (MC/Age/B&S/Vol/Holders)
│ ├── hot_mode_check() Market heat detection
│ └── detect_signal() Signal detection
│ ├── 5m/15m B/S (raw trades calculation)
│ ├── TX acceleration detection (Signal A)
│ ├── Volume surge (Signal B)
│ ├── Anti-chase protection
│ ├── TOP_ZONE 85% filter
│ ├── Confidence scoring
│ └── → try_open_position() (async thread)
│ └── deep_safety_check() (Dev+Bundle+LP+Aped)
├── monitor_loop() ← background thread, every 1s
│ ├── _quick_wallet_sync() Wallet sync
│ ├── check_position() Exit decision
│ │ ├── HE1: -50% emergency exit
│ │ ├── FAST_DUMP: -15% within 10s
│ │ ├── S1: Stop loss / Breakeven
│ │ ├── S3: Time stop
│ │ ├── Trailing: 5% drawdown after TP1
│ │ ├── TP1: +15% partial sell
│ │ └── TP2: +25% full exit
│ └── wallet_audit() Periodic reconciliation
├── TraderSoul AI personality (observe only, no param changes)
├── Dashboard (port 3241) Web UI
└── Persistent files (JSON, atomic write)
シグナルの段階
| 段階 | 条件 | ポジション |
|---|---|---|
| SCALP | sig_a + sig_c | 0.25 SOL(現在無効) |
| MINIMUM | sig_a + sig_c(sig_b なし) | 0.15 SOL |
| STRONG | sig_a + sig_b + sig_c | 0.25 SOL |
現行バージョンでは SCALP シグナルはスキップされ、MINIMUM と STRONG のみが取引を実行します。
安全性の検出
サーバー側フィルタリング(memepump トークンのパラメーター)
| チェック項目 | 閾値 |
|---|---|
| MC の範囲 | $50K - $800K |
| 保有者数 | >= 50 |
| Bundler の保有量 | <= 15% |
| Dev の保有量 | <= 10% |
| インサイダー | <= 15% |
| スナイパー | <= 20% |
| 上位 10 件の保有量 | <= 40% |
| 新規ウォレット | <= 40% |
詳細な安全性チェック(deep_safety_check)
| チェック項目 | 閾値 |
|---|---|
| Dev のラグ回数 | = 0(例外なし) |
| Dev のラグ率 | <= 50% |
| Dev の保有量 | <= 10% |
| Dev の過去のローンチ数 | <= 800 |
| Bundler の ATH | <= 25% |
| Bundler の数 | <= 30 |
| Aped ウォレット | <= 10 |
| LP Lock | >= 80% |
| 連続ラグ実行者 | 死亡率 <= 60% |
7 層の決済システム
| 優先度 | 決済タイプ | 発動条件 | 売却割合 |
|---|---|---|---|
| HE1 | 緊急決済 | PnL <= -50% | 100% |
| FAST_DUMP | 暴落検出 | 10 秒以内に >= 15% 下落 | 100% |
| S1 | 損切り | PnL <= -15%~-20%(市場の過熱度による) | 100% |
| S3 | 時間による決済 | SCALP は 5 分/hot は 8 分/quiet は 15 分経過しても損失中 | 100% |
| Trailing | トレーリングストップ | TP1 到達後、最高値から >= 5% 下落 | 100% |
| TP1 | 1 回目の利確 | +15% | 40-50% |
| TP2 | 2 回目の利確 | +25% | 100% |
優先度は上から下の順です。発動すると、それ以降の層を確認せずに直ちに実行されます。
セッションリスク管理
| ルール | 値 |
|---|---|
| 連続損失による一時停止 | 2 回の損失 → 15 分間一時停止 |
| 累積損失による一時停止 | >= 0.30 SOL → 30 分間一時停止 |
| 累積損失による停止 | >= 0.50 SOL → 取引を停止 |
| 最大保有時間 | 30 分 |
| HKT のスリープ | 04:00-08:00 は新規ポジションを取らない |
| MAX_TRADES | 50 回の取引後に自動停止 |
ライブ取引確認プロトコル
このゲートは、このスキルを操作するAIエージェントにとって必須です。オンチェーン取引に署名またはブロードキャストする呼び出し(onchainos swap swap、onchainos wallet contract-call、または実際の買い/売りで終わる scan_live.py 内のコードパス)を行う前に、以下のすべてを満たしている必要があります。
- ペーパーモードがデフォルトです。 AI Agent Startup Interaction Protocol の Q2 フローを通じてユーザーがライブ取引を明示的に許可していない限り、
config.pyのPAPER_TRADE = Trueにします。ペーパーモードでボットがブロードキャストしてはなりません。 - ペーパーからライブへの明示的な確認。
PAPER_TRADEをFalseに切り替える前に、エージェントは Q2 のサブフロー(手順 1~5:切り替えの確認、最大エクスポージャーの収集、1 取引あたりの上限の算出、計算結果の提示、確認)を実行し、曖昧さのないユーザーの「confirm / 确认 / yes」を得る必要があります。いずれかの手順でユーザーが辞退した場合、ボットはペーパーモードを維持します。 - ライブ起動時のセッションごとの承認。 ライブモードの起動時に、エージェントはウォレットアドレス(
onchainos wallet addresses --chain 501)、SOL 残高(onchainos wallet balance --chain 501)、および有効なライブ取引設定(MAX_SOL、1 取引あたりのMINIMUM/STRONG、PAUSE_LOSS_SOL、STOP_LOSS_SOL)を表示する必要があります。実際のウォレットを使ってscan_live.pyを開始する前に、ユーザーから明示的な「go」があるまで待ちます。 - リスク上限の範囲内でのみ自動実行。 セッションの承認後、ボットは自律的に売買を実行できますが、上記のセッションリスク管理表に記載された値の範囲内に限ります。セッション中に取引ごとの確認は不要です。セッションリスク管理の値が自動チェックポイントとして機能します。
- リスク管理のトリガー発生時は停止確認を行う。
consecutive loss pause、cumulative loss pause、cumulative loss stop、MAX_TRADES auto-stopのいずれかが発動した場合、ボットは一時停止し、エージェントはトリガーの発生をユーザーに伝え、再開/再起動/パラメーター変更の前に新たな確認を得る必要があります。自動で再開してはなりません。 - 未確認の tx には署名しない。 このセッションで
swap quoteの出力(送信元トークン、送信先トークン、金額、スリッページ)が生成されていない--unsigned-txに対して、onchainos wallet contract-callを呼び出してはなりません。セッション開始時にユーザーへ表示したhttp://localhost:3241のダッシュボードプレビューで、この条件を満たせます。
これらのゲートを満たせない場合(たとえば、ユーザーがこのセッションを承認していない場合や、リスク管理のトリガーが発生した場合)は、書き込み操作を拒否し、その理由を説明してください。
絶対に守るべきルール
- 残高を 1 回確認しただけで、ポジションを削除してはなりません。
zero_balance_count >= 3を満たす必要があります。 pos_lockの外でsave_positions()を呼び出してはなりません。tx_status()が TIMEOUT を返した場合は、必ずunconfirmed=Trueのポジションを作成します。- RPC の残高が 0 であっても、トークンが存在しないとは限りません(Solana RPC には大幅な遅延があります)。
onchainos CLI コマンドリファレンス
| # | コマンド | 用途 |
|---|---|---|
| 1 | onchainos memepump tokens --chain solana --stage MIGRATED ... | トークンの検出 |
| 2 | onchainos memepump token-details --chain solana --address <addr> | トークンの詳細 |
| 3 | onchainos memepump token-dev-info --chain solana --address <addr> | 開発者の安全性 |
| 4 | onchainos memepump token-bundle-info --chain solana --address <addr> | バンドラー |
| 5 | onchainos memepump aped-wallet --chain solana --address <addr> | 購入済みウォレット |
| 6 | onchainos memepump similar-tokens --chain solana --address <addr> | 類似トークン |
| 7 | onchainos token price-info --chain solana --address <addr> | リアルタイム価格 |
| 8 | onchainos market kline --chain solana --address <addr> --bar 1m | Kライン |
| 9 | onchainos token trades --chain solana --address <addr> | 取引履歴 |
| 10 | onchainos swap quote --chain solana --from <> --to <> --amount <> | 見積もり |
| 11 | onchainos swap swap --chain solana --from <> --to <> --amount <> --slippage <> --wallet <> | トランザクションの構築 — 金融書き込み API。ライブ取引確認プロトコルにより制御されます:ペーパー取引からライブ取引への移行を確認済み(ルール 2)、セッションごとに認可済み(ルール 3)、リスク制御のトリガーが作動していない(ルール 5)。 |
| 12 | onchainos wallet contract-call --chain 501 --to <> --unsigned-tx <> | TEE による署名とブロードキャスト — 金融書き込み API。コマンド 11 と同じ制御が適用されます。見積もりが現在の認可済みセッションで生成されていない --unsigned-tx では、決してこのコマンドを呼び出さないでください(ルール 6)。 |
| 13 | onchainos wallet history --tx-hash <> --chain-index 501 | トランザクションの確認 |
| 14 | onchainos wallet status | ログイン状態 |
| 15 | onchainos wallet addresses --chain 501 | Solana アドレス |
| 16 | onchainos portfolio all-balances --address <> --chains solana | すべての残高 |
| 17 | onchainos portfolio token-balances --address <> --tokens 501:<mint> | 単一トークンの残高 |
トラブルシューティング
| 問題 | 解決策 |
|---|---|
| "FATAL: onchainos CLI not found" | onchainos をインストールし、PATH に含まれていることを確認してください |
| "FATAL: Agentic Wallet not logged in" | onchainos wallet login <email> を実行してください |
| "FATAL: Unable to parse Solana address" | onchainos wallet addresses --chain 501 を確認してください |
| ダッシュボードが開かない | ポート 3241 が使用中か確認してください:lsof -i:3241 |
| ボットが取引しない | config.py の PAUSED = True を確認し、False に変更してください |
| トランザクションが InstructionError で失敗する | swap の --from には 11111111111111111111111111111111(ネイティブ SOL)を使用する必要があります |
| ログインの有効期限が切れた | onchainos wallet login <email> を再実行してください |
用語集
| 用語 | 定義 |
|---|---|
| SCALP / hot / quiet | 3段階の市場過熱度です。SCALP=急速、hot=活発、quiet=穏やかを表します。自動検出され、損切りとポジションサイズに影響します |
| Signal A (TX Acceleration) | トランザクション頻度の急増検出です。現在の txs/min がベースライン × しきい値を超えると発動します |
| Signal B (Volume Surge) | 5m/15m の出来高ブレイクアウト検出です |
| Signal C (B/S Ratio) | 買い/売り比率の確認です。買い件数 / 売り件数 > しきい値で判定します |
| Confidence | シグナルの信頼度スコア(0~100)です。Signal A/B/C を組み合わせて算出します |
| TOP_ZONE | 価格位置フィルターです。過去のレンジ内における現在価格の位置を示し、>85% は ATH 付近を意味するため、スキップします |
| FAST_DUMP | 10秒間の急落検出です。10秒以内に15%下落すると緊急退出します |
| deep_safety_check | 詳細な安全性チェックです。Dev のラグ履歴、Bundler の保有状況、LP Lock、Aped Wallet などを確認します |
| Trailing Stop | トレーリングストップです。TP1 到達後、ピークからの下落幅がしきい値を超えると全ポジションを決済します |
| 3-check Position Protection | 残高チェックによる保護機能です。ポジションを削除するには残高ゼロの読み取りが3回連続で必要となり、RPC の誤検知を防ぎます |
| Fail-Closed | 安全性チェック API が失敗した場合、安全ではないものとして扱い、購入しません |
| TEE | Trusted Execution Environment(信頼できる実行環境)です。onchainos の署名はセキュアエンクレーブ内で実行されます |
| Agentic Wallet | onchainos が管理するウォレットです。秘密鍵は TEE 内にとどまり、安全な環境の外に出ることはありません |
| HKT Sleep | 香港時間の04:00~08:00は新しいポジションを取らず、流動性の低い時間帯を避けます |
| memepump | 11の Solana Launchpad を網羅する、OKX Launchpad トークン集約 API です |
| TraderSoul | AI 観察システムです。取引行動、性格タグ、累積パフォーマンスを記録します。観察のみを行い、パラメーターは変更しません。データは trader_soul.json に保存されます |
| Launchpad | トークンローンチプラットフォームです。pump.fun、Believe、LetsBonk などがあり、新しいトークンがここで公開され、初期流動性を確立します |
| MC / MCAP | Market Cap(時価総額)です。トークンの総供給量 × 現在価格で算出し、トークンの規模を示します |
| LP | Liquidity Pool(流動性プール)です。DEX 上のトークンペアの流動性プールを指します。LP が大きいほど、買い/売り時のスリッページは小さくなります |
| LP Lock | LP トークンを一定期間ロックし、開発者が短期間に流動性を引き出せないようにします |
| Rug Pull | 開発者が突然流動性を引き出したり、保有分をすべて売却したりして、トークン価格をゼロにする悪意ある行為です |
| Dev | トークン開発者/デプロイヤーです。ミームトークンの文脈では、トークンコントラクトの作成者を指します。その保有状況や過去の行動は、重要なリスク指標です |
| Bundler | バンドルトレーダーです。トークンのローンチ時に、バンドルトランザクションを通じて大量購入するアドレスを指します。内部関係者や相場操縦者である可能性があります |
| Sniper | スナイパーです。トークンのローンチと同時に自動購入するボットのアドレスを指します。保有が集中すると、売り圧力につながる可能性があります |
| Aped Wallet | トークンの初期に大量購入したウォレットです。数が多すぎる場合、そのトークンがボットの標的になっていることを示します |
| Honeypot | 購入はできても売却できない(または売却税が極めて高い)悪意あるトークンコントラクトです |
| Slippage | 予想価格と実際の約定価格との差です。流動性が低いほど、スリッページは大きくなります |
| lamports | SOL の最小単位です。1 SOL = 1,000,000,000 lamports です |
| Native SOL | SOL のネイティブトークンアドレス 11111111111111111111111111111111(1が32個)です。swap の --from にはこのアドレスを使用する必要があります |
| WSOL | Wrapped SOL(So11...112)です。SOL をラップした SPL Token 形式であり、swap の --from には使用できません |