STARCチャネルバックテスト戦略 (STARC Channel Backtest Strategy) は,STARC指標に基づいた定量的な取引戦略である.この戦略は,ブレイクアウトの購入・売却の取引信号を生成するために上下STARCチャネルを構成する.また,異なる市場環境に適応するために,ロング・ショート・ポジションスイッチングメカニズムも組み込む.
STARCチャンネルバックテスト戦略の核心は,以下を含むSTARC指標です.
閉じる価格が上位帯を突破すると買い信号と,閉じる価格が下位帯を突破すると売り信号を発生させる.
この戦略は,STARCチャネルの上下レールを毎日計算し,閉値がそれらを破って取引信号を生成するかどうかを判断する.また,異なる市場状況に適応するために,ロングとショートポジションを切り替える逆パラメータを設定する.
STARCのチャンネルバックテスト戦略には以下の利点があります.
STARCのチャンネルバックテスト戦略には リスクもあります
リスクを軽減するために,以下の措置を講じなければならない.
STARCチャネルバックテスト戦略の主な最適化方向は以下の通りである.
これらの最適化方向は,リスクを制御しながら戦略の収益性と安定性を向上させることができます.
STARCチャネルバックテスト戦略の全体的な効果は良好である.STARC指標に基づいて中長期間のブレイクアウト取引を実施する.戦略の利点は,市場変化に適応するための逆メカニズムを設定しながら,安定した取引信号を生成するためにSTARCチャネルを使用することです.また,ストップ損失を設定し,戦略をより安定かつ効率的にするためにパラメータを最適化することでリスクを軽減する必要があります.一般的に,この戦略は中長期間のブレイクアウト取引のための効果的なツールです.
/*backtest start: 2023-11-04 00:00:00 end: 2023-12-04 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 23/04/2018 // A type of technical indicator that is created by plotting two bands around // a short-term simple moving average (SMA) of an underlying asset's price. // The upper band is created by adding a value of the average true range // (ATR) - a popular indicator used by technical traders - to the moving average. // The lower band is created by subtracting a value of the ATR from the SMA. // STARC is an acronym for Stoller Average Range Channels. The indicator is // named after its creator, Manning Stoller. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="STARC Bands Backtest", overlay = true) LengthMA = input(5, minval=1) LengthATR = input(15, minval=1) K = input(1.33, minval=0.01, step = 0.01) reverse = input(false, title="Trade reverse") xMA = sma(close, LengthMA) xATR = atr(LengthATR) xSTARCBandUp = xMA + xATR * K xSTARCBandDn = xMA - xATR * K pos = iff(close > xSTARCBandUp, 1, iff(close < xSTARCBandDn, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xMA, color=blue, title="MA") plot(xSTARCBandUp, color = green, title="UpBand") plot(xSTARCBandDn, color=red, title="DnBand")