Strategi kuantitatif jangka pendek berdasarkan RSI dan VWAP


Tanggal Pembuatan: 2024-01-19 14:21:15 Akhirnya memodifikasi: 2024-01-19 14:21:15
menyalin: 0 Jumlah klik: 982
1
fokus pada
1617
Pengikut

Strategi kuantitatif jangka pendek berdasarkan RSI dan VWAP

Ringkasan

Strategi ini diberi nama strategi short RSI-VWAP. Strategi ini menggunakan indikator RSI dan volume transaksi rata-rata (VWAP) sebagai indikator teknis, menetapkan sinyal overhead, dan menghasilkan keputusan beli dan jual. Strategi ini berusaha untuk menangkap overbought dan oversold di pasar pada garis pendek, dengan tujuan untuk mendapatkan keuntungan tambahan.

Prinsip Strategi

  1. Gunakan indikator RSI untuk menentukan apakah pasar berada dalam kondisi overbought atau oversold. Nilai indikator RSI lebih tinggi dari 80 adalah zona overbought dan lebih rendah dari 20 adalah zona oversold.
  2. Indikator RSI menggunakan VWAP bukan harga close out sebagai sumber data. VWAP lebih dapat mencerminkan harga transaksi rata-rata hari itu.
  3. Sebuah sinyal beli dihasilkan ketika RSI melewati 20 dari zona oversold. Sebuah sinyal jual dihasilkan ketika RSI melewati 80 dari zona oversold.
  4. Strategi ini hanya melakukan overhead, tidak melakukan overhead.

Analisis Keunggulan

  1. Menggunakan VWAP sebagai sumber data RSI, membuat RSI lebih akurat dalam menilai pasar, dan menghindari tertipu oleh terobosan palsu.
  2. Hanya melakukan lebih dari satu operasi, mengurangi frekuensi operasi, dan menghasilkan keuntungan stabil jangka panjang.
  3. Parameter indikator RSI adalah 17, cocok untuk operasi garis pendek.
  4. Menggunakan operasi garis pendek dengan jumlah transaksi yang diharapkan rendah, mengurangi biaya transaksi, dan membantu mendapatkan tingkat keuntungan yang lebih tinggi.

Analisis risiko

  1. Ada risiko over-fitting dalam pengukuran strategi kuantitatif, dan hasil di lapangan mungkin tidak sesuai dengan pengukuran.
  2. Hanya dengan melakukan hal-hal yang berlebihan, kita tidak akan bisa menangkap peluang untuk turun.
  3. Kriteria penilaian overbought dan oversold mungkin tidak cocok untuk semua varietas, perlu menyesuaikan parameter untuk varietas yang berbeda.
  4. Indikator teknis apa pun dapat menghasilkan sinyal yang salah dan tidak dapat sepenuhnya menghindari kerugian.

Risiko dapat dikurangi dengan cara-cara seperti meredakan standar overbought dan oversold, mengkonfirmasi sinyal dengan indikator lain, dan menyesuaikan interval parameter.

Arah optimasi

  1. Uji efek dari berbagai parameter terhadap efektivitas strategi, optimalisasi panjang RSI dan overbought overbought.
  2. Meningkatkan strategi stop loss, mengunci sebagian keuntungan melalui stop loss bergerak, stop loss waktu, dan lainnya, dan mengurangi penarikan.
  3. Filter sinyal yang dikombinasikan dengan indikator lain untuk meningkatkan akurasi sinyal.
  4. Dengan pengaturan parameter yang terpisah berdasarkan karakteristik varietas yang berbeda, strategi dapat disesuaikan dengan varietas yang berbeda.

Meringkaskan

Strategi ini secara keseluruhan adalah strategi garis pendek yang sederhana dan praktis. Penggunaan VWAP membuat penilaian indikator RSI lebih akurat, hanya dengan mengurangi frekuensi operasi. Ide strategi jelas, mudah dipahami dan diimplementasikan, cocok untuk memulai perdagangan kuantitatif.

Kode Sumber Strategi
/*backtest
start: 2023-12-19 00:00:00
end: 2024-01-18 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Xaviz

//#####©ÉÉÉɶN###############################################
//####*..´´´´´´,,,»ëN########################################
//###ë..´´´´´´,,,,,,''%©#####################################
//###'´´´´´´,,,,,,,'''''?¶###################################
//##o´´´´´´,,,,,,,''''''''*©#################################
//##'´´´´´,,,,,,,'''''''^^^~±################################
//#±´´´´´,,,,,,,''''''''^í/;~*©####æ%;í»~~~~;==I±N###########
//#»´´´´,,,,,,'''''''''^;////;»¶X/í~~/~~~;=~~~~~~~~*¶########
//#'´´´,,,,,,''''''''^^;////;%I^~/~~/~~~=~~~;=?;~~~~;?ë######
//©´´,,,,,,,''''''''^^~/////X~/~~/~~/~~»í~~=~~~~~~~~~~^;É####
//¶´,,,,,,,''''''''^^^;///;%;~/~~;í~~»~í?~?~~~?I/~~~~?*=íÑ###
//N,,,,,,,'''''''^^^^^///;;o/~~;;~~;£=»í»;IX/=~~~~~~^^^^'*æ##
//#í,,,,,''''''''^^^^^;;;;;o~»~~~~íX//~/»~;í?IíI»~~^/*?'''=N#
//#%,,,'''''''''^^^^^^í;;;;£;~~~//»I»/£X/X/»í*&~~~^^^^'^*~'É#
//#©,,''''''''^^^^^^^^~;;;;&/~/////*X;í;o*í»~=*?*===^'''''*£#
//##&''''''''^^^^^^^^^^~;;;;X=í~~~»;;;/~;í»~»±;^^^^^';=''''É#
//##N^''''''^^^^^^^^^^~~~;;;;/£;~~/»~~»~~///o~~^^^^''''?^',æ#
//###Ñ''''^^^^^^^^^^^~~~~~;;;;;í*X*í»;~~IX?~~^^^^/?'''''=,=##
//####X'''^^^^^^^^^^~~~~~~~~;;íííííí~~í*=~~~~Ií^'''=''''^»©##
//#####£^^^^^^^^^^^~~~~~~~~~~~íííííí~~~~~*~^^^;/''''='',,N###
//######æ~^^^^^^^^~~~~~~~~~~~~~~íííí~~~~~^*^^^'=''''?',,§####
//########&^^^^^^~~~~~~~~~~~~~~~~~~~~~~~^^=^^''=''''?,íN#####
//#########N?^^~~~~~~~~~~~~~~~~~~~~~~~~^^^=^''^?''';í@#######
//###########N*~~~~~~~~~~~~~~~~~~~~~~~^^^*'''^='''/É#########
//##############@;~~~~~~~~~~~~~~~~~~~^^~='''~?'';É###########
//#################É=~~~~~~~~~~~~~~^^^*~'''*~?§##############
//#####################N§£I/~~~~~~»*?~»o§æN##################

//@version=4
strategy("RSI-VWAP INDICATOR", overlay=false)

// ================================================================================================================================================================================
// RSI VWAP INDICATOR
// ================================================================================================================================================================================

// Initial inputs
Act_RSI_VWAP = input(true, "RSI VOLUME WEIGHTED AVERAGE PRICE")
RSI_VWAP_length = input(17, "RSI-VWAP LENGTH")
RSI_VWAP_overSold = input(19, "RSI-VWAP OVERSOLD", type=input.float)
RSI_VWAP_overBought = input(80, "RSI-VWAP OVERBOUGHT", type=input.float)

// RSI with VWAP as source
RSI_VWAP = rsi(vwap(close), RSI_VWAP_length)

// Plotting, overlay=false
r=plot(RSI_VWAP, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : RSI_VWAP < RSI_VWAP_overSold ? color.lime : color.blue, title="rsi", linewidth=2, style=plot.style_line)
h1=plot(RSI_VWAP_overBought, color = color.gray, style=plot.style_stepline)
h2=plot(RSI_VWAP_overSold, color = color.gray, style=plot.style_stepline)
fill(r,h1, color = RSI_VWAP > RSI_VWAP_overBought ? color.red : na, transp = 60)
fill(r,h2, color = RSI_VWAP < RSI_VWAP_overSold ? color.lime : na, transp = 60)

// Long only Backtest
strategy.entry("Long", strategy.long, when = (crossover(RSI_VWAP, RSI_VWAP_overSold)))
strategy.close("Long", when = (crossunder(RSI_VWAP, RSI_VWAP_overBought)))