Artikel ini memperkenalkan strategi perdagangan kuantitatif yang didasarkan pada titik persimpangan EMA (Exponential Moving Averages) selama tiga periode yang berbeda.
Strategi ini menggunakan EMA tiga periode yang berbeda: 10 hari, 100 hari, dan 200 hari. sinyal beli atau jual dihasilkan berdasarkan arah crossover ketika EMA jangka pendek (10 hari) melintasi EMA jangka panjang (100-hari atau 200 hari). strategi ini juga menggabungkan filter waktu untuk memastikan perdagangan hanya dilaksanakan dalam kerangka waktu tertentu. Kombinasi ini menambah fleksibilitas dan kemampuan beradaptasi dengan strategi.
Kekuatan strategi ini terletak pada kesederhanaan dan kemampuan beradaptasi yang tinggi. EMA multi-periode memberikan pandangan multi-dimensi tentang tren pasar, meningkatkan keakuratan keputusan perdagangan. Selain itu, filter waktu menghindari ketidakstabilan selama periode pasar tertentu, mengurangi risiko potensial.
Meskipun efektif, strategi membawa risiko tertentu. Risiko utama adalah volatilitas pasar karena peristiwa yang tidak terduga, yang dapat menyebabkan kegagalan strategi. Selain itu, EMA dapat tertinggal, menunda refleksi perubahan pasar. Metode untuk mengurangi risiko ini termasuk pemantauan pasar real-time dan menggabungkan indikator teknis lainnya untuk meningkatkan akurasi keputusan.
Arah optimasi untuk strategi ini termasuk penggunaan terintegrasi dari berbagai indikator teknis, seperti Indeks Kekuatan Relatif (RSI) dan Bollinger Bands, untuk memperdalam dan memperluas analisis pasar.
Secara keseluruhan, ini
strategi perdagangan kuantitatif crossover EMA multi-periode adalah alat yang efektif yang dapat membantu pedagang membuat keputusan yang lebih baik di pasar yang tidak stabil. Dengan optimasi dan adaptasi terus menerus terhadap perubahan pasar, strategi ini memiliki potensi untuk mencapai pengembalian yang lebih tinggi dalam usaha perdagangan di masa depan.
/*backtest start: 2022-12-20 00:00:00 end: 2023-12-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 start = timestamp(2023,1,1,0,0) end = timestamp(2024,1,1,0,0) strategy("Tester Emas", overlay = true) periodo1 = input(10,"Periodo_1") periodo2 = input(100,"Periodo_2") periodo3 = input(200,"Periodo_3") //definir media moviles ema1 = ta.ema(close,periodo1) ema2 = ta.ema(close,periodo2) ema3 = ta.ema(close,periodo3) //Desde desde_a = input(2000, title = "Desde año") desde_m = input.int( 1, title = "Desde mes", minval=1, maxval = 12) desde_d = input.int( 1, title = "Desde dia", minval=1, maxval = 31) //Hasta hasta_a = input(2030, title = "Hasta año") hasta_m = input.int( 1, title = "Hasta mes", minval=1, maxval = 12) hasta_d = input.int( 1, title = "Hasta dia", minval=1, maxval = 31) FechaValida() => true //Condicion de entradas longCondition = ta.crossover(ema1, ema2) shortCondition = ta.crossunder(ema1,ema2) alcista = (ema1 > ema2) and (ema2 > ema3) comprado =strategy.position_size > 0 //Comprar o vender segun las condiciones de entradas //if (longCondition) if (not comprado and alcista and FechaValida()) // Round redondea mi capital para comprar las acciones en cantidades enteras cantidad = math.round(strategy.equity/ close) strategy.entry("Compra", strategy.long, cantidad) //if (shortCondition) if (comprado and not alcista and FechaValida()) //strategy.entry("Venta", strategy.short) strategy.close("Compra" , comment = "Venta") if (comprado and not FechaValida()) //Cierre x finalizacion de periodo //strategy.entry("Venta", strategy.short) strategy.close("Compra" , comment = "Venta x fin") //Graficar las medias moviles plot(ema1, color = color.green, title = "Ema1") plot(ema2, color = color.yellow, title = "Ema2") plot(ema3, color = color.red, title = "Ema2") //GMarca los cruces de medias bgcolor(longCondition ? color.green : na) bgcolor(shortCondition ? color.red : na)