
Strategi ini adalah sistem perdagangan berdasarkan prinsip dua persilangan garis rata dan regresi rata-rata, digabungkan dengan mekanisme kawalan risiko dinamik. Strategi ini menggunakan persilangan purata bergerak sederhana ((SMA) yang cepat dan perlahan untuk menghasilkan isyarat perdagangan, sambil menggunakan purata jangkauan sebenar (ATR) untuk menetapkan stop loss dinamik, untuk mengawal risiko setiap perdagangan dengan tepat.
Penjanaan isyarat:
Kawalan risiko:
Pelaksanaan transaksi:
Untuk dilihat:
Gabungan trend-following dan averaging regression: Dengan menggunakan sistem dua garis rata, strategi dapat menangkap trend jangka panjang dan bertindak balas terhadap turun naik harga jangka pendek, untuk mencapai keseimbangan antara trend-following dan averaging regression.
Kawalan risiko dinamik: Menggunakan stop loss dinamik berasaskan ATR, membolehkan tahap stop loss disesuaikan secara automatik mengikut turun naik pasaran, memberikan pengurusan risiko yang lebih tepat.
Sederhana dan berkesan: Logik strategi jelas, mudah difahami dan dilaksanakan, tetapi mengandungi kerumitan yang mencukupi untuk menangani keadaan pasaran yang berbeza.
Sokongan visual: Membantu peniaga memahami dan menilai prestasi strategi dengan lebih baik dengan memaparkan isyarat perdagangan dan purata bergerak secara langsung di carta.
Parameter yang boleh disesuaikan: membolehkan pengguna menyesuaikan parameter utama, seperti kitaran purata bergerak dan peratusan risiko, berdasarkan pilihan risiko peribadi dan ciri-ciri pasaran.
Risiko Penembusan Palsu: Dalam pasaran berlawanan arah, harga mungkin sering melintasi garis purata, menyebabkan terlalu banyak isyarat palsu dan perdagangan yang tidak perlu.
Lagging: Kerana penggunaan purata bergerak, strategi mungkin terlewat dalam bertindak balas pada titik-titik perubahan trend, yang menyebabkan masa masuk atau keluar tidak mencukupi.
Terlalu banyak dagangan: Dalam pasaran yang sangat tidak menentu, terlalu banyak isyarat dagangan boleh dihasilkan dan meningkatkan kos dagangan.
Batasan peratusan risiko tetap: Walaupun menggunakan penyesuaian hentian dinamik ATR, peratusan risiko tetap mungkin tidak berlaku untuk semua keadaan pasaran.
Kurangnya sasaran keuntungan: Strategi hanya bergantung pada persimpangan rata untuk melonggarkan kedudukan, yang boleh menyebabkan keluar awal dalam trend yang kuat, kehilangan lebih banyak potensi keuntungan.
Memperkenalkan penapis trend: Anda boleh menambah indikator trend jangka panjang (seperti garis purata 200 hari) untuk menapis isyarat perdagangan, hanya berdagang di arah trend utama, mengurangkan pecah palsu.
Optimumkan masa masuk: Pertimbangkan untuk menggabungkan dengan petunjuk teknikal lain (seperti RSI atau MACD) untuk mengesahkan isyarat masuk dan meningkatkan ketepatan perdagangan.
Parameter risiko penyesuaian dinamik: Peratusan risiko yang boleh disesuaikan secara dinamik berdasarkan turun naik pasaran atau indikator keadaan pasaran lain, menjadikan pengurusan risiko lebih fleksibel.
Menambah sasaran keuntungan: menetapkan sasaran keuntungan dinamik berdasarkan ATR atau nisbah tetap, yang membolehkan ruang keuntungan yang lebih besar apabila trendnya kuat.
Mempunyai mekanisme penutupan separa: melaksanakan penutupan separa apabila mencapai tahap keuntungan tertentu, dapat mengunci sebahagian keuntungan dan membiarkan kedudukan yang tersisa terus mendapat keuntungan.
Mengoptimumkan kitaran purata: anda boleh mencari tetapan parameter yang lebih sesuai untuk pasaran tertentu dengan mengkaji semula kombinasi kitaran purata yang berbeza.
Menambah penapis jumlah transaksi: Pertimbangkan untuk memasukkan indikator jumlah transaksi ke dalam proses penjanaan isyarat untuk meningkatkan kebolehpercayaan isyarat.
Strategi pengembalian nilai rata-rata dua garis dengan kawalan risiko adalah sistem perdagangan yang menggabungkan trend dan pengurusan risiko. Dengan menggunakan persilangan rata-rata bergerak cepat dan perlahan untuk menangkap pergerakan pasaran, strategi ini mewujudkan kawalan yang tepat terhadap risiko setiap perdagangan.
Walau bagaimanapun, strategi ini juga mempunyai beberapa batasan, seperti risiko penembusan palsu, kelewatan isyarat dan kemungkinan perdagangan berlebihan. Dengan cara memperkenalkan penapis trend, mengoptimumkan masa masuk, menyesuaikan parameter risiko secara dinamik, strategi ini masih mempunyai ruang pengoptimuman yang besar. Peningkatan masa depan dapat tertumpu pada peningkatan kualiti isyarat, pengendalian risiko yang optimum dan peningkatan mekanisme pengurusan keuntungan.
Secara keseluruhannya, strategi ini menyediakan kerangka asas yang kukuh untuk perdagangan kuantitatif, dengan skalabiliti dan kesesuaian yang baik. Dengan pengoptimuman dan penyesuaian yang berterusan, ia berpotensi menjadi sistem perdagangan yang kuat dan boleh dipercayai untuk pelbagai persekitaran pasaran dan jenis perdagangan.
/*backtest
start: 2023-07-23 00:00:00
end: 2024-07-28 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy('TAMMY V2')
// Define the parameters
fast_len = input.int(14, minval=1, title='Fast SMA Length')
slow_len = input.int(100, minval=1, title='Slow SMA Length')
risk_per_trade = input.float(2.0, minval=0.1, maxval=10.0, step=0.1, title='Risk Per Trade (%)')
// Calculate the moving averages
fast_sma = ta.sma(close, fast_len)
slow_sma = ta.sma(close, slow_len)
// Generate the trading signals
buy_signal = ta.crossover(close, slow_sma)
sell_signal = ta.crossunder(close, fast_sma)
// Calculate the stop loss level
atr = ta.sma(ta.tr, 10)
sl = close - atr * (risk_per_trade / 100)
// Execute the trades
if buy_signal
strategy.entry('Long', strategy.long, stop=sl)
if sell_signal
strategy.close_all()
// Plot the signals and price
plot(close, color=color.new(#808080, 0), linewidth=2, title='Gold Price')
plot(fast_sma, color=color.new(#FF0000, 0), linewidth=2, title='Fast SMA')
plot(slow_sma, color=color.new(#0000FF, 0), linewidth=2, title='Slow SMA')
plotshape(buy_signal, style=shape.triangleup, color=color.new(#0000FF, 0), size=size.small, title='Buy Signal')
plotshape(sell_signal, style=shape.triangledown, color=color.new(#FF0000, 0), size=size.small, title='Sell Signal')