RSIとSTOCH RSIに基づく双方向取引戦略


作成日: 2023-12-01 18:06:23 最終変更日: 2023-12-01 18:06:23
コピー: 2 クリック数: 696
1
フォロー
1619
フォロワー

RSIとSTOCH RSIに基づく双方向取引戦略

概要

この戦略は,相対的に強い弱い指数 ((RSI) とストックRSIの2つの強力な技術指標を組み合わせて,より安定し,信頼性の高い双方向の取引戦略を実現します. RSI指標がオーバーバイオーバーセール信号を示し,ストックRSIが金叉死叉取引信号を発信するときに,この戦略は,多引入または空調になります.

戦略原則

この戦略は主にRSIとStoch RSIの2つの指標に基づいています. RSIは,市場が超買い超売り状態にあるかどうかを判断するために使用されます.

まず,RSIによって,市場が超買い超売りであるかどうかを判断する.RSIが設定された超買線より高い場合は,超買いと判断し,RSIが設定された超売り線より低い場合は,超売りと判断する.

次に,Stoch RSIは取引シグナルを発信する. 速線が下から上へと緩慢線を突破すると,買入シグナルが発信される. 速線が上から下へと緩慢線を突破すると,売出シグナルが発信される.

最後に,この戦略は,RSIがオーバーバイとオーバーセルの同時でストックRSIがシグナルを発信する時のみ,場内取引に入る.多信号はRSIがオーバーセルの同時でストックRSIがゴールドフォーク;空調はRSIがオーバーバイの同時でストックRSIがデッドフォークである.

優位分析

この戦略は,RSIとStoch RSIの2つの指標の優位性を組み合わせて,市場の全体的な動きを考慮し,細部の変化に注意して取引信号を発信し,より信頼性が高くなります.

RSI指標は,市場が超買超売状態にあるかどうかを効果的に判断し,市場のトップで追高と市場の底で追低を避ける.ストックRSI指標は,RSIの動力の変化を観察し,ターニングポイントを間に合うように捕捉することができます.両者の組み合わせは,取引信号の信頼性を保証するとともに,入場のタイミングも保証します.

さらに,この戦略には時間と価格のフィルタリング条件が加えられ,誤った取引の確率をさらに減らし,全体的な戦略をより堅牢にします.

リスク分析

この戦略は主にRSIとStoch RSIの2つの指標に依存しており,両者は市場の変化に敏感であり,誤ったシグナルを頻繁に送信する可能性があります.さらに,指標間の偏差も発生する可能性があります.これらは,戦略の取引頻度が高く,収益が不安定になる可能性があります.

これらのリスクを軽減するために,RSIとStoch RSIのパラメータを適切に調整し,フィルタリング条件を追加し,戦略パラメータを市場の特徴により適合させることができます.また,他の指標を検証して,単一の指標の信号で入場を避けることができます.

最適化の方向

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

  1. 利潤を固定し,損失を減らすために移動式ストップ戦略に加入する.

  2. RSIとStoch RSIのパラメータを最適化して,異なる周期と異なる品種の特性をより適合させる.

  3. フィルタリング条件をさらに追加し,取引周期の時間範囲を拡大し,取引頻度を減らす.

  4. 信号を他の指標と組み合わせて検証し,単一の指標の判断誤りを回避する.

  5. テストを回帰して最適化し,最適なパラメータの組み合わせを探します.

要約する

この戦略は,RSIとStoch RSIの2つの指標の優位性を総合的に利用し,双方向の取引のための戦略的枠組みを実現する.この戦略は,特定の指標を単独で使用するよりも,判断がより包括的で信頼性が高く,多くの不必要な誤信号を回避する.この戦略は,さらなる最適化により,安定した収益性の定量化取引戦略になることができる.

ストラテジーソースコード
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version= 2
strategy("RSI+STOCHRSI v2", overlay=true)
lengthrsi = input(10)
overSold = input( 20 )
overBought = input( 70 )
price = ohlc4
vrsi = rsi(price, lengthrsi)

smoothK = input(3, minval=1)
smoothD = input(3, minval=1)
lengthRSI = input(14, minval=1)
lengthStoch = input(14, minval=1)
src = input(close, title="RSI Source")

rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
srsilow=input(20)
srsiup=input(80)






yearfrom = input(2018)
yearuntil =input(2039)
monthfrom =input(6)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)



if (  ( crossover(d,k)) and ( (vrsi<overSold) or crossover(vrsi,overSold) )  and   year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil) 
    strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND",  comment="BUY")
    
else
    strategy.cancel(id="BUY")


if ( ( crossunder(d,k) ) and ( (vrsi >overBought) or crossunder(vrsi,overBought) ) and   year >= yearfrom and year <= yearuntil and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil ) 

    strategy.entry("SELL", strategy.short,stop=close, oca_name="TREND",  comment="SELL")
else
    strategy.cancel(id="SELL")