銘柄間MACD比較ストラテジーのダイアグラム
このダイアグラムは1つの銘柄を売買しますが、判断には2つの銘柄を使います。MACDは売買対象の銘柄と参照銘柄の両方で計測され、比較するのは価格ではなくモメンタムです。速い側の値では売買対象が2つのうち弱い方でありながら、遅い側の値では依然として強い方である場合、ダイアグラムはこれをまだ埋まっていない乖離とみなして買います。逆の形であれば売ります。
戦略の概要
- インデックス(Index)ブロックは式から合成銘柄を作り、それを2つ目のローソク足ブロックに渡します。ダイアグラムに2つ目の銘柄が入る唯一の方法がこれです。
- どちらのレッグも同じ時間軸のローソク足系列として購読されます。一方はストラテジーの銘柄に対して、もう一方はインデックスが生成した銘柄に対してです。
- 同期(Sync)はレッグごとに1本のラインを保持し、2つをそろえて出力します。そのため、売買対象銘柄の値と参照銘柄の値は、たまたま先に届いた系列に左右されず、常に同じ足を表します。
- 各レッグはそれぞれ自前のMACDを持ち、コンバーター(Converter)がそこから3つの数値、すなわちMACDライン、シグナルライン、そして土台となるローソク足の終値を取り出します。
- レッグごとに2つの式が、それらをそのレッグ自身の価格に対する百分率に変換します。ヒストグラム(MACDからシグナルを引いた値)と、シグナルラインそのものです。2つの銘柄の価格が桁違いに離れている場合、生の値を比較しても意味がありません。
- 4つの変数(Variable)が売買対象のローソク足上で4つの百分率を読み取ります。そのため、比較もそれに続く注文も、最後に確定したレッグではなく、実際に売買している銘柄のタイミングで動きます。
- 比較(Comparison)がレッグを並べて突き合わせ——ヒストグラム同士、シグナル同士——4つの論理条件(Condition)がポジションの状態を加えて、動作ごとに1つずつゲートを設けます。すなわち、買い建て、売り建て、買い決済、売り決済です。
- エントリーはノーポジションの状態からのみ行われる固定数量の成行注文です。反対の値が出れば決済され、ポジション保護(Position protection)がエントリー価格に対する百分率でテイクプロフィットとストップロスを担います。
エントリーとエグジットの条件
- ロングエントリー: 売買対象のローソク足において、売買対象銘柄のヒストグラムが参照側のヒストグラムを下回り、同時にそのシグナルラインが参照側のシグナルラインを上回っていて、ポジションはノーポジションです。速い側の値は売買対象が遅れていることを示し、遅い側の値はまだ先行していることを示します。ダイアグラムはこの組み合わせを、これから取り戻されるべき遅れとして読み取ります。ポジション変更(Position modify)が注文数量を成行で買います。
- ショートエントリー: 売買対象のローソク足において、売買対象銘柄のヒストグラムが参照側のヒストグラムを上回り、同時にそのシグナルラインが参照側のシグナルラインを下回っていて、ポジションはノーポジションです。Position modifyが注文数量を成行で売ります。
- エグジット: 決済の経路は2つあり、どちらが先に来ることもあります。鏡像となる値がポジションを決済します。買い建ては、ヒストグラムが参照側より前に出て、シグナルラインが参照側の後ろに下がったときに決済され、売り建ては逆の組み合わせで決済されます。いずれも決済に設定されたPosition modifyであるため、数量はポジションそのものから取られ、1つの注文の中でドテンすることはありません。ダイアグラムはノーポジションに戻り、新しいシグナルを待ちます。それとは独立に、Position protectionがすべてのエントリー約定に追随し、エントリー価格から1.6%の利益または0.8%の損失で決済します。
パラメーター
| パラメーター | 既定値 | 説明 |
|---|---|---|
| Reference Security | TONUSDT@BNBFT * 1 | Indexブロックが参照銘柄を組み立てる式です。1つの銘柄を指定して1を掛けており、価格はそのままに保たれ、設定は算術式のままになります。 |
| Traded Candles | 00:15:00 | 売買対象のローソク足系列の時間軸であり、すべての注文が組み立てられるリズムです。 |
| Reference Candles | 00:15:00 | 参照側のローソク足系列の時間軸です。売買対象側と一致している必要があり、そうでなければ2つのレッグが同じ足に収まりません。 |
| Sync Interval | 00:15:00 | Syncが2つのレッグをまとめるバケットの長さです。ローソク足と同じ長さです。 |
| Traded MACD Fast | 12 | 売買対象銘柄に対して構築されるMACDの短期移動平均の期間です。 |
| Traded MACD Slow | 26 | 同じMACDの長期移動平均の期間です。短期の期間との差が、ヒストグラムが反応するまでに値動きがどれだけ続く必要があるかを決めます。 |
| Traded MACD Signal | 9 | 同じMACDのシグナルラインの期間です。ヒストグラムはこのラインを基準に測られます。 |
| Reference MACD Fast | 12 | 参照銘柄に対して構築されるMACDの短期移動平均の期間です。各レッグは独自の3つの期間を持つため個別に調整できますが、2つのヒストグラムの比較に意味があるのは、両者を同じ設定にしている間だけです。 |
| Reference MACD Slow | 26 | 参照側MACDの長期移動平均の期間です。2つの銘柄を異なる時間軸で測る意図がない限り、売買対象側と同じ値にしてください。 |
| Reference MACD Signal | 9 | 参照側MACDのシグナルラインの期間です。同じ理由から、売買対象側と同じ値にしてください。 |
| Order Volume | 1 | 注文サイズ(ロット数)。 |
| Take Profit, % | 1.6 | テイクプロフィットまでの距離。エントリー価格に対する百分率です。 |
| Stop Loss, % | 0.8 | ストップロスまでの距離。エントリー価格に対する百分率です。 |
ダイアグラムの詳細
- どちらのローソク足ブロックも確定したローソク足のみを受け取ります。形成中のローソク足の更新は足が始まった時刻を持つため、そこから組み立てた注文は送信される時点より古いものになってしまいます。
- Syncは、その中に含まれる値のうち最も早い時刻でセットを出力します。だからこそSyncからの値が直接注文に届くことはありません。4つの変数が売買対象のローソク足上で値を読み直し、注文が組み立てられるのはそのローソク足のリズムです。その代償として、比較は直近で完成した値の組を使うため、実際に動作するローソク足より1本分遅れます。
- 定数を保持する変数——ゼロと注文数量——はいずれも売買対象のローソク足でトリガーされます。トリガーのない変数は値を保持したまま出力せず、それを待つ条件は決して成立しません。
- どちらのMACDブロックも、形成済みかつ確定した値のみを出力します。そのため比較は各レッグの指標が完成してから始まり、足の途中で動くことはありません。
- すべてのSyncラインは両端が接続されています。入力されたまま取り出されない値があると、ブロックはそれを待ち続け、ストラテジーは起動しません。
使い方
.json ファイルを Designer に読み込み、バックテスターで過去データを使って実行し、実運用の前にパラメーターやブロック自体を自分の銘柄に合わせて調整してください。