Ini adalah sistem titik keseimbangan trend asli yang dicipta oleh Welles Wilder pada tahun 1978, dan peraturan perdagangan dapat dijumpai dalam buku-bukunya Konsep baru Sistem Analisis Teknikal. Sistem ini menggunakan indikator momentum untuk mengenal pasti trend dan menetapkan stop loss dengan cara tertentu, membentuk sistem pengesanan trend yang lebih mantap.
Komponen utama strategi dan peraturan perdagangan adalah seperti berikut:
Penunjuk momentum: mengira perubahan harga penutupan N kitaran, menilai trend harga.
Buat banyak syarat: nilai momentum meningkat secara berturut-turut dalam kitaran semasa dan dua kitaran terakhir.
Keadaan kosong: Nilai momentum turun secara berturut-turut dalam kitaran semasa dan dua kitaran terakhir.
Stop loss: purata hari sebelumnya + julat pergerakan hari sebelumnya.
Titik berhenti: 2 kali ganda harga purata hari sebelumnya - harga terendah ((buat lebih) atau 2 kali ganda harga purata - harga tertinggi ((buat kosong)
Selepas masuk, keluar dengan harga stop loss atau stop loss.
Strategi ini mudah dan langsung, menggunakan momentum untuk menentukan arah trend, dan mengawal risiko dengan cara menghentikan dan menghentikan kerugian tertentu, membentuk sistem pengesanan trend yang lebih mantap.
Strategi ini mempunyai kelebihan utama berbanding strategi trend-following yang lain:
Pengiraan Indeks Kinetik adalah mudah dan mudah dilaksanakan.
Penghakiman kombinasi pelbagai kitaran, boleh menapis bunyi bising.
Sistem penghentian kerosakan adalah lebih mantap.
Anda boleh hadkan jumlah kerugian.
“Saya tidak tahu apa yang akan berlaku selepas ini, saya tidak tahu apa yang akan berlaku selepas ini.
Ia tidak sukar untuk dilaksanakan dan boleh digunakan secara fleksibel.
Parameter boleh disesuaikan untuk pasaran yang berbeza.
Strategi mudah difahami.
Secara keseluruhannya, kestabilan dan kawalan risiko yang lebih baik.
Tetapi strategi ini juga mempunyai risiko:
Indeks momentum terlewat dan mungkin terlepas giliran utama.
Kesan bergantung kepada tahap pengoptimuman parameter.
Tidak mengambil kira jumlah transaksi, terdapat risiko terhad.
Penghentian kerosakan ditetapkan secara sewenang-wenangnya dan mungkin dijangka gagal.
Tempoh pengesanan yang lebih pendek memerlukan kebolehpercayaan jangka panjang.
Operasi kedudukan tetap, tidak boleh disesuaikan secara dinamik.
Ruang untuk pengoptimuman adalah terhad, dan keuntungan tambahan adalah tidak pasti.
Perhatian perlu diberikan kepada kadar penarikan balik pendapatan untuk mengelakkan overmatching.
Berdasarkan analisis di atas, strategi ini boleh dioptimumkan dalam dimensi berikut:
Cuba cara yang berbeza untuk mengira tenaga.
Sertakan pengesahan jumlah transaksi.
Optimumkan parameter Stop Loss Stop.
Memperkenalkan pembelajaran mesin untuk menghasilkan isyarat dinamik.
Penilaian ketahanan pelbagai jenis dan pelbagai kitaran.
Membina model pengurusan kedudukan dinamik.
Tetapkan toleransi maksimum untuk penarikan balik
Strategi pengurusan wang yang dioptimumkan
Ujian semula berterusan untuk mengelakkan pengoptimuman berlebihan.
Strategi ini secara keseluruhannya merupakan satu set sistem pemantauan trend yang agak mudah dan langsung. Tetapi strategi apa pun memerlukan pengoptimuman dan pengesahan yang berterusan untuk mengekalkan kesesuaian dengan pasaran. Dengan kerja yang sistematik, anda dapat meningkatkan keberkesanan dan kestabilan strategi.
/*backtest
start: 2023-09-15 00:00:00
end: 2023-09-22 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © 2020 X-Trader.net
//@version=3
strategy("Trend Balance Point System by Welles Wilder", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, initial_capital = 10000)
MomPer = input(2, "Momentum Period")
isLong = strategy.position_size > 0
isShort = strategy.position_size < 0
longTrigger = mom(close, MomPer)[1] > mom(close, MomPer)[2] and mom(close, MomPer)[1] > mom(close, MomPer)[3]
shortTrigger = mom(close, MomPer)[1] < mom(close, MomPer)[2] and mom(close, MomPer)[1] < mom(close, MomPer)[3]
longEntry = (not isLong) and longTrigger
shortEntry = (not isShort) and shortTrigger
longStop = valuewhen(longEntry, ((high[1]+low[1]+close[1])/3 - (high[1]-low[1])), 0)
longTP = valuewhen(longEntry, (2*(high[1]+low[1]+close[1])/3 - low[1]), 0)
shortStop = valuewhen(shortEntry, ((high[1]+low[1]+close[1])/3 + (high[1]-low[1])), 0)
shortTP = valuewhen(shortEntry, (2*(high[1]+low[1]+close[1])/3 - high[1]), 0)
strategy.entry(id = "Long", long = true, when = longEntry)
strategy.exit("Exit Long", "Long", profit = longTP, loss = longStop, when = isLong)
strategy.entry(id = "Short", long = false, when = shortEntry)
strategy.exit("Exit Short", "Short", profit = shortTP, loss = shortStop, when = isShort)