Candle Data HTTP Exporter NZDUSD
- Utilidades
- Versión: 2.0
- Actualizado: 11 octubre 2026
Candle Data HTTP Exporter NZDUSD
Esta versión gratuita solo exporta el NZDUSD; la versión completa, Candle Data HTTP Exporter, exporta cualquier símbolo.
Descripción
Este EA convierte tu terminal en un proveedor de datos históricos y en tiempo real (OHLC, velas) para tu aplicación.
Existen muchos proveedores de datos de mercado en Internet, pero, en la práctica, los datos que ofrecen no siempre son de buena calidad. Además, estos servicios suelen ser más caros y, por lo general, requieren cuotas de suscripción mensuales por cada símbolo.
Con este EA, puedes alimentar tu aplicación con exactamente los mismos datos de cotizaciones que ves en la terminal, los mismos datos en los que basas tus operaciones y tu análisis de mercado.
Junto con el «Tick Data HTTP Exporter», que proporciona datos de ticks, se ofrece un conjunto completo de datos necesario para el análisis de mercado.
Funcionalidades
- Permite la transmisión de datos de cotizaciones a una URL HTTP externa preconfigurada.
- Garantiza la entrega de todas las cotizaciones, con la capacidad de reanudar la transmisión a partir de la última cotización enviada en caso de interrupciones.
- Ofrece dos opciones de almacenamiento para los desfases de marca de tiempo de las cotizaciones:
- Archivos locales (por defecto, gestionados automáticamente)
- Punto final HTTP (para la integración con aplicaciones)
- Garantiza una entrega fiable de las tarifas, con mecanismos de reintento en caso de fallos en las solicitudes HTTP.
- Permite la transferencia de datos con procesamiento por lotes configurable.
Configuración
| Entrada | Descripción | Por defecto |
|---|---|---|
| dataProvider | Especifica el nombre del proveedor de datos. Este nombre se puede utilizar posteriormente en las plantillas de URL como {dataProvider}. | - |
| maxRatesPerBatch | Número máximo de tarifas que se pueden enviar en un solo lote. | 10 000 tarifas |
| debugLogsEnabled | Si se deben habilitar los registros de depuración. | true |
| targetExportUrlTemplate | Plantilla de URL para el punto final al que se enviarán los datos de tarifas. Marcadores de posición admitidos: dataProvider. | - |
| shouldReExportHistoricalRates | Opción para volver a exportar las tasas a partir de un valor específico, tal y como se especifica en la entrada startExportFromTimestampMillis. | false |
| startExportFromTimestampMillis | Si shouldReExportHistoricalRates se establece en true, las cotizaciones se enviarán a partir de la marca de tiempo especificada en milisegundos (según el reloj del servidor, la hora que muestra el terminal). | 1672531200000 (01/01/2023 00:00:00) |
| exportedSymbolsSource | No disponible en esta versión: siempre exporta NZDUSD. Fuente de los símbolos para los que se exportarán las cotizaciones. Las opciones son: «HTTP_ENDPOINT» o «EA_INPUT». | EA_INPUT |
| símbolos | No disponible en esta versión: siempre exporta NZDUSD. En los casos en que exportedSymbolsSource esté establecido en «EA_INPUT», esta configuración especifica para qué símbolos se exportarán los tipos de cambio. | EURUSD,AUDUSD,GBPUSD,USDCAD,USDJPY,USDCHF |
| intervalos de tiempo | Especifica los marcos temporales para los tipos de cambio que se van a exportar. | M1, M5, M15, M30, H1, H4, D1, W1 |
| exportedSymbolsFetchUrlTemplate | No disponible en esta versión: siempre exporta NZDUSD. Plantilla de URL para recuperar los símbolos.Se utiliza en caso de que exportedSymbolsSource='HTTP_ENDPOINT'. Marcadores de posición admitidos: dataProvider. | - |
| lastSentRateTimestampSource | Fuente de la marca de tiempo del último tipo de cambio enviado. Las opciones son: «HTTP_ENDPOINT» o «FILES». | FILES |
| lastSentRateTimestampUrlTemplate | Plantilla de URL para obtener o almacenar la marca de tiempo de la última tasa enviada. Se utiliza en caso de que lastSentRateTimestampSource = 'HTTP_ENDPOINT'. Marcadores de posición admitidos: dataProvider, symbol, timeframe. | - |
| serverTimeZoneMode | El reloj del servidor, utilizado para convertir las horas de las velas a UTC. AUTO (por defecto) detecta el reloj del servidor; también se puede seleccionar explícitamente: US_DST (cierre de Nueva York), EU_DST (Europa del Este), NO_DST, MANUAL (manualServerGmtOffsetMinutes); una selección explícita proporciona marcas de tiempo exactas para todo el historial. | AUTO |
| manualServerGmtOffsetMinutes | Diferencia horaria del servidor respecto al GMT en minutos, utilizada con MANUAL. | 120 |
Descripción del flujo de trabajo del EA
Al iniciarse, el Asesor Experto (EA) realiza las siguientes operaciones:
-
Comprobación de restablecimiento del desfase: El EA comprueba la variable «shouldReExportHistoricalRates» para determinar si es necesario exportar datos históricos de tipos de cambio a partir de una marca de tiempo específica. Si se requiere una reexportación, el EA:
- Establece el valor «startExportFromTimestampMillis» como el nuevo desfase de marca de tiempo.
- Guarda este desplazamiento de forma segura, ya sea localmente en un archivo o enviándolo a un punto final HTTP designado, según la configuración establecida por «lastSentRateTimestampSource».
-
Recopilación y envío periódico de datos de tipos de cambio: El EA está programado con un temporizador configurado para activarse cada 10 segundos. Cada vez que se activa, el EA:
- Solicita datos de tipos de cambio al bróker, desde el último desplazamiento almacenado (la marca de tiempo del tipo de cambio más reciente) hasta el momento actual. Solo se envían las velas cerradas: la vela que aún se está formando se envía una vez que se cierre.
- Convierte los datos de cotizaciones obtenidos a formato JSON y los envía a la URL predefinida derivada de la entrada targetExportUrlTemplate.
Al ejecutar estos pasos, el EA garantiza un flujo continuo y automatizado de los datos de cotizaciones más recientes para uso externo, lo que permite que su aplicación o herramientas de análisis dispongan de información de mercado actualizada al minuto.
Uso
A continuación se indican las acciones mínimas necesarias para que el EA comience a exportar cotizaciones a la URL configurada:
-
Implementa un punto final HTTP que gestione una solicitud POST en una URL derivada de «targetExportUrlTemplate». Este punto final debe:
- Aceptar datos de tipos de cambio con la estructura JSON que se describe a continuación.
- Responder con un código de estado 200 si la recepción se realiza correctamente.
-
Permitir que la terminal envíe datos a tu servidor: abre Herramientas > Opciones > Asesores expertos, marca la casilla «Permitir WebRequest para la URL indicada» y añade la dirección de tu servidor, p. ej., https://data.example.com.
- Si está realizando pruebas localmente en localhost, cree un nombre de host en «C:\Windows\System32\drivers\etc\hosts» en Windows o en «/etc/hosts» en sistemas basados en Linux. Utilice este nombre de host en targetExportUrlTemplate.
-
Asigna el EA a cualquier gráfico de la terminal y configura los siguientes parámetros:
- dataProvider y targetExportUrlTemplate: obligatorios; el EA no se inicia sin ellos.
- startExportFromTimestampMillis: establece la marca de tiempo a partir de la cual necesitas obtener los tipos de cambio.
- timeframes: los marcos temporales para los que necesitas cotizaciones (esta versión siempre exporta NZDUSD).
- shouldReExportHistoricalRates: debe establecerse en «true» en la primera ejecución para que el EA cree todos los archivos necesarios para realizar un seguimiento de la última marca de tiempo de cotización enviada. Tras la primera ejecución, vuelve a establecerlo en «false»; de lo contrario, cada reinicio enviará todo de nuevo a partir de startExportFromTimestampMillis.
Nota: el EA no funciona en el Strategy Tester, ya que este bloquea el envío de datos a través de Internet.
Gestión del desfase
El EA mantiene la marca de tiempo (offset) de la última cotización enviada con éxito para continuar el proceso de exportación en caso de interrupciones o de un reinicio de la terminal.
Por defecto, las marcas de tiempo se almacenan en archivos que se crean automáticamente en la carpeta MQL5\Files de la terminal. Hay un archivo independiente para cada símbolo y marco temporal.
Además, existe la opción de utilizar puntos finales HTTP independientes para leer o almacenar el offset en lugar de archivos.
Para utilizar esta función, establezca lastSentRateTimestampSource en «HTTP_ENDPOINT» e implemente puntos finales HTTP basados en la URL definida en lastSentRateTimestampUrlTemplate.
Como solución de backend, puede optar por almacenar los offsets en una base de datos (como PostgreSQL). Si necesita volver a exportar las cotizaciones de un símbolo específico, solo tendría que actualizar los valores de marca de tiempo en la tabla de la base de datos.
¿Qué es el desfase? El desfase es la hora de apertura de la última vela entregada, en milisegundos desde el 1 de enero de 1970 según el reloj del servidor del bróker (la hora que muestra la terminal), no según UTC. Si almacenas los desfases en tu servidor, devuelve exactamente el número que ha publicado el EA.
Gestión de símbolos exportados
No disponible en esta versión: siempre exporta NZDUSD.
Por defecto, el EA utiliza los símbolos de entrada para determinar para qué símbolos se deben exportar las cotizaciones.
Sin embargo, también existe la opción de recuperar la lista de símbolos desde un punto final HTTP independiente.
Para utilizar esta función, configura exportedSymbolsSource en «HTTP_ENDPOINT» e implementa un punto final utilizando la URL definida en exportedSymbolsFetchUrlTemplate.
Gestión externa del EA
Si se configuran tanto lastSentRateTimestampSource como exportedSymbolsSource en «HTTP_ENDPOINT», el EA se puede controlar íntegramente de forma externa:
- Puede iniciar la reexportación de símbolos específicos sin necesidad de realizar ninguna acción en la terminal.
- Se pueden especificar los símbolos que se van a exportar sin tener que modificar los datos de entrada en la terminal (no en esta versión).
Especificación de la API REST para la integración de aplicaciones
| Punto final HTTP | Descripción | Método | Solicitud | Respuesta |
|---|---|---|---|---|
| targetExportUrlTemplate | URL para enviar datos de cotizaciones. timestampMillis es la hora de apertura de la vela en UTC; el spread se expresa en puntos. | POST | Encabezados: Content-Type: application/json Cuerpo [
{
"symbol": "NZDUSD",
"timeframe": "H1",
"timestampMillis": 1670001234000,
"open": 0.61234,
"high": 0.61350,
"low": 0.61180,
"close": 0.61300,
"tickVolume": 1234,
"spread": 12,
"realVolume": 0
},
...
] | Código de respuesta 200 si se obtienen las cotizaciones correctamente |
| exportedSymbolsFetchUrlTemplate | No disponible en esta versión: siempre exporta NZDUSD. La URL se utiliza para recuperar la lista de símbolos que el EA exportará a la URL derivada de «targetExportUrlTemplate». | GET | Encabezados: Content-Type: text/plain Cuerpo (lista de símbolos separados por comas) EURUSD,GBPUSD,AUDUSD,BTCUSD | |
| lastSentRateTimestampUrlTemplate | La URL se utiliza para obtener la marca de tiempo específica a partir de la cual debe comenzar el proceso de exportación. El cuerpo es el desplazamiento tal y como lo envió el EA. | GET | Encabezados: Content-Type: text/plain Cuerpo 1625135912000 | |
| lastSentRateTimestampUrlTemplate | La URL se utiliza para almacenar la marca de tiempo de la última solicitud POST realizada con éxito a la URL derivada de «targetExportUrlTemplate». El cuerpo es el desplazamiento. | POST | Encabezados: Content-Type: text/plain Cuerpo 1625135912000 |
Etiquetas: tipos de cambio, tipo de cambio, precio, agregado de precios, flujo, streaming, exportación, exportar, webhook, webhooks, integración, http, REST, divisas, criptomonedas, datos, históricos, en tiempo real, API REST, proveedor, fuente de datos, OHLC

