
Strategi ini menggabungkan moving averages dan random indicators untuk mewujudkan sistem perdagangan saham otomatis. Ini menggunakan dua moving averages dengan panjang yang berbeda dan indikator acak untuk menangkap sinyal overbought dan oversold, dan melakukan perdagangan berdasarkan arah tren dan sinyal indikator overbought dan oversold.
Gunakan garis cepat ((5th line) dan garis lambat ((20th line) dua rata-rata bergerak. Ketika garis cepat melewati garis lambat sebagai sinyal beli, garis bawah sebagai sinyal jual. Fungsi rata-rata bergerak adalah menentukan tren dan arah harga.
Indikator acak memiliki parameter seperti: K-line cycle 14, K-line smoothing cycle 3, D-line smoothing cycle 3. K-line di bawah 20 adalah zona oversold, di atas 80 adalah zona oversold. Indikator acak berfungsi untuk menentukan apakah Anda berada di zona oversold atau oversold.
Kondisi pembelian: Jalur cepat melalui jalur lambat dan jalur K <20 (daerah oversold) Kondisi jual: cepat di bawah garis melalui garis lambat and K garis> 80 ((over buy area)
Ketika memenuhi syarat untuk membeli, membeli lebih banyak; jika memenuhi syarat untuk menjual, menjual lebih sedikit.
Stop loss 1% setelah pembelian; Stop loss 1% setelah penjualan.
Strategi ini menggabungkan tren dan indikator, yang dapat secara efektif menangkap tren garis tengah dan panjang harga, dan menggunakan indikator acak untuk mengontrol waktu pembelian dan penjualan, menghindari operasi jual beli sewenang-wenang tanpa arah yang jelas. Parameter strategi dapat disesuaikan dengan ruang yang luas, dapat disesuaikan dengan lingkungan pasar yang berbeda.
Jika terjadi situasi yang sangat dramatis akibat berita yang sangat besar, kemungkinan akan membawa kerugian yang lebih besar. Anda dapat mengatur stop loss untuk mengendalikan risiko.
Jika terjadi pasar yang terus-menerus melakukan penyusunan horizontal, kemungkinan akan menimbulkan kerugian kecil secara berturut-turut. Parameter siklus rata-rata bergerak dapat disesuaikan dengan tepat untuk mengurangi kerugian.
Perlu berhati-hati untuk menghindari saat-saat penting di pasar saham, karena harga cenderung berbalik dan menyebabkan perdagangan yang salah.
Anda dapat menguji kombinasi parameter yang berbeda untuk menemukan kombinasi parameter yang optimal. Misalnya, Anda dapat menguji kombinasi rata-rata bergerak dengan panjang yang berbeda.
Hal ini dapat dikombinasikan dengan alat analisis lainnya, seperti volume transaksi, volatilitas, dan lain-lain untuk mengatur kondisi penyaringan dan meningkatkan profitabilitas strategi.
Anda dapat mempelajari mekanisme pilihan saham, memilih saham berprestasi atau indeks berat, dan lain-lain, untuk mengurangi risiko.
Strategi ini bekerja dengan baik secara keseluruhan, setelah menetapkan kondisi stop loss dan stop loss, hasil keuntungan dan kerugian secara keseluruhan baik. Efeknya dapat ditingkatkan lebih lanjut dengan pengaturan parameter dan pengoptimalan pemilihan kolam saham. Secara keseluruhan, ini adalah strategi perdagangan kuantitatif yang stabil dan mudah diterapkan.
/*backtest
start: 2024-01-25 00:00:00
end: 2024-02-01 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Moving Average and Stochastic Strategy 80% ", overlay=true)
// Moving Average Settings
maShortLength = input(5, title="Short MA Length")
maLongLength = input(20, title="Long MA Length")
// Stochastic Settings
stochLength = input(14, title="Stochastic Length")
smoothK = input(3, title="Stochastic %K")
smoothD = input(3, title="Stochastic %D")
stochOverbought = 80
stochOversold = 20
// Profit Target Settings
profitTarget = input(1, title="Profit Target (%)") // 1% profit target
// Calculate Moving Averages
maShort = sma(close, maShortLength)
maLong = sma(close, maLongLength)
// Calculate Stochastic
k = sma(stoch(close, high, low, stochLength), smoothK)
d = sma(k, smoothD)
// Entry Conditions
longConditionMA = crossover(maShort, maLong) and k < stochOversold
shortConditionMA = crossunder(maShort, maLong) and k > stochOverbought
// Opposite Conditions
oppositeLongConditionMA = crossunder(maShort, maLong) and k < stochOversold
oppositeShortConditionMA = crossover(maShort, maLong) and k > stochOverbought
// Strategy Logic
if (longConditionMA)
strategy.entry("Buy", strategy.long)
strategy.exit("Exit Buy", "Buy", profit=close * (50 + profitTarget / 100))
if (shortConditionMA)
strategy.entry("Sell", strategy.short)
strategy.exit("Exit Sell", "Sell", profit=close * (20 - profitTarget / 100))
// Opposite Strategy Logic
if (oppositeLongConditionMA)
strategy.entry("Sell", strategy.short)
strategy.exit("Exit Sell", "Sell", profit=close * (50 - profitTarget / 100))
if (oppositeShortConditionMA)
strategy.entry("Buy", strategy.long)
strategy.exit("Exit Buy", "Buy", profit=close * (20 + profitTarget / 100))
// Plot Moving Averages
plot(maShort, color=color.blue, title="Short MA")
plot(maLong, color=color.red, title="Long MA")
// Plot Stochastic
hline(stochOverbought, "Overbought", color=color.red)
hline(stochOversold, "Oversold", color=color.green)
plot(k, color=color.black, title="Stochastic %K")