
Strategi ini berdasarkan kepada penembusan titik pivot untuk melakukan perdagangan berbalik. Ia akan mengira harga tertinggi dan harga terendah untuk tempoh yang ditetapkan untuk menentukan titik pivot tinggi dan titik pivot rendah. Apabila harga melebihi titik pivot tinggi, buat short; apabila harga lebih rendah daripada titik pivot rendah, buat lebih banyak.
Logik teras strategi ini adalah untuk mengira titik-titik tinggi dan titik-titik rendah. Formula untuk mengira titik-titik tinggi dan rendah adalah seperti berikut:
Puncak aksa = jumlah harga tertinggi bagi N1 garis K terkini / N1
Titik rendah aksa = jumlah harga terendah bagi N2 akar K terkini / N2
N1 dan N2 adalah dua parameter yang boleh ditetapkan yang mewakili bilangan K yang diperlukan untuk mengira titik pusat.
Setelah anda mengira titik tertinggi dan terendah, anda boleh berdagang. Peraturan perdagangan khusus adalah:
Dengan cara ini, ia mewujudkan strategi pembalikan garis pendek berdasarkan titik-titik utama.
Ini adalah strategi yang sangat mudah untuk membalikkan keadaan, dengan kelebihan berikut:
Strategi ini mempunyai beberapa risiko:
Risiko ini boleh dikawal dengan cara seperti menyesuaikan parameter, menetapkan strategi penyingkiran.
Strategi ini masih mempunyai ruang untuk pengoptimuman yang besar:
Strategi ini adalah strategi pembalikan sumbu garis pendek yang sangat mudah. Kelebihannya adalah mudah difahami, sesuai untuk perdagangan yang kerap, dan dapat menangkap keadaan pembalikan. Tetapi ada juga risiko tertentu yang perlu dioptimumkan lebih lanjut untuk mengurangkan risiko. Secara keseluruhan, ini adalah strategi yang sangat sesuai untuk latihan pemula, dan juga menjadi asas untuk strategi lanjutan.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Pivot Reversal Strategy - FIGS & DATES 2.0", overlay=true, pyramiding=0, initial_capital=10000, currency="USD", default_qty_type=strategy.percent_of_equity, default_qty_value=100.0, commission_value=0.075)
leftBars = input(4)
rightBars = input(2)
// backtesting date range
from_day = input(defval=1, title="From Day", minval=1, maxval=31)
from_month = input(defval=1, title="From Month", minval=1, maxval=12)
from_year = input(defval=2018, title="From Year", minval=1900)
to_day = input(defval=1, title="To Day", minval=1, maxval=31)
to_month = input(defval=1, title="To Month", minval=1, maxval=12)
to_year = input(defval=9999, title="To Year", minval=1900)
time_cond = true
swh = pivothigh(leftBars, rightBars)
swl = pivotlow(leftBars, rightBars)
middle = (swh+swl)/2
swh_cond = not na(swh)
hprice = 0.0
hprice := swh_cond ? swh : hprice[1]
le = false
le := swh_cond ? true : le[1] and high > hprice ? false : le[1]
if le and time_cond
strategy.entry("LONG", strategy.long, comment="LONG", stop=hprice + syminfo.mintick)
swl_cond = not na(swl)
lprice = 0.0
lprice := swl_cond ? swl : lprice[1]
se = false
se := swl_cond ? true : se[1] and low < lprice ? false : se[1]
if se and time_cond
strategy.entry("SHORT", strategy.short, comment="SHORT", stop=lprice - syminfo.mintick)
//plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)