概要
この戦略は、Hull移動平均線(HMA)の1次、2次、3次、4次の時間微分を使用して投資を行うものです。資金を均等に割り当てます。エントリーポイントは2次、3次、4次導関数のトレンド認識によって生成され、エグジットポイントは新しいエントリーポイントまたはトレーリングストップ損失の割合で作成されます。
戦略の原理
この戦略はまずHMAを計算します。Hull移動平均線は以下の式を使用する加重移動平均線です。
hullma = wma(2*wma(src,sm/2)-wma(src,sm),round(sqrt(sm)))
ここでsrcは価格、smは平均線の長さを制御する入力パラメータです。
その後、戦略は速度(1次導関数)、加速度(2次導関数)、躍度(3次導関数)、および加加速度(4次導関数)を計算します。これらはHMAとその遅延値との差を長さlenで割ることによって計算されます。例えば、速度の計算式は次のとおりです。
speed = (hullma-hullma[len])/len
他の導関数も同様の方法で計算されます。
戦略は加速度、躍度、加加速度の正負を確認してエントリーとエグジットを決定します。3つの指標がすべて正の場合、ロングポジションを取ります。3つの指標がすべて負の場合、ショートポジションを取ります。
さらに、この戦略はトレーリングストップロスを使用して利益を確定します。ロングポジションは調整可能な入力パーセンテージに基づいてストップロスを設定し、ショートポジションも同様です。
優位性の分析
この戦略の主な利点は、エントリーとエグジットのシグナルとして複数の導関数を使用することであり、これにより誤ったシグナルをフィルタリングできることです。速度(1次導関数)のみに依存してエントリーを決定するのは通常脆弱ですが、2次、3次、4次導関数を組み合わせることで、より強固なシステムを構築できます。
もう一つの利点は、この戦略が非常に柔軟であることです。HMAの長さ、各種導関数の長さ、ストップロスのパーセンテージなど、複数の調整可能なパラメータがあり、さまざまな市場に最適化できます。
調整可能なトレーリングストップを使用できることも利点です。これにより、トレンド相場でより多くの利益を得ることができ、レンジ相場ではタイムリーにエグジットして最大ドローダウンを制限できます。
リスク分析
この戦略の主なリスクは、突発的な事象によるヒット率の低下です。適切なフィルタリングルールがない場合、重要なニュースイベントの発生後に複数の導関数が同時に誤ったシグナルを出し、大きな損失を招く可能性があります。ニュースフィルターを設定したり、突発的なイベント後しばらく戦略を停止したりすることで、このリスクを軽減できます。
もう一つのリスクは、パラメータが過適合しやすいことです。HMAの長さや各導関数の長さなどのパラメータが結果に影響を与える可能性があります。厳格なバックテスト手法を採用し、さまざまな市場でこれらのパラメータのロバスト性を評価する必要があります。また、トレーリングストップのパーセンテージを大きすぎに設定しないように注意する必要があります。そうしないと損失が拡大する可能性があります。
最適化の方向性
この戦略は以下の観点から最適化できます。
-
突発的なイベントに基づくフィルタリングメカニズムを追加し、重要なニュースイベント後しばらく取引を停止して、大きな損失を回避する。
-
複数の市場でパラメータをバックテストし、ロバスト性を確認する。異なる銘柄や異なる期間のデータをバックテストし、パラメータ設定の安定性を評価する。
-
エントリーロジックの改良を試みる。単純な正負判定ではなく、機械学習アルゴリズムを導入して自動的にトレンドを認識する。
-
ストップロスの方法を改善する。単純なパーセンテージベースのトレーリングストップの代わりに、ボラティリティベースのストップロスや機械学習ベースのストップロスを使用する。
-
利確エグジットを追加する。現在のロジックは主にストップロスに依存しているため、上方向へのトレーリング利確や目標利益でのエグジットを追加できる。
まとめ
この戦略はマルチタイムフレームのトレンドフォロー戦略です。Hull移動平均線の複数の導関数をポジション構築と決済のシグナルとして使用し、トレーリングストップで利益を確定します。主な利点は、複数の導関数を利用して誤ったシグナルをフィルタリングできること、戦略パラメータが柔軟であることなどです。注意すべきリスクとして、突発的なイベントの影響やパラメータの過適合が挙げられます。この戦略は、フィルタリングメカニズムの追加、パラメータのロバスト性改善、エントリー・エグジットロジックの改良などを通じて、より信頼性が高く安定した自動売買システムにすることができます。
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title="Derivative Based Strategy", shorttitle="DER", currency="USD", calc_on_order_fills=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10, initial_capital=1000)
len = input(1, minval=1, title="Derivatives Length")
sm = input(4, minval=1, title="HMA Length")- 1

