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

RSI ターゲットとストップ損失追跡戦略

作者: リン・ハーンチャオチャン,日付: 2024-01-17 11:52:23
タグ:

img

概要

この戦略は,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)

もっと