Una marca histórica no indica cuándo apareció

Que hoy veas una flecha sobre un mínimo pasado no demuestra que pudieras verla cuando se formó. Separa tres datos: el valor calculado, la vela donde se dibuja y el primer momento en que estuvo disponible. La etiqueta «sin repintado» resulta incompleta si no especifica entradas, confirmación y posibles desplazamientos. Una captura diferente merece investigación, pero no prueba por sí sola engaño, uso de datos futuros ni una pérdida financiera.

Empieza por la regla declarada: ¿es provisional durante la vela abierta?, ¿requiere barras posteriores?, ¿utiliza otro intervalo? El cierre de M5 no cierra automáticamente la vela H1 consultada por el programa. Puedes aceptar un dibujo retrospectivo para estudiar estructura y, al mismo tiempo, impedir que una prueba lo trate como señal ejecutable anterior a su reconocimiento.

Identifica el mecanismo antes de atribuir una causa

MetaQuotes advierte de que el último segmento de ZigZag puede cambiar con nuevos datos. No sustituyas su implementación y parámetros por una regla porcentual universal. Para otra herramienta, como Parabolic SAR, comprueba por separado qué valores son provisionales. Que dos herramientas modifiquen su presentación no significa que empleen la misma lógica.

En MQL5, la documentación de OnCalculate contempla que prev_calculated vuelva a cero cuando se carga historia más profunda o se rellenan huecos. Un búfer guardado no garantiza que todos los datos de entrada permanezcan idénticos después del reinicio. Conserva las exportaciones, la versión y los ajustes antes de explicar una diferencia. El sesgo de anticipación aparece cuando asignas una decisión a un momento anterior a la disponibilidad de la información necesaria; reconocimiento y precio de ejecución exigen comprobaciones separadas.

El ejemplo M5: marcada a las 10:10, disponible a las 10:25

Usa un modelo ficticio continuo, sin huecos, con horas de apertura de velas mostradas en Europe/Madrid. El máximo debe superar estrictamente los de dos barras completas a cada lado; la igualdad no sirve. Los máximos son: 10:00, 1,1000; 10:05, 1,1010; 10:10, 1,1040; 10:15, 1,1030; 10:20, 1,1020. Al cerrar la candidata a las 10:15 todavía no hay vecinos derechos terminados. El primero termina a las 10:20; el segundo, a las 10:25. Solo entonces se confirma el punto de 1,1040.

Una marca dibujada sobre las 10:10 llega quince minutos después de la apertura de esa vela y diez después de su cierre. No son dos demoras distintas: cambia la referencia temporal. Supón que el primer Bid disponible para vender tras la confirmación es 1,1018 USD por EUR. Atribuir una entrada anterior en 1,1040 mejora artificialmente el precio en 22 pips, con pip de 0,0001. Para una exposición de 10.000 EUR, la diferencia de resultado por precio sería 22 USD antes de costes. Sin salida definida no puedes calcular un beneficio de la operación.

Si cambias solo el máximo de las 10:20 a 1,1045, la candidata deja de cumplir. También falla si ese vecino vale exactamente 1,1040, por la desigualdad estricta. El vecino superior tampoco se convierte automáticamente en pivote confirmado: aún necesita sus propios datos derechos. Como ejercicio monetario adicional, una conversión asignada de 0,90 EUR por USD transforma los 22 USD en 19,80 EUR; no es una cotización actual ni cambia el instante de disponibilidad.

Distingue datos revisados de dependencia del futuro

Una exportación conserva cierres 100, 102 y 104: la SMA de tres observaciones es 102. Otra exportación de los mismos instantes contiene 100, 102 y 101: la SMA es 101. La fórmula permanece igual y cambió una entrada. Eso puede explicar esa diferencia concreta sin demostrar que el programa completo sea correcto. Investiga el campo, las marcas temporales y la revisión; no diagnostiques anticipación solo por el cambio de pantalla.

La entrada cambió; la fórmula sigue igualTarjetas que comparan dos exportaciones ficticias de los mismos tres intervalos cerrados. No son dos algoritmos ni una secuencia de operaciones.EJEMPLO DE CÁLCULOExportación A100, 102, 104 → SMA 102Exportación B100, 102, 101 → SMA 101Prueba de añadido100/110 → 100/120Reconocimiento M510:10 → 10:25
La entrada cambió; la fórmula sigue igual. Tarjetas que comparan dos exportaciones ficticias de los mismos tres intervalos cerrados. No son dos algoritmos ni una secuencia de operaciones.

Reconcilia las entradas antes de probar dependencia de datos futuros.

Exportación A
100, 102, 104 → SMA 102 – Media aritmética de tres cierres.
Exportación B
100, 102, 101 → SMA 101 – El tercer cierre histórico fue distinto.
Prueba de añadido
100/110 → 100/120 – Aquí sí se mantiene el precio 100 y se añade 120; cambia el máximo de todo el conjunto.
Reconocimiento M5
10:10 → 10:25 – La marca puede situarse atrás; su disponibilidad no retrocede.

Una prueba diferente calcula un prefijo, añade observaciones posteriores sin modificar las anteriores y vuelve a comparar las salidas declaradas definitivas. En el prefijo 100, 110, una regla que divide cada precio por el máximo de todo el conjunto cargado da 100/110 = 0,9091 para el primero. Tras añadir 120, pasa a 100/120 = 0,8333: cae aproximadamente 0,0758 aunque aquel precio 100 no cambió. La dependencia del futuro existe sin índices negativos. Una versión que usa solo el máximo acumulado hasta cada instante mantiene el primer resultado en 1 en ambas ejecuciones. Superar este caso no certifica todas las rutas del programa.

Capturas, alertas y repetición tienen límites diferentes

Guarda registros nuevos sin sobrescribir los antiguos: instrumento, proveedor, intervalo, reloj, versión, parámetros, hora de observación, hora de la vela, estado abierto o cerrado, valor, dirección y primera aparición. Una captura con escala temporal complementa la exportación; no la sustituye. Registra también interrupciones de la observación: que no tengas una señal guardada no demuestra que nunca apareciera.

Las alertas de TradingView conservan la copia del programa y los ajustes existentes al crearlas; cambiar el gráfico no actualiza esa copia. Anota frecuencia y hora del mensaje. Durante Bar Replay, las alertas de servidor existentes continúan con datos en tiempo real, no con el pasado reproducido. A las 10:15, la barra H1 de 10:00 a 11:00 sigue abierta: su máximo final aún no está disponible. En Pine, analiza conjuntamente las opciones lookahead y los desplazamientos de serie, no un nombre de opción aislado.

Tres acciones para un diagnóstico acotado

  1. Elige un instrumento, una configuración y una regla de disponibilidad. Exporta entradas y salidas, y observa durante la formación, tras el cierre del gráfico y tras el cierre de cualquier intervalo superior requerido.
  2. Compara esos registros con los posteriores al reinicio. Reconcilia primero los datos históricos; después ejecuta una prueba de añadido que mantenga intacto el prefijo. Guarda las dos versiones y señala exactamente qué valor cambió.
  3. Redacta un resultado limitado a versión, ajustes, datos y tiempos observados. Si no conoces el reconocimiento real, no asignes operaciones a marcas anteriores. Evalúa ejecución, costes y resultados en una prueba aparte; cinco minutos, cincuenta velas o dos semanas sin cambios no prueban estabilidad permanente ni rentabilidad.