이 전략은 볼링거 밴드 지표에 기반하여, 가격이 볼링거 밴드 상부 또는 하부 라인을 벗어날 때 긴 또는 짧은 포지션을 취합니다.
특히, 그것은 먼저 길이 길이의 중간 라인 SMA를 계산하고, 상위 / 하위 라인 수 배 표준 편차를 계산합니다. 닫는 것이 하위 라인에서 위로 갈 때, 길게 갈 때. 닫는 것이 상위 라인에서 떨어지면, 짧게 갈 때. 또한 시작 및 종료 시간을 설정하여 거래 시간을 제한합니다. 매일 열기 전에 출입하십시오.
이 전략은 가격의 범위를 벗어난 후 팽창하는 움직임을 포착하려고 시도합니다. 하부 범위를 깨는 것은 상승 세력을 강화하는 것을 나타냅니다. 상부 범위를 깨는 것은 하부 세력을 강화하는 것을 의미합니다. 따라서 브레이크와 일치하는 거래는 유리한 것입니다.
엔트리 규칙을 최적화하고 스톱 로스를 추가하고 트렌드 필터를 도입함으로써 위험을 줄일 수 있습니다.
이것은 볼링거 밴드를 기반으로 한 브레이크업 전략이다. 브레이크업 움직임에서 이익을 얻는다. 장점은 간단한 논리와 쉬운 구현이다; 단점은 잘못된 브레이크업에 취약하다. 위험은 매개 변수 최적화, 스톱 로스, 거래 시간 제어 등을 통해 관리 될 수 있다. 트레이더들이 지표와 거래 브레이크업을 사용하는 기본 사항을 이해할 수 있게 해준다.
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=2 strategy("Noro's Bollinger Strategy v1.0", shorttitle = "Bollinger str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 5) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") length = input(20, minval=1) mult = input(1.0, minval=0.001, maxval=50) 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") source = close basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev up = close < lower dn = close > upper exit = (strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open) if up strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, 01, 00, 00) and time < timestamp(toyear, tomonth, 31, 00, 00))) if dn strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, 01, 00, 00) and time < timestamp(toyear, tomonth, 31, 00, 00))) if time > timestamp(toyear, tomonth, 31, 00, 00) or exit strategy.close_all()