モメントブレイク戦略

作者: リン・ハーンチャオチャン開催日:2024年1月18日 15:17:11
タグ:

img

概要

この戦略は,EMA線,MACD指標と単日利益を組み合わせて,市場の突破信号を特定し,低値で購入し高値で販売するモメンタム・トレード戦略を実装します.

戦略原則

急速EMA線が緩やかなEMA線を横切ると,市場は上昇傾向にあると考えられ,買い信号が生成される.MACD指標の差が0軸を横切ると,ロングポジションを開くための買い信号も生成される.

さらに,一日の閉店価格が開店価格と比較して10%以上上昇した場合,買い信号も生成され,市場トレンドの破綻を追いかける.

ポジションを開いた後,価格が10%以上下落するとストップロスは起動します.利益が45%に達すると,利益を取ることが起動します.

利点分析

これは,大きな利益の可能性を持つ強力な勢力の突破後に上昇傾向を把握できる典型的なトレンドフォロー戦略です.主な利点は以下の通りです.

  1. EMAラインは,市場の統合中にポジションを開くのを避けるために,トレンド判断を実施する.
  2. MACDインジケーターは より信頼性の高い買い信号を保証します
  3. 単日利益状態はトレンドブレイクを捉えています
  4. 合理的なストップ・ロストとテイク・プロフィートの設定はリスクを制御するのに役立ちます

リスク分析

合理的に設計されたものの,いくつかのリスクは依然として存在します:

  1. 突破信号の判断が不適切であれば 短損が起こる可能性があります
  2. 市場のリバウンドも 誤った信号を生む可能性があります
  3. オーバーサイズストップ損失設定により損失リスクが増加します
  4. 突破後の継続傾向が不十分であれば 利益が不十分になる可能性があります

上記のリスクを減らすために,移動ストップ損失戦略を最適化するか,ボリュームなどの他の指標をフィルター信号に追加することを検討することができます.

オプティマイゼーションの方向性

更に最適化できる余地があります

  1. トレンドをサポートする十分な取引量を確保するために,ボリューム指標を追加します.
  2. MACD パラメータを最適化して指標の感度を向上させる.
  3. EMA 期間を組み合わせてテストする
  4. 適応型ストップ損失メカニズムを追加します
  5. より効率的なマネーマネジメントのために 利得ポイントを最適化します

パラメータ調整,指標組み合わせ,その他の方法により,この戦略の安定性と収益性が大幅に向上できます.

結論

一般的には,この戦略はシンプルで,実用的で,大きな利益の可能性があります.市場の突破点を判断することで,上昇傾向を効果的に捉えることができ,引き下げ制御も合理的です.将来の最適化では,パラメータ調整とストップ・ロスト/テイク・プロフィートデザインを継続的に改善することで,長期的に価値のある定量的な取引戦略になります.


/*backtest
start: 2023-01-11 00:00:00
end: 2024-01-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Alt Coins", overlay=true)

//Simple Alt Coin Trading Strategy//
// by @ShanghaiCrypto //

////EMA////
fastLength = input(5)
slowLength = input(12)
baseLength = input(50)
price = close

emafast = ema(price, fastLength)
emaslow = ema(price, slowLength)
emabase = ema(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(10, title='Gain %')
pump = OneCandleIncrease/100

////Profit Capture and Stop Loss//////
stop = input(10.0, title='Stop Loss %', type=float)/100
profit = input(45.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(emafast, emaslow)
    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(emafast, color=green)
plot(emaslow, color=red)
plot(emabase, color=yellow)
plot(take_level, color=blue)
plot(stop_level, color=orange)

もっと