RSIインジケーターと200日SMAフィルターに基づく間接強度指数戦略


作成日: 2023-12-12 15:26:06 最終変更日: 2023-12-12 15:26:06
コピー: 0 クリック数: 735
1
フォロー
1621
フォロワー

RSIインジケーターと200日SMAフィルターに基づく間接強度指数戦略

概要

この戦略は,主に相対的に強い指数 ((RSI) の指標を判断し,購入や販売の状況を判断し,200日単一の移動平均 ((200 Day Simple Moving Average, SMA) を主要価格のトレンドフィルターとして,トレンドの方向を決定する上で,RSIの指標を使用して,より良い入場と出場のタイミングを探し,利益を上げる.RSIの指標を使用するだけで,この戦略は,トレンド判断を増加させ,より正確に市場動向を把握し,牛市で落を追跡し,熊市で逆転させ,より高い戦略利益を得ます.

戦略原則

この戦略は主にRSI指標と200日SMAフィルターからなる2つの部分で構成されています.

RSIの指標は,価格が超買い超売り領域に入るか否かを判断する.

RSI = 100 - 100 / (1 + RSIが上昇した日の平均上昇 / RSIが低下した日の平均低下)

経験的なパラメータによると,RSI <30なら超売り,>70なら超買いである.

200日SMAフィルターは,主に大盘のトレンド方向を判断する.価格が200日SMAより高いときは牛市,そうでなければ熊市である.

この2つを合わせると,入場と出場の論理は次のとおりです.

多頭入場:RSI < 45で終了価格 > 200日SMA

多頭出場:RSI>75で,閉盤価格>200日SMA

空頭入場:RSI > 65で閉店価格 <200日SMA

空頭出場:RSI < 25で閉店価格 < 200日SMA

RSI指標の精密な判断により,大きなトレンドの好ましいエントリー・アウトプットを特定し,より高い戦略的利益を得ることができます.

戦略的優位分析

この戦略の最大の利点は,RSI指標と200日SMAフィルターの組み合わせにより,戦略がより安定して正確であることです.

  1. 200日SMAは,単一のRSI指標の誤判を避けるために,大市場トレンドを効果的に判断します.
  2. RSIは,大株のトレンドの良い出入口を見つけることができます.
  3. 戦略はシンプルで実行しやすい

この戦略の利点は以下の通りです.

  1. 株価指数,デジタル通貨,貴金属を含む様々な品種に適用できます.
  2. 資金の利用効率が高く
  3. ストップを慎重に加え,単一損失を効果的に制御する

戦略的リスク分析

この戦略にはいくつかのリスクがあります.

  1. 市場が急激に変動すると,大きな損失が生じる可能性があります.
  2. RSIと200日SMAは後退しています.
  3. 取引が頻繁で,取引コストが高くなる

これらのリスクを制御するために,以下の措置を講じることができます.

  1. ポジション管理を適切に調整し,突発的な出来事からの衝撃を防ぐ
  2. RSIとSMAのパラメータを最適化し,遅滞の確率を減らす
  3. 取引頻度を適切に調整し,取引コストを削減する

戦略最適化の方向性

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

  1. RSIのパラメータを動的に調整し,市場の変動に応じて適切なパラメータを選択します.
  2. EMAなどの他の平均線指標がより効果的かどうかをテストする
  3. 自動ストップメカニズムを追加
  4. ポジション管理モジュールを追加し,資金規模に応じてポジションを動的に調整
  5. テストの論理を最適化して,テストの収益を向上させる

要約する

この戦略は,全体的に良好な運行効果があり,判断の正確さ,操作の簡素性,適用範囲の広さなどの利点があります. 止損とポジション管理を追加した後は,慎重に实体的に運行できます. その後,パラメータ最適化,止損最適化,ポジション管理などから戦略の強化を行って,戦略の効果をさらに優れたものにすることができます.

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

// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) https://creativecommons.org/licenses/by-nc-sa/4.0/
// © LuxAlgo

//@version=5

strategy('Relative Strength Index Extremes with 200-Day Moving Average Filte', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.cash, default_qty_value=36000, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.01)

// Rsi
rsi_lenght = input.int(14, title='RSI lenght', minval=0)
rsi_up = ta.rma(math.max(ta.change(close), 0), rsi_lenght)
rsi_down = ta.rma(-math.min(ta.change(close), 0), rsi_lenght)
rsi_value = rsi_down == 0 ? 100 : rsi_up == 0 ? 0 : 100 - 100 / (1 + rsi_up / rsi_down)


//Sma
Length1 = input.int(200, title='  SMA Lenght', minval=1)
SMA1 = ta.sma(close, Length1)

//Strategy Logic

Long = rsi_value < 45 and close > SMA1
Long_exit = rsi_value > 75 and close > SMA1

Short = rsi_value > 65 and close < SMA1
Short_exit = rsi_value < 25 and close < SMA1


if Long
    strategy.entry('Long', strategy.long)

if Short
    strategy.entry('Short', strategy.short)

strategy.close_all(Long_exit or Short_exit)

pera(pcnt) =>
    strategy.position_size != 0 ? math.round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss = input.float(title=' stop loss', defval=5, minval=0.5)
los = pera(stoploss)

strategy.exit('SL', loss=los)



//by wielkieef