Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Così ora mi sto chiedendo come passare attraverso TUTTI gli ordini in una sola volta.
Non sono sicuro di cosa fare, ma sto cercando di scrivere in modo tale che tali slittamenti non portino a conseguenze critiche.
La probabilità diminuirà, ma meno la diversificazione e la complicazione della gestione dei conti.
In alternativa, distribuisci i bot su diversi account.
Poi proibire, per esempio, la scadenza degli ordini di messa a disposizione. In generale, una stampella.
Una necessità fondamentale con una peculiarità così sfortunata. A quanto pare, per farlo attraverso le istantanee in qualche modo.
Grazie per la risposta dettagliata! Ora mi sto chiedendo come passare attraverso TUTTI gli ordini in una sola volta.
Che ne dite di ricordare il primo e l'ultimo ordine (biglietto)?
e dopo che il ciclo è stato completato, controllare che il primo e l'ultimo ordine abbiano gli stessi biglietti di prima del conteggio
SZY: abbastanza logicamente, OrderSelect() dovrebbe essere responsabile di questa collisione - dovrebbe restituire false nel caso in cui la tabella degli ordini sia cambiata, ma non ricordo di aver letto da nessuna parte sul forum che OrderSelect() abbia restituito false, non ho nemmeno incontrato gestori di errori per OrderSelect().
può ricordare il primo e l'ultimo ordine (biglietto)?
Senza una completa memorizzazione della sequenza dei biglietti, una tale soluzione fallirà.
Se non ricordate completamente la sequenza dei biglietti, questa soluzione fallirà.
E il salvataggio completo dei biglietti causerà anche dei fallimenti perché mentre stiamo eseguendo un ciclo, lo stato degli ordini che sono già stati elaborati può cambiare
naturalmente, non sono sicuro, ma se un ordine viene chiuso quando siamo nel ciclo, l'OrderTotal() cambierà
se l'ordine è chiuso e si apre un nuovo ordine, allora il biglietto e/o OrderSelect(0) o OrderSelect(OrderTotal()-1) sarà cambiato
e secondo voi, quale situazione potrebbe accadere, in modo che i precedenti "ordini estremi" e lo stesso OrderTotal() rimangano?
e secondo voi, quale situazione potrebbe accadere per mantenere gli stessi "ordini estremi" e lo stesso OrderTotal() ?
Molto probabilmente, il OrdersTotal cambierà quando la tabella degli ordini sarà scossa.
E poi è possibile che i limitatori vengano riempiti di nuovo e che si crei una posizione aggiuntiva.
possiamo memorizzare il primo e l'ultimo ordine (biglietto)?
ricordare il primo non fa nulla
Cioè, cosa succede all'indicizzazione quando un ordine viene cancellato o appare durante l'enumerazione?
Raccolgo una serie di biglietti e ci lavoro.
Se OrdersTotal o Balance o Margin è cambiato - allora la lista deve essere ricreata.
Quindi EA lavora sempre e solo con i propri biglietti selezionati
ricordare il primo non fa nulla
queste sono peculiarità dell'implementazione dell'architettura, che non sono documentate e che nessuno può garantire in futuro...
Nota OrderTotal() eOrdersHistoryTotal(), e i biglietti degli ultimi ordini
se questi valori cambiano dopo i calcoli nel ciclo, allora elaborare
Ma non ci può essere una soluzione universale e affidabile - il compito qui è quello di indovinare cosa succederà sul server, come i dati vengono consegnati attraverso la rete, e cosa sta succedendo nei grafici adiacenti nel terminale ))))
L'unica cosa da sperare è la velocità di OrderSelect() - se ricordo bene, è più di un milione di chiamate al secondo
Senza una memoria completa della sequenza dei biglietti, una tale soluzione fallirà.
Può non essere costoso da ricordare, ma può essere costoso da tenere traccia dello stato completo. Sono d'accordo con i precedenti, ridurre il carico per logica di ragionevolezza e priorità.
Il mondo asincrono in cui viviamo non garantisce l'ordine delle risposte all'ordine delle richieste, né garantisce affatto l'ordine.