ページ

2026年7月16日木曜日

勝てるbotは売らない ― コードはOSSで全公開、「判断」だけをx402で量り売りする設計 07-15

自動売買botを作っている、と言うと必ず「勝てるなら人に売らないでしょ」と返ってくる。その通りだと思う。だからこのプロジェクトでは逆のことをした。botのコードは全部GitHubで公開し、売り物は「判断」だけにした。

この記事は、私が運用している暗号資産ペーパートレーディングシステム kfreqai(Freqtrade/FreqAIベース、160銘柄、LightGBM+ローカルLLM)で実装した「OSS body, metered brain(体は公開、脳は量り売り)」という構成の技術解説だ。

なぜコードを公開できるのか

普通のオープンコアモデル(有料機能をライセンスで守る)は、コピーやライセンス回避との戦いになる。この構成は違う。

kfreqaiのリポジトリには、取引パイプライン・リスク管理・ダッシュボード・反省会ループまで全部入っている。無いのはただ1ファイル、judgment_logic.pyプロンプトの文言、判断の閾値、ライブ戦略のパラメータだけだ。これらはサーバから一度も外に出ない。コードは複製できるが、判断のストリームは複製できない。守る努力そのものが不要になる。

実装: 環境変数1行で「脳」を差し替える

中核は judgment_backend.py というセレクタで、LLMを使う9つの判断関数(地合い判定・リスク指令・ニュース分類・トレード反省会・仮説研究・記事執筆)を1つのインターフェースに束ねている。

KFREQAI_JUDGMENT_BACKEND=
  rule_based  … 決定的なヒューリスティクス(clone直後はこれで動く)
  local_llm   … 自前のjudgment_logic.pyを書いて自分のLLMを繋ぐ
  x402        … リモートの判断APIをHTTPで呼ぶ(LLM・GPU・APIキー全部不要)

これがそのままフリーミアムの勾配になっている。git cloneした人は無設定で動く(賢くないが安全なルールベース)。本物の脳が欲しくなったら環境変数1行:

export KFREQAI_JUDGMENT_BACKEND=x402
export KFREQAI_JUDGMENT_API_URL=https://<judgment-api>

x402クライアント(judgment_backend_x402.py)の設計で気を使った点が3つある。

(1) 境界の維持。 仮説研究ループはLLMが提案した仮説を制約付きDSL(feature名・演算子・値のホワイトリスト)で検証するが、クライアント側に必要なのは名前だけだ。DSLの実体(pandas式)はサーバに残し、GET /v1/meta でfeature名のリストだけ配る。バリデーションは手元で、コード生成はサーバで。境界がAPIの形そのものに焼き込まれている。

(2) フェイルオープン。 判断APIに到達できないとき、cronで回っている運用ループを殺してはいけない。ネットワーク断はルールベースに自動フォールバックし、ログに残して続行する。逆に、設定ミス(URL未設定)と402 Payment Requiredは明確な例外にして隠さない。

(3) 有料呼び出しがDBを厚くする。 例えば銘柄リスク検査APIは、キャッシュに無い銘柄を頼まれるとその場でニュースを収集・分類して自分のデータベースにも蓄積する。プロンプトは薄い堀だが、蓄積データと運用実績は厚い堀になる。呼ばれるほど賢くなる構造は、従量課金と相性がいい。

決済: なぜx402か

x402はHTTP 402 Payment Requiredを使った従量課金プロトコルで、買い手は人間ではなくAIエージェントを想定している。サインアップもAPIキー発行もなく、エージェントがウォレットから1リクエスト$0.01を払って呼ぶ。

自動売買botの判断は毎時・毎日発生するので、従量課金が実質サブスクリプションになる。しかも「エントリー直前にリスク検査と流動性検査を1回ずつ呼ぶ」という利用パターンは、1取引あたり2コールという課金粒度に自然に落ちる。

実際、判断エンジンの一部は今日から買える状態にしてある。ニュースから hack/exploit/delisting/rug_pull/lawsuit を分類するrisk-checkと、24時間出来高の0.1%ルールで注文サイズを診断するsize-checkだ。BankrのUSDC決済とRapidAPIのクレジットカード決済の両方に出品した。どちらも、私のbotが本番で毎日使っているのと同じコードパスが応答する。

正直な現状と、それでも合理的な理由

収益はまだゼロだ。x402のエージェント経済は立ち上がったばかりで、有料呼び出しは観測できていない。それでもこのモデルが合理的だと考える理由は3つある。

  1. 配布資産は独立に価値を持つ。 GitHubのOSSは営業チャネルであり、ポートフォリオであり、技術の証明でもある。x402が空振りしても、この投資は消えない。
  2. 限界コストがほぼゼロ。 推論はローカルGPU(Ollama + Gemma)、ゲートウェイは既存のもの。売れなくても維持費が増えない。
  3. 証拠が付いている。 「この脳は売り物です。そしてこれがその脳の運用成績です」と公開ダッシュボードを指せる。ドッグフーディングの生きた損益計算書付きでオープンコアをやっている例は、まだほとんど無いはずだ。

「勝てるbotを売る」のではなく「botの脳を量り売りする」。勝率を証明する義務から解放されて、判断インフラとしての品質だけで勝負できるのが、この構成のいちばん気に入っているところだ。

リンク

※本システムは紙上取引(dry-run)で運用しており、実際の資金は動いていません。本記事は投資助言ではありません。