Hicimos backtest de 1.643 de nuestras propias señales de patrones contra SPY. Esto es lo que resistió.
Los patrones de gráfico son lo más fácil de las finanzas para montar un negocio de contenidos, y lo más difícil de defender con números. Todos los sitios de inversión minorista que hayas abierto explican el hombro-cabeza-hombro, los dobles suelos, las banderas y las divergencias como si obviamente funcionaran. Casi ninguno de esos sitios te muestra jamás la tasa de acierto.
Vivimos de operar un escáner de patrones, así que se sentía deshonesto seguir esquivando la pregunta. En mayo de 2026 tomamos cada una de las señales de patrón de gráfico que nuestro escáner había publicado desde el 2025-01-01 — 1.643 patrones en 12 tipos de detector, sobre el universo S&P 500 / Nasdaq 100 / principales ETF de EE. UU. — y proyectamos cada una hacia adelante en el tiempo contra el índice de referencia SPY.
Los resultados fueron lo bastante incómodos como para que decidiéramos publicarlos en el blog público en lugar de guardarlos en un documento interno. Esta entrada es ese documento, depurado.
TL;DR. Tras restar la rentabilidad del mercado de SPY, la mayoría de nuestras señales de tendencia alcista pierden dinero respecto al índice — un hombro-cabeza-hombro invertido de manual en realidad predice rendimiento inferior. Dos familias de señales específicas sobreviven: las señales de tendencia bajista (tendencia −1 en el horizonte de 60 días, 63,6 % con alpha positivo) y las señales de divergencia (divergencia alcista de MACD a 20 días, 71,1 % con alpha positivo). El simple e ingenuo seguidor de tendencia alcista es la peor operación que sobrevive en la tabla.
Por qué probamos contra SPY en lugar de la rentabilidad bruta
En un año como 2025, casi cualquier patrón de gráfico parece ganador si mides rentabilidades brutas. El S&P subió aproximadamente un 22 % durante el período que estudiamos. Cualquier señal alcista aleatoria que hubieras anotado habría cerrado en verde más de la mitad de las veces, no porque la señal fuera correcta, sino porque la marea estaba subiendo.
La pregunta honesta es si el patrón aportó información más allá de poseer SPY. Para cada señal de patrón, calculamos tres números:
- Rentabilidad bruta: cómo se movió la acción durante la ventana hacia adelante.
- Rentabilidad base: cómo se movió SPY durante la misma ventana de calendario.
- Alpha: la rentabilidad bruta menos la base, con el signo invertido para los patrones bajistas, de modo que "la predicción fue correcta" siempre aparezca como un número positivo.
Concretamente, para una señal de patrón en la fecha t con un horizonte hacia adelante de w días de negociación:
αw = ( rw − bw ) × bear_bull
donde rw es la rentabilidad de la acción desde t hasta t+w, bw es la rentabilidad de SPY sobre las mismas fechas de calendario (alineadas por calendario, no por días de negociación, para gestionar limpiamente las suspensiones de cotización), y bear_bull es +1 para patrones alcistas y −1 para patrones bajistas. Un acierto es αw > 0.
Bajo esa definición, una tasa de acierto del 50 % significa que la señal es indistinguible del azar. Cualquier valor materialmente por encima del 50 % es alpha; cualquier valor materialmente por debajo del 50 % significa que la señal es anti-predictiva.
Esta es una vara mucho más exigente que la pregunta "¿subió la acción?" que responden la mayoría de las guías de patrones.
Cómo lo ejecutamos
- Universo: S&P 500 + Nasdaq 100 + principales ETF de EE. UU., aproximadamente de 500 a 800 tickers en el alcance en cualquier momento.
- Ventana temporal: todo patrón cuya
end_datecae entre el 2025-01-01 y la actualidad. - Horizontes hacia adelante: 5, 20 y 60 días de negociación después de
end_date. - Base: SPY, alineado por calendario a la
end_datede cada patrón. - Agregación: resultados agrupados por
(pattern_type, bear_bull). Internamente sí reportamos un corte más fino porsub_type, pero los números principales son más claros a nivel de tipo. - Muestra: 1.695 patrones cargados; 1.643 (96,9 %) tenían suficientes datos hacia adelante en al menos una ventana. Los 52 patrones omitidos eran demasiado recientes — su
end_datecaía dentro de los 5 días de negociación más recientes paraw5, 20 días paraw20, o 60 días paraw60.
Una nota práctica sobre la columna de 60 días: los patrones cuya end_date está dentro de los últimos 60 días de negociación están silenciosamente ausentes de esa columna. Donde la muestra resultante cae a un solo dígito, la celda no es fiable. Las señalamos más abajo.
La tabla completa
Esto es cada agregado de la ejecución, ordenado por tipo de detector. Los valores de Acierto son porcentajes con alpha positivo — el porcentaje de señales de patrón en el grupo cuya rentabilidad hacia adelante superó a SPY en la dirección predicha.
| Type | Direction | n | 5d win | 20d win | 60d win |
|---|---|---|---|---|---|
| trend | ▼ Bearish | 298 | 56.0% | 57.2% | 63.6% |
| trend | ▲ Bullish | 487 | 40.7% | 41.3% | 23.5% |
| resist_support | ▼ Bearish | 23 | 73.9% | 33.3% | 50.0% |
| resist_support | ▲ Bullish | 22 | 40.9% | 53.8% | 0.0% ⚠︎ |
| flag | ▼ Bearish | 37 | 48.6% | 33.3% | 50.0% |
| flag | ▲ Bullish | 51 | 49.0% | 53.3% | 100.0% ⚠︎ |
| double_ex | ▼ Bearish | 24 | 70.8% | 63.6% | 33.3% |
| head_shoulder | ▼ Bearish | 41 | 56.1% | 51.9% | 50.0% |
| head_shoulder | ▲ Bullish | 46 | 32.6% | 27.3% | 0.0% ⚠︎ |
| divergence_rsi | ▲ Bullish | 57 | 52.6% | 64.5% | 0.0% ⚠︎ |
| divergence_macd | ▼ Bearish | 16 | 43.8% | 22.2% | 50.0% |
| divergence_macd | ▲ Bullish | 68 | 50.0% | 71.1% | 0.0% ⚠︎ |
| avg_cross_60 | ▼ Bearish | 65 | 64.6% | 51.4% | 25.0% |
| avg_cross_60 | ▲ Bullish | 101 | 44.6% | 41.4% | 0.0% ⚠︎ |
| avg_cross_120 | ▼ Bearish | 23 | 52.2% | 46.7% | 75.0% |
| avg_cross_120 | ▲ Bullish | 25 | 52.0% | 53.8% | 0.0% ⚠︎ |
| avg_openUp | ▼ Bearish | 46 | 52.2% | 60.0% | 75.0% |
| avg_openUp | ▲ Bullish | 69 | 39.1% | 44.0% | 0.0% ⚠︎ |
| super_trend_adx | ▼ Bearish | 73 | 60.3% | 53.7% | 75.0% |
| super_trend_adx | ▲ Bullish | 70 | 48.6% | 58.1% | 0.0% ⚠︎ |
Las partes interesantes de esta tabla no son el medio de aspecto aleatorio. Son los tres patrones que aparecen de forma consistente.
Hallazgo 1: cazar acciones débiles funciona mejor que cazar acciones fuertes
Toma las cuatro familias de detectores con suficientes muestras en ambos lados — trend, avg_openUp, super_trend_adx, flag — y alinea el alpha a 20 días para la señal alcista (+1) y bajista (−1):
| Pattern | n | 5d win | 20d win | 60d win |
|---|---|---|---|---|
| trend ▼ Bearish | 298 | — | 57.2% | — |
| trend ▲ Bullish | 487 | — | 41.3% | — |
| avg_openUp ▼ Bearish | 46 | — | 60.0% | — |
| avg_openUp ▲ Bullish | 69 | — | 44.0% | — |
| super_trend_adx ▼ Bearish | 73 | — | 53.7% | — |
| super_trend_adx ▲ Bullish | 70 | — | 58.1% | — |
| flag ▼ Bearish | 37 | — | 33.3% | — |
| flag ▲ Bullish | 51 | — | 53.3% | — |
Tres de las cuatro familias producen más alpha cuando se usan para encontrar acciones débiles que cuando se usan para encontrar acciones fuertes. Esto es contraintuitivo, porque todos los sitios de contenidos minoristas enmarcan el análisis de patrones como una herramienta para "encontrar al próximo gran ganador". Nuestros datos, en este universo, dicen que el uso más fiable es "encontrar nombres que van a quedarse rezagados respecto al índice".
Hay tres mecanismos plausibles para esto:
- El lado corto está menos saturado. Tanto el dinero minorista como el institucional se inclinan al lado largo. Una señal bajista de gráfico tiene menos participantes apoyándose en ella, así que se arbitra menos. El alpha que haya en la señal sobrevive más tiempo.
- Caer es asimétrico. Las acciones caen cuando desaparece la compra, no cuando aparece la venta. Los indicadores técnicos que buscan agotamiento son estructuralmente mejores para detectar esa desaparición que para detectar demanda nueva.
- En una cinta alcista de una sola dirección, los rezagados son reales. Si SPY avanza lentamente hacia arriba y una acción no participa, algo va genuinamente mal con la acción — rotación sectorial, fundamentales, liquidez. El patrón está detectando esa anomalía en lugar de predecirla.
La interpretación honesta es alguna mezcla de (1), (2) y (3), y las proporciones se verán diferentes en una cinta lateral o bajista. Lo cual es la siguiente advertencia.
Hallazgo 2: las señales de tendencia alcista son anti-predictivas a 60 días
Aquí está cada señal de tendencia / momentum alcista, solo en la ventana de 60 días:
| Signal (Bullish) | n | 5d win | 20d win | 60d win |
|---|---|---|---|---|
| trend | 487 | — | — | 23.5% |
| avg_cross_60 | 101 | — | — | 0.0% ⚠︎ |
| avg_cross_120 | 25 | — | — | 0.0% ⚠︎ |
| avg_openUp | 69 | — | — | 0.0% ⚠︎ |
| super_trend_adx | 70 | — | — | 0.0% ⚠︎ |
Los valores del 0 % son en su mayoría la advertencia de tamaño de muestra — esos grupos tienen solo un puñado de patrones lo bastante antiguos como para calificar, y todos resultaron decepcionar. Tómalos con el escepticismo apropiado. Pero el número de tendencia +1 es el resultado principal de todo este estudio: con n = 487, el grupo con más muestras de nuestro conjunto de datos, la señal de tendencia alcista es anti-predictiva en el horizonte de 60 días, con solo el 23,5 % de las señales superando a SPY. El 76,5 % restante quedó rezagado.
La señal no es nada. El mismo grupo trend +1 muestra un 40,7 % con alpha positivo a 5 días y un 41,3 % a 20 días — el momentum de corto plazo es real, simplemente la predicción se está deshaciendo. Desde una perspectiva de finanzas cuantitativas, esta es exactamente la firma de reversión a la media que esperarías: continuación a corto plazo, reversión a largo plazo, con la reversión lo bastante grande como para dominar el resultado acumulado. Desde la perspectiva de un practicante de patrones de gráfico, es lo inverso de lo que prometen los manuales.
La lectura más limpia de trend +1: es una señal real de corto horizonte que no debería mantenerse más de cuatro a seis semanas.
Hallazgo 3: los patrones de divergencia son la única familia alcista con alpha persistente
De cada familia alcista (+1) que rastreamos, solo dos tienen una tasa de acierto de alpha a 20 días materialmente por encima del 50 %:
divergence_macd (+1): 71,1 % en w20, n = 68. Estadísticamente fuerte.divergence_rsi (+1): 64,5 % en w20, n = 57.
Este es el caso interesante de todo el estudio. La divergencia no es una señal de momentum — no dice "esta acción va a subir". Dice "esta acción está bajando, pero el momentum se está desvaneciendo". Capta un punto de inflexión en lugar de una continuación. En el marco del Hallazgo 1, está más cerca de "encontrar un perdedor sobrevendido cuya presión vendedora se está agotando" que de "encontrar una acción fuerte". Mecánicamente, es una señal contraria vestida con ropa de análisis técnico.
La columna de 60 días para ambas familias de divergencia tiene advertencia de tamaño de muestra y es ruidosa, así que no hacemos ninguna afirmación sobre persistencia más allá de un mes. Pero a lo largo de una ventana de 20 días, en nuestro universo, con n en las decenas altas, la divergencia es la señal alcista más fiable que publicamos.
Un caso específico: head_shoulder (+1) está invertido
El patrón alcista de manual hombro-cabeza-hombro (un hombro-cabeza-hombro invertido, la "planta baja antes de un repunte") rinde de la siguiente manera:
| Signal | n | 5d win | 20d win | 60d win |
|---|---|---|---|---|
| head_shoulder (+1) | 46 | 32.6% | 27.3% | — |
La señal no es débil. Está al revés. Comprar tras un hombro-cabeza-hombro invertido en 2025-2026, en este universo, ha sido una operación peor que una moneda al aire contra SPY en cada horizonte que medimos. La explicación conductual es sencilla: suficientes traders aprendieron el manual como para que "ponerse largo tras un HCH invertido" sea ahora una operación saturada, la entrada empuja los precios en el corto plazo, y el movimiento se revierte en un horizonte lo bastante largo como para que quienes siguen el manual se rindan.
Este es precisamente el tipo de resultado que no puedes obtener leyendo el manual. Solo puedes obtenerlo contando.
No vamos a eliminar head_shoulder (+1) del escáner. Lo que sí vamos a hacer es usar el campo de tasa de acierto histórica para indicar a los suscriptores que esta celda en particular es actualmente anti-predictiva.
Dónde aparecen los números históricos en el producto
Si eres suscriptor de pago, ya lo habrás visto: cada tarjeta de patrón y página de detalle en Pattern Vista lleva ahora una pequeña insignia que muestra la tasa de acierto de alpha histórica a 20 días para ese grupo exacto (pattern_type, direction, sub_type). Las celdas por encima del 60 % reciben una etiqueta esmeralda, las celdas entre el 45 % y el 60 % reciben un gris neutro, y las celdas por debajo del 45 % reciben una etiqueta roja. Una tarjeta Trend +1 hoy se muestra en rojo. Una tarjeta MACD divergence +1 hoy se muestra en esmeralda.
Este es un pequeño elemento de interfaz con un único objetivo de diseño: evitar que sobreinterpretes cualquier señal individual. El detector es lo que es. La insignia te dice, de un solo vistazo, cómo se ha comportado históricamente el mismo detector. Se actualiza cada noche a partir de los mismos datos descritos en esta entrada.
Si estás en el nivel gratuito, la insignia se muestra como un icono bloqueado — puedes ver que los datos existen, puedes leer este artículo para entender lo que significan, y puedes mejorar tu plan para leer las celdas individuales.
Lo que este estudio no dice
Este fue un experimento enfocado con varias restricciones deliberadas, y las conclusiones solo llegan tan lejos como esas restricciones lo permiten.
-
El universo es la cinta alcista de EE. UU. de 2025-2026. Un único régimen. El hallazgo de que "los patrones bajistas producen alpha" bien podría ser una propiedad de los mercados alcistas específicamente — cuando la marea sube, los barcos que no se elevan tienen una razón, y esa razón puede detectarse. En un régimen lateral o bajista, esa asimetría podría desaparecer, invertirse o ahogarse en la volatilidad. Aún no podemos probarlo.
-
Que las familias de momentum alcista sean anti-predictivas puede ser en sí mismo condicional al régimen. La misma señal
trend +1que perdió frente a SPY en 2025-2026 podría haber sido la operación de la década en 2017 o 2024. Los backtest entre regímenes son lo siguiente en nuestra hoja de ruta. -
Sin segmentación por industria ni capitalización de mercado. Una señal
super_trend_adx +1sobre un nombre de salud de gran capitalización y sobre una minera de pequeña capitalización no debería esperarse que tengan el mismo alpha. Agregamos; aún no hemos segmentado. -
Sesgo de supervivencia. Nuestro universo son los constituyentes actuales del índice. Los tickers que fueron retirados de cotización entre 2025 y ahora están ausentes. Esto sesga todos los números hacia arriba, especialmente en el lado alcista, donde los desenlaces más catastróficos (ir a cero) son precisamente lo que se elimina del universo.
-
Sin costes de transacción, sin deslizamiento. La ejecución en el mundo real se comerá parte de cada número de alpha anterior. Los nombres poco negociados se comerán más.
-
Cada patrón se trata como independiente. Un solo nombre que produce cinco patrones en una semana se convierte en cinco entradas en la muestra, aunque esas entradas estén altamente correlacionadas. La muestra efectiva es más pequeña que
n. -
Los patrones son las señales de nuestro escáner, no las definiciones académicas. Nuestras elecciones de parámetros en cada detector tienen un efecto material — un umbral más estricto habría producido menos señales de mayor calidad; uno más laxo, lo contrario. Los números de alpha pertenecen a nuestro escáner, no al "hombro-cabeza-hombro" como concepto platónico.
Si alguna de estas advertencias es un obstáculo decisivo para la decisión que estás a punto de tomar a partir de una de nuestras señales, toma la insignia como orientativa, no como prescriptiva.
Lo que vamos a hacer a continuación
Hay tres seguimientos específicos en cola:
- Backtest entre regímenes. Extraer el historial de patrones hasta 2018 o antes, separar los regímenes alcista / bajista / lateral, y volver a ejecutar. Esta es la única pregunta más importante que actualmente no podemos responder.
- Experimentos de apilamiento de señales. Tomar los grupos de alto alpha (divergencia MACD +1, tendencia −1, doble suelo −1) y probar si añadir un segundo filtro (una comprobación de distancia a la media móvil de 250 días, una puerta de acuerdo multi-temporalidad) eleva el alpha. El hilo de la hoja de ruta para esto está etiquetado internamente como "ranking de desviación" y "puntuación de fuerza de tendencia".
- Cortes por industria / capitalización de mercado. Reagrupar el conjunto de datos existente de 1.643 muestras por sector y por decil de tamaño, y buscar si el alpha está concentrado en rincones específicos.
Cada uno de esos será una entrada aparte cuando llegue. Por ahora, la conclusión práctica de esta es la insignia — cada tarjeta en Pattern Vista te dice ahora cómo se ha comportado históricamente la señal subyacente. Úsala como una entrada entre varias, y lee las celdas, no los titulares.