Strategi Breakout Pembalikan Rata-rata Pergerakan Ganda


Tanggal Pembuatan: 2023-12-18 10:24:08 Akhirnya memodifikasi: 2023-12-18 10:24:08
menyalin: 0 Jumlah klik: 600
1
fokus pada
1621
Pengikut

Strategi Breakout Pembalikan Rata-rata Pergerakan Ganda

Ringkasan

Strategi ini merupakan kombinasi dari strategi 123 reversal dan strategi price to median gap. Ide utama dari strategi ini adalah untuk menghasilkan sinyal perdagangan ketika 123 reversal membentuk sinyal, dan harga dan median gap pada periode yang ditentukan juga membentuk sinyal yang sesuai satu per satu.

Prinsip Strategi

Strategi terobosan reversal linear terdiri dari dua bagian:

  1. 123 Strategi Pembalasan

123 strategi reversal sinyal perdagangan adalah: dua hari berturut-turut penutupan harga reversal ((yaitu hari sebelumnya penutupan harga tinggi, hari berikutnya penutupan lebih rendah; atau hari sebelumnya penutupan rendah, hari berikutnya penutupan lebih tinggi), sementara tanggal 9 acak indikator K garis berada di bawah suatu tingkat ((default 50), sehingga membentuk sinyal beli; dua hari berturut-turut penutupan harga reversal, sementara tanggal 9 acak indikator K garis lebih tinggi dari suatu tingkat ((default 50), sehingga membentuk sinyal jual.

  1. Strategi Harga dan Jarak Rata-rata

Strategi selisih harga dengan rata-rata adalah persentase selisih harga dengan rata-rata periode yang ditentukan (default 14 hari). Sinyal beli dihasilkan ketika selisih kurang dari suatu level (default 3%), dan sinyal jual dihasilkan ketika selisih lebih besar dari suatu level (default 0.54%).

Strategi reversal breakout biner, strategi ini hanya menghasilkan sinyal perdagangan yang sebenarnya ketika sinyal perdagangan dari kedua strategi di atas berlawanan arah, yaitu ketika keduanya untuk membeli atau keduanya untuk menjual.

Analisis Keunggulan

Strategi terobosan reversal linear ganda menggabungkan keunggulan strategi reversal dan strategi tren, yang dapat dikatakan sebagai strategi yang panjang dan pendek.

123 Strategi berbalik sebagai strategi berbalik, dapat menangkap peluang berbalik ketika harga berbalik. Dan strategi selisih harga dan rata-rata sebagai strategi pelacakan tren, dapat menangkap tren di garis yang lebih panjang.

Selain itu, dengan meminta dua strategi sinyal searah, dapat secara efektif mengurangi jumlah transaksi yang tidak valid dan meningkatkan rasio bising.

Analisis risiko

Strategi terobosan berbalik dua garis sejajar, meskipun menggabungkan keuntungan dari kedua strategi tersebut, juga memiliki risiko masing-masing.

Untuk 123 bagian pembalikan, pembalikan dua hari berturut-turut tidak sepenuhnya memastikan pembalikan harga, dan mungkin merupakan pembalikan palsu yang disebabkan oleh reset jangka pendek. Selain itu, pengaturan parameter indikator acak yang tidak tepat juga dapat menyebabkan penurunan kualitas sinyal.

Untuk bagian harga dan kesenjangan rata-rata, pengaturan parameter rata-rata yang tidak tepat dapat menyebabkan sinyal tertunda. Selain itu, harga dan kesenjangan rata-rata tidak dapat menentukan arah tren, hanya dapat menghasilkan sinyal secara mekanis.

Secara keseluruhan, risiko utama dari strategi ini adalah pengaturan parameter yang tidak tepat dan kesalahan penilaian. Risiko dapat dihindari dengan mengoptimalkan parameter, mengatur stop loss, atau perdagangan intervensi buatan.

Arah optimasi

Strategi terobosan reversal linear ganda dapat dioptimalkan dalam beberapa hal:

  1. Optimalkan parameter rata-rata dan acak indikator untuk meningkatkan kualitas sinyal
  2. Menambahkan filter untuk indikator lain untuk memastikan sinyal perdagangan lebih dapat diandalkan
  3. Tambahkan pengaturan Stop Loss
  4. Menambahkan modul penilaian tren untuk menghindari transaksi yang tidak sesuai
  5. Intervensi manusia dan parameter adaptasi

Dengan menggabungkan berbagai cara, diharapkan dapat meningkatkan stabilitas dan tingkat keuntungan strategi lebih lanjut.

Meringkaskan

Strategi terobosan reversal biner menggunakan strategi reversal dan strategi tren secara komprehensif, menghasilkan sinyal perdagangan yang sebenarnya pada saat bersamaan dengan kedua strategi tersebut. Ini dapat menangkap peluang reversal harga jangka pendek dan dapat melacak tren jangka panjang, menghindari kebocoran.

Kode Sumber Strategi
/*backtest
start: 2023-12-10 00:00:00
end: 2023-12-17 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 13/04/2021
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// Percent difference between price and MA
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos


DBP_MA(Length,SellZone,BuyZone) =>
    pos = 0.0
    xSMA = sma(close, Length)
    nRes = abs(close - xSMA) * 100 / close
    pos:= iff(nRes < BuyZone, 1,
           iff(nRes > SellZone, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Difference between price and MA", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Difference between price and MA ----")
LengthDBP = input(14, minval=1)
SellZone = input(0.54, minval=0.01, step = 0.01)
BuyZone = input(0.03, minval=0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posDBP_MA = DBP_MA(LengthDBP,SellZone,BuyZone)
pos = iff(posReversal123 == 1 and posDBP_MA == 1 , 1,
	   iff(posReversal123 == -1 and posDBP_MA == -1, -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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )