Strategi ini adalah berdasarkan isyarat oversold dari Indeks Kekuatan Relatif (RSI), membeli pada tahap rendah intraday dan kemudian menetapkan peratusan tetap mengambil keuntungan dan stop-loss untuk menguji semula kebarangkalian strategi memukul keuntungan dan stop-loss. Idea utama adalah untuk memanfaatkan peluang pembalikan apabila penunjuk RSI terlalu banyak dijual, masuk pada tahap rendah intraday, dan mencari keuntungan jangka pendek yang dibawa oleh pembalikan. Pada masa yang sama, ia menggunakan purata bergerak untuk menapis trend dan hanya pergi lama apabila harga di atas purata bergerak.
Strategi RSI2 cuba menangkap peluang pembalikan intraday selepas penunjuk RSI terlalu banyak dijual, dan mengawal risiko dengan menetapkan peratusan tetap keuntungan dan stop-loss, sambil menggunakan purata bergerak jangka panjang untuk menapis isyarat kontra-trend. Strategi ini mudah dan sesuai untuk peniaga spekulatif jangka pendek. Walau bagaimanapun, ia juga mempunyai batasan tertentu, seperti kekurangan penilaian trend, kesukaran untuk membeli dengan tepat pada titik terendah, dan mengambil keuntungan tetap dan menghentikan kerugian mengehadkan potensi keuntungan. Pada masa akan datang, strategi ini boleh dipertingkatkan dari aspek seperti mengambil keuntungan dinamik dan menghentikan kerugian, menggabungkan penunjuk trend, mengoptimumkan titik kemasukan, dan memperkukuhkan pengurusan kedudukan untuk meningkatkan sistematik dan ketahanan, dan menyesuaikan diri dengan persekitaran pasaran yang lebih baik.
/*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")