Strategi Trading Cryptocurrency Berdasarkan Indikator MACD dan Stochastic

Penulis:ChaoZhang, Tanggal: 2024-02-01 11:52:15
Tag:

img

Gambaran umum

Strategi ini adalah strategi perdagangan cryptocurrency berdasarkan kombinasi indikator MACD dan indikator stokastik. Ini menghasilkan sinyal perdagangan dengan menghitung indikator MACD harga bitcoin dan menerapkan indikator stokastik di atasnya, untuk menangkap perubahan tren di pasar cryptocurrency.

Logika Strategi

Strategi ini pertama-tama menghitung indikator MACD. MACD adalah singkatan dari Moving Average Convergence Divergence, yang merupakan indikator yang mengikuti tren. Ini terdiri dari garis cepat dan garis lambat, di mana garis cepat adalah rata-rata bergerak eksponensial jangka pendek dan garis lambat adalah rata-rata bergerak eksponensial jangka panjang. Ketika garis cepat melintasi di atas garis lambat, itu menghasilkan sinyal silang emas, menunjukkan pasar bullish. Ketika garis cepat melintasi di bawah garis lambat, itu menghasilkan sinyal silang kematian, menunjukkan pasar bearish.

Setelah menghitung indikator MACD, strategi menerapkan indikator stokastik %K pada MACD itu sendiri.

%K = (Tutup saat ini - Rendah terendah selama N periode) / (Rendah tertinggi selama N periode - Rendah terendah selama N periode) * 100

Indikator stokastik mencerminkan deviasi harga dari kisaran baru-baru ini. Fluktuasi %K antara 20-80 mewakili harga diperdagangkan dalam konsolidasi. Ketika %K melintasi di atas 20 dari bawah, itu menghasilkan sinyal beli. Ketika %K melintasi di bawah 80 dari atas, itu menghasilkan sinyal jual.

Strategi ini menggabungkan sinyal perdagangan dari MACD dan %K stokastik untuk berdagang di pasar cryptocurrency.

Keuntungan dari Strategi

Strategi ini menggabungkan analisis tren dan indikator overbought-oversold, yang dapat secara efektif mengidentifikasi titik balik penting di pasar. Dibandingkan dengan menggunakan MACD atau stochastic saja, kombinasi %K dan MACD meningkatkan keandalan sinyal perdagangan dan mengurangi sinyal palsu.

Selain itu, strategi ini menerapkan indikator teknis yang umum digunakan di pasar saham untuk perdagangan cryptocurrency. Ini adalah aplikasi lintas pasar. Indikator ini sama-sama berlaku di pasar mata uang digital, dan bahkan mungkin berkinerja lebih baik karena volatilitas tinggi cryptocurrency.

Risiko dan Solusi

Risiko terbesar dari strategi ini adalah volatilitas tinggi di pasar cryptocurrency, yang dengan mudah menghasilkan sinyal palsu dan menyebabkan kerugian perdagangan. Selain itu, ketika indikator menghasilkan sinyal, harga mungkin sudah bergerak secara substansial, menimbulkan risiko kehilangan sinyal tren awal.

Untuk mengendalikan risiko ini, disarankan untuk menggunakan stop loss bergerak untuk mengunci keuntungan dan menghindari kerugian lebih lanjut. Pada saat yang sama, parameter juga dapat disesuaikan dengan tepat untuk menemukan lebih banyak peluang potensial menggunakan panjang kerangka waktu yang berbeda.

Arahan Optimasi

Pertama, strategi dapat mencoba untuk menggabungkan rata-rata bergerak dengan indikator volatilitas seperti Bollinger Bands, menetapkan parameter volatilitas untuk mengidentifikasi validitas breakout dan menghindari sinyal palsu.

Kedua, model pembelajaran mesin dapat diperkenalkan untuk melatih pada data historis dan membangun model hutan acak atau jaringan saraf LSTM untuk membantu menilai efektivitas sinyal indikator.

Ketiga, tambahkan mekanisme stop loss. Ketika harga bergerak lebih dari kisaran tertentu ke arah yang tidak menguntungkan, secara otomatis memicu stop loss untuk mengendalikan risiko.

Kesimpulan

Strategi ini menggabungkan indikator MACD dan indikator stokastik %K, menggunakan metode saling memverifikasi sinyal dari dua indikator untuk merumuskan strategi perdagangan mata uang kripto. Strategi indikator kombinasi ini dapat meningkatkan keakuratan sinyal sampai batas tertentu. Tetapi kita juga perlu menyadari risiko terlalu rumit dari indikator, yang dapat memperkenalkan efek kebisingan dan keterlambatan. Penyesuaian parameter yang tepat dan pengendalian risiko sesuai dengan lingkungan pasar yang berbeda sama pentingnya untuk mendapatkan kinerja strategi yang lebih baik.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Schaff Trend Cycle Strategy", shorttitle="STC Backtest", overlay=true)

fastLength = input(title="MACD Fast Length",  defval=23)
slowLength = input(title="MACD Slow Length",  defval=50)
cycleLength = input(title="Cycle Length",  defval=10)
d1Length = input(title="1st %D Length",  defval=3)
d2Length = input(title="2nd %D Length",  defval=3)
src = input(title="Source", defval=close)
highlightBreakouts = input(title="Highlight Breakouts ?", type=bool, defval=true)

macd = ema(src, fastLength) - ema(src, slowLength)
k = nz(fixnan(stoch(macd, macd, macd, cycleLength)))
d = ema(k, d1Length)
kd = nz(fixnan(stoch(d, d, d, cycleLength)))

stc = ema(kd, d2Length)
stc := 	stc > 100 ? 100 : stc < 0 ? 0 : stc

upper = input(75, defval=75)
lower = input(25, defval=25)

long =  crossover(stc, lower) ? lower : na
short = crossunder(stc, upper) ? upper : na

long_filt = long and not short
short_filt = short and not long

prev = 0
prev := long_filt ? 1 : short_filt ? -1 : prev[1]

long_final = long_filt and prev[1] == -1
short_final = short_filt and prev[1] == 1

//alertcondition(long_final, "Long", message="Long")
//alertcondition(short_final,"Short", message="Short")

//plotshape(long_final, style=shape.arrowup, text="Long", color=green, location=location.belowbar)
//plotshape(short_final, style=shape.arrowdown, text="Short", color=red, location=location.abovebar)

strategy.entry("long", strategy.long, when = long )
strategy.entry("short", strategy.short, when = short)


Lebih banyak