Camarilla Pivot Points Strategy Berdasarkan Bollinger Bands

Penulis:ChaoZhang, Tarikh: 2024-02-05 14:23:59
Tag:

img

Ringkasan

Strategi ini mula-mula mengira titik-titik pusingan Camarilla berdasarkan harga tertinggi, harga terendah dan harga penutupan hari dagangan sebelumnya. Ia kemudian menapis harga dengan penunjuk Bollinger Bands untuk menjana isyarat dagangan apabila harga memecahkan titik-titik pusingan.

Logika Strategi

  1. Mengira harga tertinggi, harga terendah dan harga penutupan hari dagangan sebelumnya
  2. Mengira garis pivot Camarilla termasuk landasan atas H4, H3, H2, H1 dan landasan bawah L1, L2, L3, L4 mengikut formula
  3. Mengira Bollinger Bands 20 hari band atas dan band bawah
  4. Pergi panjang apabila harga melanggar band bawah, pergi pendek apabila harga melanggar band atas
  5. Set stop loss berhampiran Bollinger Bands band atas atau bawah

Analisis Kelebihan

  1. Garis pivot Camarilla mengandungi pelbagai tahap sokongan dan rintangan utama untuk meningkatkan kebolehpercayaan isyarat perdagangan
  2. Menggabungkan dengan Bollinger Bands berkesan menapis pecah palsu
  3. Gabungan pelbagai parameter menjadikan perdagangan fleksibel

Analisis Risiko

  1. Tetapan parameter Bollinger Bands yang tidak betul boleh menyebabkan isyarat dagangan yang salah
  2. Titik-titik pusat Camarilla bergantung pada harga hari dagangan sebelumnya, mungkin dipengaruhi oleh jurang semalam
  3. Kedua-dua kedudukan panjang dan pendek membawa risiko kerugian

Arahan pengoptimuman

  1. Mengoptimumkan parameter Bollinger Bands untuk mencari kombinasi terbaik
  2. Tambah penunjuk lain untuk menapis isyarat pecah palsu
  3. Meningkatkan strategi stop loss untuk mengurangkan kerugian tunggal

Ringkasan

Strategi ini menggabungkan garis-garis pivot Camarilla dan Bollinger Bands, menghasilkan isyarat dagangan apabila harga memecahkan tahap sokongan dan rintangan utama. Keuntungan dan kestabilan strategi dapat ditingkatkan melalui pengoptimuman parameter dan penapisan isyarat. Secara keseluruhan, strategi ini mempunyai logika dagangan yang jelas dan kebolehoperasian yang tinggi, bernilai pengesahan dagangan langsung.


/*backtest
start: 2024-01-28 00:00:00
end: 2024-02-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/05/2020
// Camarilla pivot point formula is the refined form of existing classic pivot point formula. 
// The Camarilla method was developed by Nick Stott who was a very successful bond trader. 
// What makes it better is the use of Fibonacci numbers in calculation of levels.
//
// Camarilla equations are used to calculate intraday support and resistance levels using 
// the previous days volatility spread. Camarilla equations take previous day’s high, low and 
// close as input and generates 8 levels of intraday support and resistance based on pivot points. 
// There are 4 levels above pivot point and 4 levels below pivot points. The most important levels 
// are L3 L4 and H3 H4. H3 and L3 are the levels to go against the trend with stop loss around H4 or L4 . 
// While L4 and H4 are considered as breakout levels when these levels are breached its time to 
// trade with the trend.
//
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Camarilla Pivot Points V2 Backtest", shorttitle="CPP V2", overlay = true)
res = input(title="Resolution", type=input.resolution, defval="D")
width = input(1, minval=1)
SellFrom = input(title="Sell from ", defval="R1", options=["R1", "R2", "R3", "R4"])
BuyFrom = input(title="Buu from ", defval="S1", options=["S1", "S2", "S3", "S4"])
reverse = input(false, title="Trade reverse")
xHigh  = security(syminfo.tickerid,res, high)
xLow   = security(syminfo.tickerid,res, low)
xClose = security(syminfo.tickerid,res, close)
H4 = (0.55*(xHigh-xLow)) + xClose
H3 = (0.275*(xHigh-xLow)) + xClose
H2 = (0.183*(xHigh-xLow)) + xClose
H1 = (0.0916*(xHigh-xLow)) + xClose
L1 = xClose - (0.0916*(xHigh-xLow))
L2 = xClose - (0.183*(xHigh-xLow))
L3 = xClose - (0.275*(xHigh-xLow))
L4 = xClose - (0.55*(xHigh-xLow))
pos = 0
S = iff(BuyFrom == "S1", H1, 
      iff(BuyFrom == "S2", H2,
       iff(BuyFrom == "S3", H3,
         iff(BuyFrom == "S4", H4,0))))
B = iff(SellFrom == "R1", L1, 
      iff(SellFrom == "R2", L2,
       iff(SellFrom == "R3", L3,
         iff(SellFrom == "R4", L4,0))))
pos := iff(close > B, 1,
       iff(close < S, -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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )

Lebih lanjut