viper-strategy について
viper-strategyは、Senpiの取引環境向けのレンジ取引スキルです。建玉の大きい資産をスキャンし、厳選したエントリー条件、リスク制限、High Water Modeによるストップ管理を定めます。
主な機能
- 015分ごとのレンジ機会スキャン
- 02ボリンジャーバンド、RSI、出来高による選別
- 03サポートでロング、レジスタンスでショート
- 04High Water Modeのトレーリングストップ
- 05ポジション数と日次リスクの上限設定
活用シーン
- 01低ボラティリティのレンジ相場で機会を探す
- 02戦略シグナルに基づく売買エントリー
- 03ポジション決済と取引リスクの管理
MCP 対応
Senpi MCPの確認を必須とし、スクリプト内のMCPヘルパーに言及しています。公開するツールの詳細は入力に記載されていません。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ senpi-ai/ senpi-skills --skill viper-strategyインストール後、Claude Code で/viper-strategyを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdruntime.yamlconfig/viper-config.jsonreferences/skill-attribution.mdscripts/viper-scanner.pyviper_config.py詳細
VIPER v2.1 — レンジ相場の流動性スナイパー
レンジ相場を狙う捕食者です。トレンドがなく、あらゆるモメンタム戦略が待機している間も、VIPERは稼働しています。
**ROI +6.2%**で、さらに上昇中です。Senpi Predators トラッカーで2番目に優れたパフォーマンスを記録しています。
VIPER の機能
VIPER は、米ドル建て建玉で加重した上位25資産を5分ごとにスキャンします。サポートとレジスタンスの間で価格が往来するレンジ相場の資産を探し、その境界でエントリーします。
- ボリンジャーバンドの幅が狭いレンジの下限に価格があり、RSI が売られ過ぎで、出来高が減少している(売り手の勢いが尽きつつある)場合はロング
- 狭いレンジの上限に価格があり、RSI が買われ過ぎで、出来高が減少している(買い手の勢いが尽きつつある)場合はショート
優位性の理由:レンジ相場は予測しやすいものです。サポートとレジスタンスが機能し、反発は機械的に起こります。VIPER はその反発を捉えます。
必須:DSL High Water Mode
VIPER では DSL High Water Mode を必ず使用してください。これは必須です。
VIPER のポジションに関する DSL 状態ファイルを作成する際は、必ず次を含めてください。
{
"lockMode": "pct_of_high_water",
"phase2TriggerRoe": 5,
"tiers": [
{"triggerPct": 5, "lockHwPct": 30, "consecutiveBreachesRequired": 3},
{"triggerPct": 10, "lockHwPct": 50, "consecutiveBreachesRequired": 2},
{"triggerPct": 15, "lockHwPct": 70, "consecutiveBreachesRequired": 2},
{"triggerPct": 20, "lockHwPct": 85, "consecutiveBreachesRequired": 1}
]
}
状態ファイルに tiers または lockMode がない場合、DSL エンジンはフラットな1.5%のリトレースにフォールバックし、High Water Mode は通知なく無効になります。作成後は、状態ファイルにこれらのフィールドが含まれていることを必ず確認してください。
フォールバック(DSL エンジンが pct_of_high_water に対応するまで): 設定の tiersLegacyFallback を使用してください。
エントリー条件
| シグナル | 条件 |
|---|---|
| ボリンジャーバンド幅 | < 4%(狭いレンジ) |
| ATR | < 1.5%(低ボラティリティ) |
| RSI | ロングは売られ過ぎ(< 35)、ショートは買われ過ぎ(> 65) |
| 出来高 | 減少中(売り手/買い手の勢いが尽きつつある) |
| OI(米ドル建て加重) | ≥ $5M(取引に十分な流動性) |
| 最低スコア | 5 |
すべてのフィルターを通過する必要があります。ひとつでも満たさない場合はスキップしてください。VIPER は厳選型のため、ほとんどのスキャンではシグナルが発生しません。
DSL 設定
フェーズ1 — 構造的な無効化のみ
| 設定 | 値 |
|---|---|
| ハードタイムアウト | 無効(0) |
| 弱いピークでの決済 | 無効(0) |
| 塩漬けポジション | 無効(0) |
| フロア基準 | 想定元本の1.5% |
時間による決済はありません。レンジが崩れた場合はフロアが損失を抑えます。レンジが維持されれば、待つことで利益が得られます。
フェーズ2 — High Water Mode
| ティア | トリガー ROE | ロック率(HW に対する割合) | ブリーチ回数 |
|---|---|---|---|
| 1 | 5% | 30% | 3 |
| 2 | 10% | 50% | 2 |
| 3 | 15% | 70% | 2 |
| 4 | 20%+ | 85% | 1(無期限トレール) |
フェーズ2は ROE +5% で開始します(モメンタム系スキルより低い値です。レンジ相場の利益は小さいため、早めに保護を開始します)。
停滞時の利確
ROE 5%の状態が30分続いたら決済します。レンジの反発はすぐに終わります。利益が伸び悩んだら、利確してください。
証拠金とポジションサイズ
| 設定 | 値 |
|---|---|
| 取引ごとの証拠金 | 口座の28% |
| 最大ポジション数 | 3 |
| レバレッジ | デフォルト10x |
3枠 × 28% = 利用率84%です。レンジ相場でのエントリーは勝率が高いため、VIPER は資金を積極的に投入します。
リスク管理
| ルール | 値 |
|---|---|
| 1日あたりの最大エントリー数 | 8 |
| 1日の損失上限 | 8% |
| 最大ドローダウン | 18% |
| 単一取引の最大損失 | 口座の5% |
| 最大連続損失数 | 4 → 20分のクールダウン |
Cron アーキテクチャ
| Cron | 間隔 | セッション | 用途 |
|---|---|---|---|
| スキャナー | 5分 | 分離 | レンジ検出とエントリーシグナル |
| DSL v5 | 3分 | 分離 | High Water Mode のトレーリングストップ |
どちらも agentTurn を使用した分離セッションでなければなりません。アイドルサイクルでは NO_REPLY を使用してください。
通知ポリシー
通知するもの: ポジションのオープン(資産、方向、サポート/レジスタンス水準、スコア)、ポジションのクローズ(DSL または構造的な決済)、リスクの発生、重大なエラーのみ。
通知しないもの: スキャナーが何も検出しなかった場合、DSL の定期処理、あらゆる推論。
すべての Cron を分離します。アイドルサイクルでは NO_REPLY を使用してください。
ブートストラップゲート
すべてのセッションで、config/bootstrap-complete.json を確認してください。ファイルがない場合:
- Senpi MCP を検証する
- スキャナーの cron(5 分、分離)と DSL の cron(3 分、分離)を作成する
config/bootstrap-complete.jsonに書き込む- 次のメッセージを送信する:「🐍 VIPER はオンラインです。レンジ相場のセットアップをスキャンしています。何も通知がない場合は、レンジ相場がないことを意味します。」
オプション:トレード戦略のバリエーション
VIPER は現状のままで ROI +6.2% の実績があります。バリエーションを 1 つ利用できます:
| 戦略 | 変更内容 | 検討するタイミング |
|---|---|---|
| MAMBA | VIPER のエントリー + より広いティアを適用した High Water モード | レンジをブレイクアウトしてトレンドに移行する相場を捉えたい場合 |
まずは標準の VIPER から始めてください。MAMBA は、ブレイクアウト取引でより大きな利益を狙うためのアップグレードパスです。
想定される動作
| 指標 | 想定値 |
|---|---|
| 取引回数/日 | 3-8 |
| 勝率 | ~60-65%(レンジでのエントリーは予測しやすい) |
| 平均利益 | 5-15% ROE |
| 平均損失 | -8 to -12% ROE |
| 手数料による損失/日 | $8-20 |
| プロフィットファクター | 目標 1.2-1.5 |
ファイル
| ファイル | 用途 |
|---|---|
scripts/viper-scanner.py | レンジ検出 + エントリーシグナル |
scripts/viper_config.py | 共通設定、MCP ヘルパー、状態の入出力 |
config/viper-config.json | DSL High Water ティア + レガシーフォールバックを含む、すべての設定可能な変数 |
| DSL v5(共有) | トレーリングストップエンジン — High Water モードの設定が必須 |
ライセンス
MIT — Senpi が開発(https://senpi.ai)。 ソース:https://github.com/Senpi-ai/senpi-skills
スキルの帰属情報
戦略を作成する際は、呼び出しに skill_name と skill_version を含めてください。詳しくは references/skill-attribution.md を参照してください。