Kemeruapan Sisihan Piawai Strategi Perdagangan DEV Berdasarkan Indeks Kekuatan Relatif RSI dan Purata Sliding SMA

RSI SMA DEV
Tarikh penciptaan: 2024-05-28 10:57:06 Akhirnya diubah suai: 2024-05-28 10:57:06
Salin: 1 Bilangan klik: 626
1
fokus pada
1617
Pengikut

Kemeruapan Sisihan Piawai Strategi Perdagangan DEV Berdasarkan Indeks Kekuatan Relatif RSI dan Purata Sliding SMA

Gambaran keseluruhan

Strategi Pine Script ini berdasarkan kepada indeks RSI yang agak kuat dan DEV standard perbezaan kadar turun naik harga untuk menilai titik masuk dengan membandingkan harga dengan orbit ke atas ke bawah, dan menggunakan RSI sebagai penapis penapis tambahan, menghasilkan isyarat bukaan kedudukan apabila harga menyentuh orbit ke atas ke bawah dan RSI mencapai rantau overbought, dan melonggarkan kedudukan apabila harga berbalik keluar dari orbit atau RSI berbalik mencapai rantau overbought. Strategi ini dapat menyesuaikan diri secara dinamik dengan keadaan turun naik pasaran, memegang kedudukan keuntungan ketika turun naik tinggi dan berhenti ketika turun naik rendah, adalah strategi perdagangan kuantitatif yang dapat menyesuaikan diri dengan keadaan pasaran yang berbeza.

Prinsip Strategi

  1. Harga dikira dengan purata pergerakan SMA dan perbezaan piawai DEV dalam tempoh masa yang lalu.
  2. Dengan SMA sebagai sumbu tengah, SMA + thresholdEntry*DEV ke atas landasan, SMA-thresholdEntry*DEV turun ke bawah, membina saluran kadar turun naik.
  3. RSI juga mengira harga penutupan rsiLength untuk setiap kitaran terakhir.
  4. Apabila harga naik ke bawah dan RSI lebih kecil daripada rsiOversold, isyarat buka lebih banyak kedudukan dihasilkan.
  5. Apabila harga menembusi ke bawah dan RSI lebih besar daripada overbought rsiOverbought, isyarat kosong terbentuk.
  6. Dengan SMA sebagai sumbu tengah, SMA+thresholdExit*DEV ke atas landasan, SMA-thresholdExit*DEV turun dari landasan dan membina laluan keluar yang lebih sempit.
  7. Apabila memegang lebih banyak kedudukan, jika harga turun ke bawah, keluar dari landasan atau RSI lebih besar daripada ambang beli, melonggarkan lebih banyak kedudukan.
  8. Apabila memegang kedudukan kosong, kosongkan kedudukan jika harga melangkau ke atas dan keluar dari landasan atau RSI lebih kecil daripada paras jual beli.

Analisis kelebihan

  1. Ia juga boleh digunakan untuk menilai pergerakan harga dan indikator pergerakan untuk menyaring isyarat palsu.
  2. Mengubah lebar saluran secara dinamik melalui turun naik kadar, membolehkan strategi menyesuaikan diri dengan keadaan pasaran yang berbeza.
  3. Satu set dua saluran yang boleh menghentikan kerugian pada awal harga berbalik, mengawal penarikan balik, dan masih boleh memegang keuntungan selepas trend terbentuk.
  4. Logik kod dan parameter yang jelas, mudah difahami dan dioptimumkan.

Analisis risiko

  1. Strategi ini mungkin terhenti lebih awal dan kehilangan keuntungan trend apabila pasaran terus bergerak dalam trend satu arah.
  2. Tetapan parameter mempunyai kesan besar terhadap prestasi strategi, parameter perlu dioptimumkan secara berasingan untuk pelbagai jenis dan tempoh.
  3. Strategi ini mempunyai kelebihan di pasaran goyah, di mana pasaran trend biasanya menunjukkan prestasi yang baik. Strategi ini mungkin menghasilkan pengunduran yang lebih besar jika trend jangka panjang tiba-tiba berbalik.
  4. Jika kadar turun naik aset yang ditetapkan berubah secara drastik, parameter tetap mungkin tidak akan berfungsi.

Arah pengoptimuman

  1. Anda boleh cuba untuk memperkenalkan indikator untuk menilai trend, seperti persilangan garis rata-rata jangka panjang, ADX, dan lain-lain, untuk membezakan antara trend dan pasaran goyah, menggunakan parameter yang berbeza.
  2. Pertimbangkan untuk menggunakan penunjuk kadar turun naik yang lebih mudah disesuaikan, seperti ATR, untuk menyesuaikan lebar saluran kadar turun naik secara dinamik.
  3. Untuk menilai trend pergerakan harga sebelum membuka kedudukan, untuk mengesan sama ada dalam trend yang jelas, dan mengelakkan perdagangan berlawanan.
  4. Kombinasi parameter yang berbeza boleh dioptimumkan untuk mencari tetapan parameter yang optimum melalui algoritma genetik, carian grid dan lain-lain.
  5. Pertimbangkan untuk menggunakan tetapan parameter yang berbeza untuk kedudukan berbilang dan kosong untuk mengawal celah risiko.

ringkaskan

Strategi ini menggunakan saluran turun naik dan indeks yang agak kuat untuk membuat keputusan pembukaan posisi dengan merujuk kepada indikator RSI semasa turun naik harga, untuk lebih memahami trend bertahap, dan menghentikan kerugian dan keuntungan tepat pada masanya. Namun, prestasi strategi ini sensitif terhadap parameter, yang memerlukan pengoptimuman untuk aset yang berbeza dan keadaan pasaran, sambil mempertimbangkan untuk memperkenalkan petunjuk lain untuk membuat penilaian tambahan terhadap trend pasaran, untuk memanfaatkan sepenuhnya kelebihan strategi.

Kod sumber strategi
/*backtest
start: 2024-05-20 00:00:00
end: 2024-05-27 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"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/
// © tmalvao

//@version=5
strategy("Estratégia de Desvio Padrão com RSI", overlay=true, margin_long=100, margin_short=100)

// Parâmetros
length = input.int(20, title="Período do Desvio Padrão")
thresholdEntry = input.float(1.5, title="Limite de Entrada")
thresholdExit = input.float(0.5, title="Limite de Saída")
rsiLength = input.int(14, title="Período do RSI")
rsiOverbought = input.int(70, title="RSI Overbought")
rsiOversold = input.int(30, title="RSI Oversold")

// Cálculo do Desvio Padrão
price = close
stdDev = ta.stdev(price, length)

// Média Móvel Simples
sma = ta.sma(price, length)

// Limites baseados no Desvio Padrão
upperLimit = sma + thresholdEntry * stdDev
lowerLimit = sma - thresholdEntry * stdDev
exitUpperLimit = sma + thresholdExit * stdDev
exitLowerLimit = sma - thresholdExit * stdDev

// Cálculo do RSI
rsi = ta.rsi(price, rsiLength)

// Condições de Entrada com RSI
longCondition = ta.crossover(price, lowerLimit) and rsi < rsiOversold
shortCondition = ta.crossunder(price, upperLimit) and rsi > rsiOverbought

// Condições de Saída com RSI
exitLongCondition = ta.crossunder(price, exitLowerLimit) or rsi > rsiOverbought
exitShortCondition = ta.crossover(price, exitUpperLimit) or rsi < rsiOversold

// Plotar Linhas
plot(upperLimit, color=color.red, title="Limite Superior")
plot(lowerLimit, color=color.green, title="Limite Inferior")
plot(exitUpperLimit, color=color.orange, title="Limite de Saída Superior")
plot(exitLowerLimit, color=color.blue, title="Limite de Saída Inferior")
plot(sma, color=color.gray, title="SMA")
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(rsi, title="RSI", color=color.purple)

// Estratégia de Trade
if (longCondition)
    strategy.entry("Long", strategy.long)

if (shortCondition)
    strategy.entry("Short", strategy.short)

if (exitLongCondition)
    strategy.close("Long")

if (exitShortCondition)
    strategy.close("Short")