
Gambaran keseluruhan
Strategi ini berdasarkan teori Eliot wave, yang cuba untuk mengesan gelombang pulsa secara automatik. Ia menentukan gelombang pulsa naik dengan mencari 4 kombinasi garis K yang meningkat secara berturut-turut pada harga penutupan dan harga penutupan semasa lebih tinggi daripada harga penutupan 9 hari yang lalu. Ia menggunakan logik sebaliknya untuk menentukan gelombang pulsa turun.
Prinsip Strategi
- Tentukan jumlah kitaran kenaikan / penurunan harga penutupan berturut-turut (consclos ((default 3)) dan jumlah hari yang mana harga penutupan semasa dibandingkan dengan harga penutupan N hari sebelum (daysago ((default 9)).
- Dua pembolehubah long_cc dan short_cc digunakan untuk mencatat sama ada garis K akar konklos yang terakhir berturut-turut positif/negatif, jika berturut-turut, nilai adalah 1, jika tidak, 0。
- Bandingkan harga penutupan semasa dengan harga penutupan hari sebelum daysago, jika harga semasa lebih tinggi/rendah maka long_daysago/short_daysago adalah benar.
- Kombinasi long_cc, short_cc dengan long_daysago, short_daysago, menghasilkan isyarat long dan short.
- Lukiskan segitiga hijau dan merah yang sesuai dengan isyarat panjang dan pendek.
- Jika isyarat long muncul dan tidak ada lebih banyak kedudukan kepala pada masa ini, buka lebih banyak dan tetapkan harga hentikan kerugian sebagai isyarat K garis rendah.
- Jika isyarat pendek muncul dan tidak ada kedudukan kepala kosong pada masa ini, kosongkan dan tetapkan harga hentikan kerugian sebagai isyarat K garis tinggi.
Analisis kelebihan
- Ia dapat mengesan secara automatik denyutan dalam teori gelombang Eliot, mengurangkan kesan analisis subjektif.
- Ini adalah strategi yang boleh digunakan untuk menangkap trend yang kuat, yang biasanya disertai dengan gelombang pulsa.
- Tetapan stop loss selaras dengan trend, meningkatkan kadar keuntungan dan kerugian.
- Ini adalah peluang untuk mencari peluang masuk sebelum trend bermula.
- Parameter boleh disesuaikan, dan boleh digunakan.
Analisis risiko
- Terdapat kemungkinan bahawa terdapat penyimpangan dalam tafsiran teori gelombang, yang menyebabkan kesalahan penilaian.
- Tempoh trend tidak dapat diramalkan, dan kemungkinan stop loss yang terlalu dekat boleh menyebabkan stop loss.
- Ia boleh menyebabkan kegagalan dalam pasaran yang bergolak, yang menyebabkan dagangan yang kerap.
- Kurangnya pertimbangan dalam pengurusan kedudukan dan pengurusan dana.
Arah pengoptimuman
- Anda boleh mengoptimumkan konfigurasi konsclos dan parameter daysago dengan mengesan semula untuk meningkatkan ketepatan isyarat.
- Indikator pengesahan trend seperti MACD boleh diperkenalkan untuk mengurangkan kebisingan.
- Pertimbangkan untuk memasukkan stop loss bergerak untuk melindungi keuntungan anda dengan lebih baik.
- Jika trend masih tidak jelas, anda boleh membuat simpanan kecil, dan menambah simpanan apabila trend jelas.
- Mengendalikan kedudukan dan risiko, seperti mengehadkan peratusan dana dalam satu dagangan, menetapkan pengeluaran maksimum, dan sebagainya.
ringkaskan
Strategi ini berdasarkan teori gelombang Elliot klasik, mampu menangkap trend yang kuat, mempunyai kebolehgunaan dan potensi keuntungan tertentu. Tetapi teori gelombang itu sendiri subjektif dan definisi gelombang nadi, dan lain-lain, boleh mempengaruhi prestasi strategi. Dalam aplikasi praktikal, perhatian perlu diberikan kepada parameter pengoptimuman kedudukan, pengurusan kedudukan, mengurangkan frekuensi perdagangan dan sebagainya.
Kod sumber strategi
/*backtest
start: 2023-04-20 00:00:00
end: 2024-04-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Smollet
//@version=5
strategy("LW: 4-9 indicator", overlay = true)
consclos = input.int(3, "Consecutive close")
daysago = input.int(9, "Days ago")
var int long_cc = 0
var int short_cc = 0
long_cc := 1
short_cc := 1
for i = 1 to consclos
long_cc := close[i-1] > close[i] ? long_cc*1 : long_cc*0
short_cc := close[i-1] < close[i] ? short_cc*1 : short_cc*0
long_daysago = close > close[daysago]
short_daysago = close < close[daysago]
long = long_cc ==1 and long_daysago
short = short_cc ==1 and short_daysago
plotshape(long, style=shape.triangleup, location=location.belowbar, color=color.green)
plotshape(short, style=shape.triangledown, location=location.abovebar, color=color.red)
//Strategy code
if long and strategy.position_size <= 0
strategy.entry("Long", strategy.long)
strategy.exit("Long SL", "Long", stop = low)
if short and strategy.position_size >= 0
strategy.entry("Short", strategy.short)
strategy.exit("Short SL", "Short", stop = high)