RSI を使用した MACD 取引戦略


作成日: 2023-09-21 20:48:50 最終変更日: 2023-09-21 20:48:50
コピー: 0 クリック数: 852
1
フォロー
1617
フォロワー

概要

この戦略は,MACD指標をRSI指標の傾向を判断するために使用し,取引信号を生成します.指標の組み合わせを利用して波を行う戦略のタイプに属します.

戦略原則

この戦略は,以下の2つの指標に基づいて判断されます.

  1. RSI指数について 通常の14周期RSI値を計算する.

  2. RSIのMACDについて RSI指標のMACD値の計算,デフォルトは快線12周期,慢線26周期,信号線9周期である.

RSIのMACD柱が負の正転,つまりMACDの緩やかな金によって多頭トレンドとして判断され,買い上げを行う.

RSIのMACDは正転負,つまりMACD速慢線死叉によって空頭トレンドと判断され,売り出されます.

MACD指数平滑移動平均は,RSI自身の長期トレンド方向を判断するために使用され,より正確な取引信号を生成します.

戦略的優位性

  • MACDを使ってRSIのトレンド方向を判断し,信号の正確性を向上させる
  • RSIは主指標として,MACDは補助判断指標として
  • MACD指数は平らな移動平均で,安定した判断
  • 複合指標は相互検証し,反転を回避する
  • パラメータの最適化と組み合わせて,市場の変化に柔軟に対応できます.

戦略リスク

  • RSIとMACDは,遅延し,信号は不正確である可能性があります.
  • MACDのパラメータが正しくない場合,より多くの誤信号が発生します.
  • 緊急事態に敏感である指標の組み合わせのみ
  • 減損方法はさらに改善できる
  • 各種ごとにテストパラメータを最適化する必要があります

リスクを下げるには,以下の措置を講じます.

  • RSIとMACDのパラメータを最適化する
  • 他の指数や取引ルールの加入を確認する
  • 適切な緩解で,早出を減らす.
  • 再入学制度への参加を検討
  • ポジション管理を調整し,単一の損失を防止する

最適化の方向

この戦略は以下の点で最適化できます.

  1. RSIとMACDのパラメータをテストする

  2. MACD信号の出力時に,第2の確認条件を追加する

K線形,取引量,ブリン帯の位置などについて

  1. ストップ・ストップ・ストロー戦略を最適化して,ストップ・ストローを追跡する

  2. 再入学制度への参加

ストップ・アウトの後に,トレンドが続くと,ポジションを再構築できます.

  1. 市場変動によるポジション調整

高波動時にポジションを小さく,低波動時にポジションを大きくする

要約する

この戦略は,RSIとMACDの2つの指標を組み合わせて,相互に検証し,トレンドの方向を判断することで,信号の正確性と安定性を効果的に向上させることができます.しかし,パラメータを最適化し,他の技術指標または取引規則でさらに確認し,突発的なイベントの影響を受ける可能性を減らす必要があります.同時に,ストップ・ローズ戦略の最適化改善,およびポジションの動的に調整された資金管理に焦点を当てます.

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

//@version=3

strategy(title = "MACD of RSI", overlay = false)

//////////////////////// RSI ///////////////////////////

src = close, len = input(14, minval=1, title="Length")
up = sma(max(change(src), 0), len)
down = sma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))


//////////////////////// RSI   //////////////////////////

//////////////// MACD  ////////////////////////////

sourcemacd = rsi 

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)


fastMA = ema(sourcemacd, fastLength)
slowMA = ema(sourcemacd, slowLength)

macd = fastMA - slowMA
signal = ema(macd, signalLength)
delta=macd-signal

swap1 = delta>0?green:red

plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20)
p1 = plot(macd,color=blue,title='MACD Line')
p2 = plot(signal,color=red,title='Signal')
fill(p1, p2, color=blue)
hline(0)




/////////////////////////MACD  //////////////////////////


// Conditions



longCond = na
sellCond = na
longCond :=  crossover(delta,0)
sellCond :=  crossunder(delta,0)




monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  longCond  ) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( sellCond   ) 

    strategy.close("BUY")