反転トレンドフォロー戦略に基づく


作成日: 2024-02-06 10:03:40 最終変更日: 2024-02-06 10:03:40
コピー: 2 クリック数: 538
1
フォロー
1617
フォロワー

反転トレンドフォロー戦略に基づく

概要

逆転追跡戦略は,移動平均を市場フィルターとして組み合わせて,株価が逆転シグナルが発生したときにポジションを確立し,低買い高売りを実現し,株価が逆転した後のトレンドを追跡し,余分な利益を得るトレンド追跡戦略である.

戦略原則

この戦略の核心的な論理は,閉盘価格がN日前の低点より低いときに多ポジションを確立すること;閉盘価格がN日前の高点より高いときに多ポジションを平ら化することである.同時に,市場フィルターとして200日単調移動平均を組み合わせて,価格が200日移動平均より高い場合にのみ多ポジションを確立することである.

この戦略は,価格逆転理論に基づいて,株価の傾向が高点と低点を繰り返し出現すると考えます.価格がN日前に形成された低点を下回ったとき,多ポジションを確立するタイミングのポイントです.価格がN日前の高点を破ったとき,逆転利好が消えたことを示し,平ポジションの停止のタイミングです.

具体的には,この戦略には以下の核心モジュールがあります.

  1. 市場フィルター

市場動向の判定指標として200日単行移動平均を使用する. 株価が200天線以上である場合にのみ,ポジションを建てることが許される.これは,牛市で空白ポジションを建てるか,または熊市で多ポジションを建てるのを防ぐことができる.

  1. 逆転信号判断

判断論理: 閉店価格 < N 日前の最低値

N日前 (デフォルト5日前) の最低値より低い閉店価格は,株価が下落突破を起こし,買取シグナルを開始することを示す.

  1. 停止信号の判断

判断論理: 閉店価格 > N日前の最高値

N日前 (デフォルト5日前) の最高値より高くなっている閉店価格は,株価逆転の動きが終わったことを示し,ストップシグナルを開始する.

  1. 5% ストップ

入札価格から5%のストップラインを設定して,過大な損失を避ける.

優位分析

この戦略の主な利点は以下の通りです.

  1. 価格逆転理論を用いて,株価逆転の初期段階でポジションを確立し,後続のトレンドを追跡することができる.
  2. 市場フィルターとしての移動平均と組み合わせることで,不適切なオーバーまたは空白のポジションの構築を避け,閉じ込めのリスクを軽減します.
  3. N日前の最高値と最低値を用いて反転信号を判断し,パラメータは柔軟で,市場に応じてNの値を調整することができる.
  4. 5%のストップレスを設定すると,単一の損失が過大になるのを防ぐことができます.
  5. 株価の逆転を追跡し,低価格で高価格で売り上げを上げました.

リスク分析

この戦略にはいくつかのリスクがあります.

  1. 株価の反転シグナルは偽の突破であり,真のトレンドの反転を起動できず,損失を招く可能性があります.
  2. N日パラメータの設定が間違っており,実際の反転時刻を逃したり,早めに停止したりする可能性があります.
  3. 止損幅が大きすぎると,単一の損失が大きすぎます. 止損幅が小さすぎると,止損が早すぎます.
  4. この戦略は,株式指数と,上昇傾向が確立された一部の株で適用されるが,全株プールでの球取引には適さない.

最適化の方向

この戦略は以下の点で最適化できます.

  1. 移動平均のパラメータを最適化し,異なる天数パラメータの効果をテストする.
  2. 逆転信号判断を調整するNパラメータをテストし,最適なパラメータの組み合わせを探します.
  3. ストップの幅のパラメータを最適化して,ストップとポジション保持時間をバランスする.
  4. 動量指標などのフィルターを追加し,取引信号をより信頼できるようにする.
  5. 異なる取引品種に対して独立したパラメータの組み合わせを設定し,反射最適化を行う.

要約する

逆転追跡戦略は,移動平均指標と組み合わせて,市場環境を決定した後,逆転理論によって買い取りのタイミングを選択します. ストップ・ストップ・損失メカニズムでリスクを制御し,低価格で買い上げ,過剰利益を得ます. この戦略は,パラメータの最適化,補助フィルターの追加などの手段によって改善され,トレンドの状況でより良い利益を得ることができます.

ストラテジーソースコード
/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//  @version=4
//  © HermanBrummer
//  This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/

//  BUYS    WHEN THE CLOSE IS SMALLER THAN THE LOW OF 5 DAYS AGO
//  SELLS   WHEN THE CLOSE IS HIGHER THEN THE HIGH OF 5 DAYS AGO
//  USES A 200 MOVING AVERGE AS A FILTER, AND DOESN'T TAKE TRADES IF THE MARKET IS BELOW IT'S 200 MA
//  USES A 5% STOP LOSS FROM ENTRIES

strategy("REVERSALS", overlay=true)

StopLoss    = input(.95, step=0.01)
HowManyBars = input( 5 )

///     EXITS
if  close > sma(high,HowManyBars)[1]
    strategy.close_all()


///     ENTRIES
MarketFilter    = sma(close, 200)
F1              = close < sma(low,HowManyBars)[1]
F2              = close > MarketFilter
plot(MarketFilter, "MarketFilter", color.yellow)

strategy.entry("Long", true, 1, when=F1 and F2)


///     STOP LOSS
StopLossLine    = strategy.position_avg_price * StopLoss
plot(StopLossLine, "StopLossLine", #FF0000)
strategy.exit("Exit", stop=StopLossLine)