Contenido del artículo

Evidencia y alcance

Fidelity explica un indicador de regresión, mientras que statsmodels y NIST ofrecen soporte para el ajuste y el diagnóstico. Ninguno establece la rentabilidad de la estrategia de recuperación de canales propuesta.

Datos y mercadosLos modelos de precios logarítmicos requieren precios de cierre positivos. Los precios negativos o cero requieren un modelo lineal definido por separado u otra transformación válida.
Marcos temporales de investigaciónLa configuración N=60 en H=1 o en barras diarias es experimental. La duración de la ventana, la escala residual y los costos de ejecución requieren evaluación para cada mercado.
El residuo cae a −2.225sigma, vuelve a entrar en −1.715sigma y regresa a cero en la ruta sintética exitosa.Abrir ilustración en tamaño completo
Valores z residuales sintéticos originales y volumen de un canal congelado supuesto. El eje vertical representa las desviaciones estándar residuales en lugar del precio; el centro plano ilustra b=0.

Flujo de trabajo práctico

Flujo de trabajo de Canales de regresión: ajuste estadístico y reversión a la media
Los pasos completos aparecen abajo. En cada etapa, se debe registrar el motivo de rechazo si faltan datos o no se cumplen las condiciones.
  1. Ajuste el modelo al pasadoUtilice el método OLS de precios logarítmicos con un intercepto, excluyendo la barra de detección.
  2. Comprobar el contextoAplique la pendiente registrada y los requisitos residuales.
  3. Fije el modelo de la excursiónAlmacenar coeficientes inmutables y el origen.
  4. Espere el regreso a la bandaExija un cierre dentro de la banda y por debajo del centro usado como objetivo.
  5. Evaluar el riesgoPruebe stops, salidas por tiempo y costos fuera de la muestra de desarrollo.

Una línea ajustada describe la ventana observada.

Fidelity describe su Indicador de Regresión Lineal mediante el punto final de una línea ajustada a lo largo de N periodos ([1]). Este artículo amplía esta descripción con bandas residuales. Un centro inclinado indica que estar muy por debajo de la línea no implica automáticamente un precio barato según sus fundamentos ni una subida inminente.

Separe dos preguntas: qué tan bien una línea recta explica el período pasado y si la desviación actual predice un retorno posterior. R² responde a la primera. Una caída constante puede tener un alto valor de R², mientras que comprar por debajo de su línea ajustada repetidamente genera pérdidas.

Un canal puede utilizarse para la reversión a la media o la continuación de la tendencia, pero se trata de hipótesis contrapuestas. La versión base que sigue espera una caída y un retorno dentro de la banda inferior fija. No cambia a momentum cuando falla una operación histórica de reversión a la media.

Ajustar solo las observaciones que preceden a la barra de detección

Para j=0…N−1, establezca y[j]=log(C[j]) y ajuste y=a+bj por mínimos cuadrados ordinarios. Los residuos son e[j]=y[j]−a−bj y s=sqrt(sum(e²)/(N−2)). En h pasos más allá de la ventana ajustada, m(h)=a+b(N−1+h), con bandas de precios exp(m(h)±ks). Las configuraciones propuestas son N=60, k=2; rechace los precios no positivos y una escala residual s cercana a cero.

statsmodels OLS no agrega automáticamente un intercepto a la matriz de diseño [2]; incluya una columna constante. Ajuste hasta t−1 y evalúe el precio de cierre de la barra t en h=1. Incluir t permitiría que el mismo choque moviera tanto el centro como la anchura utilizados para evaluarlo.

El filtro de contexto de rango propuesto abs(b)×(N−1)/s≤1 compara la deriva ajustada con la escala residual. Es una regla de selección, no una prueba de estacionariedad. Guarde a, b, s, el índice de origen y la ventana de entrada ajustada cuando una excursión genere un candidato. Nunca vuelva a ajustar ese candidato activo.

La expiración debe tener prioridad sobre la activación. El pseudocódigo explicita este orden e inicializa previous_z cuando se detecta la excursión por primera vez. Los datos faltantes, los resultados de ajuste no finitos y la escala residual cero desactivan al candidato en lugar de permitir la división por cero o una puntuación z extrema artificial.

if no_candidate:
    if invalid_or_nonpositive(close[t-N:t+1]): return
    a,b,s = fit_log_ols(close[t-N:t], with_intercept=True)
    if not finite(a,b,s) or s <= min_residual_scale: return
    regime_ok = abs(b)*(N-1)/s <= 1.0
    z = (log(C[t])-(a+b*N))/s
    if regime_ok and z < -2:
        freeze_candidate(a,b,s,origin=t-N,expiry=t+10,
                         previous_z=z,excursion_low=L[t])
else:
    if t > candidate.expiry:
        expire(); return
    j = t-candidate.origin
    z = (log(C[t])-(candidate.a+candidate.b*j))/candidate.s
    update_excursion_low(L[t])
    if candidate.previous_z < -2 and -2 <= z < 0:
        emit_long(t)
    candidate.previous_z = z
# Never refit an active candidate or backfill historical channels.

Un retorno dentro del canal puede tener éxito o fracasar.

Ejemplo sintético: el centro ajustado es aproximadamente 100, pendiente0 y escala residual logarítmica s=0.01. La banda inferior de dos sigmas es aproximadamente 98.02 y la banda superior102.02. El precio 97.8 está fuera de la banda inferior; un cierre posterior 98.3 reingresa. La entrada 98.4, el stop 97.5 y el objetivo 100 implican un riesgo 0.9 y una recompensa potencial 1.6, o aproximadamente 1.78R antes de los costos.

La ruta sintética exitosa alcanza primero 100. En la ruta de fallo, la nueva información impulsa el precio hacia 96 y luego hacia 94. La posición debe detenerse en un precio factible cercano a 97.5 o peor si se produce un gap. Un buen ajuste histórico no puede evitar un cambio en el entorno que genera el precio.

No amplíe el margen sigma tras la caída y declare que el stop loss anterior nunca se rompió realmente. Eso alteraría la instantánea de la decisión basada en el resultado. Las actualizaciones del modelo para futuros candidatos no deben modificar la contabilidad de una operación existente.

Otra ruta salta directamente de 97.8 a 101. Aunque ha vuelto a situarse dentro del rango, la línea base exige z<0 y, por lo tanto, no se compra por encima de su objetivo central. Esta regla se establece de antemano, en lugar de añadirse tras observar una brecha desfavorable entre riesgo y recompensa.

Los coeficientes congelados aún pueden implicar un centro en movimiento.

Congelar a y b no hace que el centro proyectado sea horizontal. Continúa siguiendo la pendiente original a medida que avanza el índice de tiempo. En la señal, congele un objetivo igual al centro proyectado para el tiempo de entrada previsto y un stop por debajo del mínimo de toda la excursión menos un margen.

La posición propuesta tiene un límite de tiempo de salida de diez barras si no se alcanza ni el objetivo ni el stop. El vencimiento de la posición candidata y el límite de tiempo de salida de la posición son diferentes: uno limita la espera de el regreso a la banda, el otro limita el mantenimiento de la posición después de la entrada. Almacene ambos para evitar extender accidentalmente una posición candidata al abrir una operación.

Si la ejecución se retrasa más allá del tiempo de entrada previsto, defina si el objetivo congelado permanece sin cambios o se cancela antes de su envío según una regla económica. No modifique el objetivo después de una ejecución solo para mantener atractiva la recompensa potencial.

Compare las suposiciones sobre la próxima apertura y la cotización ejecutable en torno a movimientos rápidos. Un cruce de línea histórico no garantiza una ejecución en la línea. Si el objetivo es una orden límite ya colocada, modele su activación, cantidad y posible no ejecución en lugar de acreditar automáticamente el precio central cada vez que una barra posterior lo atraviese.

Los diagnósticos residuales no constituyen un certificado de rentabilidad.

El NIST analiza supuestos residuales clásicos como la independencia y la varianza estable [3]. Los precios financieros pueden violarlos. En consecuencia, ±2s no es automáticamente un intervalo de pronóstico 95% para el próximo precio, y un valor p de pendiente OLS convencional no es evidencia de una ventaja negociable.

Analice la autocorrelación residual, las colas y la estabilidad de s entre ventanas. Residuos persistentes de un mismo lado pueden indicar que la estrategia opera en contra de una nueva tendencia. Use estos diagnósticos para explicar el comportamiento del modelo, sin seleccionar solo episodios históricos favorables.

Una comparación práctica mantiene instantáneas fijas para cada candidato y grafica el movimiento del precio en relación con esas instantáneas. Si la aparente reversión ocurre solo porque un centro reajustado repetidamente se mueve hacia el precio, el efecto es una adaptación del modelo en lugar de que el precio regrese a su referencia original.

R², el error estándar y la puntuación z cumplen funciones distintas. R² describe el ajuste, el error estándar resume la escala residual dentro de la ventana y la puntuación z expresa la desviación actual bajo esa escala fija. Ninguno debe interpretarse como la probabilidad de que la siguiente operación sea ganadora.

El volumen puede filtrar eventos sin reescribir el canal.

Una hipótesis propuesta evita operar contra el movimiento del precio cuando RVOL es inusualmente alto, pues puede acompañar un reajuste de valoración. Otra busca actividad elevada durante la excursión seguida de menor actividad al recuperar la banda. Elija y registre una característica antes de examinar resultados; no aplique ambas explicaciones según convenga.

Utilice una línea base del mismo tiempo, registre los diferenciales y las noticias con marca de tiempo si están disponibles, y evite que el volumen de excursiones completadas influya en la decisión antes de que finalice la excursión. Al confirmar el regreso a la banda, se puede resumir la excursión observada, pero el available_at de la función debe reflejar su entrada más reciente.

Cambiar la regresión de mínimos cuadrados ordinarios (MCO) a una regresión ponderada por volumen modifica el modelo en sí. Evalúelo como una versión distinta en comparación con la versión base sin ponderar. De lo contrario, un beneficio reportado derivado del volumen podría combinar un centro, una escala residual y un filtro de entrada modificados, sin identificar qué componente es relevante.

Pruebas cronológicas y controles útiles

Compara el canal de regresión con una media plana al estilo de Bollinger y una línea base de puntuación z sin pendiente bajo políticas de entrada, salida y costo equivalentes. Selecciona N, k y el filtro de contexto en los datos de desarrollo, luego conserva una prueba final no vista. Elimina los intervalos de etiquetas comerciales superpuestos cuando una división compartiría el mismo resultado de excursión.

Las pruebas de implementación deben verificar el intercepto, el final de la ventana t−1, el escalado logarítmico, los grados de libertad, s igual a cero, las observaciones faltantes y la invariancia del prefijo. Pruebe un candidato expirado que vuelve a entrar en la siguiente barra: debe permanecer expirado en lugar de emitir una señal tardía.

Informe el retorno neto, la pérdida extrema, el tiempo sin operaciones y el rendimiento según el régimen previamente definido. Analice las situaciones de estrés relacionadas con los ejecuciones y las brechas. Si la rentabilidad depende de acreditar un ejecución exacta al precio central dentro de una barra de brecha ambigua, el modelo de ejecución necesita corrección antes de extraer conclusiones económicas.

Un polinomio de orden superior puede ajustarse mejor a los datos históricos, aunque introduce extrapolaciones inestables y ofrece más opciones de investigación. El modelo lineal de referencia es valioso porque sus coeficientes, proyecciones y casos de fallo pueden auditarse directamente.

Errores frecuentes

Reajustar canales históricos

La línea actual reescribe las señales anteriores y hace que el gráfico parezca consistentemente preciso.

Convertir R² en tasa de victorias

El ajuste explicativo dentro de la muestra no es lo mismo que el rendimiento predictivo en las operaciones bursátiles.

Operar contra un cambio de régimen

El antiguo canal puede perder relevancia cuando la nueva información modifica el precio del instrumento.

Lista de verificación antes de usar este método

Marca cada punto después de verificarlo con tus datos. El progreso se guarda en este navegador; no certifica que la estrategia sea rentable.

0/8 puntos

Preguntas frecuentes

¿La regresión siempre es mejor que las bandas de Bollinger?

No. Añade una pendiente y opciones de modelo. Compárelo bajo reglas de negociación y ejecución coincidentes para aislar su valor.

¿Puede un polinomio mejorar el ajuste?

Se puede investigar, pero esto añade grados de libertad y riesgo de extrapolación. Un ajuste histórico más preciso por sí solo no garantiza una mejor estrategia.

Fuentes de investigación

Cada fuente respalda la definición o evidencia descrita a su lado. El pseudocódigo, los ejemplos sintéticos y los parámetros propuestos requieren una validación independiente.

  1. Linear Regression IndicatorFidelity. Lea la definición del punto final del indicador de regresión. Verificado el: .
  2. statsmodels OLSstatsmodels. Lea el intercepto de MCO, los datos faltantes y el comportamiento del ajuste. Verificado el: .
  3. Are the model residuals well-behaved?NIST/SEMATECH. Lea los supuestos residuales clásicos; estos no son conclusiones sobre la previsibilidad del mercado. Verificado el: .

Métodos relacionados

Nota de riesgo

Este contenido sirve para la educación y el diseño de investigaciones; no constituye asesoría financiera. Backtest simula datos históricos, no garantiza resultados futuros y no ejecuta operaciones reales. Los métodos de esta biblioteca no son necesariamente funciones disponibles en la aplicación. Consulta la metodología y el centro de aprendizaje.

Valida las reglas antes de arriesgar capital real

Revisa la compatibilidad de la aplicación, los datos y cada operación simulada; los detectores avanzados pueden requerir una implementación independiente.

Descarga Backtest en App Store