
Strategi pelacakan tren crossover adalah sistem perdagangan yang sederhana dan efisien, yang secara cerdik menggabungkan dua indikator teknis, rata-rata bergerak (SMA) dan indeks relatif lemah (RSI), untuk membentuk sistem pembuatan sinyal jual beli otomatis. Strategi ini menggunakan harga dan titik persilangan SMA 20 siklus sebagai kondisi pemicu sinyal utama, sementara mengkonfirmasi momentum dengan indikator RSI, memfilter beberapa sinyal perdagangan berkualitas rendah.
Prinsip inti dari strategi ini adalah untuk menangkap titik-titik pergeseran tren melalui persilangan harga dengan garis rata-rata, sementara menggunakan indikator dinamika RSI untuk konfirmasi sinyal, yaitu sebagai berikut:
Kondisi pembelianKetika harga naik melewati 20 siklus SMA dan nilai RSI lebih besar dari 60, sistem menghasilkan sinyal beli. Kondisi ini menggabungkan dua dimensi tren dan momentum: harga menerobos garis rata-rata menunjukkan kemungkinan tren naik, dan nilai RSI di atas 60 mengkonfirmasi adanya kekuatan bullish.
Kondisi penjualan: Ketika harga turun melewati 20 siklus SMA dan nilai RSI kurang dari 40, sistem menghasilkan sinyal jual. Demikian pula, kondisi ini mengidentifikasi kemungkinan pembalikan tren dan mengkonfirmasi momentum penurunan dengan nilai RSI di bawah 40.
Pelacakan kinerjaStrategi ini memiliki sistem pemantauan kinerja transaksi yang melacak indikator-indikator berikut:
VisualisasiStrategi: Menandai titik jual beli dengan “B” (Buy) dan “S” (Sell) pada grafik, dan menampilkan statistik kinerja secara real-time melalui tabel.
Singkat dan efisienMenggunakan hanya dua indikator teknis yang umum digunakan (SMA dan RSI) untuk membangun sistem perdagangan yang lengkap, mengurangi risiko over-optimisasi dan over-fit.
Mekanisme konfirmasi gandaKombinasi indikator tren ((SMA) dan indikator momentum ((RSI)), meningkatkan keandalan sinyal. Harga harus tidak hanya menembus garis rata-rata, tetapi juga membutuhkan energi yang cukup untuk memicu perdagangan.
Tingkat otomatisasi tinggiStrategi ini sepenuhnya otomatis untuk menghasilkan sinyal beli dan jual, mengurangi gangguan emosional manusia, dan cocok untuk digunakan oleh pedagang sistematis.
Evaluasi kinerja internal: Melacak indikator kinerja kunci secara real-time, memungkinkan pedagang untuk menilai kinerja strategi secara obyektif, menyesuaikan parameter atau keluar dari strategi yang berkinerja buruk.
Pengendalian RisikoUntuk membantu mengidentifikasi titik-titik berhenti potensial dan meningkatkan kesadaran manajemen risiko dengan memantau perilaku harga selama 7 siklus setelah pembelian.
Visualisasi IntuitifDengan menggunakan grafik dan tabel kinerja, pedagang dapat memahami secara langsung bagaimana strategi mereka bekerja, dan dapat melakukan analisis dan perbaikan strategi.
Risiko Penembusan PalsuMeskipun menggunakan RSI untuk memfilter, strategi ini masih dapat menghasilkan sejumlah besar sinyal false breakout di pasar konsolidasi, yang menyebabkan perdagangan yang sering dan biaya perdagangan yang tidak perlu.
Parameter SensitivitasKinerja strategi sangat bergantung pada pilihan siklus SMA (20) dan siklus RSI (8) dan tipisnya (60⁄40). Dalam lingkungan pasar atau varietas yang berbeda, parameter tetap ini mungkin tidak berkinerja baik.
Kurangnya adaptasiStrategi ini tidak memiliki kemampuan untuk mengidentifikasi kondisi pasar, dan dapat berkinerja baik di pasar yang sedang tren, tetapi dapat sering mengalami kerugian di pasar yang bergoyang.
Mekanisme Hentikan Kerugian SederhanaMeskipun strategi ini melacak kegagalan, namun tidak secara praktis menerapkan fungsi stop loss dinamis, yang dapat menyebabkan kerugian yang terlalu besar dalam situasi yang ekstrem.
Kurangnya manajemen posisiStrategi: Menggunakan posisi tetap untuk masuk dan keluar, tidak menyesuaikan ukuran posisi berdasarkan volatilitas pasar atau kekuatan sinyal, tidak dapat mengoptimalkan pemanfaatan dana.
Keterbatasan penilaian kinerjaSukses didefinisikan sebagai kenaikan harga sebesar 2%, yang mungkin tidak berlaku untuk semua kondisi pasar, dan varietas yang sangat berfluktuasi mungkin memerlukan kenaikan harga yang lebih tinggi.
Bergabung dengan Marketplace FilterIntroduksi indikator volatilitas (seperti ATR) atau indikator kekuatan tren (seperti ADX) untuk membantu mengidentifikasi kondisi pasar, mengurangi frekuensi perdagangan atau menyesuaikan parameter di pasar yang bergolak.
Parameter Adaptif: Membuat penyesuaian dinamis pada parameter SMA dan RSI, mengoptimalkan siklus dan penurunan otomatis berdasarkan kinerja pasar baru-baru ini, meningkatkan fleksibilitas strategi.
Mengoptimalkan manajemen posisiSistem alokasi posisi yang dinamis dirancang berdasarkan kekuatan sinyal (misalnya deviasi RSI), volatilitas pasar atau risiko akun, untuk mengendalikan risiko perdagangan tunggal.
Meningkatkan mekanisme penghentian kerugian: Mengimplementasikan stop loss dinamis berbasis ATR atau fitur stop loss tracking untuk mengontrol risiko setiap transaksi dengan lebih tepat.
Tambahkan waktu penyaringanPertimbangan: Mempertimbangkan faktor waktu pasar, menghindari perdagangan pada saat-saat yang tidak stabil atau saat-saat likuiditas rendah, meningkatkan kualitas sinyal.
Konfirmasi multi-siklusAnalisis multi-siklus: Menerapkan analisis multi-siklus untuk menentukan bahwa arah tren dalam periode waktu yang lebih besar sesuai dengan arah perdagangan, dan memfilter sinyal perdagangan yang berlawanan dengan tren besar.
Evaluasi Kinerja OptimasiDefinisi keberhasilan/kegagalan yang lebih baik, dengan pertimbangan untuk mengadopsi indikator penilaian yang lebih komprehensif seperti keuntungan yang disesuaikan dengan risiko atau keuntungan/rasio risiko.
Strategi pelacakan tren cross-dynamic adalah sistem perdagangan yang sederhana dan praktis, dengan mengkombinasikan indikator SMA dan RSI untuk mengkonfirmasi momentum sekaligus mengidentifikasi titik-titik pergeseran tren, dan secara efektif memfilter beberapa sinyal berkualitas rendah. Strategi ini sangat cocok untuk investor yang baru saja terlibat dalam perdagangan kuantitatif, karena dapat memberikan sinyal perdagangan yang jelas dan fitur pelacakan kinerja yang terpasang untuk membantu pedagang mengevaluasi kinerja strategi secara objektif.
Meskipun strategi ini relatif sederhana dalam desain, namun strategi ini mencerminkan prinsip-prinsip penting dalam perdagangan kuantitatif: pelacakan tren, pengakuan sinyal, dan pemantauan kinerja. Dengan arah optimasi yang disarankan, seperti penyaringan lingkungan pasar, penyesuaian parameter, dan perbaikan mekanisme penghentian kerugian, pedagang dapat secara signifikan meningkatkan kehandalan dan fleksibilitas strategi sambil mempertahankan logika inti dari strategi.
Strategi sederhana ini yang menggabungkan indikator teknis klasik seringkali lebih dapat diandalkan dan lebih kuat daripada algoritma yang lebih kompleks, terutama ketika mereka memiliki mekanisme manajemen risiko dan penilaian kinerja yang tertanam. Ini adalah titik awal yang ideal bagi para pedagang yang mencari strategi kuantitatif entry-level, yang dapat memberikan pengalaman langsung dan membangun dasar untuk pengembangan strategi selanjutnya.
/*backtest
start: 2024-07-05 00:00:00
end: 2025-02-23 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/
//@version=5
strategy("STOCKS TO BUY", overlay=true, fill_orders_on_standard_ohlc=true)
// Define 20-period SMA
sma20 = ta.sma(close, 20)
// RSI Calculation (8-period)
rsiValue = ta.rsi(close, 8)
// Buy Condition: Close crosses above 20-SMA and RSI > 60
buyCondition = ta.crossover(close, sma20) and rsiValue > 60
// Sell Condition: Close crosses below 20-SMA and RSI < 40
sellCondition = ta.crossunder(close, sma20) and rsiValue < 40
// Tracking Performance Metrics
var int totalSignals = 0 // Total number of 'B' signals
var int successCount = 0 // Times price rose >2% from 'B' candle close
var int failureCount = 0 // Times price fell below 'B' candle low within 7 bars
// Store entry price and low when signal occurs
var float entryPrice = na
var float entryLow = na
var int barCounter = na // Bar counter for tracking 7-candle window
if buyCondition
strategy.entry("Buy", strategy.long)
totalSignals := totalSignals + 1 // Increment 'B' count
entryPrice := close
entryLow := low
barCounter := 0 // Reset counter when new 'B' signal appears
if sellCondition
strategy.close("Buy") // Close the buy position on sell signal
// Monitor for 7 candles only
if not na(barCounter)
barCounter := barCounter + 1
// Check for Success (Price rises >2%)
success = high >= entryPrice * 1.02
if success
successCount := successCount + 1
entryPrice := na // Reset entry price after success
// Check for Failure (Price falls below entryLow within 7 candles)
failure = low < entryLow and barCounter <= 7
if failure
failureCount := failureCount + 1
entryLow := na // Reset entry low after failure
// Stop tracking after 7 candles
if barCounter > 7
barCounter := na
// Plot 'B' on chart when buy condition is met
plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="B")
// Plot 'S' on chart when sell condition is met
plotshape(series=sellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="S")
// Display Performance Metrics Table
var table performanceTable = table.new(position=position.top_right, columns=2, rows=4, bgcolor=color.gray, border_width=1)
if bar_index % 10 == 0 // Update table every 10 bars for efficiency
table.cell(performanceTable, 0, 0, "Metric", text_color=color.white, bgcolor=color.blue)
table.cell(performanceTable, 1, 0, "Value", text_color=color.white, bgcolor=color.blue)
table.cell(performanceTable, 0, 1, "Total 'B' Signals", text_color=color.white)
table.cell(performanceTable, 1, 1, str.tostring(totalSignals), text_color=color.white)
table.cell(performanceTable, 0, 2, "Price Rose >2%", text_color=color.white)
table.cell(performanceTable, 1, 2, str.tostring(successCount), text_color=color.green)
table.cell(performanceTable, 0, 3, "Price Fell Below 'B' Low (7 bars)", text_color=color.white)
table.cell(performanceTable, 1, 3, str.tostring(failureCount), text_color=color.red)