資源の読み込みに... 荷物...

RSI50_EMA ロングのみ戦略

作者: リン・ハーンチャオチャン開催日:2024年5月11日11時49分29秒
タグ:エイマRSIATR

img

概要

RSI50_EMA Long Only Strategyという戦略は,主に2つの技術指標である相対強度指数 (RSI) と指数移動平均 (EMA) のクロスオーバー信号を使用して取引を決定する.価格が下からEMA上部帯を突破し,RSIが50を超えるとロングポジションを開き,価格が上からEMA下部帯を突破し,RSIが50を下回るとすべてのロングポジションを閉じる.この戦略は,ロングポジションのみを取らず,トレンドフォローする戦略である.

戦略原則

  1. EMAの上下帯を計算して EMAの上下帯を計算する.
  2. RSIを計算する
  3. 閉じる価格が EMA の上部帯を超え RSI が50を超えると ロングポジションを開きます
  4. 閉じる価格が EMA の下帯を下回り,または RSI が50を下回ると,すべてのロングポジションを閉じる.
  5. 長いだけ 短くない

戦略 の 利点

  1. 強い市場での使用に適しており,強い株式の上昇傾向を効果的に捉えることができます.
  2. EMAとRSIの両方の指標を使用し,トレンドシグナルをよりよく確認し,シグナル信頼性を向上させる.
  3. ポジションマネジメントは ストップロスの割合を使用し リスクは制御可能です
  4. コードロジックは 明確でシンプルで 分かりやすく 実行できます

戦略リスク

  1. 取引が頻繁で,変動する市場での大きな引き上げが容易である.
  2. パラメータの不正な選択は,信号の失敗につながる.例えば,EMA長さの不正な選択は,トレンド判断の遅れにつながり,RSI上限と下限の不正な選択は,望ましくないエントリーと出口ポイントにつながる.
  3. 戦略は一方的な上昇傾向のみを把握し 下落や振動傾向を把握できず 機会を逃すのが簡単です

戦略の最適化方向

  1. 傾向判断の正確性を向上させるために,MACDなどの傾向確認指標を導入する.
  2. RSIのパラメータを最適化するか,RSIのダイバージェンスや信号の他の改善を導入する.
  3. リスク管理を改善するために,トライリングストップ損失または波動性ストップ損失を追加することを検討します.
  4. 振動する市場や下落傾向における逆転エントリーロジックを追加することを検討する.

概要

RSI50_EMA ロング・オンリー・ストラテジー (RSI50_EMA Long Only Strategy) は,RSIとEMAをベースとしたシンプルで使いやすいトレンドフォロー戦略で,一方的な上昇傾向で使用するのに適しています.この戦略には明確な論理と明らかな利点がありますが,いくつかの欠点とリスクもあります.より多くの補助指標を導入し,パラメータを最適化し,リスク管理やその他の措置を改善することで,戦略の安定性と収益性をさらに向上させることができます.しかし,実際の適用では,市場の特徴,個人のリスク好み,その他の要因に応じて柔軟に調整し改善する必要があります.


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

//@version=4
strategy("RSI50_EMA Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

len = input(11, type=input.integer, minval=1, title="Length")
mul = input(2, type=input.float, minval=0, title="Multiplier")
rsicap = input(50, type=input.integer, minval=1, title="rsicap")
rsi_1 = rsi(close,20)
price = sma(close, 2)
average = ema(close, len)
diff = atr(len) * mul
bull_level = average + diff
bear_level = average - diff
bull_cross = crossover(price, bull_level) 
RENTRY = crossover(rsi_1,rsicap)
bear_cross = crossover(bear_level, price)
EXIT = crossunder(rsi_1,50)

strategy.entry("Buy", strategy.long, when=bull_cross)
strategy.close("Buy", when=bear_cross)  //strategy.entry("Sell", strategy.short, when=bear_cross)
if (RENTRY)
    strategy.entry("RSI", strategy.long, when=bull_cross)
if (EXIT)
    strategy.close("RSICLose", when=bull_cross)  //strategy.entry("Sell", strategy.short, when=bear_cross)

plot(price, title="price", color=color.black, transp=50, linewidth=2)
a0 = plot(average, title="average", color=color.red, transp=50, linewidth=1)
a1 = plot(bull_level, title="bull", color=color.green, transp=50, linewidth=1)
a2 = plot(bear_level, title="bear", color=color.red, transp=50, linewidth=1)
fill(a0, a1, color=color.green, transp=97)
fill(a0, a2, color=color.red, transp=97)


関連性

もっと