Strategi Perdagangan Ehlers Berdasarkan Transformasi Fisher


Tanggal Pembuatan: 2024-01-08 16:51:10 Akhirnya memodifikasi: 2024-01-08 16:51:10
menyalin: 0 Jumlah klik: 1009
1
fokus pada
1630
Pengikut

Strategi Perdagangan Ehlers Berdasarkan Transformasi Fisher

Ringkasan

Strategi ini didasarkan pada indikator konversi Fisher yang dirancang oleh analis teknis John Ehlers, untuk mengidentifikasi secara otomatis titik-titik pembalikan tren harga, melakukan perdagangan otomatis posisi panjang dan pendek. Kelebihannya terbesar adalah akurasi dan ketepatan waktu untuk mengidentifikasi pembalikan harga.

Prinsip Strategi

Strategi ini menggunakan rumus konversi Fisher untuk menstandarisasi harga, menghasilkan urutan harga yang mendekati distribusi Gaussian. Formula konversi Fisher adalah: y = 0,5 * ln (((1+x) / ((1-x))). Melalui konversi ini, nilai ekstrim harga dapat dikonversi menjadi peristiwa yang relatif lebih jarang.

Secara khusus, langkah-langkah strategi adalah sebagai berikut:

  1. HL2 adalah nilai rata-rata.
  2. Hitung xMaxH dan xMinL dalam periode Length;
  3. Perhitungan harga standar nValue1=(xHL2 - xMinL) / (xMaxH - xMinL) - 0.5;
  4. Proses nValue1 dengan halus, mendapatkan nValue2, mencegah pengambilan nilai ekstrem;
  5. Dengan menggunakan rumus konversi Fisher untuk nValue2, kita mendapatkan indikator konversi Fisher nFish.
  6. Bandingkan nFish dengan nilai periode sebelumnya untuk melihat apakah ada pergeseran, dan atur arah perdagangan pos;
  7. Sinyal perdagangan akan dikirimkan sesuai dengan arah pos yang ditetapkan.

Analisis Keunggulan

Keuntungan terbesar dari strategi ini adalah akurasi dan ketepatan waktu dari sinyal perdagangan. Karena urutan harga yang dihasilkan oleh konversi Fischer hampir sesuai dengan distribusi Gaussian, indikator konversi Fischer dapat dengan cepat mengidentifikasi dan bereaksi sesuai ketika harga berbalik.

Analisis risiko

Risiko terbesar dari strategi ini adalah bahwa urutan harga setelah konversi Fisher tidak selalu sesuai dengan distribusi Gaussian yang rasional. Ketika pasar mengalami fluktuasi yang tidak biasa, seperti retakan, melompat, dan sebagainya, dapat menyebabkan indikator konversi Fisher mengirimkan sinyal yang salah. Pada saat ini jika masih perdagangan mekanis, dapat menyebabkan kerugian yang lebih besar.

Untuk mengurangi risiko ini, Anda dapat mempertimbangkan untuk memfilter sinyal perdagangan dalam kombinasi dengan indikator lain, untuk menghindari tetap berdagang saat ada ketidaknormalan pasar. Atau Anda dapat menyesuaikan parameter dengan tepat, mengurangi frekuensi perdagangan dan skala kerugian tunggal.

Arah optimasi

Strategi ini dapat dioptimalkan dalam beberapa hal:

  1. Mengoptimalkan parameter Length untuk menemukan kombinasi parameter optimal dalam kondisi pasar yang berbeda;
  2. Meningkatkan mekanisme penghentian kerugian untuk membatasi kerugian tunggal;
  3. Meningkatkan penyaringan transaksi untuk menghindari kesalahan transaksi di pasar yang tidak normal;
  4. Strategi kombinasi dengan indikator lain untuk meningkatkan akurasi sinyal.

Meringkaskan

Strategi ini didasarkan pada indikator konversi Fisher yang dirancang oleh Ehlers, yang dapat dengan cepat dan akurat mengidentifikasi titik-titik reversal harga sehingga dapat menangkap peluang perdagangan tepat waktu. Kelebihannya terbesar adalah akurasi dan waktu sinyal perdagangan. Namun, ada juga risiko tertentu yang memerlukan pengoptimalan parameter dan aturan perdagangan untuk mengurangi risiko.

Kode Sumber Strategi
/*backtest
start: 2023-12-08 00:00:00
end: 2024-01-07 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version = 2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 15/12/2016
// 	Market prices do not have a Gaussian probability density function
// 	as many traders think. Their probability curve is not bell-shaped.
// 	But trader can create a nearly Gaussian PDF for prices by normalizing
// 	them or creating a normalized indicator such as the relative strength
// 	index and applying the Fisher transform. Such a transformed output 
// 	creates the peak swings as relatively rare events.
// 	Fisher transform formula is: y = 0.5 * ln ((1+x)/(1-x))
// 	The sharp turning points of these peak swings clearly and unambiguously
// 	identify price reversals in a timely manner. 
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Fisher Transform Indicator by Ehlers Backtest", shorttitle="Fisher Transform Indicator by Ehlers")
Length = input(10, minval=1)
reverse = input(false, title="Trade reverse")
xHL2 = hl2
xMaxH = highest(xHL2, Length)
xMinL = lowest(xHL2,Length)
nValue1 = 0.33 * 2 * ((xHL2 - xMinL) / (xMaxH - xMinL) - 0.5) + 0.67 * nz(nValue1[1])
nValue2 =   iff(nValue1 > .99,  .999,
	         iff(nValue1 < -.99, -.999, nValue1))
nFish = 0.5 * log((1 + nValue2) / (1 - nValue2)) + 0.5 * nz(nFish[1])
pos = iff(nFish > nz(nFish[1]), 1,
	   iff(nFish < nz(nFish[1]), -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nFish, color=green, title="Fisher")
plot(nz(nFish[1]), color=red, title="Trigger")