Contenido del artículo
- Evidencia y alcance
- Ilustración
- Proceso
- Un límite rodante no es un swing confirmado
- Cree la referencia antes de clasificar el evento.
- Un mismo límite puede producir diferentes resultados válidos.
- Plazos, invalidación y vencimiento de las órdenes
- El volumen puede seleccionar mayores movimientos y ejecuciones más caras
- Pruebe el cálculo de referencia antes de la estrategia.
- Errores frecuentes
- Lista práctica de verificación
- Preguntas frecuentes
- Fuentes de investigación
Evidencia y alcance
Las fuentes respaldan las fórmulas de canal, el desplazamiento de datos y la simulación de la sincronización de órdenes. Ninguna afirmación sobre el seguimiento de tendencias históricas se considera evidencia de que la entrada, el umbral de volumen y la salida propuestos aquí sean rentables.
Flujo de trabajo práctico
- Recoge barras NUtilice las observaciones completadas anteriores a la barra actual.
- Congelar U y DGuarde el precio y la antigüedad de cada extremo.
- Clasifica el eventoUna ruptura al cierre difiere de una excursión y una recuperación.
- Aplicar volumenUtilice solo variables observadas disponibles al enviar la orden.
- Simular ejecuciónAplique la política registrada de entrada, stop y vencimiento.
Un límite rodante no es un swing confirmado
Donchian toma los extremos de N observaciones; TradingView describe las bandas superior e inferior y su punto medio [1]. A diferencia de un pivote bilateral, no requiere una reversión posterior. La ventana anterior completada ya se conoce cuando comienza la siguiente barra. Durante una tendencia, su límite superior puede seguir subiendo sin funcionar como una resistencia que se mantenga.
La definición causal propuesta es U[t]=max(H[t−N:t]), D[t]=min(L[t−N:t]), M[t]=(U[t]+D[t])/2, excluyendo el extremo superior del segmento. Por lo tanto, la ventana termina en t−1. Si H[t] está incluido en U[t], la condición H[t]>U[t] se vuelve imposible por construcción.
Esta simple distinción afecta a todo el experimento. Un indicador gráfico puede mostrar una banda que incluya la barra activa con fines visuales; la estrategia aún debe especificar qué instantánea histórica utiliza. Almacene la marca de tiempo del extremo subyacente, así como su precio, para que los diagnósticos posteriores puedan distinguir los límites nuevos de los extremos antiguos que están a punto de expirar.
Cree la referencia antes de clasificar el evento.
En pandas, el desplazamiento de valores separa la ventana de referencia de la fila que se está evaluando ([2]). Una implementación es high.shift(1).rolling(N).max(). Desplazar un índice con freq no sustituye el movimiento de los valores observados con respecto a la fila de decisión. Se requiere una ventana válida completa en lugar de permitir silenciosamente un número variable de observaciones.
La línea base clasifica un cierre completo más allá de una banda con b=max(2 ticks,0.1×ATR[t−1]); N=20 y 0.1 son configuraciones de investigación propuestas. Para clasificaciones inmediatas de una barra, calcule una nueva referencia de ventana previa en cada barra. Para un candidato de barrido y recuperación de varias barras, congele el nivel original cuando el candidato comience.
De lo contrario, la barra de excursión entra en la siguiente ventana deslizante y mueve el límite que se está recuperando. Volver por debajo de un límite actualizado puede ser un evento diferente a volver por debajo del nivel que realmente se superó. Mantenga candidate_id, frozen_level, la marca de tiempo de referencia y la fecha de vencimiento para que la pregunta prevista permanezca estable durante toda la configuración.
U = max(H[t-N:t]); D = min(L[t-N:t])
b = max(2*tick, 0.1*ATR[t-1])
if no_active_setup and C[t] > U+b:
emit('up_breakout', signal_at=t, frozen_level=U)
if no_active_setup and H[t] > U+b and C[t] < U:
emit('upper_reclaim', signal_at=t, frozen_level=U)
# These labels represent different hypotheses.
# A close-confirmed order can be processed only after close t.
Un mismo límite puede producir diferentes resultados válidos.
Ejemplo sintético: las barras anteriores 20 tienen U=105, D=99 y ATR=1. Con tick=0.01, b=0.10. Una barra actual con H=106 y C=105.4 crea una ruptura de cierre alcista. Una propuesta de compra de próxima apertura en 105.5, stop en 103.9 y objetivo en 108.7 tiene 1.6 puntos de riesgo de precio inicial y un objetivo 2R antes de costos.
Caso de pérdida: tras abrir en 105.5, el precio cae a 103.8. El stop puede alcanzarse aunque el cierre que activó la entrada cumpliera todas las condiciones. Si la barra original hubiera tenido H=106 y C=104.7, no sería una ruptura confirmada al cierre. Podría ser un retorno bajo la banda superior para una estrategia de venta en corto definida por separado. No reclasifique una ruptura perdedora como barrido después de observar la pérdida.
Un caso más sutil se presenta cuando el máximo anterior de 105 sale de la ventana N-bar y U cae a 104. El precio en 104.5 puede ahora superar el canal sin alcanzar un nuevo máximo reciente. Este es un evento legítimo de ventana móvil. Excluirlo requiere una condición adicional registrada sobre el origen o el movimiento del nivel de referencia.
Se comprueba la igualdad deliberadamente. Un cierre exacto en U+b se rechaza por la condición estricta de mayor que en esta línea base. El redondeo al tamaño de tick debe realizarse según una convención fija antes de enviar la orden; de lo contrario, el ruido de punto flotante puede determinar si una observación se encuentra justo por encima o exactamente sobre un límite.
Plazos, invalidación y vencimiento de las órdenes
TradingView distingue entre la creación de una orden después del cierre y su ejecución en el siguiente tick disponible en su emulador [3]. Por lo tanto, la línea base propuesta, confirmada por el cierre, requiere un precio ejecutable, un spread y un deslizamiento posteriores. Una orden stop de compra que se sitúa por encima de U es un modelo diferente: puede ejecutarse dentro de la barra y revertirse antes del cierre. Un cierre desfavorable no puede anular retroactivamente dicha ejecución.
Las opciones de salida incluyen un stop estructural fijo, un trailing stop más corto en el canal inferior o una salida por tiempo. Seleccione una configuración simple antes de evaluarla. Para una entrada de retest, defina hasta dónde puede retroceder el precio, qué reacción califica y cuántas barras más sigue siendo válida la orden. Una ruptura que nunca vuelve a probar el nivel representa una oportunidad perdida, no un cambio automático a la estrategia de perseguir el precio.
Una barra que toca tanto el stop como el objetivo requiere datos más precisos o una convención de ordenación conservadora declarada. Las pruebas de brecha deben modificar la ejecución y el riesgo realizados sin cambiar la marca de tiempo de la señal original ni la referencia congelada. Un rechazo de ejecución antes de la presentación y una orden ejecutada perdedora son resultados distintos.
Un stop loss dinámico también requiere una regla de sincronización. Si la banda inferior de ayer se actualiza después del cierre de hoy, el nuevo stop loss no puede proteger los movimientos intrabarra anteriores. Guarda cada revisión del stop loss y su hora de activación en lugar de aplicar el trailing stop final hacia atrás a lo largo de la barra.
El volumen puede seleccionar mayores movimientos y ejecuciones más caras
Un filtro de ruptura propuesto requiere RVOL≥1.5 frente a un historial de tiempo de sesión comparable. En una decisión de cierre completa, el volumen total de la barra de activación está disponible. Para una orden stop pendiente enviado con anterioridad, solo el volumen ya observado al momento del envío puede determinar si la orden existe. El volumen de barra completa medido después de su ejecución no puede convertirse en un permiso de entrada retrospectivo.
Separe una rama basada únicamente en precios, una rama de liquidez mínima y una rama de volumen anormal. Estas responden a diferentes preguntas: la negociabilidad básica frente a la información incremental. Un subconjunto con alto RVOL puede moverse más lejos, pero también experimentar mayores brechas y diferenciales, por lo que la respuesta bruta al precio es insuficiente.
Compare la expectativa neta, la exposición y el número de oportunidades descartadas. Ajuste los presupuestos de riesgo entre variantes e informe los resultados por liquidez o hora del día utilizando definiciones de grupo establecidas con base en datos históricos. Una mayor tasa de éxito en un subconjunto pequeño no mejora automáticamente la rentabilidad ni reduce las pérdidas de la cartera.
Para recuperaciones de múltiples barras, almacene el volumen de excursión y el volumen de recuperación por separado. Se puede estudiar su relación, pero las longitudes de intervalo desiguales requieren normalización. El agregado OHLCV no puede determinar si la actividad ocurrió precisamente en el nivel de Donchian o en otro lugar dentro de una barra ancha.
Pruebe el cálculo de referencia antes de la estrategia.
Registre una pequeña cuadrícula de desarrollo como N=10,20,40. Registre los precios de las bandas, las marcas de tiempo de los extremos y la antigüedad del nivel en cada señal, incluyendo si el nivel se movió debido a que un extremo anterior expiró. Esto separa el comportamiento económico de los efectos mecánicos de la ventana y facilita la interpretación de la sensibilidad.
Una prueba de causalidad directa modifica H[t] manteniendo fijo el prefijo: U[t] debe permanecer sin cambios. Modificar H[t−1] puede modificar U[t]. Añadir casos de prueba con barras faltantes, días festivos, brechas de apertura y datos obsoletos. Comparar los cálculos por lotes con una implementación en tiempo real para que los errores de desfase de una barra no se oculten en un gráfico visualmente plausible.
Solo entonces se debe evaluar un período fuera de muestra bloqueado con rotación, comisiones, exposición, reducción máxima y sensibilidad de ejecución. Si se seleccionan noticias especiales, subconjuntos de apertura o cierre de sesión, se deben considerar como ensayos de investigación. Se deben reportar los candidatos fallidos y los retesteos del nivel que nunca ocurrieron, no solo las operaciones completadas desde límites favorables.
Errores frecuentes
Dejando que el nivel siga la excursión
Volver dentro de una banda recién actualizada puede ser distinto de recuperar el límite original que el precio había atravesado.
Confundir un toque con un cruce
La igualdad en U no implica automáticamente una ruptura; fije el redondeo al tamaño de tick y las reglas de comparación.
Los periodos cortos ocultan su coste de rotación.
Un N más pequeño puede crear señales frecuentes cuyos costos de ejecución dominan su ventaja bruta.
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.
Preguntas frecuentes
¿Conviene vender cuando el precio toca la banda superior?
No existe una conclusión general. Operar en contra del límite y comprar en una ruptura son hipótesis opuestas que requieren definiciones y pruebas separadas.
¿Puede Donchian sustituir los pivotes?
Puede proporcionar una referencia de ruptura, pero no ofrece la confirmación de inversión del lado derecho ni el orden de oscilación de un detector de pivote.
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.
- Donchian ChannelsTradingView. Lea las fórmulas del canal y sus usos descriptivos. Verificado el: .
- pandas.Series.shiftpandas. Se leyó la API para verificar el desplazamiento de valores entre filas. Verificado el: .
- Pine Script: StrategiesTradingView. Lea el comportamiento de creación de órdenes, next-available-tick y stop-order. 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