Strategi ini menggunakan penunjuk CT TTM Squeeze untuk mengenal pasti trend harga dan menggunakan trailing stops untuk mengawal risiko.
Strategi ini menggunakan penunjuk CT TTM Squeeze untuk menentukan trend harga. Khususnya, pembolehubah berikut ditakrifkan dalam strategi:
Jika osc melintasi di atas 0, ia dipaparkan dalam warna hijau, menunjukkan panjang; jika osc melintasi di bawah 0, ia dipaparkan dalam warna merah, menunjukkan pendek.
Apabila OSC adalah positif, pergi panjang; apabila OSC adalah negatif, pergi pendek.
Strategi ini menggunakan oscillator osc untuk menentukan arah trend dan diff untuk mengukur momentum panjang / pendek. Apabila osc melintasi di atas 0, ia menandakan trend menaik, dengan itu pergi panjang. Apabila osc melintasi di bawah 0, ia menandakan trend menurun, dengan itu pergi pendek.
Strategi ini mempunyai kelebihan berikut:
Menggunakan CT TTM Squeeze untuk menentukan trend mempunyai ketepatan yang agak tinggi. CT TTM Squeeze secara komprehensif mempertimbangkan purata bergerak, Bollinger Bands dan Saluran Keltner, yang dapat mengenal pasti trend harga dengan berkesan.
Penggunaan osilator untuk menentukan isyarat panjang/pendek mengelakkan isyarat palsu di zon bukan trend.
Stop trailing digunakan untuk mengawal risiko dengan mengehadkan kerugian untuk setiap perdagangan. Strategi menetapkan stop loss tepat pada masanya selepas masuk, yang membolehkan kunci keuntungan dan mengelakkan kerugian yang berlebihan.
Strategi ini mempunyai beberapa parameter dan mudah dioptimumkan. Dengan hanya parameter panjang, ia memudahkan ujian cepat untuk mencari kombinasi parameter yang optimum.
Fungsi plot menunjukkan isyarat dengan jelas. Warna yang berbeza digunakan untuk membezakan isyarat panjang / pendek dan kekuatan, secara visual membentangkan penilaian trend.
Strategi ini juga mempunyai risiko berikut:
CT TTM Squeeze boleh menghasilkan isyarat palsu dalam keadaan pasaran tertentu, yang membawa kepada kerugian perdagangan. Ia boleh menghasilkan isyarat panjang / pendek yang tidak betul apabila harga turun naik dengan ganas.
Perbezaan dalam osilator boleh menyebabkan isyarat perdagangan yang salah. Isyarat boleh salah apabila harga telah berbalik tetapi osilator tidak berputar.
Hentian yang terlalu agresif boleh menyebabkan kerugian yang tidak perlu. Fluktuasi normal boleh mencetuskan hentian dan memaksa keluar jika tahap hentian ditetapkan terlalu dekat.
Strategi ini sesuai untuk produk yang mempunyai trend yang kuat sahaja, bukan untuk pasaran terikat julat.
Pengoptimuman berlebihan boleh menyebabkan pemasangan lengkung.
Strategi ini boleh dioptimumkan dalam aspek berikut:
Gabungkan beberapa penunjuk untuk ketepatan isyarat. Penunjuk lain seperti MACD, KDJ boleh ditambah untuk mengoptimumkan isyarat kemasukan.
Tambah modul pengoptimuman stop loss untuk berhenti yang lebih pintar.
Mengoptimumkan pengurusan wang dengan menguji pecahan tetap, formula Kelly dll. Ini dapat meningkatkan kecekapan penggunaan modal sambil memastikan risiko setiap perdagangan.
Penyesuaian parameter berdasarkan ciri produk boleh meningkatkan kecocokan strategi.
Tambah algoritma pembelajaran mesin untuk pembelajaran adaptif. Menggunakan RNN, LSTM dan lain-lain boleh meningkatkan keupayaan adaptif strategi.
Strategi ini menggunakan CT TTM Squeeze untuk menentukan arah trend, pengayun melintasi 0 sebagai isyarat kemasukan, dan berhenti di belakang untuk menguruskan risiko. Kelebihannya terletak pada ketepatan yang tinggi, pengoptimuman mudah, tetapi risiko seperti kegagalan penunjuk, berhenti terlalu ketat wujud. Penambahbaikan masa depan boleh dibuat melalui kombinasi pelbagai penunjuk, pengoptimuman berhenti, pengurusan wang dan lain-lain untuk meningkatkan prestasi.
/*backtest start: 2023-10-15 00:00:00 end: 2023-11-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("CT TTM Squeeze") length = input(title="Length", defval=20, minval=0) bband(length, mult) => sma(close, length) + mult * stdev(close, length) keltner(length, mult) => ema(close, length) + mult * ema(tr, length) // Variables e1 = (highest(high, length) + lowest(low, length)) / 2 + sma(close, length) osc = linreg(close - e1 / 2, length, 0) diff = bband(length, 2) - keltner(length, 1) osc_color = osc[1] < osc[0] ? osc[0] >= 0 ? #00ffff : #cc00cc : osc[0] >= 0 ? #009b9b : #ff9bff mid_color = diff >= 0 ? green : red // Strategy long = osc > 0 short = osc < 0 if long strategy.entry("Long", strategy.long) if short strategy.entry("Short", strategy.short) plot(osc, color=osc_color, style=histogram, linewidth=2) plot(0, color=mid_color, style=circles, linewidth=3)