資源の読み込みに... 荷物...

EMA-パラボリックトレンド 戦略をフォローする

作者: リン・ハーンチャオチャン,日付: 2024-03-27 17:59:11
タグ:

img

概要

EPTS戦略は,パラボリックSAR指標と異なる期間の2つの指数関数移動平均値 (EMA) をベースとしたトレンドフォロー戦略である.この戦略は,パラボリックSAR指標を使用して現在の市場トレンド方向を決定し,速いEMAと遅いEMAの相対位置を考慮してエントリーシグナルを生成する.戦略の背後にある主なアイデアは"トレンドフォロー"である.これは安定した収益を達成するために上昇傾向でロング,下落傾向でショートを行うことを意味します.

戦略の原則

  1. パラボリック SAR インディケーターは,現在の市場傾向の方向性を決定するために使用されます.パラボリックがキャンドルスティックの上にあるとき,市場は下落傾向にあり,パラボリックがキャンドルスティックの下にあるとき,市場は上昇傾向にあります.

  2. 2つの指数関数移動平均値 (EMA) は,異なる期間でトレンドを確認し,エントリー信号を生成するために使用されます.この戦略は5日間の EMAと20日間の EMAを使用します.5日間の EMAが20日間の EMAを超える場合,市場は上昇傾向にあると考えられます.そうでなければ,それは下落傾向にあると考えられます.

  3. 入場条件:パラボリックSARとEMAの両方が上昇傾向を示すとき,長い信号が生成される.パラボリックSARとEMAの両方が下落傾向を示すとき,短い信号が生成される.

  4. 出口条件: Parabolic SAR がキャンドルスタイクを横切ると,現在のポジションは閉鎖され,戦略は次のエントリー信号を待っています.

  5. ストップ・ロスト:ポジションに入ると,ストップ・ロスト価格はパラボリックSARの現在のポジションに設定されます.パラボリックSARが動くと,ストップ・ロストポジションは動的に調整され,トライリングストップ・ロスを実装します.

パラボリック SAR インディケーターと EMA を組み合わせることで,EPTS 戦略は市場動向を効果的に把握し,トレンドが逆転するときに迅速にポジションを閉じてリスクを制御できます.さらに,ダイナミックストップロスの設定により,戦略の引き上げリスクはさらに減少します.

利点

  1. トレンドフォロー: EPTS戦略は,市場の主要なトレンドを効果的に把握し,安定した収益を達成できるトレンドフォローの考えに基づいています.

  2. ダイナミックストップ・ロスト:この戦略は,ダイナミックストップ・ロストとしてパラボリックSARを使用し,トレンドが発展するにつれてストップ・ロストポジションを調整し,リスクを効果的に制御します.

  3. 二重確認:パラボリック SAR と EMA の二重確認を使用することで,入力信号の信頼性が向上し,偽信号は減少します.

  4. シンプルで使いやすい: 戦略の論理は明確で,パラメータ設定はシンプルで,理解し実行するのが簡単です.

リスク分析

  1. 不安定な市場: 傾向が明らかでない 不安定な市場では,戦略はより多くの誤った信号を生成し,頻繁な取引とより大きな引き上げにつながる可能性があります.

  2. トレンドの逆転: 市場のトレンドが突然逆転すると,戦略はポジションの閉店を遅らせ,損失を伴う可能性があります.

  3. パラメータ設定: 戦略のパフォーマンスにはパラメータ設定の影響があり,異なるパラメータが異なる結果をもたらす可能性があります.

オプティマイゼーションの方向性

  1. より多くの指標を導入する.既存のパラボリック SAR と EMA に加え,傾向の識別の精度を向上させるために,MACD と ADX などの他の傾向関連指標を導入する.

  2. 入場条件を最適化:入場シグナルの質を向上させるために,価格とEMAとの間の距離,取引量などなどの要因を考慮して入場条件を最適化します.

  3. ダイナミックパラメータ最適化: ダイナミックに戦略パラメータを調整し,パラボリックSARのステップサイズやEMAの期間など,市場の状況の変化に基づいて,異なる市場環境に適応します.

  4. ポジションサイズを組み込む: 市場の動向と口座リスクの強さに基づいてポジションサイズを動的に調整し,収益を向上させながらリスクをコントロールする.

概要

EPTS戦略は,パラボリックSAR指標と移動平均値に基づいたトレンドフォロー戦略である.主要市場トレンドを把握し,リスクを制御するためにポジションを適時に閉じることで,安定した収益を達成することを目的としている.戦略論理は明確で実行が容易で,明確なトレンドを持つ市場環境に適している.しかし,不安定な市場では,戦略は重大な引き下げリスクに直面し,適応性と強度を改善するために他の指標と最適化方法と組み合わせることが必要である.さらに,合理的なパラメータ設定とポジションサイジングも戦略の成功の鍵である.全体として,EPTS戦略はトレンドフォローにシンプルで効果的なアプローチを提供しているが,より良い戦略パフォーマンスを達成するために実際の市場状況に基づいて最適化と改善が必要である.


/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("febin2024", overlay=true)

// Parabolic SAR Parameters
start = input(0.02)
increment = input(0.02)
maximum = input(0.2)

// EMA Parameters
ema20_length = input(20, title="EMA 20 Length")
ema5_length = input(5, title="EMA 5 Length")

// Calculate EMAs
ema20 = ta.ema(close, ema20_length)
ema5 = ta.ema(close, ema5_length)

// Parabolic SAR Logic
var bool uptrend = na
var float EP = na
var float SAR = na
var float AF = start
var float nextBarSAR = na

if bar_index > 0
    firstTrendBar = false
    SAR := nextBarSAR
    if bar_index == 1
        float prevSAR = na
        float prevEP = na
        lowPrev = low[1]
        highPrev = high[1]
        closeCur = close
        closePrev = close[1]
        if closeCur > closePrev
            uptrend := true
            EP := high
            prevSAR := lowPrev
            prevEP := high
        else
            uptrend := false
            EP := low
            prevSAR := highPrev
            prevEP := low
        firstTrendBar := true
        SAR := prevSAR + start * (prevEP - prevSAR)
    if uptrend
        if SAR > low
            firstTrendBar := true
            uptrend := false
            SAR := math.max(EP, high)
            EP := low
            AF := start
    else
        if SAR < high
            firstTrendBar := true
            uptrend := true
            SAR := math.min(EP, low)
            EP := high
            AF := start
    if not firstTrendBar
        if uptrend
            if high > EP
                EP := high
                AF := math.min(AF + increment, maximum)
        else
            if low < EP
                EP := low
                AF := math.min(AF + increment, maximum)
    if uptrend
        SAR := math.min(SAR, low[1])
        if bar_index > 1
            SAR := math.min(SAR, low[2])
    else
        SAR := math.max(SAR, high[1])
        if bar_index > 1
            SAR := math.max(SAR, high[2])
    nextBarSAR := SAR + AF * (EP - SAR)
    if barstate.isconfirmed
        if uptrend
            strategy.entry("ParSE", strategy.short, stop=nextBarSAR, comment="ParSE")
            strategy.cancel("ParLE")
        else
            strategy.entry("ParLE", strategy.long, stop=nextBarSAR, comment="ParLE")
            strategy.cancel("ParSE")

// Plot Parabolic SAR
plot(SAR, style=plot.style_cross, linewidth=3, color=color.orange)
plot(nextBarSAR, style=plot.style_cross, linewidth=3, color=color.aqua)

// Plot EMAs
plot(ema20, color=color.blue, linewidth=2, title="EMA 20")
plot(ema5, color=color.red, linewidth=2, title="EMA 5")

// Equity Plot
plot(strategy.equity, title="Equity", color=color.green, linewidth=2)


もっと