コンテンツにスキップ
取引する

活用例

Bitnxs AI エージェントを使う最も簡単な方法は、アプリ内チャットに自然言語で依頼することです。自動化したい場合は、外部ボット(自作、または Claude や ChatGPT などの AI が作成したもの)から https://api.bitnxs.com の Bitnxs API を呼び出します。以下のプロンプトはアプリ内エージェントが実際にできることに、Python は実際の API に合わせています。

アプリ内エージェント用プロンプト

Section titled “アプリ内エージェント用プロンプト”

明確な相場判断を得る

今 BTC は買い? 売り? 方向を明確に、エントリーと失効位も教えて

口座を確認する

現在のポジションと最良気配は?

指値注文を 1 件出す

先程の判断に従って 65000 で 0.01 BTC 買って

ラダー注文(1 回のバッチで最大 20 件)

BTC に指値買いを 3 件:64000 で 0.01、63000 で 0.01、62000 で 0.02。

内蔵スタイルを使う(「保守的」クイック指示、アプリ原文)

これから「保守的」なスタイルで取引してください:
- BTC のみ取引する
- 1 ポジションあたりウォレット残高の最大 15% まで
- 同時に保有するポジションは最大 1 件
- レバレッジは現在の設定のまま、変更しない
チャンスを見つけたら、まず理由を説明し、注文前に私の確認を待ってください。

Python:自作エージェント・ボット

Section titled “Python:自作エージェント・ボット”

以下はドキュメント化された API(認証、エンドポイント一覧)を使います。pip install requests eth-account eth-utils を実行し、BITNXS_USER(メインウォレットのアドレス)と BITNXS_API_KEY(権限を絞った API キー)を環境変数に設定してください。

import os, requests
from eth_account import Account
from eth_utils import keccak
BASE = "https://api.bitnxs.com"
USER = os.environ["BITNXS_USER"] # main wallet address
API_KEY = os.environ["BITNXS_API_KEY"] # never hard-code or paste into a prompt
def info(body):
return requests.post(f"{BASE}/info", json=body).json()
def open_session():
chal = requests.post(f"{BASE}/session/start", json={"user": USER}).json()
sig = Account.unsafe_sign_hash(keccak(chal["challenge"].encode()), private_key=API_KEY)
return requests.post(f"{BASE}/session/complete", json={
"challengeId": chal["challengeId"],
"signature": {"r": hex(sig.r), "s": hex(sig.s), "v": sig.v - 27},
}).json()["sessionId"]
meta = info({"type": "meta"}) # asset ids, decimals, max leverage

定時エントリー:1 時間ごとに指値買い

Section titled “定時エントリー:1 時間ごとに指値買い”
import time
SID = open_session() # refresh before the 1-hour session TTL
BTC = 1 # numeric asset id from meta
for i in range(3):
r = requests.post(f"{BASE}/session/order", json={
"sessionId": SID, "requestId": int(time.time() * 1000), # idempotency key
"asset": BTC, "isBuy": True, "limitPx": "65000", "sz": "0.001",
"reduceOnly": False, "orderType": {"type": "limit", "tif": "Gtc"},
}).json()
print(r)
time.sleep(3600)

set_triggers 権限が必要です。オラクル価格が triggerPx を越えると、トリガーは reduce-only の成行注文として発動します(ルール)。TP と SL は別々に呼び出します。

for is_tp, px in [(True, "72000"), (False, "61000")]:
print(requests.post(f"{BASE}/session/trigger", json={
"sessionId": SID, "asset": BTC, "isTp": is_tp,
"triggerPx": px, "sz": "0.001", "positionSide": 1, # 1 = long, -1 = short
}).json())

シンプルな戦略ループ:判断は LLM、上限はあなた

Section titled “シンプルな戦略ループ:判断は LLM、上限はあなた”

Claude、ChatGPT などの LLM でエージェントを作る際の安全なパターン:

  1. info({"type": "clearinghouseState", "user": USER}) と info({"type": "allMids"}) で状態を取得。
  2. 状態を LLM に渡し、JSON の判断(long / short / wait、価格、数量)を求める。
  3. 送信前にコードで検証:最大数量、1 時間あたりの最大注文数、許可マーケット、価格がミッド付近の範囲内か。
  4. 指値注文を出し、TP と SL のトリガーを付ける。
  5. すべて記録し、エラーが続いたら停止する。