
Strategi ini adalah berdasarkan laluan Camelia dan garis purata bergerak untuk menilai titik penembusan pasaran, dan seterusnya untuk trend. Strategi ini agak mudah, tetapi mempunyai kepraktisan yang kuat.
Hitung garis sokongan dan rintangan di laluan Camaleira. Termasuk garis H4, L4 dan lain-lain.
Menentukan sama ada harga menembusi garisan saluran tersebut. Sebagai contoh, harga penutupan menembusi garisan H4 dan harga bukaan lebih rendah daripada garisan H4, dianggap ada isyarat pecah.
Menambah penghakiman purata bergerak untuk mengukuhkan lagi isyarat penembusan. Sebagai contoh, EMA di bawah harga penutupan adalah beberapa penembusan.
Masuk ke dalam kedudukan berbilang kepala, menetapkan syarat berhenti dan berhenti, seperti menetapkan titik berhenti tetap, dan cara untuk mengesan berhenti.
Logik penghakiman yang sama berlaku untuk kepala kosong.
Ini adalah logik keputusan utama strategi, yang agak mudah dan mudah difahami. Dengan berhenti kehilangan secara dinamik, anda boleh terus mendapat keuntungan sehingga trend berbalik.
Strategi ini mempunyai kelebihan berikut:
Berdasarkan laluan Camaleira, sokongan dan rintangan yang berpotensi dapat dijumpai dengan tepat.
Gabungan penapisan linear dapat membezakan antara isyarat penembusan yang sebenar dan palsu.
Menggunakan kaedah tracking stop loss, anda boleh terus mendapat keuntungan dan mengelakkan reverse stop loss.
Isyarat strategi mudah difahami dan mudah difahami.
Tidak perlu sering menyesuaikan parameter, sesuai dengan parameter tetap perdagangan automatik.
Strategi ini juga mempunyai risiko:
Oleh kerana laluan Camaleira tidak dapat menilai dengan tepat titik perubahan, ia mungkin menyebabkan kerugian meningkat.
Tetapan stop loss yang tidak munasabah boleh menyebabkan stop loss yang terlalu awal atau peningkatan kerugian.
Isyarat penembusan mungkin berlaku dalam keadaan penembusan palsu.
Terdapat beberapa pecah palsu dalam pasaran yang sangat bergolak.
Strategi ini juga boleh dioptimumkan dengan:
Menambah indeks penapisan komposit, meningkatkan ketepatan penembusan. Anda boleh mempertimbangkan KDJ, MACD dan sebagainya.
Mengoptimumkan strategi henti rugi, seperti memperkenalkan henti rugi dinamik, menggabungkan penunjuk ATR dan sebagainya.
Untuk mengoptimumkan parameter yang berbeza untuk meningkatkan kestabilan.
Meningkatkan penilaian terhadap trend kitaran besar dan mengelakkan perdagangan berlawanan arah.
Dengan analisis kuantiti pada hari itu, jumlah fokus yang tinggi dapat dicapai.
Membangunkan program pengoptimuman parameter automatik, pengoptimuman parameter dalam masa nyata.
Ia adalah strategi untuk memperluaskan pelbagai jenis penarikan dengan menggunakan perbezaan harga.
Strategi ini secara keseluruhan jelas dan mudah digunakan, dan merupakan strategi pelacakan penembusan yang tipikal. Dengan menilai rintangan sokongan yang berpotensi melalui saluran Camellia, dan kemudian menggabungkan penapisan linear untuk menentukan arah penembusan.
/*backtest
start: 2023-09-23 00:00:00
end: 2023-10-23 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
//Created by CristianD
strategy(title="CamarillaStrategyV1", shorttitle="CD_Camarilla_StrategyV1", overlay=true)
//sd = input(true, title="Show Daily Pivots?")
EMA = ema(close,8)
//Camarilla
pivot = (high + low + close ) / 3.0
range = high - low
h5 = (high/low) * close
h4 = close + (high - low) * 1.1 / 2.0
h3 = close + (high - low) * 1.1 / 4.0
h2 = close + (high - low) * 1.1 / 6.0
h1 = close + (high - low) * 1.1 / 12.0
l1 = close - (high - low) * 1.1 / 12.0
l2 = close - (high - low) * 1.1 / 6.0
l3 = close - (high - low) * 1.1 / 4.0
l4 = close - (high - low) * 1.1 / 2.0
h6 = h5 + 1.168 * (h5 - h4)
l5 = close - (h5 - close)
l6 = close - (h6 - close)
// Daily line breaks
//sopen = request.security(syminfo.tickerid, "D", open [1])
//shigh = request.security(syminfo.tickerid, "D", high [1])
//slow = request.security(syminfo.tickerid, "D", low [1])
//sclose = request.security(syminfo.tickerid, "D", close [1])
//
// Color
//dcolor=sopen != sopen[1] ? na : black
//dcolor1=sopen != sopen[1] ? na : red
//dcolor2=sopen != sopen[1] ? na : green
//Daily Pivots
dtime_pivot = request.security(syminfo.tickerid, 'D', pivot[1])
dtime_h6 = request.security(syminfo.tickerid, 'D', h6[1])
dtime_h5 = request.security(syminfo.tickerid, 'D', h5[1])
dtime_h4 = request.security(syminfo.tickerid, 'D', h4[1])
dtime_h3 = request.security(syminfo.tickerid, 'D', h3[1])
dtime_h2 = request.security(syminfo.tickerid, 'D', h2[1])
dtime_h1 = request.security(syminfo.tickerid, 'D', h1[1])
dtime_l1 = request.security(syminfo.tickerid, 'D', l1[1])
dtime_l2 = request.security(syminfo.tickerid, 'D', l2[1])
dtime_l3 = request.security(syminfo.tickerid, 'D', l3[1])
dtime_l4 = request.security(syminfo.tickerid, 'D', l4[1])
dtime_l5 = request.security(syminfo.tickerid, 'D', l5[1])
dtime_l6 = request.security(syminfo.tickerid, 'D', l6[1])
//offs_daily = 0
//plot(sd and dtime_pivot ? dtime_pivot : na, title="Daily Pivot",color=dcolor, linewidth=2)
//plot(sd and dtime_h6 ? dtime_h6 : na, title="Daily H6", color=dcolor2, linewidth=2)
//plot(sd and dtime_h5 ? dtime_h5 : na, title="Daily H5",color=dcolor2, linewidth=2)
//plot(sd and dtime_h4 ? dtime_h4 : na, title="Daily H4",color=dcolor2, linewidth=2)
//plot(sd and dtime_h3 ? dtime_h3 : na, title="Daily H3",color=dcolor1, linewidth=3)
//plot(sd and dtime_h2 ? dtime_h2 : na, title="Daily H2",color=dcolor2, linewidth=2)
//plot(sd and dtime_h1 ? dtime_h1 : na, title="Daily H1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l1 ? dtime_l1 : na, title="Daily L1",color=dcolor2, linewidth=2)
//plot(sd and dtime_l2 ? dtime_l2 : na, title="Daily L2",color=dcolor2, linewidth=2)
//plot(sd and dtime_l3 ? dtime_l3 : na, title="Daily L3",color=dcolor1, linewidth=3)
//plot(sd and dtime_l4 ? dtime_l4 : na, title="Daily L4",color=dcolor2, linewidth=2)
//plot(sd and dtime_l5 ? dtime_l5 : na, title="Daily L5",color=dcolor2, linewidth=2)
//plot(sd and dtime_l6 ? dtime_l6 : na, title="Daily L6",color=dcolor2, linewidth=2)
longCondition = close >dtime_h4 and open < dtime_h4 and EMA < close
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit ("Exit Long","Long", trail_points = 140,trail_offset = 1, loss =170)
//trail_points = 40, trail_offset = 3, loss =70 and
shortCondition = close <dtime_l4 and open >dtime_l4 and EMA > close
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit ("Exit Short","Short", trail_points = 110,trail_offset = 1, loss =120)