Artikel ini terutama menganalisis strategi perdagangan kuantitatif yang dikembangkan oleh Ravikant_sharma berdasarkan beberapa rata-rata bergerak eksponensial (EMA) dan indeks kekuatan relatif (RSI). Strategi ini mengidentifikasi tren harga dan menentukan titik masuk dan keluar dengan melintasi EMA dengan siklus dan nilai RSI yang berbeda.
Strategi ini menggunakan 5 EMA dengan periode yang berbeda, termasuk garis 9 hari, 21 hari, 51 hari, 100 hari dan 200 hari.
Salah satu dari kondisi berikut harus dipenuhi sebelum membeli:
Pada saat yang sama, RSI harus lebih besar dari 65, menunjukkan tren naik yang kuat.
Salah satu kondisi berikut harus dipenuhi sebelum posisi ditutup:
Ini adalah tren yang khas mengikuti strategi dengan kekuatan berikut:
Masih ada beberapa risiko:
Strategi dapat dioptimalkan lebih lanjut dengan cara berikut:
Kesimpulannya, ini adalah strategi trend berikut yang dapat diandalkan dan mudah diimplementasikan secara keseluruhan. Dengan crossover EMA untuk arah tren dan filter RSI untuk sinyal palsu, hasil backtest yang baik memberikan dasar yang kuat untuk parameter lebih lanjut dan optimasi model untuk mendapatkan keuntungan yang stabil. Namun, pedagang masih harus berhati-hati dari pembalikan tajam dan parameter yang tidak tepat yang menimbulkan risiko.
/*backtest start: 2024-01-30 00:00:00 end: 2024-02-29 00:00:00 period: 3h 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/ // © Ravikant_sharma //@version=5 strategy('new', overlay=true) start = timestamp(1990, 1, 1, 0, 0) end = timestamp(2043, 12, 12, 23, 59) ema0 = ta.ema(close, 9) ema1 = ta.ema(close, 21) ema2 = ta.ema(close, 51) ema3 = ta.ema(close, 100) ema4 = ta.ema(close, 200) rsi2=ta.rsi(ta.sma(close,14),14) plot(ema0, '9', color.new(color.green, 0)) plot(ema1, '21', color.new(color.black, 0)) plot(ema2, '51', color.new(color.red, 0)) plot(ema3, '200', color.new(color.blue, 0)) //plot(ema4, '100', color.new(color.gray, 0)) //LongEntry = ( ta.crossover(ema0,ema3) or ta.crossover(ema0,ema2) or ta.crossunder(ema2,ema3) ) // ta.crossover(ema0,ema1) // LongEntry=false if ta.crossover(ema0,ema1) if rsi2>65 LongEntry:=true if ta.crossover(ema1,ema2) if rsi2>65 LongEntry:=true LongExit = ta.crossunder(ema0,ema2) or close >(strategy.position_avg_price*1.25) or rsi2 <40 or close < (strategy.position_avg_price*0.98) if time >= start and time <= end if(LongEntry and rsi2>60) strategy.entry('Long', strategy.long, 1) if(LongExit) strategy.close('Long')