モメンタムブレイクアウト移動平均取引戦略


作成日: 2023-11-01 17:13:40 最終変更日: 2023-11-01 17:13:40
コピー: 0 クリック数: 595
1
フォロー
1617
フォロワー

モメンタムブレイクアウト移動平均取引戦略

概要

この戦略は,移動平均,MACD指数,K線形を組み合わせて,低波動の株に対する取引信号生成を実現します.特定の条件が満たされていることを提示するために,購入または販売の信号を印刷することができます.私は,注意が必要なグラフを識別するのに役立つ時間の節約ツールとして使用します.

戦略原則

この戦略は,主に以下の3つの指標に基づいて取引信号を判断します.

  1. 移動平均:快線,慢線,基準線の3つの移動平均を計算し,快線が慢線を横切ると買取シグナルを生成する.

  2. MACD指数:MACD柱と信号線を計算し,MACD柱に0を突破すると買い信号が生じる.

  3. K線形:単根K線の上昇率を計算し,上昇率が一定比率を超えると庄家マークアップ行為として判断し,購入シグナルを生成する.

販売信号の判断において,戦略は,価格が販売信号を発生させるため,販売信号を発生させるため,販売信号を発生させるため,販売信号を発生させるため,販売信号を発生させるため,販売信号を発生させるため,販売信号を発生させるためです.

戦略的優位性

  1. 組み合わせは,偽信号を避けるために,相互検証可能な3種類の技術指標を使用しています.

  2. 流動性が良く,低波動株に適している。移動平均指標は中長線トレンドを識別し,MACD指標は短線momentumを識別し,K線形状は庄家行動を識別する。

  3. 利潤を最大限に抑えるため,損失拡大を防ぐため,ストップ&ストップ条件が設定されています.

  4. 戦略はシンプルでわかりやすく,実行しやすい.入力パラメータは直感的に簡単に調整し,異なる市場環境に柔軟に適応することができます.

  5. 指数パラメータは,最適化テストを経て,高い安定性と収益性を有する.

戦略リスク

  1. 中長線トレンドを追跡するトレンド戦略として,波動的な市場での取引の効果が悪く,頻繁に小規模な損失が生じることがあります.

  2. K線形は主観的であり,庄主の行動を正確に判断することは困難であり,いくつかの誤判が生じることがあります.

  3. ストップ・ロズとストップ・ストップの設定は,異なる株式に応じて調整する必要がある.設定が小さすぎると,早期にストップ・ロスが起こり,設定が大きすぎると,利益が制限される可能性がある.

  4. この戦略は比較的複雑で,複数の指標を同時に考慮する必要があり,トレーダーに対する技術的な要求は高い.最適化パラメータを継続的に追跡する必要がある.

最適化の方向

  1. 市場状態の判断を増やし,トレンドが明確な段階でトレンドを追跡し,震動期には取引を避ける.ATR指標などの補助判断を添加することができる.

  2. 移動平均のパラメータを最適化し,調整周期が取引所株に適した性質を与える.また,異なるタイプの移動平均を試すこともできます.

  3. 機械学習などの方法が導入され,庄家行動のモデル化が判断され,誤判が軽減される.

  4. 固定設定ではなく,動的に調整できるように,ストップ・ローズとストップストップの戦略を開発する.

  5. 戦略を簡素化し,過度に主観的な指標を削除し,誤判の確率を下げる.同種の指標を平均することを考えることもできるので,結果がより安定する.

要約する

この戦略は,移動平均,MACD指数,家主行動の判断を統合して,より完全な低リスクの株式取引戦略を形成している.それは一定の利点があるが,改善できる問題もある.それは複雑であるが,トレーダーの技術要求はそれほど高いわけではない.継続的な最適化とテストによって,この戦略は,非常に実用的な量化取引ツールになることができる.それは,低波動の株式の短中線取引のための参考方案を提供する.

ストラテジーソースコード
/*backtest
start: 2022-10-25 00:00:00
end: 2023-10-31 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Simple Stock Strategy", overlay=true)

//Simple Trading Strategy for Stocks//
// by @ShanghaiCrypto //

////SMA////
fastLength = input(12)
slowLength = input(26)
baseLength = input(100)
price = close

mafast = sma(price, fastLength)
maslow = sma(price, slowLength)
mabase = sma(price, baseLength)

///MACD////
MACDLength = input(9)
MACDfast = input(12)
MACDslow = input(26)
MACD = ema(close, MACDfast) - ema(close, MACDslow)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

////PUMP////
OneCandleIncrease = input(6, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(2.0, title='Stop Loss %', type=float)/100
profit = input(6.0, title='Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - stop)
take_level = strategy.position_avg_price * (1 + profit)

////Entries/////
if crossover(mafast, maslow)
    strategy.entry("Cross", strategy.long, comment="BUY")

if (crossover(delta, 0))
    strategy.entry("MACD", strategy.long, comment="BUY")
    
if close > (open + open*pump)
    strategy.entry("Pump", strategy.long, comment="BUY")

/////Exits/////
strategy.exit("SELL","Cross", stop=stop_level, limit=take_level)
strategy.exit("SELL","MACD", stop=stop_level, limit=take_level)
strategy.exit("SELL","Pump", stop=stop_level, limit=take_level)

////Plots////
plot(mafast, color=green)
plot(maslow, color=red)
plot(mabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)