この戦略は,簡単な移動平均値の黄金十字と死十字を利用してエントリーと出口を決定し,市場のトレンドのターニングポイントを把握するために,トレンドに沿ってタイムリーに行っています.より短いSMAがより長いSMAを横切ると長くなって,より短いSMAがより長いSMAを下回ると短くなってしまいます.これは典型的なトレンドフォローシステムです.
10日間の単純な移動平均 (shortSMA) と 30日間の単純な移動平均 (longSMA) を計算する
shortSMAが longSMAを横切ると,買い信号が生成されます.
ショートSMAがロングSMAを下回ると,セールシグナルが生成されます.
偽ブレイクを避けるために,RSIが買い信号では50以上,売り信号では50以下である必要があります.
ATR を停止損失と利益引き継ぎに使う.
この戦略は主に,エントリータイミングを決定するために,トレンドインフレクションポイントを特定するために,2つの移動平均値のクロスオーバーを使用します.より短いSMAは価格の変化をより速く反映し,より長いSMAはサポートとレジスタンスを提供します.より短いSMAがより長いSMAを横切ると,上昇傾向の開始を示します.より短いSMAがより長いSMAを下回る場合は,下降傾向の開始を示します.RSIは偽のブレイクをフィルターします.ATRは損失を止め,利益トレイル価格を取り,リスク管理を最適化します.
分かりやすく 学ぶ
市場の動向を把握する
2つの移動平均のクロスオーバーは,トレンド決定に古典的で効果的です.
合理的なストップ損失と利益の引き上げは,個々のセグメントからの損失を減らす
RSI は 誤った ブレイク を 効果的に フィルタリング し て 取引 リスク を 軽減 し ます
予測する必要はない 利益を得るための傾向に従うだけ
二重MAsは間違った信号を生成し,不必要な損失を引き起こします
MA の反応が遅れており,傾向の逆転を間に合うように捉えることができない
盲目的にトレンドをフォローすると損失を拡大し,ポジションサイズ管理が必要
不安定な市場を完全にフィルタリングできず 罠にかかったりします
不適切なパラメータ設定は 取引頻度を増やし 収益性を低下させる
適切なパラメータの組み合わせを選択し,他のフィルターを導入し,位置サイズを制御することによってリスクを減らすことができます.
信号の精度を向上させるためにMAパラメータを最適化する
MACD,ボリンジャーバンドなどなどの他の指標を追加して戦略の勝利率を改善する
動揺する市場での取引を減らすために傾向を決定する指標を組み込む
ストップ損失を最適化し,単一の損失を最小化し,単一の利益を最大化するために利益を取ります
異なる市場状況に合わせて資本管理を最適化
トレンドと不安定な市場に対する別々の戦略を策定する
異なるパラメータセットを継続的にテストし,フィルタリングや傾向決定のための補助指標を導入することで,戦略のパフォーマンスは徐々に改善できます.
この戦略は,トレーディングのトレンドターニングポイントを特定するために,クラシックな移動平均クロスオーバーシステムを採用している. 学習初心者にとって非常に適しています. しかし,誤った信号や逆転の遅延の識別などのいくつかの弱点を注意する必要があります. パラメータの絶え間ないテストと最適化,他の指標を追加することにより,戦略の安定性と収益性を向上させることができます. 最も重要なのは,トレンドトレーディング原則に従い,損失を許容範囲内に保ち,利益を最大化するためにポジションサイズを制御する必要があります. 全体的に,戦略論理は明確で理解しやすい. 実用的な取引パフォーマンスを向上させるためにさらに研究する価値があります.
/*backtest start: 2022-10-17 00:00:00 end: 2023-10-23 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/ // © Glenn234 //@version=5 strategy("MA cross strategy", shorttitle="macs", overlay=true) // Create indicator's shortSMA = ta.sma(close, 10) longSMA = ta.sma(close, 30) rsi = ta.rsi(close, 14) atr = ta.atr(14) // Crossover conditions longCondition = ta.crossover(shortSMA, longSMA) shortCondition = ta.crossunder(shortSMA, longSMA) // trade conditions if (longCondition) stopLoss = low - atr * 2 takeProfit = high + atr * 2 strategy.entry("long", strategy.long, when = rsi > 50) strategy.exit("exit", "long", stop=stopLoss, limit=takeProfit) if (shortCondition) stopLoss = high + atr * 2 takeProfit = low - atr * 2 strategy.entry("short", strategy.short, when = rsi < 50) strategy.exit("exit", "short", stop=stopLoss, limit=takeProfit) // Plot SMA to chart plot(shortSMA, color=color.red, title="Short SMA") plot(longSMA, color=color.green, title="Long SMA")