
Strategi ini didasarkan pada indikator deviasi harga, yang digabungkan dengan area Fibonacci retracement, untuk mengidentifikasi dan melacak tren. Ketika harga menyimpang dari satu arah, maka dapat dianggap sebagai tren, sehingga menghasilkan sinyal perdagangan.
Strategi ini menggunakan VWAP sebagai sumbu tengah harga. Kemudian, berdasarkan volatilitas harga, band deflection harga dihitung masing-masing 1,618 kali dan 2,618 kali selisih standar.
Sinyal EXIT stop loss setelah melakukan over-take adalah: stop loss line down, stop loss line up.
Secara khusus, langkah-langkahnya adalah:
Perhitungan VWAP sebagai sumbu tengah harga
Perhitungan perbedaan standar harga sd sebagai ukuran volatilitas harga
Perhitungan atas dan bawah rel berdasarkan sd: rel atas adalah VWAP + 1.618*sd dan VWAP + 2.618*sd; rel bawah adalah VWAP - 1.618*sd dan VWAP - 2.618*sd
Ketika harga dari bawah ke atas menerobos 1.618 kali downtrend, menghasilkan sinyal do-plus; ketika harga dari atas ke bawah menerobos 1.618 kali uptrend, menghasilkan sinyal do-gap
melakukan stop loss EXIT: harga menembus 2.618 kali down; melakukan stop loss EXIT: harga menembus 2.618 kali up
Strategi ini memiliki keuntungan sebagai berikut:
Menggunakan indikator deviasi harga untuk menilai dan melacak tren harga secara efektif
Kombinasi dengan area Fibonacci retracement untuk membuat entrada entry dan stop loss exit lebih jelas
VWAP sebagai sumbu tengah harga, juga meningkatkan nilai acuan indikator
Dengan penyesuaian parameter, dapat disesuaikan dengan varietas dan siklus yang berbeda
Strategi ini juga memiliki beberapa risiko:
Jika tren berbalik, kemungkinan kerugian yang lebih besar
Setelan parameter yang tidak tepat juga dapat mempengaruhi efek kebijakan
Risiko Stop Loss Lebih Besar Saat Harga Berfluktuasi
Tanggapan:
Mempersingkat periode kepemilikan dengan tepat, dan menghentikan kerugian tepat waktu
Optimalkan parameter, cari kombinasi parameter terbaik
Meningkatkan Manajemen Posisi dan Mengontrol Kerugian Tunggal
Strategi ini juga dapat dioptimalkan dari beberapa arah:
Menggunakan indikator tren untuk menghindari perdagangan berlawanan arah
Mendaftar ke mekanisme manajemen posisi
Pengaturan Parameter Optimasi
Optimalisasi pengembalian data pada periode waktu yang berbeda
Strategi ini didasarkan pada pemikiran deviasi harga, yang digabungkan dengan VWAP dan Fibonacci standar area selisih ganda, untuk mengidentifikasi dan melacak tren. Penghakiman strategi ini lebih jelas dan pengendalian risiko lebih jelas dibandingkan dengan indikator seperti garis rata-rata yang digunakan secara tunggal.
/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Mysteriown
//@version=4
strategy(title="VWAP + Fibo Dev Extensions Strategy", overlay=true, pyramiding=5, commission_value=0.08)
// -------------------------------------
// ------- Inputs Fibos Values ---------
// -------------------------------------
fib1 = input(title="Fibo extension 1", type=input.float, defval=1.618)
fib2 = input(title="Fibo extension 2", type=input.float, defval=2.618)
reso = input(title="Resolution VWAP", type=input.resolution, defval="W")
dev = input(title="Deviation value min.", type=input.integer, defval=150)
// -------------------------------------
// -------- VWAP Calculations ----------
// -------------------------------------
t = time(reso)
debut = na(t[1]) or t > t[1]
addsource = hlc3 * volume
addvol = volume
addsource := debut ? addsource : addsource + addsource[1]
addvol := debut ? addvol : addvol + addvol[1]
VWAP = addsource / addvol
sn = 0.0
sn := debut ? sn : sn[1] + volume * (hlc3 - VWAP[1]) * (hlc3 - VWAP)
sd = sqrt(sn / addvol)
Fibp2 = VWAP + fib2 * sd
Fibp1 = VWAP + fib1 * sd
Fibm1 = VWAP - fib1 * sd
Fibm2 = VWAP - fib2 * sd
// -------------------------------------
// -------------- Plots ----------------
// -------------------------------------
plot(VWAP, title="VWAP", color=color.orange)
pFibp2 = plot(Fibp2, color=color.red)
pFibp1 = plot(Fibp1, color=color.red)
pFibm1 = plot(Fibm1, color=color.lime)
pFibm2 = plot(Fibm2, color=color.lime)
fill(pFibp2,pFibp1, color.red)
fill(pFibm2,pFibm1, color.lime)
// -------------------------------------
// ------------ Positions --------------
// -------------------------------------
bull = crossunder(low[1],Fibm1[1]) and low[1]>=Fibm2[1] and low>Fibm2 and low<Fibm1 and sd>dev
bear = crossover(high[1],Fibp1[1]) and high[1]<=Fibp2[1] and high<Fibp2 and high>Fibp1 and sd>dev
//plotshape(bear, title='Bear', style=shape.triangledown, location=location.abovebar, color=color.red, offset=0)
//plotshape(bull, title='Bull', style=shape.triangleup, location=location.belowbar, color=color.green, offset=0)
// -------------------------------------
// --------- Strategy Orders -----------
// -------------------------------------
strategy.entry("Long", true, when = bull)
strategy.close("Long", when = crossover(high,VWAP) or crossunder(low,Fibm2))
strategy.entry("Short", false, when = bear)
strategy.close("Short", when = crossunder(low,VWAP) or crossover(high,Fibp2))