価格チャネルロボットホワイトボックス戦略は,価格チャネル指標に基づいた単純な機械的取引戦略である.入口と出口点を決定するために,価格チャネルの上下限を使用する.戦略は上昇傾向で長く,下落傾向で短くなります.
価格チャネルロボットホワイトボックス戦略の基本的な論理は
戦略には,いくつかの設定可能なパラメータもあります:
これらのパラメータを調整することで 戦略は異なる製品や市場環境に より良く適応できます
価格チャネルロボットのホワイトボックス戦略には以下の利点があります.
要約すると シンプルで実用的なトレンドフォロー戦略で パラメータ調整後には 良い結果が得られます
価格チャネルロボットのホワイトボックス戦略には,いくつかのリスクもあります.
これらのリスクを軽減するために,次の側面で最適化する必要があります:
価格チャネルロボットホワイトボックス戦略のさらなる最適化には余地があります.
これらの最適化技術は,戦略の安定性と収益性をさらに向上させるのに役立ちます.
価格チャネルロボットホワイトボックス戦略は,シンプルで実用的なトレンドフォロー戦略である. 取引決定を行うために価格チャネル指標を使用してトレンド方向と逆転点を特定する. 戦略は理解し,実装しやすく,パラメータ調整後に適正なリターンを達成することができます. パラメータを最適化し,ストップロスをすることによって緩和する必要がある特定のリスクもあります. 全体的に,戦略には幅広い応用見通しと最適化の可能性があり,探求し実践する価値があります.
/*backtest start: 2023-02-21 00:00:00 end: 2024-02-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //@version=4 strategy(title = "Robot WhiteBox Channel", shorttitle = "Robot WhiteBox Channel", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") needstop = input(true, defval = true, title = "Stop-loss") lotsize = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot, %") len = input(50, minval = 1, title = "Price Channel Length") showll = input(true, defval = true, title = "Show lines") showbg = input(false, defval = false, title = "Show Background") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Price Channel h = highest(high, len) l = lowest(low, len) center = (h + l) / 2 //Lines pccol = showll ? color.black : na slcol = showll ? color.red : na plot(h, offset = 1, color = pccol) plot(center, offset = 1, color = slcol) plot(l, offset = 1, color = pccol) //Background size = strategy.position_size bgcol = showbg == false ? na : size > 0 ? color.lime : size < 0 ? color.red : na bgcolor(bgcol, transp = 70) //Trading truetime = time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59) lot = 0.0 lot := size != size[1] ? strategy.equity / close * lotsize / 100 : lot[1] if h > 0 strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, stop = h, when = strategy.position_size <= 0 and truetime) strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, stop = l, when = strategy.position_size >= 0 and truetime) strategy.entry("S Stop", strategy.long, 0, stop = center, when = strategy.position_size[1] <= 0 and needstop) strategy.entry("L Stop", strategy.short, 0, stop = center, when = strategy.position_size[1] >= 0 and needstop) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all() strategy.cancel("Long") strategy.cancel("Short")