OPEN-SOURCE SCRIPT

Falsos Quiebres (15 Minutos)

//version=5
indicator("Falsos Quiebres en Soportes/Resistencias a Favor de la Tendencia (15 Minutos)", overlay=true)

// Parámetros
volMultiplier = input(1.5, title="Multiplicador del volumen para detectar falso quiebre")
pivotPeriod = input(5, title="Periodo de pivote para soportes y resistencias")
emaLength = 200 // Longitud de la EMA

// Cálculo de la EMA
ema200 = ta.ema(close, emaLength)

// Cálculo de soportes y resistencias
pHigh = ta.pivothigh(high, pivotPeriod, pivotPeriod)
pLow = ta.pivotlow(low, pivotPeriod, pivotPeriod)

// Cálculo del volumen promedio
volAvg = ta.sma(volume, 20)

// Variables para los niveles de soporte y resistencia
var float lastSupport = na
var float lastResistance = na

// Actualizar los niveles de soporte y resistencia
if not na(pLow)
lastSupport := pLow
if not na(pHigh)
lastResistance := pHigh

// Detectar falso quiebre en soporte (solo si la tendencia es alcista)
bullishTrap = (not na(lastSupport) and close < lastSupport and close[1] > lastSupport and volume > volAvg * volMultiplier and close > ema200 and (hour >= 8 and hour < 17))

// Detectar falso quiebre en resistencia (solo si la tendencia es bajista)
bearishTrap = (not na(lastResistance) and close > lastResistance and close[1] < lastResistance and volume > volAvg * volMultiplier and close < ema200 and (hour >= 8 and hour < 17))

// Marcar trampas en el gráfico con triángulos
plotshape(bullishTrap, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small, title="Falso Quiebre Alcista")
plotshape(bearishTrap, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small, title="Falso Quiebre Bajista")

// Alertas sonoras y visuales
if (bullishTrap)
alert("Falso quiebre alcista detectado en soporte durante horario de Londres", alert.freq_once_per_bar_close)
if (bearishTrap)
alert("Falso quiebre bajista detectado en resistencia durante horario de Londres", alert.freq_once_per_bar_close)

// Mensaje para los gráficos que no son de 15 minutos
var label warningLabel = na
if not (timeframe.isintraday and timeframe.multiplier == 15)
if na(warningLabel)
warningLabel := label.new(bar_index, high, text="Este indicador solo funciona en gráficos de 15 minutos", style=label.style_label_down, color=color.red, size=size.normal)
else
label.set_xy(warningLabel, bar_index, high) // Actualiza la posición de la etiqueta

// Dibujar la EMA en el gráfico
plot(ema200, color=color.blue, title="EMA 200")
Bands and Channels

오픈 소스 스크립트

진정한 TradingView 정신에 따라, 이 스크립트의 저자는 트레이더들이 이해하고 검증할 수 있도록 오픈 소스로 공개했습니다. 저자에게 박수를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 출판물에서 이 코드를 재사용하는 것은 하우스 룰에 의해 관리됩니다. 님은 즐겨찾기로 이 스크립트를 차트에서 쓸 수 있습니다.

차트에 이 스크립트를 사용하시겠습니까?

면책사항