Organizzazione del ciclo dell'ordine - pagina 10

 
Alexey Viktorov:

Chi si è fatto male quando un ordine è stato riselezionato?

Forum sul trading, sistemi di trading automatico e test di strategia

Organizzare un ciclo di ripetizione dell'ordine

fxsaber, 2017.10.06 06:26

Può portare a una situazione in cui qualche biglietto sarà saltato o un biglietto attraverso uno sarà ripetuto ecc.

E non si tratta nemmeno di modifiche, ma di semplici AmountOrders.

 
fxsaber:

Perché, se IsChange è di cinque righe?

Non per risolvere questo particolare problema. È per la mia biblioteca - e molti problemi necessari per una comoda creazione di programmi sono risolti lì. Ma in particolare restituisce solo il fatto di qualsiasi cambiamento nelle liste del mercato o della storia.

 
fxsaber:

E non si tratta nemmeno di modifiche, ma di semplici AmountOrders.

Semplicemente non hai bisogno di passare attraverso le liste dell'ambiente, che vengono mischiate quando l'ambiente cambia, ma hai la tua lista - non è mischiata, e ha tutti (o in eccesso, ma non in insufficienza) i biglietti che hai bisogno di chiudere/cancellare/modificare. Se mancano fisicamente, non è necessario ricominciare il ciclo da capo, basta passare al prossimo della lista. E questo è tutto - non c'è bisogno di cambiare l'indice del ciclo o provare a ripetere il ciclo in qualche modo. Andiamo semplicemente alla nostra lista e cerchiamo di fare ciò di cui abbiamo bisogno. Nessun biglietto è sul mercato - niente di che (non puoi già restituirlo) - andiamo al prossimo e facciamo quello che vogliamo con esso. E il timer a sua volta correggerà la lista al prossimo tick.

 
fxsaber:

E non si tratta nemmeno di modifiche, ma di semplici AmountOrders.

Certo che può. Tutto può succedere, in qualsiasi momento. Stai camminando, stai camminando, tutto va bene e improvvisamente scivoli... Non c'è una rete di sicurezza per tutto. Ecco perché non cerco di scrivere funzioni massimamente universali "per tutte le occasioni". Quindi, cosa importa se un ordine viene selezionato due volte per un semplice AmountOrders? Qual è la probabilità che l'ordine venga chiuso/cancellato manualmente esattamente al momento dell'esecuzione del ciclo? Perché nell'esempio dato, l'ordine viene chiuso nello stesso ciclo. Questo può essere fatto solo come esperimento, ma non posso immaginare che dovremmo modificare l'ordine o fare qualcos'altro e chiuderlo immediatamente...

 
Artyom Trishkin:

Semplicemente non hai bisogno di passare attraverso le liste dell'ambiente che vengono mischiate quando l'ambiente cambia, ma hai la tua lista - non è mischiata, e ha tutti (o in eccesso, ma non in insufficienza) i biglietti che devi chiudere/cancellare/modificare. Se mancano fisicamente, non è necessario ricominciare il ciclo da capo, basta passare al prossimo della lista. E questo è tutto - non c'è bisogno di cambiare l'indice del ciclo o provare a ripetere il ciclo in qualche modo. Andiamo semplicemente alla nostra lista e cerchiamo di fare ciò di cui abbiamo bisogno. Nessun biglietto è sul mercato - nessun problema (non si può restituire) - andiamo al prossimo e ne facciamo quello che vogliamo. E il timer a sua volta correggerà la lista al prossimo tick.

Supponiamo di voler disabilitare l'EA se il numero di ordini per un dato simbolo supera il numero specificato. Allora, come?

 
Alexey Viktorov:

Certo che può. Tutto può succedere, in qualsiasi momento. Stai camminando, stai camminando, tutto è dritto, e improvvisamente scivoli... Non c'è una rete di sicurezza per tutto. Ecco perché non cerco di scrivere funzioni massimamente universali "per tutte le occasioni". Quindi, cosa importa se un ordine viene selezionato due volte per un semplice AmountOrders? Qual è la probabilità che l'ordine venga chiuso/cancellato manualmente esattamente al momento dell'esecuzione del ciclo? Perché nell'esempio dato, l'ordine viene chiuso nello stesso ciclo. Questo può essere fatto solo come esperimento, ma non posso immaginare che dovremmo modificare l'ordine o fare qualcos'altro e chiuderlo immediatamente...

Non hai guardato questo? Riproducibile in pochissimo tempo!

 
fxsaber:

Supponiamo di voler disabilitare l'EA se il numero di ordini per un dato simbolo supera il numero specificato. Quindi come?

Lì - nel timer quando si scrivono gli ordini nella lista - superato - ha inviato un evento o sollevato una bandiera.

 
Artyom Trishkin:

Lì - nel timer quando si scrivono gli ordini nella lista - superato - hanno inviato un evento o sollevato una bandiera.

Tuttavia, è meglio non farlo - ogni cosa dovrebbe essere al suo posto.

Nel timer dell'Expert Advisor prendiamo la lista secondo i criteri necessari e a list.Total()>xxx facciamo quello che vogliamo.

 
fxsaber:

Non hai guardato questo? È giocabile in un attimo!

Questo è esattamente quello che ho guardato.

    
  // Закрыли позиции
  for (int i = 0; i < Total; i++)
    OrderClose(Tickets[i], 1, SymbolInfoDouble(_Symbol, SYMBOL_BID), 100);
}


E il mio post

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Come organizzare un ciclo di ordini

Alexey Viktorov, 2017.10.06 08:49

Qual è la probabilità di chiudere/eliminare manualmente un ordine esattamente al momento dell'esecuzione del ciclo?


E inoltre, qual è il senso più profondo nel trading reale di inseguire continuamente il ciclo degli ordini? Soprattutto per niente...

 
Alexey Viktorov:

Inoltre, qual è il significato più profondo nel trading reale di correre continuamente attraverso un ciclo di ordini?

In un ambiente di combattimento questo dovrebbe essere sempre fatto! Quindi la probabilità di imbattersi in un lato che chiude una posizione all'interno di un ciclo è una percentuale.

Motivazione: