
この戦略はブリン帯指数とアロン指数を統合して,振動市場における震動破壊から利益を得る.戦略は,震動傾向型市場においてうまく機能し,震動突破の後に間に合うように入場し,ストップ・ストップ条件を設定し,適切な時にポジションを退出する.
この戦略は,取引の機会と退出点を識別するために,主に2つの指標を使用しています.
まずブリン帯である。ブリン帯は中軌,上軌,下軌で構成されている。中軌はn日の閉盘価格の簡易移動平均であり,上軌は中軌+k倍標準差であり,下軌は中軌-k倍標準差である。価格が下軌から上向きに中軌を突破すると買取信号である。価格が上軌から下向きに中軌を突破すると売り売り信号である。この策略はブリン帯の振動のトレンドにおけるチャンスポイントを判断し,中軌の近くで突破が発生したときに参入する。
次に,Aroon指数である. Aroon指数は,価格がn日間で最高値と最低値に達する相対的な強さを反映している. Aroon指数は,トレンドと機会を判断することができます. Aroon Up主線が設定された値より大きいときは,トレンドが上昇していると考えられます. Aroon Down主線が設定された値より大きい場合は,トレンドが低下していると考えられます.
この2つの指標を組み合わせると,この戦略はブリン帯に突破があり,Aroon Upの主線が値より高いときに買います. ストップラインが触発されたとき,またはAroon Upの主線が設定値より低いときに平仓します.
複数の指標を統合し,意思決定の正確性を向上させる.単一の指標は,市場騒音の影響を受けやすい.この戦略は,ブリン帯とアロン指標の組み合わせによって,偽の信号をフィルターすることができます.
タイムリーにトレンドの逆転ポイントを捕捉する. ブリン帯は強いトレンド識別能力を持ち,短期間に中軌道を突破するチャンスのポイントを発見することができます. アルーン指標は長期のトレンドを判断し,不安定な状況で繰り返しポジションを開くのを避ける.
リスクコントロール 位。 ストップ・損失戦略とアロン指数のダウン主線が下行リスクを制御する。 また,一部のポジション取引も単一損失を制御する。
震動状況に適用され,大きな損失を起こすことは容易ではない.傾向追跡戦略と比較して,この戦略は震動状況でより良いパフォーマンスを発揮している.
ブリン帯には欠陥がある.市場の突発的な事件が大幅な波動を引き起こしたとき,ブリン帯は失効する.
Aroonのパラメータ設定は最適化が必要である.異なる市場では,最適化のためにAroonのパラメータを調整する必要がある.
止損が小さすぎると再発が起こりやすい. 止損範囲を適切に放宽し,止損線が再発された後に再発を避ける.
強いトレンドで使用することを避ける. 戦略は震動市場に適用され,強いトレンド市場では不良なパフォーマンスを発揮し,避けるように注意する必要があります.
ブリン帯のパラメータを最適化し,自適応ブリン帯を採用する.ブリン帯のパラメータを市場の変化に応じて調整し,指標の柔軟性を高める.
Aroonパラメータの動的設定を最適化する.異なる通貨と取引周期によってAroonパラメータを調整する必要があるため,動的最適化パラメータを研究することができる.
RSIなどの他の指標のフィルターを追加することで,過剰買いや過剰販売を防ぐことができます. 戦略的決定の正確さをさらに向上させることができます.
機械学習の方法による停止点の最適化.アルゴリズムの訓練により,さらに最適化された停止方法を得ることができ,停止が再び誘発される確率を最大限に減らすことができる.
結合量能指標は,偽突破を回避する.例えばエネルギー指標OBVは,ブリン帯で起こる偽突破信号を回避する.
この戦略は,全体的に典型的な震動型取引戦略である. ブリン帯指数とアロン指数と組み合わせて取引機会を識別し,市場の短期的な震動を効果的に捉えることができる. ストップと部分ポジションのリスク管理により,震動的行情に適している. しかし,パラメータ最適化とリスク管理に注意し,トレンド的な行情で使用することを避ける必要があります.
/*backtest
start: 2023-10-24 00:00:00
end: 2023-10-28 21:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © relevantLeader16058
//@version=4
// strategy(shorttitle='Bollinger bands And Aroon Scalping',title='Bollinger bands And Aroon Scalping (by Coinrule)', overlay=true, initial_capital = 1000, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1)
//Backtest dates
fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12)
fromDay = input(defval = 1, title = "From Day", type = input.integer, minval = 1, maxval = 31)
fromYear = input(defval = 2020, title = "From Year", type = input.integer, minval = 1970)
thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12)
thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31)
thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970)
showDate = input(defval = true, title = "Show Date Range", type = input.bool)
start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window
finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window
window() => time >= start and time <= finish ? true : false // create function "within window of time"
// BB inputs and calculations
lengthBB = input(20, minval=1)
src = input(close, title="Source")
mult = input(2.0, minval=0.001, maxval=50, title="StdDev")
basis = sma(src, lengthBB)
dev = mult * stdev(src, lengthBB)
upper = basis + dev
lower = basis - dev
offset = input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
lengthAr = input(288, minval=1)
AroonUP = 100 * (highestbars(high, lengthAr+1) + lengthAr)/lengthAr
AroonDown = 100 * (lowestbars(low, lengthAr+1) + lengthAr)/lengthAr
Confirmation = input(90, "Aroon Confirmation")
Stop = input(70, "Aroon Stop")
Bullish = crossunder (close, basis)
Bearish = crossunder (close, upper)
//Entry
strategy.entry(id="long", long = true, when = Bullish and AroonUP > Confirmation and window())
//Exit
strategy.close("long", when = Bearish or AroonUP < Stop and window())