이 전략은 볼링거 밴드와 슈퍼 트렌드 지표를 결합한 지능형 거래 전략이다. 이 전략은 주로 볼링거 밴드를 사용하여 시장 변동성 범위를 식별하고 슈퍼 트렌드 지표를 사용하여 시장 트렌드 방향을 확인하여 높은 확률의 위치에서 거래를 가능하게합니다. 이 전략은 다양한 거래 도구 및 시간 프레임에 설계되어 있으며 30 분 및 2 시간 시간 프레임에서 특히 잘 수행됩니다.
이 전략의 핵심 논리는 다음의 핵심 요소에 기초합니다. 1. 2개의 표준편차 대역폭을 가진 20개 기간 볼링거 대역을 사용하며, 상위, 중위, 하위 대역과 2개의 중선을 구성합니다. 2. 슈퍼 트렌드 지표를 계산하기 위해 10 기간 ATR 및 3의 인자를 사용합니다. 3. 진입 신호: - 긴 진입: 가격이 낮은 볼링거 밴드와 슈퍼 트렌드가 상승 방향을 나타낼 때 - 짧은 입력: 가격이 상부 볼링거 밴드와 슈퍼 트렌드가 하락 방향을 나타낼 때 4. 출구 신호: - 긴 출구: 닫기 가격이 슈퍼 트렌드 라인 아래로 돌고 트렌드가 하향으로 변할 때 - 짧은 출구: 닫기 가격이 슈퍼 트렌드 라인을 넘어서고 트렌드가 상승세를 올릴 때
이 시스템은 전통적인 기술 분석 지표를 결합한 완전한 거래 시스템으로, 볼링거 밴드 및 슈퍼 트렌드의 시너지를 통해 트렌딩 및 변동성 시장에서 모두 잘 수행 할 수 있습니다. 전략의 시각화 디자인과 매개 변수 유연성은 매우 실용적입니다. 제안된 최적화 방향을 통해 전략의 안정성과 수익성이 더욱 향상 될 수 있습니다. 라이브 거래 전에 철저한 백테스팅과 매개 변수 최적화를 수행하는 것이 좋습니다.
/*backtest start: 2024-12-05 00:00:00 end: 2024-12-12 00:00:00 period: 5m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Band & SuperTrend Strategy (Standard Chart)", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) // Bollinger Bands Settings length_bb = input.int(20, title="Bollinger Band Length") mult_bb = input.float(2.0, title="Bollinger Band Multiplier") [bb_upper, bb_basis, bb_lower] = ta.bb(close, length_bb, mult_bb) // Median Bands bb_median_upper = (bb_upper + bb_basis) / 2 bb_median_lower = (bb_lower + bb_basis) / 2 // SuperTrend Settings atr_length = input.int(10, title="ATR Length") factor = input.float(3.0, title="SuperTrend Factor") // SuperTrend Calculation based on standard chart OHLC data [supertrend, direction] = ta.supertrend(factor, atr_length) // Plotting Bollinger Bands plot(bb_upper, color=color.red, title="Bollinger Upper Band") plot(bb_median_upper, color=color.orange, title="Bollinger Median Upper Band") plot(bb_basis, color=color.blue, title="Bollinger Basis") plot(bb_median_lower, color=color.purple, title="Bollinger Median Lower Band") plot(bb_lower, color=color.green, title="Bollinger Lower Band") // Plotting SuperTrend supertrend_color = direction > 0 ? color.green : color.red plot(supertrend, color=supertrend_color, style=plot.style_line, title="SuperTrend Line") // Customizable Signal Shape Inputs buy_shape = input.string("shape_triangle_up", title="Buy Signal Shape", options=["shape_triangle_up", "shape_circle", "shape_cross", "shape_diamond", "shape_flag"]) sell_shape = input.string("shape_triangle_down", title="Sell Signal Shape", options=["shape_triangle_down", "shape_circle", "shape_cross", "shape_diamond", "shape_flag"]) // Entry Conditions buy_condition = ta.crossover(low, bb_lower) and direction > 0 sell_condition = ta.crossunder(high, bb_upper) and direction < 0 // Exit Conditions exit_buy_condition = ta.crossunder(close, supertrend) and direction < 0 exit_sell_condition = ta.crossover(close, supertrend) and direction > 0 // Strategy Logic if buy_condition strategy.entry("Buy", strategy.long) if sell_condition strategy.entry("Sell", strategy.short) if exit_buy_condition strategy.close("Buy") if exit_sell_condition strategy.close("Sell") // Plot Buy Signal Shape plotshape(series=buy_condition, title="Buy Signal", location=location.belowbar, color=color.green, style=buy_shape, text="BUY", textcolor=color.white) // Plot Sell Signal Shape plotshape(series=sell_condition, title="Sell Signal", location=location.abovebar, color=color.red, style=sell_shape, text="SELL", textcolor=color.white)