この戦略は,現在のトレンド方向を決定するためにスーパートレンドインジケーターを使用し,キャンドルスタイクパターンを捕捉した取引信号を生成する.これはトレンドフォロー戦略に属している.スーパートレンド方向に逆のキャンドルが形成されると,潜在的なトレンド逆転をシグナル化する.この戦略は逆転機会を活用することを目的としている.
この戦略は,まず,現在のトレンドを決定するためにスーパートレンド指標を計算し,アップトレンドを緑色で,ダウントレンドを赤色で示します.次に,キャンドルスタイクがトラップパターンを形成しているかどうかをチェックします.これは, (1) キャンドルがスーパートレンドの方向に逆の方向にあるか, (2) キャンドルが強いか (大きなブイッシュまたは接近は逸脱していません), (3) キャンドルが増量しているかを要求します.すべての3つの条件が満たされると,傾向の逆転の可能性を示します. 戦略はトラップキャンドルの上部に長行し,下部に短行します.ストップ損失はトラップキャンドルまたは最近の高/低スイングの反対側に置かれます.
スーパートレンドは,現在のキャンドルがスーパートレンド方向に逆の方向で,そのボリュームが前のキャンドルよりも大きいか,または同じ CLOSE方向で連続して3つのキャンドルがボリュームを減少しているかをチェックします.基準を満たす場合は,逆転をシグナルし,キャンドルの高値でロングに入り,キャンドルの低値でショートに入ります.ストップロスはキャンドルの開口価格方向に置かれます.
戦略は,スーパートレンドで全体的なトレンドを特定し,キャンドルキャンドルでマークされた潜在的な逆転点を入力し,その後のトレンド動きから利益目標が来る.
スーパートレンドは 全体のトレンドを決定し,キャンドル信号の逆転の確率を捕捉します.トレンドとパターンを組み合わせることで精度が向上します.
強いモメントとキャンドルのボリュームの増加は,騒音からの誤った信号を避けます. 確認は,上下を追いかけるのを防ぎます.
スーパートレンドとキャンドルのキャンドルのコアとして,戦略は非常にミニマリストで,パラメータが少なく,実行が簡単です.
ストップロスはキャンドル価格のトラップで迅速な出口を可能にし,反転後のポジションにも適しています.
スーパートレンドはトレンドの逆転を検出するのに少し遅れているので,ベストエントリータイミングを逃す可能性があります.
逆転信号は100%信頼できない 逆転が失敗すると損失が大きくなる
最適な捕獲パターンは製品と時間枠によって異なります.状況ごとに最適なパラメータをテストする必要があります.
取引の特徴は昼と夜間のセッションによって異なります.別々のパラメータ最適化が必要です.
例えば,昼と夜を別々にキャンドルのボリューム増加レベルを最適化します.
異なるATR期間をテストして,それぞれの製品に対して最適なSuperTrendパラメータと信号を見つけます.
MACD,KDJなどの追加指標を組み込むことで 逆転判断の精度を向上させる
リスクを制御するために,逆転後のストップロスの再設定,ストップロスの百分比など.
この戦略は,スーパートレンドとキャンドルパターンを組み合わせて,認識されたトレンド逆転に入力します. 基本的なアイデアはシンプルで明確です. しかし,安定性を高めるために,全体的なトレンド,セッション差,ストップ損失などの側面を総合的に最適化することで,信号の精度をさらに向上させる余地があります. 繰り返しの最適化により,活発なトレーダーにとって強力なツールになることができます.
/*backtest start: 2023-09-17 00:00:00 end: 2023-09-24 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SuperTrend Trapping Candle Strategy", shorttitle="ST", margin_long=1, margin_short=1, overlay=true) // Inputs atrPeriod = input.int(10, "ATR Length") factor = input.int(2, "Factor") candleDivider = input.float(0.003, "Candle Height", step=0.0001) // Supertrend [supertrend, direction] = ta.supertrend(factor, atrPeriod) plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style=plot.style_linebr) plot(direction < 0? na : supertrend, "Down Trend", color = color.red, style=plot.style_linebr) //Trapping canlde isUptrend = direction < 0 isDowntrend = direction > 0 isBullsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close > close[1] and close[1] > close[2] and open > open[1] and open[1] > open[2] isBearsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close < close[1] and close[1] < close[2] and open < open[1] and open[1] < open[2] isStrongVolume = (volume > volume[1]) or isBullsStrengthDecreasing or isBearsStrengthDecreasing isSmallCandle = (high - low) < close * candleDivider isUptrendTrapping = isUptrend and close < open and isStrongVolume and isSmallCandle isDowntrendTrapping = isDowntrend and close > open and isStrongVolume and isSmallCandle plotshape(isUptrendTrapping, style=shape.triangleup, location=location.belowbar, color=color.green) plotshape(isDowntrendTrapping, style=shape.triangledown, location=location.abovebar, color=color.orange) // Signals longCondition = isUptrendTrapping if (longCondition) strategy.entry("Long", strategy.long) shortCondition = isDowntrendTrapping if (shortCondition) strategy.entry("Short", strategy.short) if open < close alert("Seller Trapped.", alert.freq_all) if close > open alert("Buyer Trapped.", alert.freq_all)