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

RSI2 ストラテジー 日中の逆転 勝利率 バックテスト

作者: リン・ハーンチャオチャン開催日:2024年4月29日 14:02:55
タグ:RSISMA

img

概要

この戦略は,相対強度指数 (RSI) 指標の過剰販売信号に基づいており,イントラデイ低値で購入し,その後,戦略がテイク・プロフィートとストップ・ロスをヒットする確率をバックテストするために固定的なテイク・プロフィートとストップ・ロスの割合を設定する.主なアイデアは,RSI指標が過剰販売されたときに逆転機会を利用し,イントラデイ低値で入力し,逆転によってもたらされた短期利益を求めることです.同時に,トレンドをフィルタリングするために移動平均を使用し,価格は移動平均以上になるとのみ長引きます.

戦略原則

  1. 2 期間のRSI指標と 200 期間の単純な移動平均を計算する
  2. 閉じる価格が移動平均値より高く,RSIが過売値を下回る場合 (デフォルト10),次の取引日の開始時に購入する.
  3. 入場価格として購入日の最低価格を記録する.
  4. 入場価格に基づいて 6%の得益価格と 3%のストップ損失価格を計算する
  5. 次の取引日に,もし,利益を得る価格が達成された場合,利益を得るためにポジションを閉じる.ストップ・ロスの価格が達成された場合,損失を得るためにポジションを閉じる.
  6. 利益とストップ損失の数を数え,設定された期間中に戦略の勝利率を計算する

利点分析

  1. RSI指標の過売り後,逆転利益を把握するために,日中の低値で購入する
  2. 単一の取引リスクを制御するための固定割合の利益とストップ損失
  3. 逆トレンド取引をフィルタリングし,削減するために長周期移動平均を使用する
  4. シンプルで使いやすい,柔軟なパラメータ設定,短期トレーダーに適しています

リスク分析

  1. RSIの過剰売り上げは必要な逆転を保証しない 極端な状況下でも市場が引き続き下落する可能性がある
  2. 固定金利率とストップ・ロスは,取引コストをカバーしない場合がある.
  3. 入力ポイントは,実際の操作の最低点で正確に購入することが難しい日中の最低価格に基づいています.
  4. トレンド判断の欠如 過剰購入・過剰売却の信号に頼るだけで 利回り率は高くないかもしれない

最適化方向

  1. アダプティブ・テイク・プロフィートとストップ・ロスを利用し,価格変動などの指標に応じて動的に調整する
  2. 逆トレンド取引を避けるために,MACD,DMIなどトレンド確認指標を追加する.
  3. 入り口を最適化します.例えば,変数距離のカメ取引ルールを使用します.
  4. 資本利用率と収益率を改善するためにポジション管理を強化する
  5. Bollinger Bands,KDJなどなどの短周期指標と組み合わせることで信号の確認が改善されます.

概要

RSI2戦略は,RSI指標が過剰に売れた後,日中の逆転機会を捕捉し,利益とストップ損失の固定パーセントを設定し,反トレンド信号をフィルタリングするために長期間の移動平均を使用することでリスクを制御する.この戦略はシンプルで,短期的な投機的なトレーダーに適しています.しかし,傾向判断の欠如,最低点で正確に購入する難しさ,固定利益とストップ損失が利益の可能性を制限するなどの特定の制限もあります.将来,この戦略は,動的利益とストップ損失,トレンド指標の組み合わせ,エントリーポイントの最適化,体系的性と強度,および変化する市場環境に適応するためのポジション管理の強化などの側面から改善することができます.


/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © rajk1987

//@version=5
strategy("RSI2 strategy Raj", overlay=true, margin_long=100, margin_short=100)

rsi_len = input.int( 2, title = "RSI Length",     group = "Indicators")
rsi_os  = input.float(10, title = "RSI Oversold", group = "Indicators")
rsi_ob  = input.float(90, title = "RSI OverBrought",   group = "Indicators")
max_los = input.float(3,title = "Max Loss Percent", group = "Indicators")
tar_per = input.float(6,title = "Target Percent",group = "Indicators")

//Get the rsi value of the stock
rsi = ta.rsi(close, rsi_len)
sma = ta.sma(close,200)
var ent_dat = 0
var tar = 0.0
var los = 0.0
var bp = 0.0

if ((close > sma) and (rsi < rsi_os))
    strategy.entry("RSI2 Long Entry", strategy.long,1)
    ent_dat := time(timeframe = timeframe.period)

if(ent_dat == time(timeframe = timeframe.period))
    bp := low //high/2 + low/2
    tar := bp * (1 + (tar_per/100))
    los := bp * (1 - (max_los/100))

if (time(timeframe = timeframe.period) > ent_dat)
    strategy.exit("RSI2 Exit", "RSI2 Long Entry",qty = 1, limit = tar, stop = los, comment_profit = "P", comment_loss = "L")

//plot(rsi,"RSI")
//plot(bp,"BP")
//plot(tar,"TAR")
//plot(los,"LOS")



関連性

もっと