mcpField
R
revx-strategy

revx-strategy

github.com/revolut-engineeringその他7497 回インストール1 週間前に更新
リポジトリ

revx-strategy について

revx-strategyは、`revx`コマンドラインでRevolut Xのグリッド取引戦略をバックテスト、最適化、実行するスキルです。取引ペア制約の検証や、実注文前の明示的な確認など、安全手順も扱います。

主な機能

  1. 01過去のローソク足データでグリッドを検証
  2. 02リターン順にパラメーターの組み合わせを最適化
  3. 03実運用またはdry-runでグリッドを実行
  4. 04取引ペア制約に基づく計画の検証
  5. 05トレーリングアップと損切りの設定

活用シーン

  1. 01導入前にグリッド設定を比較
  2. 02取引ペアの過去実績を評価
  3. 03実注文前にグリッドをシミュレーション
  4. 04利用者の承認後に実運用を開始

インストール

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

$npx skills add https://github.com/revolut-engineering/revolut-x-api --skill revx-strategy

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

詳細

ストラテジー:グリッドボット(revx strategy grid)

自動グリッド取引ストラテジーのバックテスト、最適化、実行を行います。

認証が必要です。 これらのコマンドを実行する前に、revx がインストールされ、設定済みであることを確認してください。認証関連のエラー(Auth not configured、No private key found、Authentication failed (401)、Invalid signature、insecure permissions、または ~/.config/revolut-x/ 内のキー/設定ファイルが見つからない)が発生した場合は、直ちに revx-auth スキルを呼び出し、修正を自分で適用してください。 セットアップをユーザーに依頼して処理を中断してはいけません。ユーザーに依頼するのは、API キーの貼り付け、Revolut X プロフィールへの公開鍵の登録、パスフレーズの選択など、ユーザー本人にしかできない手順に限ってください。修正後、元のコマンドを再試行してください。

シンボルは、ハイフンで区切る BASE-QUOTE 形式を使用します:BTC-USD、ETH-EUR、SOL-USD。


バックテスト

過去のデータでグリッドストラテジーをテストします:

revx strategy grid backtest BTC-USD
revx strategy grid backtest BTC-USD --levels 10 --range 10 --investment 1000
revx strategy grid backtest ETH-USD --days 60 --interval 4h
revx strategy grid backtest BTC-USD --split
revx strategy grid backtest BTC-USD --trailing-up --stop-loss 85000
revx strategy grid backtest BTC-USD --json
フラグデフォルト説明
--levels <n>5片側あたりのグリッドレベル数(1~100)
--range <pct>10中央価格からのグリッド範囲(±%)
--investment <amount>1000クオート通貨での投資額
--days <n>3過去データの期間
--interval <res>1mローソク足の時間間隔
--splitoff投資額を買いと売りのレベルに分割します(開始価格を上回るレベル分は、ベース通貨を成行買いします)
--trailing-upoffグリッドがコインを保有していない状態で、ローソク足の高値が上限の2段階上の幾何レベルに達したときに再構築します
--stop-loss <price>off価格が指定した絶対値に達したらバックテストを停止します(グリッドの最下位レベルを下回る値を指定する必要があります)
--jsonoffJSON 形式で出力します

バックテストエンジンの前提: エンジンは OHLC ローソク足で動作し、ローソク足内のティックデータにはアクセスできません。各ローソク足内の注文執行順序は、ローソク足の方向によって決まります:

ローソク足の種類条件想定される価格推移執行順序
陽線open <= closeopen → low → high → closelow 以上のレベルにあるすべての BUY 注文、続いて high 以下のレベルにあるすべての SELL 注文
陰線open > closeopen → high → low → closehigh 以下のレベルにあるすべての SELL 注文、続いて low 以上のレベルにあるすべての BUY 注文

制限事項:実際のローソク足内の値動きはさらに複雑な場合があります(例:高値/安値に複数回触れるなど)。バックテストではその動きを再現できません。

バックテストでは、グリッドがコインを保有していない状態で、条件を満たす1本のローソク足の高値に基づいてトレーリングアップを確定し、そのローソク足の終値からグリッドを再構築します。過去のローソク足にはライブのティック配列が含まれないため、ストップロスも即時に適用されます。

長時間実行ではありません — 完了すると結果を返します。通常どおり Bash ツールで実行してください。

実行前に、主要なパラメーターである 取引ペア、投資額、レベル数、範囲、分割モード を必ず確認してください。これらは資金とストラテジーの動作に影響するため、確認せずに推測してはいけません。その他のパラメーター(日数、時間間隔)は、ユーザーが指定しない限りデフォルトを使用できます。


最適化

リターン順にランク付けして、複数のパラメーターの組み合わせをテストします。

revx strategy grid optimize BTC-USD
revx strategy grid optimize BTC-USD --investment 5000 --days 60
revx strategy grid optimize BTC-USD --levels 5,10,15,20 --ranges 3,5,10 --top 5
revx strategy grid optimize BTC-USD --split
revx strategy grid optimize BTC-USD --trailing-up --stop-loss 85000
フラグデフォルト説明
--levels <csv>3,5,8,10,15テストする片側あたりのレベル数(各値は1~100)
--ranges <csv>3,5,7,10,12,15,20テストするレンジの割合
--top <n>10表示する上位の結果数
--investment <amount>1000クオート通貨での資金
--days <n>3過去データの期間
--interval <res>1mローソク足の時間間隔
--splitoff投資資金を買いレベルと売りレベルに分割します(開始価格より上のレベルでは成行買いしたベース通貨を使用します)
--trailing-upoffグリッドがコインを保有していない状態で、ローソク足の高値が上限より上の2つ目の幾何レベルに達したときに再構築します
--stop-loss <price>off価格がこの絶対値に達したら、各バックテストの実行を停止します。すべての組み合わせで最も低いレベルを下回っている必要があります。そうでない場合、最適化は実行前に失敗します
--jsonoffJSON 形式で出力します

パラメーターの組み合わせは最大200個です。バックテストの実行前に、すべての組み合わせが検証されます。いずれかの組み合わせがペアの制約またはストップロスの配置条件に違反すると、最適化コマンド全体が失敗します。無効な組み合わせはスキップされません。長時間実行されるコマンドではありません — 完了すると結果を返します。

実行前に、次の重要なパラメーターを必ず確認してください:ペア、投資額、分割モード。これらは資金と戦略の動作に影響するため、暗黙に推測してはいけません。その他のパラメーター(レベル数のリスト、レンジのリスト、日数、時間間隔、上位の結果数)は、ユーザーから指定がない限りデフォルトを使用できます。


ペアの制約と検証

バックテスト、最適化、ドライラン、ライブ実行では、実行前に同じ取引所対応のグリッドプランが作成されます。

  • グリッド価格はペアのクオート刻みに丸められ、厳密に増加し、重複しない必要があります。
  • レベルごとのクオート額はクオート刻みに切り下げられ、ベース通貨の数量はベース刻みに切り下げられます。
  • すべての注文は、ペアの最小クオート額とベース通貨の最小・最大数量を満たす必要があります。
  • 分割モードでは、初回の成行買いと割り当てる各売り注文の数量が、ペアの制限内に収まる必要があります。
  • ストップロスは、刻みに合わせたグリッドレベルの最小値を厳密に下回る必要があります。また、最大清算数量が最大ベース注文数量を超えてはいけません。

無効なパラメーターは、シミュレーションや注文の発注前にエラーになります。最適化では、要求されたすべての組み合わせを先に検証し、1つでも無効なものがあると全体が失敗します。レベル数を増やすとレベルごとの資金が減るため、片側100レベルのグリッドでは、より小さなグリッドよりも大きな投資額が必要になる場合があります。


実行(ライブ取引)

人による確認が必要です

ユーザーの明示的な確認なしに、revx strategy grid run(--dry-run を付けない場合)を絶対に実行しないでください。 このコマンドは実際の資金で実際の注文を発注します。

ライブグリッドボットを実行する前に、次の確認内容をユーザーに提示してください。

起動するグリッドボット:

  • ペア:BTC-USD
  • 投資額:$500
  • レベル数:片側10
  • レンジ:+/-5%
  • モード:LIVE(実際の注文)

実際の買い注文と売り注文が発注されます。実行してもよろしいですか?

ユーザーが明示的に承認してから実行してください。--dry-run では実際の注文が発注されないため、確認は不要です。

まずドライランを必ず提案する

ユーザーがライブグリッドボットの実行を依頼した場合、現在のセッションですでにドライランを実施済みであるか、ドライランを省略したいと明示している場合を除き、ライブ実行の前に必ず --dry-run での開始を提案してください。

応答例:

ライブ実行の前に、まずドライランでグリッド設定を確認することをおすすめします。

revx strategy grid run BTC-USD --investment 500 --levels 10 --range 5 --dry-run

これにより、実際の注文を発注せずにボットをシミュレーションできます。まずドライランを始めますか?

ユーザーがドライランを省略すると確認した場合は、上記のライブ実行の確認フローに進んでください。

パラメーターが不足している場合 — 必ず質問し、推測しないでください

CLI では --investment フラグが必須ですが、重要なパラメーターすべてについても、ユーザーの意向を確認してください。

  1. 通貨ペア — どのペアですか?
  2. 投資額 — 資金はいくらですか?
  3. レベル数 — 片側あたりのグリッドレベル数はいくつですか?(「デフォルトを使用」と指定された場合はデフォルトの 5)
  4. レンジ — 価格レンジは何パーセントですか?(「デフォルトを使用」と指定された場合はデフォルトの 5%)

ユーザーが「BTCでグリッドボットを実行して」と指定した場合は、最低限、投資額を尋ねてください。

リアルタイムダッシュボードでライブグリッドボットを実行します。

revx strategy grid run BTC-USD --investment 500
revx strategy grid run BTC-USD --levels 10 --range 5 --investment 1000 --interval 15
revx strategy grid run BTC-USD --investment 500 --split
revx strategy grid run BTC-USD --investment 100 --dry-run
revx strategy grid run BTC-USD --investment 500 --reset
revx strategy grid run BTC-USD --investment 1000 --trailing-up --stop-loss 85000
フラグデフォルト説明
--investment <amount>必須クオート通貨での資金
--levels <n>5片側あたりのグリッドレベル数(1~100)
--range <pct>5中間価格からのグリッドレンジ(±%)
--splitオフ投資額を買いレベルと売りレベルに分割します(現在価格より上のレベル分のベース通貨を成行買いします)
--interval <sec>10ポーリング間隔(秒、5~86400)
--dry-runオフ実注文を行わずにシミュレーションします
--resetオフ保存済みグリッドの注文をキャンセルして、新しく開始します。以前のグリッドのコインはウォレットに残ります
--trailing-upオフグリッドにコインがない状態で、上限を超えた2つ目の幾何学レベルに3回連続で到達した後、グリッドを再構築します
--stop-loss <price>オフ価格がこの絶対値に達したら、すべて売却して停止します(最も低いグリッドレベルを下回る値である必要があります)

Ctrl+C を押すとグリッドを終了します。未約定の注文をキャンセルし、コインはウォレットに残したまま、概要を表示します。次回起動時には新しいグリッドが開始されます。注文がクローズされたことを確認できない場合、次回起動時にまず確認します。停止シグナル(kill、docker stop、システムのシャットダウン)を受けると、注文をキャンセルし、グリッドにコインが残っている場合、または注文の確認が取れていない場合は、グリッドを保持します。その後、またはクラッシュ後に次回起動すると、グリッドを再開します。

コインや現金が約定後にアカウントから移動されたなどの理由で注文を出せない場合、ダッシュボードには、注文がなくなるまで確認のたびに理由を示す行が表示されます。同じ理由で待機している同一レベルの注文は1行にまとめられ、ボットが送信したものの確認できなかった注文は「未確認」と表示されます。ボットがまだ送信していない売り注文は「未発注」と表示されます。取引所の一覧に1分間表示されない注文は「未掲載」と表示されます。「未決済の買い約定」行には、未決済の買い注文でこれまでに購入した数量が表示されます。注文の拒否など、現在の確認に関する警告が最初に表示されます。確認の終了時点でも注文が出ていない場合は、その注文についてTelegramに1件のメッセージが送信されます。そのため、同じ確認内で再試行が成功した場合は何も送信されません。売り注文は確認のたびに再試行されます。買い注文は1分に1回、注文に必要な現金ができ次第再試行されます。その注文が発注された後に再び失敗するまでは、追加のメッセージは送信されません。現金不足で見送られた買い注文は、待機中の注文数、利用可能な現金、必要な合計額を示す1行にまとめられます。レベルには不足分の資金が補充されるため、失われた残額はその金額分だけ補われ、ボットは利用可能な現金で発注します。買い注文への応答が失われた場合、ボットは1分に1回、注文 ID で照会して追跡します。照会で2回見つからなかった場合、ボットは同じ ID で再送信します。注文がすでに存在する場合、取引所はその注文を拒否します。キャンセルまたは拒否されたことが判明した場合、ボットは同じ金額で再発注します。取引所の最小注文額を下回る残額は発注されません。その残額はそのポジションの予算内に保持され、そのポジションが売却された際に買い戻されます。ただし、その買い戻し額も最小注文額を下回る場合を除きます。Ctrl+C でキャンセルされた残額のある買い注文や、起動時にキャンセル済みと判明した買い注文にも同じ処理が適用されます。--split を使用すると、起動時のサイズ確認では、成行買いでコインに対して支払う 0.09% の手数料も考慮されます。そのため、取引所の最小注文額でのグリッドは買い付け前に拒否されます。 --reset は、古いグリッドにコインが残っている場合や、売却処理が保留中の場合でも、新しいグリッドを開始します。まず、返信が失われた注文も含め、古いグリッドの注文をキャンセルしてから、保存データを削除します。売却処理は破棄され、古いグリッドが購入したものの売却しなかったコインはウォレットに残り、新しいグリッドには引き継がれません。キャンセルが確認できない場合、または注文の一覧を取得できない場合は、保存データが保持されるため、もう一度実行してください。取引所の注文一覧に表示されない注文は、IDを付けて表示されます。直前に送信された分割買い注文または分割売り注文は、数分間取引が成立する可能性があります。

保存されたグリッドファイルが破損している場合、ボットは起動を拒否するため、古いグリッドの注文やコインが追跡されないまま残ることはありません。新しいグリッドに引き継ぐことはできないため、まず Revolut X アプリで古いグリッドの未決済注文をキャンセルし、そのコインの扱いを決めてください。その後、--reset を指定して実行すると、破損したファイルは <name>.damaged-<time> に名前が変更され(削除されることはありません)、新しいグリッドが開始されます。ボットに読み取り権限がないファイルは、破損ファイルではなく読み取りエラーとして報告されます。

ライブモードとドライランモードでのトレーリングアップには、条件を満たす価格が3回連続で必要です。しきい値を下回る価格があると、確認回数はリセットされます。3回目の価格に到達した時点で、グリッドにコインが残っておらず、未解決の注文発注もないことが必要です。それ以外の場合、再構築は保留され、次にしきい値以上の価格が届いた時点で再試行されます。ストップロスは、条件を満たす最初の価格で即時に発動します。 グリッド注文は通常の指値注文(allow_taker)です。急騰後の価格より低い売り注文や、急落後の価格より高い買い注文など、市場価格がすでに通過した注文は、その価格またはそれより有利な価格ですぐに約定し、0.09%のテイカー手数料がかかります。板で待機する注文には、0%のメイカー手数料がかかります。グリッドは設定したレベルに固定されます。買い注文で受け取ったコインは、その1つ上のレベルで売却され、取引所の数量刻みに合わせて切り捨てられます。売却できないほど少量の残りは、その売却とまとめて決済され、そのコストはその売却に計上されます。売り注文が約定すると、そのコインを買ったレベルで、該当スロットの保有数量分、つまり全量約定の場合はレベルごとの全数量、部分約定の場合はその持ち分に相当する数量を再購入します。グリッドの中心価格より下にある空の買いレベルは、価格がすでにそのレベルを下回っていても買い戻され、注文はすぐに約定します。取引所が新しいグリッド注文に対して state: "rejected" を返した場合、拒否理由にかかわらず、その買いレベルまたはポジションでの1回の拒否として数えます。ボットはその後、最長5秒間注文を照会し、約定した分を計上して、残りを新しいクライアント注文 ID ですぐに再送します。まだ照会できない注文は追跡したまま、後続の確認時に再照会します。1分後も見つからない場合は、未約定のまま拒否されたものとして扱い、再発注します。再起動後は、取引所にまだ表示されていないほかの注文と同様に扱います。追跡中の注文が後から取引所によって拒否された場合も、同じように数えます。拒否回数は確認の間で引き継がれますが、再起動をまたいでは引き継がれません。その間に発生したほかのエラーでは回数はリセットされず、再送が受理された場合も同様です。そのレベルまたはポジションの後続注文が板に載るか約定したときにのみ、回数がリセットされます。3回目の拒否が発生すると、すべてを売却してボットを停止します(緊急停止。以下を参照)。売却処理では、取引所が5秒以内に表示した場合、最後の注文の約定分も計上します。売却処理中に見つかった拒否は数えません。また、トレーリングアップを行うと、すべての拒否回数が最初から数え直されます。ほかのエラーが発生した注文はすぐには再送せず、後続の確認時に再試行します。起動時または実行中に取引所にまだ表示されていない注文は追跡したまま、再照会します。5分間見つからない状態が続くと、その注文固有のクライアント注文 ID で再送し、取引所で二重に発注されないようにします。その注文のキャンセルも、その時点までは完了として数えません。クライアント注文 ID をボットが見つけられない古い保存データの注文は再送しません。ボットはメッセージを送信し、見つからない状態が24時間続いた場合に限り、新しい注文を発注して、もう1通メッセージを送信します。それまではトレーリングアップを行いません。起動時には、送信済みだが未確認の買い注文または売り注文を、グリッドの注文履歴全体からクライアント注文 ID で照会します。未決済または約定済みの注文は引き継ぎ、未約定の拒否済みまたはキャンセル済みの注文は新しい ID で再発注します。買い注文は元の数量で発注します。拒否された注文は、3回の拒否回数に加算されます。見つからない注文は、元の ID で再送します。その送信に失敗した場合も、アラートを出して起動を続行します。その後、買い注文は資金があるときに1分ごとに再試行し、売り注文は確認のたびに再試行します。取引所から ID がすでに使用済みだと返された場合は、それ以降、ボットは照会のみを行います。中断された初回発注の買い注文や分割売り注文を復元する際に送信に失敗しても、起動は停止しません。実行中は、未確認の買い注文と、再送を取引所に「発注済み」として拒否された売り注文について、同じ照会を1分ごとに行います。注文を最初に送信した日時の1日前からの注文履歴を読み込みます。応答が失われた分割成行買い注文は、再送する前に起動時に同じ方法で照会します。取引所には注文があるものの、まだ一覧に表示されていない場合は、起動を中止し、数分後に再度起動するよう求めます。 グリッドの手数料: 手数料は、各注文で実際に受け取った額から差し引かれます。グリッド買いでは手数料がコインで支払われるため、ポジションには実際に受け取ったコインが保持され、コストは実際に支出したクオート通貨になります。そのポジションの売り注文は、手数料差し引き後のコイン数量に合わせて設定されます。グリッド売りでは手数料がクオート通貨で支払われるため、利益は実際に受け取ったクオート通貨からポジションのコストを差し引いた額になります。ボットは約定した各注文の実際の手数料を読み取り、コインでの手数料は約定価格で換算したうえで、クオート通貨建ての「支払った手数料」に加算します。板に置かれたままの注文には、0%のメイカー手数料が適用されます。次の注文には、0.09%のテイカー手数料が適用されます。市場価格がすでに注文価格を通過していたため即座に約定したグリッド注文、分割スタートアップ時の成行買い、売却処分時の成行売りです。ドライランとバックテストでは、グリッドの約定には0%、分割買いと売却処分には0.09%の手数料を想定します。

すべて売却する(ストップロスと緊急停止): ボットはまず、保存状態に売却処分中であることを記録します。以前から進行中の売却を完了し、送信済みだが未確認の注文を確認してから、すべてのグリッド注文をキャンセルし、その間に取引された注文を計上します。その後、保有するすべてのコインを、取引所の最大数量を超えない単位に分けて成行注文で売却します。まったく約定しなかった売却は、最大3回まで再試行します。売却注文の発注に失敗した場合、売却処分は保留中のままになります。キャンセルを確認できない注文に拘束されているコインは売却しません。分割買いも含め、応答が失われた注文はIDで照会します。その注文が保有している可能性のあるコインは、注文が見つかるまで売却も損失計上もしません。このような注文、取引所にまだ表示されていないグリッド注文、未確認のキャンセルや売却、または取引所のエラーによって売却が止まっている間、同じ実行中に30秒ごとに売却処分を再確認し、最長6分間続けます。5分間見つからない注文は、発注されなかったものとして扱い、売却を続行します。取引所の最低数量を下回る数量はウォレットに残し、損失として計上します。すべての売却が完了すると、保存されたグリッドは削除されるため、次回の実行は --reset なしで新たに開始します。売却処分を完了できない場合は保留中のままとなり、メッセージの末尾に理由が記載され、次回の起動時に、同じライブまたはドライランのモードで最初に処理されます。代わりに --reset を指定すると、売却処分は破棄されます。Ctrl+C では売却されません。上記の待機を停止し、新しいグリッド注文を送信せず、進行中のスタートアップ処理の完了を待ちます。売却処分中でなければ、その後グリッドの注文をキャンセルし、コインは保持してグリッドを終了します。売却処分中にすでに送信済みの売却は完了しますが、新たな売却は開始されず、残りの売却処分は次回の起動時に完了します。

ダッシュボードには、価格を中心とする範囲内のグリッド行を最大24行表示し、表示されていない上下のレベル数も示します。これにより、片側100レベルのグリッドも読みやすくなります。

Telegram コネクターが設定されている場合(revx-telegram スキルを参照)、起動時、終了時、約定時、損益の変化時に通知が送信されます。

グリッドごとに実行は1つのみ: ライブまたはドライランを問わず、グリッドの実行中は保存状態と同じ場所(設定フォルダー内の grid_state_<PAIR>.lock)にロックファイルが作成されます。同じ設定フォルダーから同じペアの2回目の実行を開始すると、1回目の実行中は、--reset を指定した場合も含め、何も送信される前に拒否されます。実行中にクラッシュしてこのマシンに残ったロックは、マシンの再起動後も引き継がれます。それ以外の場合は、削除すべきロックファイルの名前がエラーに表示されます。実行中のマシンまたはコンテナーごとに、設定フォルダーを1つ使用してください。同じホスト名と設定フォルダーを共有する2つのコンテナーは、互いのプロセスを認識できないため、それぞれ同じグリッドを開始できます。状況を確認するためにグリッドの2つ目のコピーを起動しないでください。代わりに revx order open を実行してください。ユーザーがグリッドのプロセスが実行されていないことを確認しない限り、ロックファイルを削除しないでください。 障害と外部での変更: 取引所に拒否されたキー(401 または 403)があると、マスクされたキーを示す Telegram メッセージがすぐに 1 件送信され、再び使えるようになったときにもう 1 件送信されます。ダッシュボードには修正方法が表示され、その間も未決済のグリッド注文は取引所に残ります。401 の場合は、revx configure でキーを修正して、グリッドを再開してください。403 の場合は、Revolut X でキーの権限を修正すれば、グリッドは自動的に続行されます。それ以外の理由で価格または注文データが 5 分間取得できない場合、グリッドは Telegram メッセージを 1 件送信し、データが復旧したときにもう 1 件送信します。その間も実行を続けます。たとえばアプリでなど、ボットの外部でグリッド注文がキャンセルされると、再度発注され、ダッシュボードにはその件数と発注時刻が表示されます。注文がボットの外部で置き換えられた場合は、グリッドが独自の注文を再度発注します。ダッシュボード、再起動時の概要、停止メッセージには、置き換えられた注文は追跡対象外であることが表示されます。不要な場合は、revx order cancel でキャンセルしてください。

長時間実行コマンド — Claude の動作指示

revx strategy grid run(--dry-run を含む)は、継続的なポーリングループとして無期限に実行されます。

対処方法:

  1. Bash ツールで run_in_background: true を指定してコマンドを実行します。プロセスが非同期で実行されるため、Claude はすぐに操作を再開できます
  2. Read ツールでバックグラウンドタスクの出力ファイルを定期的に読み取り、状況を監視して、重要なイベント(注文の発注、約定、エラー)をユーザーに報告します
  3. ユーザーが停止を求めた場合は、Ctrl+C と同じ方法でグリッドを終了します。pkill -INT -f "revx strategy grid run <PAIR>" を実行し、停止の概要が表示されるまで出力を読み取ります。グリッドが次回の起動まで継続するため、この方法で失敗した場合に限り TaskStop ツールを使用します
  4. グリッドを実行できるのは一度に 1 つだけです。ユーザーがライブダッシュボード(色、リアルタイムのテーブル、Ctrl+C による停止)を見たい場合は、バックグラウンドで起動せず、ユーザー自身のターミナルで実行するコマンドを伝えます。両方を同時に実行してはいけません

例 — グリッドボットの起動:

Bash ツールの呼び出し:

{ "command": "revx strategy grid run BTC-USD --investment 500 --levels 10 --range 5", "run_in_background": true }

ユーザーへの応答:

BTC-USD のグリッドボットをバックグラウンドで起動しました。定期的に更新を確認します。ご希望であれば、いつでも停止できます。

ご自身でライブダッシュボードを確認したい場合は、今回の実行を停止して、同じコマンドをご自身のターミナルで起動できます。グリッドを実行できるのは一度に 1 つだけです。


分割モードを提案するタイミング

ユーザーがグリッド戦略を設定する場合(バックテスト、最適化、または実行)、--split を指定していなければ、分割モードを使うかどうか尋ねます。状況を添えて、簡単に選べる形で提示します。

分割モード(--split)を使いますか?

  • 分割なし — すべての資金を現在価格より下の買い注文に使います。価格が買い水準まで下がってから反発すると予想する、上昇トレンドの市場に適しています。
  • 分割あり — 資金を買い水準と売り水準の両方に配分します。開始価格で成行買いを行い、その資金で上の売りポジションを建てます。価格が現在の水準付近で上下する、レンジ相場/横ばい相場に適しています。

ユーザーが判断に迷っている場合は、バックテスト/最適化で両方のパターンを実行して結果を比較することを勧めます。

ユーザーが分割モードを選択した場合は、バックテスト、最適化、ドライラン、ライブ実行のすべてで、一貫して --split を使用します。


損益指標

実現損益 = 完了した各売却の利益の合計(売却収益 − 各レベルのコスト)です。グリッド取引による純粋な利益を示します。分割購入(--split を使用した場合)自体では利益は計上されませんが、コインで支払う 0.09% の手数料を含むそのコストは、購入したコインのコストとなるため、そのコインを売却した時点で計上されます。

総損益 = (最終クオート通貨残高 + 最終ベース通貨残高 × 最終価格)− 初期投資額です。時価評価によるポートフォリオ価値の変動を示します。終了時に資産が強制売却されることはありません。

--split を使用しない場合: 開始価格を下回る買いレベルのみが資金割り当ての対象になります。上昇トレンドの市場では、すべてのグリッドサイクルが完了する可能性があり、その場合、実現損益と総損益は等しくなります。

--split を使用する場合: 投資額がすべてのレベルに分割されます。開始価格を上回るレベルには、開始価格でのシミュレーション上の成行買いによってポジションが割り当てられます。このため実現損益と総損益に差が生じ、グリッド内の上昇と下落の両方から利益を得られます。


一般的なワークフロー:バックテストしてから実行

# 1. Optimize to find best parameters
revx strategy grid optimize BTC-USD --investment 1000 --days 30

# 2. Backtest the top result
revx strategy grid backtest BTC-USD --levels 10 --range 7 --investment 1000

# 3. Dry run first
revx strategy grid run BTC-USD --investment 1000 --levels 10 --range 7 --dry-run

# 4. Go live
revx strategy grid run BTC-USD --investment 1000 --levels 10 --range 7

分割投資でテストと実行を行う場合は、すべての手順で --split を一貫して使用してください。


関連スキル

スキル目的
revx-telegramグリッドボットのイベントに関する Telegram 通知を受け取る
revx-marketグリッドを設定する前に価格と通貨ペアのデータを確認する
revx-account残高と注文状況を確認する
revx-trading手動で注文を出す(グリッドボットは注文を自動で出します)
revx-authAPI キーの設定と構成

コメント