
Strategi ini menggunakan tiga indikator TEMA, VWMACD dan HMA untuk menangkap pergerakan turun Bitcoin. Logik utamanya adalah untuk melakukan penembusan kosong apabila harga berada di bawah garis 0 pada VWMACD, di bawah garis HMA rata-rata, dan garis pendek TEMA di bawah garis panjang TEMA.
Mulakan dengan mengira VWMACD (perbezaan antara VWMACD dan MACD biasa hanya dengan cara yang berbeza untuk mengira purata bergerak) dan lukisnya sebagai carta tiang. Kemudian tambahkan HMA sebagai penapis trend. Kemudian buat dan tambahkan garis pantas TEMA (peringkat 5) dan garis perlahan TEMA (peringkat 8) dan kira perbezaan antara keduanya.
Peraturan kemasukan khusus adalah: kosongkan apabila VWMACD lebih rendah daripada 0 dan harga lebih rendah daripada HMA dan TEMA garis cepat lebih rendah daripada TEMA garis perlahan.
Peraturan keluar yang spesifik ialah: apabila VWMACD melalui 0 sumbu, harga lebih tinggi daripada garis purata HMA atau garis cepat TEMA melalui garis perlahan TEMA.
Strategi ini menggunakan gabungan VWMACD, HMA dan TEMA yang cepat, Ziel dalam menangkap pergerakan penurunan Bitcoin dalam jangka pendek. Kelebihannya adalah isyarat yang lebih dipercayai, sesuai untuk perdagangan frekuensi tinggi. Tetapi ada juga risiko yang rumit untuk menyesuaikan parameter, mudah diganggu oleh gangguan bunyi dan sebagainya. Dengan terus mengoptimumkan kombinasi parameter, menambah petunjuk tambahan, dan sebagainya, anda dapat menjadikan strategi lebih stabil dan boleh dipercayai.
/*backtest
start: 2022-11-08 00:00:00
end: 2023-11-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="TEMA_HMA_VWMACD short strategy", shorttitle="Short strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.018, currency='USD')
startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0)
end = timestamp(9999,1,1,0,0)
_testPeriod() =>
iff(time >= startP and time <= end, true, false)
slow = input(13, "Short period")
fast = input(21, "Long period")
signal = input(5, "Smoothing period")
Fast = ema( volume * close, fast ) / ema( volume, fast )
Slow = ema( volume * close, slow ) / ema( volume, slow )
Macd = Slow - Fast
Signal = ema(Macd, signal)
Hist=Macd-Signal
plot(Hist, color=color.silver, linewidth=1, style=plot.style_histogram)
plot(0, color=color.red)
length = input(400, minval=1, title = "HMA")
hullma = wma(2*wma(close, length/2)-wma(close, length), floor(sqrt(length)))
tema_length_1 = input(5, "Fast moving TEMA")
tema_length_2 = input(8, "Slow moving TEMA")
tema(sec, length)=>
tema1= ema(sec, length)
tema2= ema(tema1, length)
tema3= ema(tema2, length)
tema = 3*tema1-3*tema2+tema3
tema1 = tema(hlc3, tema_length_1)
tema2 = tema(hlc3, tema_length_2)
threshold = 0
tm = tema1 - tema2
plot_fast = plot(tm, color = tm > 0 ? color.green : color.red)
plot(threshold, color=color.purple)
up = crossover(tm, 0)
down = crossunder(tm, 0)
longCondition = (Hist < 0) and hullma > close and (tema1 < tema2) and _testPeriod()
strategy.entry('BUY', strategy.short, when=longCondition)
shortCondition = (Hist > 0) or hullma < close or up
strategy.close('BUY', when=shortCondition)
// Take profit
tp = input(1, type=input.float, title='Take Profit (%)')
sl = input(4, type=input.float, title='Stop Loss (%)')
strategy.exit('XLong', from_entry='BUY', profit=(close * (tp/100) * (1/syminfo.mintick)), loss=(close * (sl/100) * (1/syminfo.mintick)))