
이것은 브린 띠를 기반으로 한 외환 점프 쇼트 라인 거래 시스템이다. 그것은 주요 통화 쌍에 적용되며, 거래 수수료가 1 포인트 이하이며, 1-15 분 사이의 시간 사이클을 요구한다.
이 시스템은 브린 밴드, RSI, ADX의 3가지 지표를 사용하여 거래 기회를 식별한다.
브린 띠는 가격의 돌파구를 식별하기 위해 사용된다. 가격이 상단 띠를 돌파할 때, 더 봐; 가격이 하단 띠를 돌파할 때, 더 봐. RSI는 가짜 돌파구를 피하기 위해 사용된다. RSI가 반전할 때만 (상가권에서 내려가거나 상가권에서 올라간다면) 돌파구가 유효하다고 여겨진다. ADX는 트렌드가 보이지 않는 시장을 필터링하기 위해 사용되며, ADX가 32보다 낮을 때만 출전한다.
구체적인 입문 규칙은: 여러 입장은 가격이 상단선을 뚫고 RSI가 초매 지역에서 상승하여 ADX가 32보다 낮게 30선을 횡단하는 것을 요구합니다. 공짜 입장은 가격이 하단선을 뚫고 RSI가 초매 지역에서 하락하여 ADX가 32보다 낮게 70선을 횡단하는 것을 요구합니다.
출구 규칙에는 스톱 스톱 손실과 중선 회귀가 있다. 구체적으로: 고정된 스톱 스톱 손실을 설정한다. 가격이 브린 중선으로 다시 돌아오는 경우 평점이다.
이 시스템은 다음과 같은 장점을 가지고 있습니다:
브린 띠를 이용해서 가격을 잡을 수 있는 폭파 거래는 수익 가능성이 높습니다.
RSI와 결합하여 가짜 돌파구를 피하고 수익률을 높여줍니다.
ADX 지표를 사용하여 트렌드가 보이지 않는 시장을 필터링하여 무의미한 거래를 피하십시오.
복귀 중선 출전은 수익의 대부분을 고정시키고 수익의 회귀를 방지할 수 있다.
높은 이윤을 창출할 수 있는 유도 거래에 적합합니다.
이 시스템은 몇 가지 위험도 가지고 있습니다.
가격 상승을 잡지 못하면 수익을 낼 수 없습니다.
피드백 데이터 적합성 위험. 피드백 결과를 필드 디스크에 복제할 수 없습니다.
트렌드가 너무 짧으면, 흔들리는 시장도 손실을 볼 수 있다.
높은 레버리지는 위험을 증가시킵니다. 단독 손실은 더 커질 수 있습니다.
거래시간이 제한되어 있어서 일부 거래 기회를 놓칠 수 있습니다.
이 시스템은 다음과 같은 측면에서 최적화될 수 있습니다.
최적화 매개 변수, 지표 효과를 개선하는 것. 예를 들어, 부린 밴드 주기, RSI 매개 변수 등을 수정하는 것.
필터링 조건을 추가하거나 개선하여 수익 거래 비율을 높일 수 있습니다. 예를 들어 더 많은 지표 또는 기본 요소를 결합합니다.
스톱 스톱 손실 전략을 최적화하여 단편 수익을 극대화하십시오. 예를 들어, 스톱 스톱을 추적하고, ATR에 따라 스톱 스톱합니다.
적절한 레버리지를 자동으로 결정합니다.
기계학습 기술을 사용하여 최적의 변수를 자동으로 찾습니다.
황금불린带跳空回归系统는 전형적인 단선 돌파 시스템이다. 가격跳空로 인한 수익 기회를 포착한다. 동시에 여러 지표를 사용하여 필터링을 하고, 재검토에서 좋은 수익성을 보여준다. 그러나 실장 테스트는 아직 검증되지 않은 상태이며 유동성과 슬라이드도 결과에 영향을 미칩니다.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © exlux99
//@version=4
strategy("Bollinger Bands, RSI and ADX Trading System", overlay=true)
timeinrange(res, sess) => time(res, sess) != 0
timer = color.red
//bgcolor(timeinrange(timeframe.period, "0300-0600") or timeinrange(timeframe.period, "0900-1300") or timeinrange(timeframe.period, "2030-2300") ? timer : na, transp=70)
//RSI
length = input( 20 )
overSold = input( 35 )
overBought = input( 65 )
price = close
vrsi = rsi(price, length)
co = crossover(vrsi, overSold)
cu = crossunder(vrsi, overBought)
//if (not na(vrsi))
//BB
lengthB = input(60, minval=1)
src = input(close, title="Source")
mult = input(2.0, minval=0.001, maxval=50, title="StdDev")
basis = sma(src, lengthB)
dev = mult * stdev(src, lengthB)
upper = basis + dev
lower = basis - dev
//adx
adxlen = input(14, title="ADX Smoothing")
dilen = input(14, title="DI Length")
dirmov(len) =>
up = change(high)
down = -change(low)
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
truerange = rma(tr, len)
plus = fixnan(100 * rma(plusDM, len) / truerange)
minus = fixnan(100 * rma(minusDM, len) / truerange)
[plus, minus]
adx(dilen, adxlen) =>
[plus, minus] = dirmov(dilen)
sum = plus + minus
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)
longEntry = close < upper and crossover(vrsi,overSold) and sig < 32 //and (timeinrange(timeframe.period, "0301-0600") or timeinrange(timeframe.period, "0901-1300") or timeinrange(timeframe.period, "2031-2300"))
shortEntry = close > upper and crossunder(vrsi,overBought) and sig < 32 //and (timeinrange(timeframe.period, "0301-0600") or timeinrange(timeframe.period, "0901-1300") or timeinrange(timeframe.period, "2031-2300"))
tp=input(90, step=10)
sl=input(90, step=10)
strategy.entry("long",1,when=longEntry)
strategy.exit("X_long", "long", profit=tp, loss=sl )
strategy.close("long",when=crossunder(close,basis))
strategy.entry('short',0,when=shortEntry)
strategy.exit("x_short", "short",profit=tp, loss=sl)
strategy.close("short",when=crossover(close,basis))