Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1687

 
Cosa c'entrano i vostri indici e la quantità di ordini restituiti? Creare un paio di ordini e fare un ciclo su di essi. Il ciclo non sarà un array, ma il numero restituito da OrdersTotal come una normale funzione, perché non restituisce l'indirizzo dell'indice dell'array dove sono memorizzati gli ordini.
 

La dimensione della matrice è il numero di elementi della matrice (o ordini, per esempio)

Il primo elemento ha un indice di 0, sempre,

l'ultimo è uno in meno della dimensione dell'array.


Se volete creare un array con un solo elemento, l'unico modo per accedere a quell'elemento è usare arr[0]. In tutti gli altri casi, otterrete un errore di overrun dell'array.

È lo stesso con gli ordini, solo che non ci sono errori, ma non si può raggiungere il primo elemento (ordine) in nessun altro modo.

 
Документация по MQL5: Операции с массивами
Документация по MQL5: Операции с массивами
  • www.mql5.com
Операции с массивами - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Ho capito, OrdersTotal dà solo l'importo, ma per riferirsi all'ordine usiamo OrderSelect e qui passa già attraverso l'array. Ho trascurato questo punto.
 
Sì, proprio così. OrderSelect(0,


 
Nerd Trader un indice dell'array dove sono memorizzati gli ordini.

Non stai facendo un passaggio su un numero, ma sulla lista degli ordini nel tuo conto di trading! E il numero di ordini è solo un numero... non si possono fare passaggi su di esso... come si fa a fare un passaggio su un numero 100? Tu non... E sulla lista di 100 linee, possiamo fare un passaggio di ogni linea.

Il numero restituito da OrdersTotal() è un numero primo... È stato progettato in modo che coincida SEMPRE con il numero di ordini nella lista.

Se sapete di avere sempre e solo 1 ordine, allora dovete lavorare solo con un numero d'ordine "0" senza OrdersTotal()...

 
Nikolay Ivanov #:

Non stai facendo un passaggio su un numero, ma sulla lista degli ordini nel tuo conto di trading! E il numero di ordini è solo un numero... non si possono fare passaggi su di esso... come si fa a fare un passaggio su un numero 100? Tu non... E sulla lista di 100 linee, possiamo fare un passaggio di ogni linea.

Il numero restituito da OrdersTotal() è un numero primo... È progettato in modo che coincida SEMPRE con il numero di ordini nella lista.

Se sapete di avere sempre e solo 1 ordine, allora lavorate semplicemente con un numero d'ordine "0" senza OrdersTotal()...

Aleksei Stepanenko #:

Ladimensione dell'array è il numero di elementi dell'array (o ordini, per esempio)

Il primo elemento ha un indice 0, sempre,

l'ultimo è uno in meno della dimensione dell'array.


Se volete creare un array con un solo elemento, l'unico modo per accedervi è usare arr[0]. In tutti gli altri casi, otterrete un errore di overrun dell'array.

È lo stesso con gli ordini, solo che non ci sono errori, ma non si può raggiungere il primo elemento (ordine) in nessun altro modo.

Sì, è così.
 
Nerd Trader usiamo OrderSelect e già passa attraverso l'array. Ho trascurato questo punto.

L'array (lista) passa attraverso un CICLO. OrderSelect seleziona solo l'ordine il cui numero d'ordine è stato creato in questo ciclo per ulteriori lavori.

Документация по MQL5: Торговые функции / OrderSelect
Документация по MQL5: Торговые функции / OrderSelect
  • www.mql5.com
OrderSelect - Торговые функции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Nerd Trader un indice di un array dove sono memorizzati gli ordini.
Il fatto è che il modulo è conveniente in quanto dandogli il numero di posizioni, può riempire qualsiasi array. Nel mio caso tutto andrebbe in crash se viene alimentato 0, perché l'ArrayResize è legato al numero di posizioni. Per questo motivo ho una condizione aggiuntiva se il numero di posizioni è superiore a 0, allora questo ciclo. Anch'io faccio sempre confusione, ora l'ho ricontrollato. Il consiglio è corretto, perché altrimenti il forte non riempirà l'elemento zero dell'array, che è quello a cui serve il forte.
 
Grande, amici, che abbiamo un consenso
Motivazione: