トレンドベースのケルトナーチャンネル戦略
概要
本戦略は、トレンド指標、ケルトナーチャネル、DM指標の3つの主要指標に基づいています。
トレンド指標はSMAとEMAで構成されます。EMAがSMAを上抜けた際に、トレンド入りと判断します。ケルトナーチャネルは、ローソク足の始値と終値を判断するために使用します。DM指標は、買いと売りの方向性を判断するために使用します。
以下のエントリー条件が満たされた場合にロングポジションを取ります。
- EMAがSMAを上抜け、トレンドの上昇を確認
- ローソク足の始値がアッパーバンドの上、終値がチャネル内部にある
- DM指標が設定した基準線より大きい
戦略は2つの利益確定ポイントと1つのストップロスポイントを設定します。トレーリングストップを利用してより多くの利益を得ることも検討できます。
戦略の原理
トレンド判断
EMAとSMAのゴールデンクロスとデッドクロスによってトレンド方向を判断します。EMAのパラメータは46、SMAのパラメータは46です。EMAがSMAを上抜けた場合、上昇トレンドに入ったことを示します。
ケルトナーチャネル
ケルトナーチャネルは、ミドルライン、アッパーバンド、ロワーバンドの3本のラインで構成されます。ミドルラインは終値のSMAで、期間は81です。アッパーバンドとロワーバンドは、ミドルラインの上下に指定倍率の真のレンジ(ATR)を加えた位置にあります。ここでは、ミドルラインの上下2.5倍のレンジ(ATR)と設定しています。
ケルトナーチャネルは、主に価格がチャネル内にあるかどうか、チャネルを突破する状況を判断するために使用します。
DM指標
DM指標は、ADX、+DI、-DIの3本のラインで構成されます。+DIは上昇の強さを測定し、-DIは下落の強さを測定します。ADXは平均方向性指数で、トレンドの強さを反映します。
ここではADXパラメータを10、DIパラメータを19と設定しています。+DIラインが設定した基準線(デフォルト27)を上抜けた場合、上昇が強く、ロングに適していることを示します。
優位性分析
本戦略は、トレンド、チャネル、強弱指標を組み合わせることで、価格の動きや買い・売りの方向性を効果的に判断できます。以下の優位性があります。
- トレンド判断は比較的正確であり、逆張りを回避できます。
- ケルトナーチャネルが明確で、サポートラインとレジスタンスラインを形成します。
- DM指標で買いと売りの力を測定し、方向性を確実にできます。
- 戦略条件が厳格で、急上昇後の戻りによる偽のブレイクアウトを効果的にフィルタリングできます。
- 利益確定とストップロスのポイントを設定することで、利益獲得の機会を掴みやすくなります。
リスク分析
本戦略には以下のリスクも存在します。
- トレンドが転換する可能性があり、EMAがSMAを下抜けた場合には速やかにポジションを決済する必要があります。
- 強い相場ではチャネルが機能しなくなる可能性があり、厳格なサポート・レジスタンスラインとして扱うことはできません。
- DM指標が誤ったシグナルを発する可能性があるため、価格動向と併せて判断する必要があります。
- 偽のブレイクアウトによりエントリーが発動しても、すぐに反落する可能性があるため、適切なストップロスを設定すべきです。
- 利益確定とストップロスのポイントは、市場の変化に適応するため、継続的な最適化が必要です。
最適化の方向性
以下の点からさらなる最適化が可能です。
- パラメータを調整し、異なるトレンド判断方法の効果をテストする。
- チャネルのパラメータを最適化し、実際の変動幅により近づける。
- 異なるDMパラメータの組み合わせをテストし、最適なパラメータを選択する。
- 出来高によるフィルタリングなど、異なるエントリー条件を設定する。
- 利益確定とストップロスの戦略を最適化する(例:トレーリングストップの試用により利益を拡大)。
- 異なる商品ごとにテストを行い、最適なパラメータの組み合わせを選択する。
まとめ
本戦略は複数の指標を総合的に活用してトレンド方向、サポート・レジスタンスライン、買い売り勢力を判断し、トレンドを効果的に捉えつつリスクを管理できます。ただし、リスクに注意し、市場変化に適応するためのパラメータ最適化が必要です。全体的に、本戦略は実用性が高いと言えます。
/*backtest
start: 2022-10-27 00:00:00
end: 2023-11-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//Original Idea by: Wunderbit Trading
//@version=4
strategy("Keltner Channel ETH/USDT 1H", overlay=true, initial_capital=1000,pyramiding = 0, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent,commission_value=0.07)- 1

