이 전략은 쌍 RSI 지표를 통해 과매매 상황을 판단하고, 부린 띠의 돌파구와 결합하여 거래 신호를 생성합니다. 트렌드 추적 유형 전략에 속합니다. 전략은 비교적 간단하며, 여러 가지 지표의 조합을 통해 신호의 신뢰성을 높이고, 트렌드 상황에서 더 나은 수익을 얻으려는 것입니다.
이 전략은 두 개의 시간 주기의 RSI를 사용하여 단기 및 장기 초과 구매 및 초과 판매 상황을 각각 판단합니다. 거래 신호는 둘 다 동시에 초과 구매 또는 초과 판매 경계를 달성 할 때만 발생합니다. 이것은 단일 RSI가 생성하는 잘못된 신호를 피할 수 있습니다.
동시에, 전략은 부린띠 지표 판단 가격 돌파구를 도입한다. 거래는 RSI 조건이 충족되는 동시에 가격이 부린띠를 돌파하면 트래블에 오르거나 내리면 거래가 발생합니다. 부린띠의 돌파구가 비 트렌드 상황에서 신호를 생성하는 것을 피할 수 있습니다.
마지막으로, 전략은 속속평균선 판단 트렌드 방향에 추가한다. 부린 반을 뚫고, 큰 트렌드가 RSI 신호 방향과 일치하는 경우에만 포지션을 열 수 있다.
전략은 여러 지표 판단을 통합하여 가짜 신호를 잘 필터링하고 트렌드가 분명할 때만 거래를 생성할 수 있습니다. 빠른 속도 평균 선의 조합은 트렌드를 추적하는 데에도 유용합니다. 전략은 간단하고 직접적이며, 트렌드에서 발생하는 단기 라인위드 트렌드를 추적하여 수익을 창출합니다.
전략에는 트렌드 반전을 제때 식별할 수 없는 위험이 존재할 수 있다. 시장상황이 V형 반전이 발생하면 전략은 신속하게 중단할 수 없으며, 이로 인해 큰 손실이 발생할 수 있다. 또한, 매개 변수 설정은 전략의 성능에도 영향을 미치며, 최적의 매개 변수를 찾는 데 최적화가 필요하다.
가격 반전 시 신속한 손실을 방지하기 위한 Stop Loss 전략이 추가되었습니다.
다른 지표 판단을 도입해 거래량을 늘리고 허위 돌파를 방지하는 등
최적화된 파라미터 설정을 통해 최적의 파라미터 조합을 찾습니다.
신호의 정확성을 높이기 위해 트렌드 패턴을 판단하는 데 도움을 주는 기계 학습 모델을 추가합니다.
자금 관리와 위험 통제를 강화한다. 포지션 관리를 최적화하고 단독 손실을 엄격하게 통제한다.
이 전략은 쌍 RSI와 브린 밴드 지표를 종합적으로 사용하여 시장에서 단기 트렌드가 나타나면 이익을 얻을 수 있습니다. 전략은 간단하고 직접적이며 단기 트렌드를 추적하는 데 적합합니다. 그러나 트렌드 반전을 신속하게 식별 할 수 없는 것과 같은 제한이 있습니다.
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-12 04:00:00
period: 2m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy(title = "Madrugada strat copy", overlay = true, pyramiding = 0, default_qty_type = strategy.percent_of_equity, default_qty_value = 10, currency = currency.USD)
// === GENERAL INPUTS ===
// RSI 1
RSIlength = input(10,title="RSI")
RSIoverSold = input(65,title="OSold")
RSIoverBought = input(35,title="OBought")
price = close
vrsi = rsi(price, RSIlength)
// RSI 2
RSIlength2 = input(6,title="RSI2")
RSIoverSold2 = input(65,title="OSold2")
RSIoverBought2 = input(35,title="OBought2")
price2 = close
vrsi2 = rsi(price2, RSIlength2)
//Bollinger Bands
source = close
Bollinger = input(20, minval=1), Desv = input(1.7, minval=0.001, maxval=50)
basis = sma(source, Bollinger)
dev = Desv * stdev(source, Bollinger)
upper = basis + dev
lower = basis - dev
plot(basis, color=red, title="BB ma")
p1 = plot(upper, color=blue, title="BBajo")
p2 = plot(lower, color=blue, title="BAlto")
fill(p1, p2)
//Media movil
short = input(3, minval=1, title="Media corta")
long = input(10, minval=1, title="Media larga")
src = close
plot(sma(src, short), color=#00FF00, transp=0, linewidth=1, title="Media rapida")
plot(sma(src, long), color=white, transp=0, linewidth=2, title="Media lenta")
// === STRATEGY - LONG POSITION EXECUTION ===
enterLong() => vrsi < 30 and vrsi2 < 27 and cross(lower, price)
exitLong() => short < long
strategy.entry(id = "Long", long = true, when = enterLong()) // use function or simple condition to decide when to get in
// === STRATEGY - SHORT POSITION EXECUTION ===
enterShort() => vrsi > 70 and vrsi2 > 70 and cross(upper, price)
strategy.entry(id = "Short", long = false, when = enterShort())
// Definición señales de compra
buy_signals = vrsi < 30 and vrsi2 < 27 and cross(lower, price)
// Definición señales de venta
sell_signals = vrsi > 70 and vrsi2 > 70 and cross(upper, price)
// Dibuja las señales de compra venta en franjas de color
b_color = (sell_signals) ? color(red,65) : (buy_signals) ? color(green,65) : na
bgcolor(b_color)
// Dibuja las señales de compra venta coloreando las velas
barcolor(buy_signals ? white : sell_signals ? white : na)
plot(vrsi, color=white, linewidth=1)
plot(vrsi, color=white, linewidth=2)
// Crea alarmas usables desde el desplegable para poder enviar mails a haas
alertcondition(buy_signals, title='Buy-Signal', message='compra')
alertcondition(sell_signals, title='Sell-Signal', message='vende')