
この戦略は,枢軸の突破をベースに逆転取引を行う.それは,指定された周期の最高価格と最低価格を計算し,枢軸の高点と枢軸の低点を決定する.価格が枢軸の高点を超えると空きをする.価格が枢軸の低点を下回ると多めにする.これは典型的なショートライン逆転戦略である.
この戦略の核心的な論理は,枢軸高点と枢軸低点の計算である.枢軸高点と枢軸低点の計算式は次のとおりである.
枢軸高点 = 最新のN1根K線の最高値の和 / N1
枢軸の低点 = 最新のN2根K線の最低値の和 / N2
N1とN2は,枢軸を計算するために必要なK線の数を表す2つのパラメータを設定できます.
軸の高低点を計算すると,戦略で取引ができます. 具体的取引規則は以下の通りです.
カーネリアン・ブレイクをベースにしたショート・ライン・リバース戦略を実現する.
これは非常に単純な逆転策で,以下の利点があります.
この戦略にはいくつかのリスクがあります.
これらのリスクは,パラメータの調整,出場戦略の設定などの方法によって制御できます.
この戦略は,さらに改善できる可能性が大きい.
この戦略は,非常に簡単なショートライン枢軸反転戦略である。その優点は,簡単で理解しやすいこと,頻繁な取引に適し,反転の動きを捉えることができることである。しかし,ある程度のリスクも存在し,リスクを減らすためにさらに最適化する必要がある。全体的に,これは,初心者練習に非常に適した戦略であり,高度な戦略の基礎も置くものである。
/*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)