Strategi Pengesanan Trend Berasaskan Penyimpangan

Penulis:ChaoZhang, Tarikh: 2024-01-22 11:51:28
Tag:

img

Ringkasan

Strategi ini mengenal pasti dan mengesan trend berdasarkan penunjuk penyimpangan harga yang digabungkan dengan kawasan retracement Fibonacci. Isyarat perdagangan dihasilkan apabila harga menyimpang lebih jauh dari satu arah.

Logika Strategi

Strategi ini menggunakan VWAP sebagai garisan titik tengah harga. Kemudian jalur atas dan bawah 1.618 dan 2.618 penyimpangan standard turun naik harga dikira. Isyarat panjang dihasilkan apabila harga memecahkan jalur bawah ke atas. Isyarat pendek dihasilkan apabila harga memecahkan jalur atas ke bawah.

Isyarat stop loss EXIT selepas membuka kedudukan panjang atau pendek adalah: garis stop loss untuk kedudukan panjang adalah jalur bawah, dan untuk kedudukan pendek adalah jalur atas.

Secara khusus, ia melibatkan langkah-langkah berikut:

  1. Mengira VWAP sebagai garisan titik tengah harga

  2. Mengira penyimpangan standard sd harga sebagai penunjuk turun naik harga

  3. Mengira jalur atas dan bawah berdasarkan sd. Band atas adalah VWAP + 1.618sd dan VWAP + 2.618Band bawah ialah VWAP - 1.618sd dan VWAP - 2.618Sd.

  4. Isyarat panjang dihasilkan apabila harga memecahkan jalur bawah 1.618 ke atas. Isyarat pendek dihasilkan apabila harga memecahkan jalur atas 1.618 ke bawah.

  5. Long stop loss EXIT: harga pecah melalui 2.618 band bawah; Short stop loss EXIT: harga pecah melalui 2.618 band atas.

Analisis Kelebihan

Strategi ini mempunyai kelebihan berikut:

  1. Penunjuk penyimpangan harga dapat menentukan trend harga dengan berkesan dan mengesan trend

  2. Kawasan retracement Fibonacci membuat pintu masuk dan stop loss keluar lebih jelas

  3. VWAP sebagai garisan titik tengah harga juga meningkatkan nilai rujukan penunjuk

  4. Parameter boleh diselaraskan untuk memenuhi produk dan jangka masa yang berbeza

Analisis Risiko

Strategi ini juga mempunyai beberapa risiko:

  1. Ia mungkin mengalami kerugian yang lebih besar semasa pembalikan trend

  2. Tetapan parameter yang tidak betul juga boleh mempengaruhi prestasi strategi

  3. Terdapat risiko stop loss yang lebih tinggi semasa turun naik harga yang ganas

Tindakan balas:

  1. Memendekkan tempoh pegangan dan menghentikan kerugian tepat pada masanya

  2. Mengoptimumkan parameter untuk mencari kombinasi parameter terbaik

  3. Meningkatkan pengurusan saiz kedudukan untuk mengawal kerugian tunggal

Arahan pengoptimuman

Strategi ini juga boleh dioptimumkan dalam bidang berikut:

  1. Menggabungkan penunjuk trend untuk mengelakkan perdagangan kontra-trend

  2. Tambah mekanisme pengurusan saiz kedudukan

  3. Mengoptimumkan tetapan parameter

  4. Uji balik dan optimumkan dalam pelbagai jangka masa

Ringkasan

Strategi ini mengenal pasti dan mengesan trend berdasarkan konsep penyimpangan harga yang digabungkan dengan VWAP dan band penyimpangan standard Fibonacci. Berbanding dengan menggunakan penunjuk tunggal seperti purata bergerak, strategi ini mempunyai penilaian dan kawalan risiko yang lebih jelas. Melalui penyesuaian parameter dan pengoptimuman, strategi dapat disesuaikan dengan produk dan jangka masa yang berbeza untuk mencapai prestasi yang lebih baik.


/*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))

Lebih lanjut