RSI Backtesting Strategi V2

Penulis:ChaoZhang, Tarikh: 2023-09-21 15:02:06
Tag:

Ringkasan

Strategi ini adalah versi yang dipertingkatkan dari penunjuk RSI yang dibangunkan oleh John Ehlers.

Cara Ia Bekerja

  1. Mengira purata harga xValue menggunakan 6 bar.

  2. Mengira jumlah naik CU23 dan jumlah turun CD23 berdasarkan xValue.

  3. Mengira nilai RES normal nRes sebagai CU23/(CU23 + CD23).

  4. Menghasilkan isyarat panjang/pendek dengan membandingkan nRes dengan ambang.

  5. Pilihan untuk membalikkan isyarat.

  6. Masukkan panjang/pendek berdasarkan isyarat.

Kelebihan

  • Kurva RSI yang diluruskan mengurangkan isyarat palsu
  • Parameter yang boleh diselaraskan untuk mencari nilai optimum
  • Perdagangan terbalik yang dapat disesuaikan dengan pelbagai keadaan pasaran
  • Logik yang mudah dan intuitif

Risiko

  • Pengoptimuman parameter yang buruk boleh menyebabkan isyarat palsu yang berlebihan
  • Sesetengah kelewatan kekal, mungkin terlepas pembalikan pendek
  • Perdagangan terbalik meningkatkan kekerapan perdagangan dan kos

Arahan pengoptimuman

  • Mengoptimumkan parameter untuk mencari kombinasi terbaik
  • Isyarat penapis dengan penunjuk tambahan
  • Tambah logik stop loss untuk mengawal kerugian tunggal
  • Ujian balik untuk mencari tempoh tahan yang optimum
  • meneroka pembelajaran mesin untuk pengoptimuman parameter

Kesimpulan

Strategi ini secara berkesan meluruskan lengkung RSI dengan meningkatkan penghitungannya, mengurangkan isyarat palsu ke tahap tertentu. penapisan lanjut dan pengoptimuman parameter boleh meningkatkan prestasi. Tetapi beberapa kelewatan berterusan sebagai sistem momentum. Secara keseluruhan, sistem pecah yang mudah dan boleh dipercayai bernilai penyelidikan dan pengoptimuman lanjut.


/*backtest
start: 2023-09-13 00:00:00
end: 2023-09-19 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 20/11/2017
// This is new version of RSI oscillator indicator, developed by John Ehlers. 
// The main advantage of his way of enhancing the RSI indicator is smoothing 
// with minimum of lag penalty. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Smoothed RSI Backtest ver.2")
Length = input(10, minval=1)
TopBand = input(0.8, step=0.01)
LowBand = input(0.2, step=0.01)
reverse = input(false, title="Trade reverse")
hline(TopBand, color=red, linestyle=line)
hline(LowBand, color=green, linestyle=line)
xValue = (close + 2 * close[1] + 2 * close[2] + close[3] ) / 6
CU23 = sum(iff(xValue > xValue[1], xValue - xValue[1], 0), Length)
CD23 = sum(iff(xValue < xValue[1], xValue[1] - xValue, 0), Length)
nRes = iff(CU23 + CD23 != 0, CU23/(CU23 + CD23), 0)
pos = iff(nRes > TopBand, 1,
	   iff(nRes < LowBand, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )  
plot(nRes, color=blue, title="Smoothed RSI")

Lebih lanjut