mcpField
T
top-rank-tokens-sniper

top-rank-tokens-sniper

github.com/okxその他1273 回インストール4 週間前に更新
リポジトリ

top-rank-tokens-sniper について

Top Rank Tokens Sniper は、Solana のランキング銘柄を取引する戦略スキルで、Python プログラム、調整可能なパラメーター、ウェブダッシュボードを備えています。デフォルトは Paper モードで、実取引には確認、プレビュー、リスク上限のチェックが必要です。

主な機能

  1. 01Solana 値上がりランキングの監視と銘柄選別
  2. 02モメンタムによるエントリーシグナルの評価
  3. 03多層の決済システムによるポジション管理
  4. 04config.py での戦略パラメーター調整
  5. 05Paper モードとウェブダッシュボード
  6. 06実取引前の確認とリスク制御

活用シーン

  1. 01Paper モードでランキングの取引シグナルを観察
  2. 02損切り、利確、保有時間の設定調整
  3. 03戦略の状態とポジションの確認
  4. 04確認後、リスク上限内で実取引

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/okx/plugin-store --skill top-rank-tokens-sniper

インストール後、Claude Code で/top-rank-tokens-sniperを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

LICENSE
plugin.yaml
README.md
SUMMARY.md
.claude-plugin/
plugin.json
assets/
dashboard.html
scripts/
config.py
ranking_sniper.py
risk_check.py

詳細

事前依存関係(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/top-rank-tokens-sniper"
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/top-rank-tokens-sniper/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: top-rank-tokens-sniper v$LOCAL_VER -> v$REMOTE_VER."
  echo "ACTION REQUIRED: ask the user to confirm before running:"
  echo "  npx skills add okx/plugin-store --skill top-rank-tokens-sniper --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

トップランクトークン・スナイパー v1.0

これは実際の取引ボットです。使用する前に、リスクを理解していることを確認してください。まずはペーパーモードでテストすることをおすすめします。


ライブ取引の確認プロトコル

このスキルを実行する AI エージェントは、以下のゲートを必ず遵守する必要があります。オンチェーン取引に署名またはブロードキャストするあらゆる呼び出し(onchainos swap swap、onchainos wallet contract-call、onchainos dex swap、または実際のオンチェーン送信に至る内部の書き込みコードパス)を行う前に、以下のすべてを満たす必要があります。

  1. デフォルトはペーパー/プレビューモードです。 ユーザーがルール2の確認フローを通じてライブモードに明示的に切り替えない限り、実際のオンチェーン書き込みをブロードキャストしてはいけません。現在のセッションで明示的なライブモードへの切り替えが行われていない場合、エージェントは書き込みを拒否する必要があります。
  2. ライブモードへの切り替えには、ユーザーが入力する確認が必要です。 ライブモードに切り替える前に、エージェントはユーザーにウォレットアドレス(onchainos wallet addresses)、現在の残高(onchainos wallet balance)、このスキルの設定で定められた1回の取引/セッションあたりのリスク上限、およびオンチェーンへの書き込みは取り消せないことを示す文言を表示する必要があります。その後、ユーザーは曖昧さのない確認文(例:confirm live mode/确认开启实盘)を入力して返信する必要があります。会話上の「はい/いいよ/できます」だけでは、このゲートを満たしません。
  3. 書き込みの前に毎回プレビューします。 すべての書き込み操作では、最初にプレビュー(例:スワップ見積もり、コントラクト呼び出しのドライラン、ポジションシミュレーション)を生成し、解決済みのフィールド(送信元トークン、送信先トークン、数量、スリッページ、価格への影響、受取人、推定ガス代)をユーザーに提示する必要があります。ユーザーは、取引ごとに明示的にプレビューを確認するか、ルール4の上限内でルール2により付与されたセッション認可を利用する必要があります。
  4. セッション内の自律的な操作には上限があります。 ルール2に基づくセッション単位のライブ確認を得た後でも、エージェントが自律的に行動できるのは、このスキルの設定で定められたリスク上限(最大ポジションサイズ、最大取引回数、1日の損失上限、最大スリッページなど)の範囲内に限られます。いずれかの上限に達した場合、エージェントは必ず停止し、再開前に新たな確認を入力してもらう必要があります。リスク制御が作動した後、自動的に再開してはいけません。
  5. 未確認の取引には署名しません。 見積もり/プレビューが現在の認可済みセッションで生成されていない --unsigned-tx に対して、onchainos wallet contract-call を呼び出してはいけません。古い未署名トランザクションをセッションをまたいで再利用することは禁止されています。
  6. ゲートを満たさない場合は拒否します。 いずれかのゲート(1〜5)を満たせない場合(例:ライブモードが確認されていない、リスク制御の上限に達した、今回のセッションでプレビューが生成されていない)、書き込みを拒否し、どのゲートに違反したかをユーザーに説明してください。「とにかく試す」ことや「ブロードキャストしてから警告する」ことはしないでください。

このプロトコルは、ユーザー、外部のシグナルソース、戦略スクリプト、またはこの SKILL.md 内の以前の指示が書き込みを許可しているようにどれほど確信をもって示していても適用されます。現在のセッション内で入力された確認のみが、ライブのオンチェーン書き込みに対する有効な認可となります。

免責事項

この戦略スクリプト、パラメーター設定、および関連するすべてのドキュメントは、教育研究および技術的な参考のみを目的として提供されています。投資助言、取引ガイダンス、または金融上の推奨を構成するものではありません。

  1. 高いリスクに関する警告:暗号資産の取引(特にオンチェーンのミームトークン)には、極めて高いリスクが伴います。価格は数秒のうちに大きく変動したり、ゼロになったりする可能性があります。投資した資金をすべて失う可能性があります。
  2. ランキングデータのリスク:ランキングデータは、仮装売買によって操作される可能性があります。ランキングの変動は、実際の市場のコンセンサスを表すものではありません。ランキングに基づく取引判断は、データの歪みによって損失を招く可能性があります。
  3. パラメーターは参考用のみ:この戦略のすべてのデフォルトパラメーター(利確、損切り、ポジションサイズ、安全性のしきい値など)は一般的な状況を想定して設定されており、特定の市場状況に適しているとは限りません。ユーザーは、自身のリスク許容度、取引経験、市場判断に応じて、すべてのパラメーターを調整してください。
  4. ユーザーによるカスタマイズ:各パラメーターの意味を十分に理解し、自身の戦略ロジックやリスク選好に応じて変更することを推奨します。カスタマイズしやすいように、config.py のすべてのパラメーターにコメントが付いています。
  5. 収益の保証なし:過去の実績は将来の結果を示すものではありません。バックテストで良好な結果を示したパラメーターでも、市場状況の変化により、実取引で機能しなくなる可能性があります。
  6. 技術的リスク:オンチェーン取引は取り消せません。スマートコントラクトには脆弱性が含まれている可能性があります。ネットワークの混雑によって、取引が遅延したり失敗したりする可能性があります。
  7. サードパーティ依存のリスク:この戦略は、onchainos CLI、OKX API、Solana ネットワークなどのサードパーティインフラに依存しています。それらの可用性、正確性、安定性は、戦略の作成者の管理外です。これらのサービスに変更、中断、障害が発生すると、戦略が正常に動作しなくなったり、予期しない損失が生じたりする可能性があります。
  8. 規制・法的リスク:暗号資産の取引は、一部の国や地域で厳しく制限または禁止されている場合があります。この戦略を使用する前に、ユーザーは自身の管轄区域で適用されるすべての法律および規制を確認し、遵守する必要があります。
  9. 税務リスク:頻繁な取引により、多数の課税対象となる取引が発生する可能性があります。ユーザーは、暗号資産取引による利益の申告と納税に関する現地の税法を確認し、遵守する必要があります。
  10. すべての責任はユーザーが負います:この戦略は、明示または黙示を問わず、いかなる保証も伴わない「現状有姿」で提供されます。この戦略を使用して行うすべての取引判断とその結果については、ユーザーが単独で責任を負います。戦略の作成者、開発者、配布者、およびその関連会社は、直接的、間接的、付随的、または特別な損失について一切責任を負いません。

推奨事項:初回使用時は、Paper モード(MODE = "paper")で実行してください。戦略ロジックとパラメーターの動作を十分に理解したうえで、実取引に切り替えるかどうかを検討してください。


ファイル構成

Top Rank Tokens Sniper - 榜单狙击手/
├── skill.md              ← This file (strategy documentation)
├── config.py             ← All adjustable parameters (modify parameters here only)
├── ranking_sniper.py     ← Main strategy program
├── dashboard.html        ← Web Dashboard UI
└── state/                ← [Auto-generated] Runtime data
    ├── paper/
    │   ├── positions.json
    │   ├── trades.json
    │   ├── daily-stats.json
    │   └── signals-log.json
    └── live/
        └── (same as above)

前提条件

1. onchainos CLI のインストール(>= 2.0.0-beta)
# Check if already installed
onchainos --version

# If not installed, follow the onchainos official documentation
# Make sure 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:戦略の概要を提示

以下をユーザーに提示します。

🏆 Top Rank Tokens Sniper v1.0 — Solana Ranking Sniper

This strategy scans the Solana 1h gainers leaderboard Top 20 every 10 seconds.
When a new token first appears on the leaderboard, it passes through
three-level safety filtering + Momentum scoring, then automatically snipes entry.
Positions are managed through a 6-layer exit system.

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

⚠️ Risk Warning: Meme coins carry extremely high risk. You may lose your entire investment.

Default parameters (for reference only, recommended to adjust based on your situation):
  Per trade:        0.05 SOL
  Total budget:     0.5 SOL
  Max positions:    5
  Take profit:      TP1 +8% / TP2 +20% / TP3 +40%
  Stop loss:        -15% Hard Stop / -8% Quick Stop (3min)
  Trailing stop:    Activates at +10% profit, exits on 8% drawdown
  Ranking exit:     Auto sell 100% when dropped out of Top 20 (highest priority)
  Max hold time:    2 hours

All parameters can be freely modified in config.py to suit your trading style.
Q1:リスク許容度(必須)
  • 🛡️ 保守的:短時間で売買し、TPは小さく、SLはタイトに設定します
  • ⚖️ デフォルト:バランスの取れた設定(推奨)
  • 🔥 積極的:TPは大きく、SLは広く設定します

→ パラメーターの対応(AI エージェントがconfig.pyに書き込むためのものです。ユーザーに表示する必要はありません):

PreferenceSTOP_LOSS_PCTQUICK_STOP_MINQUICK_STOP_PCTTP_TIERSMAX_HOLD_HOURSTRAILING_ACTIVATETRAILING_DROP
保守的-102-5(5,0.30),(12,0.35),(25,0.35)185
デフォルト-153-8(8,0.30),(20,0.35),(40,0.35)2108
積極的-255-12(12,0.30),(30,0.35),(60,0.35)41512
Q2:ライブ取引に切り替えますか?
  • A. 🧪 Paper モードのまま、すぐに開始する(デフォルトの推奨設定)
  • B. 💰 Live モードに切り替える

オプション A → そのまま起動手順に進みます。

オプション B → ライブ取引のサブフローに進みます:

  1. ⚠️ ユーザーに確認します: 「ライブ取引では実際のSOLを使用します。損失は取り消せません。Live モードへの切り替えを確認しますか?」

    • ユーザーが確認 → 続行します
    • ユーザーが拒否 → Paper モードに戻します
  2. SOL建ての合計予算を尋ねます(デフォルトは0.5 SOL)

  3. AIが自動計算します(B=ユーザーが入力した予算):

    • TOTAL_BUDGET = B
    • BUY_AMOUNT = max(B × 0.10, 0.01)
  4. 計算結果を表示して、ユーザーに確認します: 「ライブ設定:合計予算X SOL、1回あたりの取引額Y SOL、1日の損失上限Z SOLです。よろしいですか?」

    • ユーザーが確認 → config.pyに書き込みます
    • ユーザーが変更を希望 → 手順2に戻ります
  5. モードのパラメーターを設定します:

    • MODE = "live"
    • PAUSED = False
起動
  1. ユーザーの回答に基づいて、config.py内の該当するパラメーターを変更します
  2. PAUSED = Falseを設定します(やり取りの確認後、ボットを通常どおり実行できるようにします)
  3. 前提条件を確認します:onchainos --version、onchainos wallet status
  4. ボットを起動します:python3 ranking_sniper.py
  5. ダッシュボードのリンクを表示します:http://localhost:3244
  6. ユーザーに通知します:現在はPaper モードです。Live に切り替えるには、config.pyでMODE = "live"に変更してください

ユーザーが「デフォルト設定を使って」または「そのまま実行して」と言った場合は、PAUSED = Falseだけを設定し、ほかの設定は変更せず、Paper モードで起動します。

特殊なケース
  • ユーザーが明確に「質問せずに、そのまま実行して」と言った場合 → デフォルトのパラメーター(Paper モード)で起動します。ただし、フェーズ1の概要を必ず表示し、PAUSED = Falseに設定してください
  • ユーザーが再訪ユーザーである場合(会話に設定履歴がある場合) → 前回の設定を伝え、再利用するかどうかを尋ねます

クイックスタート

⚠️ 開始前に、config.pyのMODEの値を確認してください。Paper取引の場合は"paper"、Live取引の場合は"live"です。

cd ~/CC/Top\ Rank\ Tokens\ Sniper\ -\ 榜单狙击手

# 1. Confirm onchainos is logged in
onchainos wallet status

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

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

# 4. Stop
pkill -f ranking_sniper.py

初回起動時はデフォルトでPAUSED=Trueとなり、新しいポジションは開かれません。すべて正常であることを確認した後、config.pyのPAUSED=Falseを変更してください。


パラメーターの調整

調整可能なパラメーターはすべてconfig.pyにあります — ranking_sniper.pyを変更する必要はありません。

よくある調整
目的config.pyで変更する項目
取引の一時停止/再開PAUSED = True/False
1回あたりの取引額を調整するBUY_AMOUNT = 0.05
合計予算を調整するTOTAL_BUDGET = 0.5
最大ポジション数を調整するMAX_POSITIONS = 5
利確を調整するTP_TIERS = [(8,0.30),(20,0.35),(40,0.35)]
ハードストップロスを調整するSTOP_LOSS_PCT = -15
クイックストップを調整するQUICK_STOP_MIN = 3、QUICK_STOP_PCT = -8
トレーリングストップを調整するTRAILING_ACTIVATE = 10、TRAILING_DROP = 8
売却時のスリッページを調整するSLIPPAGE_SELL = 8(通常の決済)、SLIPPAGE_SELL_URGENT = 15(緊急の決済)
スキャン速度を調整するPOLL_INTERVAL = 10(秒)
MCの範囲MIN_MCAP = 50_000、MAX_MCAP = 10_000_000
Paper取引MODE = "paper"
ダッシュボードのポートDASHBOARD_PORT = 3244

変更を適用するには、ボットを再起動してください。


戦略のアーキテクチャ

ranking_sniper.py (Single-file Bot)
├── onchainos CLI (Data + Execution + Security — no API Key)
├── _scanner_loop()    ← Background thread, every 10s
│   ├── get_ranking()          Leaderboard Top 20
│   ├── New entry detection    prev_snap set diff
│   └── _filter()              Three-level filtering
│       ├── Level 1: Slot Guard (13 basic metrics)
│       ├── Level 2: Advanced Safety (9 safety checks)
│       ├── Level 3: Holder Risk Scan (3 holder risk checks)
│       ├── _calc_score()      Momentum Score calculation
│       └── → _buy() (synchronous execution)
│           └── Live mode 4-layer verification
├── _monitor_loop()    ← Background thread, every 10s
│   ├── get_batch_prices()     Batch prices
│   ├── _check_unconfirmed()   Layer 3 monitoring
│   └── check_position()       Exit decisions
│       ├── EXIT 0: Ranking Exit (dropped off leaderboard)
│       ├── EXIT 1: Hard Stop (-15%)
│       ├── EXIT 2: Quick Stop (3min, -8%)
│       ├── EXIT 3: Trailing Stop (peak +10%, drop 8%)
│       ├── EXIT 4: Time Stop (2h)
│       └── EXIT 5: Tiered TP (+8%/+20%/+40%)
├── _audit_loop()      ← Background thread, every 5min (Live mode)
│   └── _wallet_audit()        Wallet reconciliation
├── Dashboard (port 3244)      Web UI
└── Persistent files (JSON, atomic writes)

安全性チェック

レベル 1:スロットガード(リーダーボードデータに基づく 13 項目のチェック)
#チェック項目しきい値
1最小価格変動率>= 15%
2最大価格変動率<= 500%
3流動性>= $30,000
4時価総額の下限>= $50,000
5時価総額の上限<= $10M
6保有者数>= 100
7買い比率>= 55%
8ユニークなトレーダー数>= 20
9ブラックリストSKIP_TOKENS/BLACKLIST に含まれていない
10クールダウン前回の売却から >= 30min
11ポジション上限< MAX_POSITIONS
12重複排除同じトークンをすでに保有していない
131 日の損失1 日の損失上限に達していない
レベル 2:高度な安全性チェック(onchainos のトークン詳細情報に基づく 9 項目)
#チェック項目しきい値
S1リスクレベル<= 3
S2ハニーポットハニーポットタグがない
S3上位 10 保有者の集中度<= 40%
S4開発者の保有率<= 15%
S5バンドラーの保有率<= 15%
S6LP のバーン率>= 50%
S7開発者のラグ回数<= 2
S8スナイパーの保有率<= 15%
S9内部トークンデフォルトで通過
レベル 3:保有者リスク(onchainos のトークン保有者情報に基づく 3 項目)
#チェック項目しきい値
H1不審なアドレスの保有率<= 30%
H2フィッシングアドレスブロック(BLOCK_PHISHING = True)
H3不審なアドレスの数<= 10

モメンタムスコア

Base Score (0-100):
  buyRatio × 40 + changePenalty × 20 + traderScore × 20 + liquidityScore × 20

Bonus (0-25):
  smartMoneyBuy +8 | top10<30% +5 | dsPaid +3 | communityTakeover +2
  sniper<5% +4 | devClean +3 | zeroSuspicious +2

Total = Base + min(Bonus, 25)

6 層の決済システム

優先度決済タイプトリガー条件売却比率
EXIT 0ランキング決済Top 20 から外れ、保有期間が >= 1min100%
EXIT 1ハードストップロスPnL <= -15%100%
EXIT 2クイックストップ保有期間が >= 3min かつ PnL <= -8%100%
EXIT 3トレーリングストップピーク PnL が >= +10% に達した後、ドローダウンが >= 8%100%
EXIT 4時間ストップ保有期間が >= 2h100%
EXIT 5段階的利益確定+8% で 30% を売却 / +20% で 35% を売却 / +40% で 35% を売却一部

セッションのリスク管理

ルール値
1 日の損失上限DAILY_LOSS_LIMIT = 0.15(TOTAL_BUDGET に対する比率。つまり、15% の損失でその日の取引を停止)
連続損失時の休止3 回 → 15min 休止(MAX_CONSEC_LOSS = 3、PAUSE_CONSEC_SEC = 900)
累積損失による停止>= 0.10 SOL → 取引を停止(SESSION_STOP_SOL = 0.10)
最大ポジション数MAX_POSITIONS = 5
最大保有時間MAX_HOLD_HOURS = 2
クールダウンCOOLDOWN_MIN = 30(売却後、同じトークンを再購入するまで 30 分)

1 日の損失上限は TOTAL_BUDGET に応じて自動的に調整されます(比率は 15% で固定)。連続損失カウンターは、利益が出る取引が成立するとリセットされます。セッションのリスク管理状態は、ボットの再起動時に自動でリセットされます。


絶対遵守ルール(違反禁止)

  1. RPC の残高が 0 でも、トークンが存在しないとは限りません(Solana RPC には重大な遅延があります)。未確認のポジションを破棄するには、zeroCount >= 10 かつ経過時間 > 180s が必要です。
  2. positions.json への書き込みには、_state_lock の保持が必須です。
  3. order_status() が TIMEOUT を返した場合、必ず未確認のポジションを作成します。
  4. 安全性チェック API が失敗した場合は、フェイルクローズとし、購入しないでください。
  5. ランキング決済(EXIT 0)は最優先です。
  6. 1 日の損失上限に達した場合、その日はすべての購入を停止します。
  7. 取引で GAS_RESERVE の 0.01 SOL を使うことはありません。

onchainos CLI コマンドリファレンス

#コマンド用途
1onchainos token trending --chain solana --sort-by 2 --time-frame 2上位20件のランキング
2onchainos token advanced-info --chain solana --address <addr>安全性チェックデータ
3onchainos token holders --chain solana --address <addr> --tag-filter <tag>保有者のリスク
4onchainos market prices --tokens 501:<addr1>,501:<addr2>,...一括価格取得
5onchainos swap quote --from <from> --to <to> --amount <amt> --chain solana見積もり
6onchainos swap swap --from <from> --to <to> --amount <amt> --chain solana --wallet <addr> --slippage <pct>取引
7onchainos wallet addresses --chain 501Solana アドレス
8onchainos wallet balance --chain 501残高
9onchainos wallet contract-call --chain 501 --to <router> --unsigned-tx <callData>TEE 署名
10onchainos wallet order-status --order-id <orderId>取引の確認

トラブルシューティング

問題解決方法
"FATAL: onchainos CLI not found"onchainos をインストールし、PATH に含まれていることを確認してください
ダッシュボードが開かないポート 3244 が使用中か確認してください:lsof -i:3244
ボットに取引シグナルがないランキングに新しいエントリーがない可能性があります。変更があるまでお待ちください
ログインの有効期限が切れたonchainos wallet login <email> を再実行してください
ライブモードでの購入に失敗するSOL 残高が MIN_WALLET_BAL(0.06)以上あることを確認してください

用語集

用語定義
Ranking Exitランキング退出 — トークンが上昇率上位20銘柄のランキングから外れたときにポジション全体を自動売却します。モメンタムが失われた時点で退出します
Slot Guardランキングデータに基づく13項目の基本指標による事前チェックです。追加の API 呼び出しは不要です
Advanced Safetyonchainos token advanced-info を使用して Dev/Bundler/LP データを取得する、9項目の詳細な安全性チェックです
Holder Riskonchainos token holders を使用して不審なアドレスやフィッシングアドレスを検出する、3項目の保有者リスクチェックです
Momentum Score買い比率、価格変動、トレーダー数、流動性、安全性ボーナスから算出されるモメンタムスコア(0~125)です
Quick Stopクイックストップ — ポジションを N 分間保有し、損失が N%を超えた場合に発動します(両方の条件を満たす必要があります)
Trailing Stopトレーリングストップ — 利益が発動しきい値に達した後、ピークからしきい値を超えて下落した場合に売却します
Unconfirmed Position取引の確認がタイムアウトしたときに作成される保留中のポジションです。破棄する前に残高を複数回確認する必要があります
Fail-Closed安全性チェック API が失敗した場合、安全ではないものとして扱い、購入しません
TEETrusted Execution Environment(信頼された実行環境) — onchainos の署名はセキュアエンクレーブ内で実行されます
Agentic Wallet秘密鍵を TEE 内に保持し、セキュアな環境の外に持ち出さない onchainos 管理ウォレットです
DAILY_LOSS_LIMIT1日の損失率(TOTAL_BUDGET に対する比率)です。発動すると、その日はすべての購入が停止されます
MC / MCAPMarket Cap(時価総額) — トークンの総供給量 × 現在価格で、トークンの規模を示します
LPLiquidity Pool(流動性プール) — DEX で取引するためのトークンペアのプールです。LP が大きいほどスリッページは小さくなります
LP BurnLP トークンを恒久的に焼却し、開発者が流動性を引き出せないようにすることです
Rug Pull開発者が突然流動性を引き出したり、保有分をすべて売却したりして、トークン価格をゼロまで暴落させる悪意ある行為です
Devトークンの開発者/デプロイ担当者 — ミームコインの文脈では、トークンコントラクトの作成者を指します。その保有状況や履歴は重要なリスク指標です
Bundlerバンドルトレーダー — トークンのローンチ時に、バンドルされたトランザクションを通じて大量に購入するアドレスです。インサイダーや相場操縦者である可能性があります
Sniperスナイパー — ローンチ時にトークンを即座に自動購入するボットアドレスです。保有が集中している場合、売り圧力が生じる可能性があります
Honeypot購入はできても売却できない(または売却時の税率が非常に高い)悪意あるトークンコントラクトです
Slippage予想価格と実際の約定価格との差です。流動性が低いほどスリッページは大きくなります
lamportsSOL の最小単位です。1 SOL = 1,000,000,000 lamports
Native SOLSOL のネイティブトークンアドレス 11111111111111111111111111111111(1 が32個)です。スワップの --from にはこれを使用する必要があります
WSOLWrapped SOL(So11...112) — SOL をラップした SPL Token 形式です。スワップの --from には使用できません

コメント