
この戦略は,波蘭波帯の指標を用い,ストップを追跡し,トレンドを追跡する取引を可能にします.価格が上線を突破するときに空白し,価格が下線を突破するときに多めにし,利益をロックするためにストップとストップの価格を設定します.同時に,この戦略は,価格が波帯に戻るときに反転のエントリーオプションを提供します.
この戦略は,ブリン帯の中軌,上軌,下軌を最初に計算する。中軌は,長さがLenのWMA平均線であり,上軌と下軌の距離は,標準差の倍数である Deviation。
価格が上から軌道線に突入するときは空き;価格が下から軌道線に突入するときは多めに. ポジション開設後,ストップ・ロズとストップ・価格を設定する. ストップ・ロズは入力したストップ値であり,ストップ・価格は入力したリミット値である.
さらに,戦略は,逆転してポジションを開くオプションも提供している. Reversal Entryをクリックすると,価格がブリン帯に再入ったときに逆転し,MEAN REVERSIONの取引方法である.
順位開設または逆転開設のいずれにせよ,ストップとストップの設定は同じである. ストップとストップは,固定ストップまたは移動ストップの2つの選択肢があります. 後者は,価格の変化に応じて調整されます.
この戦略は,ブリン帯の指標とストップの追跡を組み合わせて,リスクを効果的に制御し,トレンドの利益をロックすることができます. ポジション開設の逆転方法は,ストップが誘発される確率を減らすことができます.
ブリンが上下軌道に乗ると,価格突破を明確に判断し,波段取引方法が損結果を明確にする. ストップ・ロスを追跡してストップ・ロスの位置を調整し,利益が隠されるのを防ぐ.
ブリン帯戦略の最大のリスクは,トレンドの逆転である.上線を突破した空白の後,価格がV型逆転を起こし,急速なストップ損失を引き起こす可能性がある.多重な状況も同じである.
逆転打開は,トレンドの継続の機会を逃す可能性がある。価格が波帯に戻った後に逆転をすれば,利益が減少する可能性がある。
また,パラメータの設定が不適切である場合もリスクが増加する.Lenと Deviationは慎重に設定する必要があります.そうでなければ,止損のリスクが増加します.
この戦略は以下の点で最適化できます.
パラメータの自己適応機能を追加する。Lenと Deviationは,市場の波動程度に応じて動的に調整し,ブリン帯を価格により近いものにする。
取引量急増,取引額増加などの追加条件を追加して,被套を回避できます.
他の指標のフィルタリング信号と組み合わせる.例えば,MACD,KDJなどの指標は,トレンドを判断し,漏れ信号を回避する.
時間の制限を増やす. 特定の時間帯での取引のみで,夜間取引のリスクを減らす.
このボルランド波帯追跡戦略は,ブリン波帯指標を用いて価格突破を判断する. ストップ・ストップ・ロスを設定し,利益をロックし,ストップ・ロスを追跡してリスクを調整する. 戦略はシンプルで実用的で,市場選択の順調や反転取引に応じて取引することができる. 参数最適化と条件フィルタリングにより,リスクをさらに低減して,より安定した利益を得ることができる.
/*backtest
start: 2024-02-19 00:00:00
end: 2024-02-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="BB Strategy (Basic)",overlay=true, initial_capital=25000, default_qty_value=1, commission_type=strategy.commission.cash_per_contract, commission_value=3.02)
len = input(20, minval=1, title="Length")
src = input(close, title="Source")
mult = input(2.0, "Deviation", minval=0.001, maxval=50)
//price_drop = input(.003, "When price drops (In Ticks) Enter Long", step=.001)
//price_climb = input(.003, "When price climbs (In Ticks) Enter Short", step=.001)
trail = input(true, "Trailing Stop(checked), Market stop(unchecked)")
stop = input(10000, "Stop (in ticks)", step=5)
limit = input(20000, "Limit Out", step=5)
//size = input(1, "Limit Position Size (pyramiding)", minval=1)
revt = input(true, "Reversal Entry(checked, Trend Entry(unchecked)")
timec = input(false, "Limit Time of Day (Buying Side)")
//calculations and plots
revti = if revt==false
true
basis = wma(src, len)
dev = mult * stdev(src, len)
upper = basis + dev
lower = basis - dev
plot(basis, color=red)
p1 = plot(upper, color=teal)
p2 = plot(lower, color=teal)
fill(p1, p2)
u = crossover(high, upper)
d = crossunder(low, lower)
//Time Session
sess = input("1600-0500", "Start/Stop trades (Est time)")
t = time(timeframe.period, sess)
//Orders
if(timec)
strategy.entry("Enterlong", long=revt, when=d and t>1)
else
strategy.entry("Enterlong", long=revt, when=d)
if(trail)
strategy.exit("Exit","Enterlong", profit=limit, trail_points = 0, trail_offset = stop )
else
strategy.exit("Exit","Enterlong", profit=limit, loss = stop )
if(timec)
strategy.entry("Entershort", long=revti, when=u and t>1)
else
strategy.entry("Entershort", long=revti, when=u)
if(trail)
strategy.exit("Exit","Entershort", profit=limit, trail_points = 0, trail_offset = stop )
else
strategy.exit("Exit","Entershort", profit=limit, loss = stop )