トレンドフォロー移動平均戦略


作成日: 2024-03-01 12:21:13 最終変更日: 2024-03-01 12:21:13
コピー: 0 クリック数: 611
1
フォロー
1617
フォロワー

トレンドフォロー移動平均戦略

概要

この戦略は,指数移動平均 ((EMA),簡易移動平均 ((SMA) と相対的に強い指数 ((RSI) を組み合わせて,トレンド状況で利益を得ることができる自動取引システムを実現している. 急速移動平均が,下からゆっくり移動平均を横切るときは,買入シグナルを形成し,急速移動平均が上からゆっくり移動平均を横切るときは,売出シグナルを形成する.

戦略原則

  1. EMA ((50):50周期の指数移動平均で,短期トレンド指標を表している。
  2. SMA ((100):100周期の単純な移動平均で,中長期のトレンド指標を表す.
  3. RSI ((14)):14サイクル間の相対的に強い指標で,超買い超売りかどうかを判断する.

短期トレンド指数EMA ((50) 上に中長期トレンド指数SMA ((100) を穿越すると,短期トレンドが強くなることを示す買い信号が生み出され,買い物を追跡することができる.

EMA ((50) 下のSMA ((100) を突破すると,短期的な力の消耗が終わることを示すセールス信号が生じ,セールスを追跡すべきである.

RSIが70 (超買区) 以上の場合,ストップシグナルを生じ,RSIが30 (超売り区) 以上の場合,ストップスグナルを生じます.

優位分析

これは非常に古典的なトレンド追跡の移動平均戦略である. これは,トレンド追跡と超買い超売り判断を融合させ,市場の主なトレンドを捕まえることも,高買いを追求したり,ショートラインを乱したりすることもできる. この戦略は,明らかにスタイルが回転しているいくつかの市場でうまく機能する.例えば,牛市の初期,インデックス全体は強烈な上昇傾向を示しているが,その過程で中期調整も不足しない.移動平均戦略は,主要な上昇状況を捕まえることができる.

リスク分析

移動平均策の最大の問題は,それが値と価値の離散という根本的な問題を解決していないことである.上昇が終わろうとしている時,価格はしばしば合理的な基本値評価範囲を大幅に超えている.価格自体のトレンドをのみ見続ければ,そのことが最終段階の過剰暴露を必然的に引き起こす.このとき,短期指標EMA ((50) と中期指標SMA ((100) は,強烈な上昇を示し,買いシグナルを生成するが,実際には価格は深刻に過大評価されている.このとき,高値の買い戻りを続けると,巨額の引き戻しのリスクに直面する.この策は,市場成長期に適しているため,大きなトレンドの方向を理性的に判断する必要がある.

また,この戦略は,超買い超売区の判断基準は比較的単純であり,RSI指標のみを使用する.これは誤判に容易である.例えば,短期間に市場状況が突破すると,RSI指標は,超買いを示しますが,実際には,市場が上昇し続ける動力がある.この時点でストップシグナルが発生した場合,チャンスを逃す可能性があります.

最適化の方向

  1. 誤判を避けるため,より多くの指標を組み合わせて過買過売を判断してください.KD指標なども考慮してください.
  2. MACDなどの中長期トレンド判断指標を追加する. 価格と価値の偏差のリスクを回避する.
  3. 異なる市場条件のパラメータ設定は異なります.例えば,傾向がより顕著である場合,SMA周期を適切に拡大することができます.
  4. 超買超売エリアの近くでの部分停止のみを考慮して,コアポジションを保持することが考えられます.

要約する

全体として,SMAは非常に実用的な量化戦略である. それは安定し,シンプルで,容易に理解し,最適化され,量化入門の最良の選択肢の1つである. この戦略の最大の優点は,大きなトレンドを掴み,高い追いかける下落の繰り返しエラーを回避することです. さらに,それは一定の止損保護機能を持っています.

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

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Wallstwizard10

//@version=4
strategy("Estrategia de Trading", overlay=true)

// Definir las EMA y SMA
ema50 = ema(close, 50)
sma100 = sma(close, 100)

// Definir el RSI
rsiLength = input(14, title="RSI Length")
overbought = input(70, title="Overbought Level")
oversold = input(30, title="Oversold Level")
rsi = rsi(close, rsiLength)

// Condiciones de Compra
buyCondition = crossover(ema50, sma100) // EMA de 50 cruza SMA de 100 hacia arriba

// Condiciones de Venta
sellCondition = crossunder(ema50, sma100) // EMA de 50 cruza SMA de 100 hacia abajo

// Salida de Operaciones
exitBuyCondition = rsi >= overbought // RSI en niveles de sobrecompra
exitSellCondition = rsi <= oversold // RSI en niveles de sobreventa

// Lógica de Trading
if (buyCondition)
    strategy.entry("Buy", strategy.long)
    
if (sellCondition)
    strategy.entry("Sell", strategy.short)
    
if (exitBuyCondition)
    strategy.close("Buy")
    
if (exitSellCondition)
    strategy.close("Sell")