RSIインジケーター追跡ストッププロフィットおよびストップロス戦略


作成日: 2024-01-17 11:52:23 最終変更日: 2024-01-17 11:52:23
コピー: 0 クリック数: 574
1
フォロー
1617
フォロワー

RSIインジケーター追跡ストッププロフィットおよびストップロス戦略

概要

この戦略は,RSI指標を使用して,購入と販売のシグナルを生成し,ストップ・ストップ・ロスのメカニズムを追跡し,利益固定と損失制御の目的を達成します.この戦略は,中短期取引に適用され,柔軟で実用的です.

戦略原則

  1. RSI指数を使用して,市場の超買超売り現象を判断する. RSI指数上を60突破すると買入シグナルが発生し,下を40突破すると売り出せシグナルが発生する.

  2. 入場後,ストップ・ストロップを設定する. ストップ・ストップ距離は入場価格にユーザが設定したポイント距離を加え, ストップ・ストロップ距離は入場価格からユーザが設定したポイント距離を引く.

  3. 価格がストップまたはストップ・ロスの距離に触れたとき,取引は自動的にストップまたはストップ・ロスの出場となります.

優位分析

  1. RSI指標は市場動向を判断する上で有効であり,ストップ・ストップ・ストップを追跡することで,リスクを効果的に制御することができる.

  2. ストップ・ストップ・ロスは絶対ポイント数で設定され,入場価格が高くても低くても,利益スペースと損失スペースは固定され,リスク・利益割合は制御可能である.

  3. 戦略パラメータの設定は簡単で,ユーザは自身のリスクの好みに応じてストップ・ストップ・損失のポイント距離を設定するだけで,複雑な最適化は必要ありません.

リスク分析

  1. RSI指標は誤信号を発生させ,不必要な損失を引き起こす可能性があります. RSIパラメータを調整したり,他の指標のフィルターを追加することによって誤信号を減らすことができます.

  2. 固定のストップ・ストラスト・距離は,利益の余地が不足したり,損失が過大になる可能性があります.ユーザーは,市場の変動程度に応じて合理的にストップ・ストラスト・距離を設定する必要があります.

  3. 追跡ストップは,極端な状況で突破される可能性があり,最大損失を制限することはできません. 暫定ストップを組み合わせてリスクを低減することをお勧めします.

最適化の方向

  1. RSI指標のパラメータを最適化して,最適なパラメータの組み合わせを探します.

  2. RSI信号をフィルタリングするためにMAなどの指標を追加し,不必要な取引を減らす.

  3. ストップ・ストップ・損失の比率を絶対値ではなく設定し,価格に応じてストップ・損失の距離を自動的に調整できます.

  4. 極端な状況のリスクを防ぐため,一時的なストップダメージを追加しました.

要約する

この戦略は,RSI指標を用いて買い買いを判断し,ストップ・ロスを追跡し,リスク・リターンを制御する.戦略は,シンプルで実用的で,市場と個人のリスクの好みに応じてパラメータを調整することができます.複数の指標の判断とストップ・ロスの最適化と組み合わせて,戦略の安定性と収益性をさらに高めることができます.

ストラテジーソースコード
/*backtest
start: 2024-01-09 00:00:00
end: 2024-01-16 00:00:00
period: 45m
basePeriod: 5m
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/
// © ChaitanyaSainkar

//@version=5
strategy("RSI TARGET & STOPLOSS",overlay = true)

// USER INPUTS

RSI_L = input.int(defval = 14, title = "RSI Length")

LONGSTOP = input.int(defval = 50, title = "STOPLOSS LONG")
LONGTARGET = input.int(defval = 100, title = "TARGET LONG")

SHORTSTOP = input.int(defval = 50, title = "STOPLOSS SHORT")
SHORTTARGET = input.int(defval = 100, title = "TARGET SHORT")

// POINTBASED TARGET & STOPLOSS

RSI = ta.rsi(close,RSI_L)

longstop = strategy.position_avg_price - LONGSTOP
longtarget = strategy.position_avg_price + LONGTARGET

shortstop = strategy.position_avg_price + SHORTSTOP
shorttarget = strategy.position_avg_price - SHORTTARGET

// LONG & SHORT SIGNALS

buy = ta.crossover(RSI,60)
short = ta.crossunder(RSI,40)

// STRATEGY FUNCTIONS

if buy 
    strategy.entry("long", direction = strategy.long,comment = "LONG")

if strategy.position_size > 0
    strategy.exit("long", from_entry = "long", limit = longtarget, stop = longstop, comment_loss = "LOSS", comment_profit = "PROFIT")
if short
    strategy.entry("short", direction = strategy.short,comment = "SHORT")

if strategy.position_size < 0
    strategy.exit("short", from_entry = "short", limit = longtarget, stop = shortstop, comment_loss = "LOSS", comment_profit = "PROFIT")

// PLOTTING TARGET & STOPLOSS

plot(strategy.position_size > 0 ? longtarget : na, style = plot.style_linebr, color = color.green)
plot(strategy.position_size > 0 ? longstop : na, style = plot.style_linebr, color = color.red)

plot(strategy.position_size < 0 ? shorttarget : na, style = plot.style_linebr, color = color.green)
plot(strategy.position_size < 0 ? shortstop : na, style = plot.style_linebr, color = color.red)