- CustomSymbolCreate
- CustomSymbolDelete
- CustomSymbolSetInteger
- CustomSymbolSetDouble
- CustomSymbolSetString
- CustomSymbolSetMarginRate
- CustomSymbolSetSessionQuote
- CustomSymbolSetSessionTrade
- CustomRatesDelete
- CustomRatesReplace
- CustomRatesUpdate
- CustomTicksAdd
- CustomTicksDelete
- CustomTicksReplace
- CustomBookAdd
CustomBookAdd
Passa lo status del Depth of Market per un simbolo personalizzato. La funzione consente di trasmettere il Depth of Market come se i prezzi arrivassero dal server di un broker.
bool CustomBookAdd(
|
Parametri
simbolo
[in] Nome simbolo personalizzato.
books[]
[in] L'array di tipo di dati MqlBookInfo che descrivono completamente lo status del Depth of Market — tutte le richieste di buy e sell. Lo status del Depth of Market passato sostituisce completamente il precedente.
count=WHOLE_ARRAY
[in] Il numero di elementi dell'array 'books' da passare alla funzione. L'intero array viene utilizzato per impostazione predefinita.
Valore di ritorno
true - successo, altrimenti - false. Per ottenere informazioni sull'errore, chiamare la funzione GetLastError().
Nota
La funzione CustomBookAdd funziona solo per i simboli personalizzati per cui viene aperto il Depth of Market — tramite l'interfaccia della piattaforma o la funzione MarketBookAdd.
Quando si lancia il Depth of Market, i prezzi Bid e Ask del simbolo non vengono aggiornati. Dovresti controllare il cambiamento dei prezzi migliori e lanciare i ticks usando CustomTicksAdd.
La funzione verifica l'esattezza dei dati trasmessi: per ogni elemento deve essere indicato il tipo, il prezzo e il volume. Inoltre, MqlBookInfo.volume e MqlBookInfo.volume_real non devono essere zero o negativi; se entrambi i volumi sono negativi, questo sarà considerato un errore. Puoi specificare uno qualsiasi dei volumi o entrambi — verrà utilizzato quello indicato o positivo:
volume=-1 && volume_real=2 — verrà utilizzato volume_real=2,
|
Quando si salvano i dati, viene verificato il parametro "Profondità del Book" (SYMBOL_TICKS_BOOKDEPTH) del simbolo personalizzato destinatario. Se il numero di richieste di Sell supera questo valore nella Depth of Market passato, i livelli in eccesso vengono scartati. Lo stesso vale per le richieste di Buy.
Esempio di riempimento dell'array "books":
Status del Depth of Market |
Riempimento books[] |
---|---|
books[0].type=BOOK_TYPE_SELL; |
Esempio:
//+------------------------------------------------------------------+ |
Guarda anche