- CustomSymbolCreate
- CustomSymbolDelete
- CustomSymbolSetInteger
- CustomSymbolSetDouble
- CustomSymbolSetString
- CustomSymbolSetMarginRate
- CustomSymbolSetSessionQuote
- CustomSymbolSetSessionTrade
- CustomRatesDelete
- CustomRatesReplace
- CustomRatesUpdate
- CustomTicksAdd
- CustomTicksDelete
- CustomTicksReplace
- CustomBookAdd
CustomBookAdd
Transmite el estado de la profundidad de mercado de un instrumento personalizado. La función permite emitir la profundidad de mercado como si llegase desde el servidor del bróker.
bool CustomBookAdd(
|
Parámetros
symbol
[in] Nombre del símbolo personalizado.
books[]
[in] Matriz de datos del tipo MqlBookInfo que describen al completo el estado de la profundidad de mercado todas las solicitudes de compra y venta. El estado transmitido de la profundidad de mercado sustituye por completo al anterior.
count=WHOLE_ARRAY
[in] Número de elementos de la matriz books que deberá ser transmitido a la función. Por defecto, se usa toda la matriz.
Valor retornado
true en el caso de éxito, de lo contrario, false. Para obtener información sobre el error, necesitamos llamar la función GetLastError().
Observación
La función CustomBookAdd funciona solo con los símbolos personalizados para los que está abierta la profundidad de mercado, a través de la plataforma o la funciónMarketBookAdd.
Al añadirse información a la profundidad de mercado, los precios Bid y Ask del instrumento no se actualizan. Usted deberá controlar por su propia cuenta el cambio de los mejores precios e incluir los ticks con la ayuda de CustomTicksAdd.
Se comprueba que los datos transmitidos sean correctos: para cada elemento hay que especificar el tipo, el precio y el volumen. MqlBookInfo.volume y MqlBookInfo.volume_real no deberán ser cero o negativos, si ambos volúmenes son negativos, se considerará un error. Podemos especificar uno o ambos volúmenes: se tomará el indicado o el positivo:
volume=-1 && volume_real=2 se utilizará volume_real=2,
|
El volumen con precisión aumentada MqlBookInfo.volume_real tiene prioridad en comparación con el habitual MqlBookInfo.volume. Si para un elemento de la profundidad de mercado se han indicado ambos, se usará volume_real.
El orden de secuencia de los elementos de MqlBookInfo en la matriz books no importa. Al guardar los datos, el terminal los clasifica por precio independientemente.
Al guardar los datos se comprueba el parámetro "Profundidad del mercado" (SYMBOL_TICKS_BOOKDEPTH) del instrumento personalizado que recibe. Si el número de solicitudes de venta en la profundidad de mercado transmitida supera este valor, los niveles sobrantes serán descartados. De una forma análoga sucederá con las solicitudes de compra.
Ejemplo de rellanado de la matriz books:
Estado de la profundidad de mercado |
Rellenado de books[] |
---|---|
books[0].type=BOOK_TYPE_SELL; |
Ejemplo:
//+------------------------------------------------------------------+ |
Ver también