
移動平均線交差戦略は,異なる周期の移動平均を計算して,トレンドの方向を判断し,買入と売却のシグナルを発するトレンド追跡戦略である.この戦略は,3日と50日移動平均線交差を使用して判断し,短期移動平均線が長期移動平均線を横切るときに買入し,短期移動平均線が長期移動平均線を横切るときに落札する.
この戦略は,3日目と50日目のSMAを計算し,3日目のSMAが50日目のSMAを突破すると,短期トレンドが看板に転じ,買入シグナルを発信し,3日目のSMAが50日目のSMAを突破すると,短期トレンドが看板に転じ,売り出しシグナルを発信する.無意味な取引を減らすために,この戦略には中期40日目のSMAも加えられ,3日目のSMAが40日目のSMAを突破すると,売り出しシグナルを発信し,迅速なストップダストを発信する.
この戦略の鍵は,異なる周期の移動平均を使用して,市場の変動の異なる段階を区分することにある. 3日SMAは,最も短期的なトレンドを表し,50日SMAは,中期的なトレンドを表し,それらの交差は,短期的および中期的な動きを表し,価格の異なる時間尺度上の変化を捉えることができる.この複数の時間軸の組み合わせ分析により,状況の転換点を比較的に正確に判断することができる.
動力の交差が明確で,信号は比較的明確である.異なる周期SMAの交差は,短期および中期の動きの変化を効果的に判断し,市場の小さな揺れによって干渉されないようにする.
スマ3の下をスマ40で突っ込むことで,損失を軽減し,リスクをコントロールできます.
戦略はシンプルでわかりやすく,実行しやすい.指標と信号の規則は直接操作できる.
SMAのパラメータは,異なる市場状況や取引品種に柔軟に調整できます.
横盤や明確なトレンドがない市場で,SMA交差信号は頻繁であり,取引の頻度が高くなり,取引コストや滑り点の損失を引き起こす可能性があります.
SMAは後退性があり,交差信号が出る時には価格が一定に変化しているので,戦略が最適な買出点を見逃すのは容易である.
固定的SMAパラメータは,すべての状況に適さないので,パラメータの最適化による使用が必要である.
単一の指標は失効しやすいので,他の技術指標または基本指標と組み合わせて検証することを検討することができます.
SMA周期パラメータを最適化し,最適なパラメータの組み合わせを探します.
ストキャスティック,MACDなどの指標の検証信号を追加し,偽信号を避ける
市場変化に応じてポジション開設数とストップ損失幅の調整
収入,ニュース,その他といった基本指標の組み合わせを検討する
結合量能指数,高量突破時にポジションを開く
移動平均線交差戦略は,異なる周期SMAの交差によって市場の短期および中期トレンドの変化を判断し,トレンド追跡を行う.これは,よりシンプルで直接的なトレンド戦略の1つである.この戦略の優点は,考えが明確で,操作が簡単であり,パラメータ最適化と指標の組み合わせを検証することによって戦略の効果を向上させることができる.しかし,SMA自体は遅滞性があり,ターニングポイントを正確に捕捉することができません.他の先行指標の組み合わせと使用することを推奨し,大きな傾向下でトレンド追跡して利益を得る.
/*backtest
start: 2022-10-10 00:00:00
end: 2023-10-16 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Geduldtrader
//@version=4
strategy("MA Crossover", overlay = true)
start = timestamp(2009,2,1,0,0)
sma50 = sma(close, 50)
sma40 = sma(close, 40)
sma3 = sma(close, 3)
plot(sma50,title='50', color=#00ffaa, linewidth=2)
plot(sma3,title='3', color=#2196F3, linewidth=2)
long = crossover(sma3,sma50)
neut = crossunder(close,sma50)
short = crossunder(sma3,sma40)
if time >= start
strategy.entry("Long", strategy.long, 10.0, when=long)
strategy.close("Long", when = short)
strategy.close("Long", when = neut)
plot(close)