単純移動平均クロスオーバーストップロス戦略


作成日: 2023-09-19 21:42:30 最終変更日: 2023-09-19 21:42:30
コピー: 0 クリック数: 769
1
フォロー
1617
フォロワー

概要

この戦略は,単一の移動平均と交差量加重価格の交差によって取引シグナルを生成し,指数移動平均をストップポイントとして使用し,ショートライン取引のトレンド追跡戦略に属します.

戦略原則

  1. 5日間のSMAとVWAPを計算する.

  2. SMAが下からVWAPを突破すると,多行信号が生成され;SMAが上から下からVWAPを突破すると,空行信号が生成される.

  3. SMAは価格変化に敏感で,ショートラインのトレンドを捉えることができる.VWAPは最新の価格動態を反映できる.両者交差するとショートラインのトレンドの変化を判断できる.

  4. 9日指数移動平均EMAをストップポイントとして設定する.EMAはSMAよりも反応速度が遅いため,ストッププアを提供できる.

  5. 多空信号に基づいて取引を実行する. 価格がストップ・ロスの値を下回ったときにポジションを退出し,リスクを制御する.

この戦略は,主に,迅速な応答のSMAとリアルタイム反応の価格のVWAPの交差によって,ショートラインの価格変動を捕捉し,リスクを制御するためにEMAのステップストップを設定し,方向はシンプルで直感的です.

優位分析

  1. SMAとVWAPの交差は,ショートラインのトレンド変化を判断する簡単な実用的なものです.

  2. EMAのストップは,過度に敏感な状態を回避するために,ある種のバッファーを提供します.

  3. 戦略のシグナルが明確で,ルールがシンプルで,実行しやすい.

  4. パラメータの最適化空間は広く,異なる市場環境に適応できます.

  5. 単一損失は,停止方法を変更することで制御できます.

  6. 他の技術指標や風力制御手段を導入できる.

リスク分析

  1. SMAとVWAPは交差遅延または誤信号が発生する可能性があります.

  2. 止損範囲が小さすぎると,過度な最適化が生じやすい.

  3. 短線範囲のみで,長線トレンドは追跡できません.

  4. 回測周期の不適切な選択は曲適合を引き起こす可能性がある.

  5. 取引コストが収益に与える影響を考慮する必要があります.

最適化の方向

  1. SMAとVWAPのパラメータの異なる組み合わせをテストする.

  2. EMAの止損の周期パラメータを最適化する.

  3. 他の種類の移動平均や指数で止めてみてください.

  4. ポジションの増やし,リスク管理策を練る.

  5. 機械学習などのアルゴリズムを導入してパラメータを最適化する.

  6. 市場の変化に適応するためにパラメータを定期的に調整する効果を評価する.

要約する

このSMAとVWAPの交差策は,EMAの移動ストップを組み合わせ,パラメータを調整して短線波動に適応し,操作が簡単で,典型的な短線追跡策の考え方である.より多くの指標やアルゴリズムを拡張することで安定性が向上し,より複雑な多策システムにモジュールとして統合することもできる.全体的に,この策は,操作が簡単で,実用化され,強力な起動意味を持つ.

ストラテジーソースコード
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 2h
basePeriod: 15m
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/
// © realisticDove62527

//@version=5
strategy("ROoT", overlay=true, margin_long=1, margin_short=1)

longCondition = ta.crossover(ta.sma(close, 5), ta.vwap(hlc3))
if (longCondition)
    strategy.entry("BUY", strategy.long)

shortCondition = ta.crossunder(ta.sma(close, 5), ta.vwap(hlc3))
if (shortCondition)
    strategy.entry("SELL", strategy.short)
    

stoploss = ta.ema(close, 9)