概要
この戦略は、前取引日の最高値に基づいて取引を行うトレンドフォロー型戦略です。前取引日の最高値をブレイクした時にロングポジションを建て、当日中に何度ブレイクしても繰り返しポジションを追加します。
戦略の原理
-
LucF関数を使用して、バックテスト時に最新のローソク足を覗き見しないようにします。
-
新たな取引日の始まりかどうかを判断します。当日の最高値max_todayと最安値min_todayを記録します。
-
現在の最高値highとmax_todayを比較し、max_todayを更新します。
-
現在の最安値lowとmin_todayを比較し、min_todayを更新します。
-
前取引日の最高値と最安値を描画します。
-
前取引日の最高値をブレイクした時のエントリーポイントを設定します。この際、最高値に一定のGAPを追加して、エントリーを遅らせたり早めたりできます。
-
ストップロス比率slと利確比率tpを設定します。
-
価格が前取引日の最高値をブレイクした時にロングポジションを建てます。
-
ストップロスと利確ポイントを設定します。
-
トレーリングストップを有効にするかどうかを選択し、トレーリングストップ開始の最低条件とトレーリングストップの距離を設定します。
-
オプションで、クローズ時にEMA状態を判断するかどうかを選択します。
優位性分析
これは比較的シンプルなトレンドフォロー戦略であり、以下のような利点があります。
-
戦略シグナルはシンプルかつ明確で、実装が容易です。
-
前取引日の最高値のブレイクによるトレンド確認シグナルを活用することで、レンジ相場のノイズを効果的にフィルタリングできます。
-
GAPパラメータでエントリーの感度を調整できます。
-
全体のリスクはコントロール可能で、ストップロスが明確です。
-
トレーリングストップを使用して利益を確定するか選択できます。
-
EMA判断を組み合わせて、デッドクロス時にポジションを抱え込むのを回避できます。
リスク分析
この戦略には以下のようなリスクにも注意が必要です。
-
ブレイクに失敗した場合損失が発生する可能性があるため、適切なストップロス価格を設定する必要があります。
-
ブレイクの有効性は市場がトレンド状態にあることに依存し、レンジ相場ではポジションを抱え込みやすくなります。
-
トレーリングストップの設定が不適切だと感度が高すぎ、小幅な価格調整でストップロスにかかる可能性があります。
-
EMA判断のパラメータ選択が適切でないと、感度が高すぎたり鈍くなったりする可能性があります。
-
GAP、ストップロス幅、トレーリングストップ設定など、調整すべき変数が多く、最適化が必要です。
最適化の方向性
以下の点から本戦略の最適化を継続できます。
-
ストップロスを固定値からATRやトレンドに応じた動的ストップロスに変更します。
-
標準偏差によるフィルターを追加して、ブレイクの有効性を判断します。
-
ボラティリティに基づく条件を追加して、レンジ相場での無効なブレイクを回避します。
-
EMAパラメータを最適化し、判断の安定性と正確性を向上させます。
-
トレーリングストップのパラメータを市場の変動幅に合わせて最適化します。
-
異なる銘柄でのパラメータのロバスト性をテストします。
-
ポジションサイズを動的に調整するメカニズムを追加します。
総括
この戦略は全体的にシンプルで実用的であり、典型的なトレンドフォロー戦略です。前取引日の最高値のブレイクをシグナルとしてトレンドを追跡し、リスク管理は主にストップロスに依存します。適切なパラメータ最適化により、トレンド相場で良好な結果を得ることができます。ただし、ストップロス戦略とフィルター条件を適切に管理し、レンジ相場でのポジション抱え込みを防ぐ必要があります。本戦略は、トレンドフォロー戦略の基本フレームワークとして拡張や最適化を行うことができます。
/*backtest
start: 2023-09-30 00:00:00
end: 2023-10-07 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
// © TheSocialCryptoClub
//@version=5- 1
