Hitung rata-rata bergerak. Ketika harga di atas rata-rata bergerak, itu adalah tren bullish. Ketika harga di bawah rata-rata bergerak, itu adalah tren bearish.
Strategi ini mempertimbangkan indikator Saluran Harga dan Rata-rata Bergerak untuk menilai tren pasar dengan lebih baik dan menyaring sinyal palsu, membuatnya relatif stabil.
Desain parameterisasi memungkinkan penyesuaian panjang rata-rata bergerak dan panjang saluran harga melalui parameter untuk beradaptasi dengan produk dan frekuensi yang berbeda.
Sinyal strategi relatif stabil tanpa osilasi sinyal, sehingga menurunkan risiko perdagangan.
Strategi ini sepenuhnya berbasis indikator, tidak memerlukan pelatihan, tidak bergantung pada data, dan cocok untuk berbagai produk dan frekuensi.
Strategi dapat kehilangan peluang ketika harga keluar saluran dengan cepat, tidak dapat menangkap tren jangka pendek.
Solusi yang sesuai adalah:
Memperpendek periode rata-rata bergerak untuk membuat strategi lebih sensitif untuk menangkap tren jangka pendek.
Tambahkan logika stop loss bergerak untuk mengurangi kerugian per perdagangan.
Indikator lain seperti MACD dan KDJ dapat dikombinasikan dengan kriteria masuk untuk penyaringan multi-indikator dan sinyal yang lebih stabil.
Model pembelajaran mesin juga dapat diperkenalkan, menggunakan data historis untuk melatih dan mengoptimalkan parameter strategi untuk penyesuaian dinamis.
/*backtest start: 2024-01-11 00:00:00 end: 2024-01-18 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_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/ // © paparegier //@version=4 strategy("G-Channel and EMA Strategy", shorttitle="GEMA", overlay=true) // G-Channel Indicator length = input(100) a = 0.0 b = 0.0 a := na(a[1]) ? close : max(close, a[1]) - (a[1] - b[1]) / length b := na(b[1]) ? close : min(close, b[1]) + (a[1] - b[1]) / length avg = avg(a, b) crossup = b[1] < close[1] and b > close crossdn = a[1] < close[1] and a > close bullish = barssince(crossdn) <= barssince(crossup) // EMA Indicator emaLength = input(20, title="EMA Length") emaValue = ema(close, emaLength) // Strategy Conditions buyCondition = bullish and close < emaValue sellCondition = not bullish and close > emaValue // Execute Strategy strategy.entry("Buy", strategy.long, when=buyCondition) strategy.entry("Sell", strategy.short, when=sellCondition) // Plotting plot(avg, color=color.new(bullish ? color.lime : color.red, 90), linewidth=1, title="G-Channel Average") plot(emaValue, color=color.rgb(0, 0, 255, 90), linewidth=1, title="EMA") // Mark Buy and Sell Signals plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, text="Buy", size=size.small) plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, text="Sell", size=size.small)