Cosa significa la voce del diario di bordo - pagina 5

 
Несколько смущает тот факт, что на 37 постов этой ветки приходится только один от разработчиков...

perché interferire in una discussione già produttiva


Gli sviluppatori non vogliono spaventarci nel caso trovassimo qualcosa di interessante per loro... :)
 
Несколько смущает тот факт, что на 37 постов этой ветки приходится только один от разработчиков...

perché interferire in una discussione già produttiva


Per le seguenti ragioni:
1. Per dire, ragazzi, riconosciamo (o no) che c'è un problema e lo tratteremo.
2. Per dire, Quark (e Composter, visto che ha riprodotto l'errore sul suo EA), abbiamo guardato il tuo codice, l'errore è in esso, tratta così e così.

Altrimenti si scopre che non siete interessati. Divertitevi, ragazzi...

Ripeterò i miei argomenti:
1. Gli ordini di apertura e chiusura delle posizioni a volte restituiscono errori.
2. Questi codici di errore non hanno nulla a che fare con la vita reale (ad esempio "prezzo sbagliato", anche se il prezzo è corretto).
3. Ripetendo il tentativo con gli stessi parametri puoi fare in modo che il sistema accetti l'ordine. Ma da nessuna parte nel vostro manuale c'è scritto che lo stesso ordine deve essere aperto (chiuso) in un ciclo con controllo degli errori ad ogni passo e output su un file per un successivo controllo manuale.
4. A volte i codici di errore non vengono restituiti, cioè il programma si comporta come se l'operazione avesse avuto successo. Ma non ci riesce.

5. La cosa più importante. Dato che il problema si verifica quando si comunica con il server demo (Alpari, nel mio caso), è molto probabile che avendo trovato un workaround ora, sul demo, ci troveremo di nuovo nella stessa situazione quando andremo su quello reale. E poi dovremo pagare di nuovo per il debugging. Con i vostri soldi.

6. Questo NON è un problema locale di un esperto. Io sostengo che tutti, o almeno molti EAs, potrebbero semplicemente non prenderlo, perché non c'è un sistema di cattura degli errori collegato ai miei EAs. Quindi, ne consegue che l'ottimizzazione NON può essere trasferita al reale, perché gli ordini non saranno aperti e chiusi allo stesso modo e non sempre. Ne consegue che la gente sprecherà tempo e denaro.

7. Non credo davvero che questo sia un problema di EA. Indica dov'è, se mi sbaglio. Si può cambiare la logica dell'esperto, non si tratta di logica.

Qui.
 
Quark, abbiamo eseguito il tuo EA su una macchina di prova con un terminale collegato ad alpari. lo abbiamo messo su 11 diversi pent up. siamo pronti ad aspettare il risultato fino alla fine. non appena la situazione descritta si presenta, premeremo il pulsante di debug. quindi, nessuna risposta non significa una mancanza di attenzione. ripeto, leggiamo TUTTI i messaggi sul nostro forum e analizziamo TUTTI i messaggi. e non siamo robot di posta elettronica che stupidamente rispondono con un "il tuo messaggio è stato letto e annotato".
 
Riguardo al contesto commerciale - se guardate il codice dell'EA, prima aspetta nMagic * 10 secondi, che gli garantisce un'esclusiva di 10 secondi, poi imposta il semaforo globale (che garantisce che gli altri EA saranno appesi). E solo allora fa trading.

Roche, ecco i log di oggi, con un ritardo in-ciclo dopo OrderSend e OrderClose di 10000ms. Sembra rimuovere i sospetti di un conflitto dovuto alla tempistica e al contesto (che non dovrebbe comunque esserci):

Attempting to close short position, ticket: 1827283
9.9.2005 10:13:20 Ordine con questo ticket ancora presente, riprova
9.9.2005 10:13:48 Nessun altro ordine con questo ticket No

Al secondo tentativo :(

9.9.2005 0:14:54 Trying to buy, attempt 0
Bid: 1.24490000, StopLoss: 0.00700000, TakeProfit: 0.00000000 fallito, errore 6
9.9.2005 0:15:4 Cercando di comprare, tentativo 1
Offerta: 1.24470000, StopLoss: 0.00700000, TakeProfit: 0.00000000 successo

Al secondo tentativo :(

9.9.2005 13:0:22 Cercando di comprare, tentativo 0
Offerta: 1.23900000, StopLoss: 0.00600000, TakeProfit: 0.00000000 fallito, errore 6
9.9.2005 13:0:48 Cercando di comprare, tentativo 1
Offerta: 1.23900000, StopLoss: 0.00600000, TakeProfit: 0.00000000 successo

Al secondo tentativo :(

Pausa fallita...
Notate che l'errore 6 (il più informativo del mondo) è apparso solo all'acquisto, alla chiusura non c'è stato alcun errore. È vero, c'era un errore di ping nel log, ma l'esperto non lo sa...
 
Quark, abbiamo eseguito il tuo EA su una macchina di prova con un terminale collegato ad alpari. lo abbiamo messo su 11 diversi pent up. siamo pronti ad aspettare il risultato fino alla fine. non appena la situazione descritta si presenta, premeremo il pulsante di debug. Ripeto, leggiamo TUTTI i messaggi sul nostro forum, e li analizziamo TUTTI.


Dicono che se una persona sta parlando con Dio, va bene. Ma se Dio comincia a rispondere, è un problema :) Ma sono contento lo stesso :)

Solo un promemoria per ricordare che l'Expert Advisor non farà trading su trade a 5 minuti per impostazione predefinita. C'è un orologio codificato lì dentro, bisogna cambiarlo.
Inoltre non ho idea di quanto sia facile prendere questo su 5 minuti. Inoltre :) se il test come hai descritto, i cicli dovrebbero essere disconosciuti, in quanto sono progettati per spegnere l'errore. Naturalmente ci sarà una voce nei registri, ma potrebbe essere troppo tardi per premere il pulsante.

Infine, credo che possiamo aggiungere la stessa logica (chiamata delle mie funzioni al posto di OrderSend e OrderClose) ad altri EA. Per coerenza. Credo che anch'io riuscirò a prendere qualcosa.

Buona fortuna,
Quark
 
Quark, abbiamo eseguito il tuo EA su una macchina di prova con un terminale collegato ad alpari. lo abbiamo messo su 11 diversi pentametri. siamo pronti ad aspettare il risultato fino alla fine. non appena la situazione descritta si presenta, premeremo il pulsante di debug. quindi, nessuna risposta non significa una mancanza di attenzione. Ripeto, noi leggiamo TUTTI i messaggi sul nostro forum e analizziamo TUTTI i messaggi. e non siamo robot di posta che stupidamente rispondono "il tuo messaggio è stato letto e annotato". scusa.
probabilmente ti manderò anche il codice - oltre a questo bug ho istradeallowed per lavorare...
 
Probabilmente ti manderò anche il codice - oltre a questo bug, anche il mio istradeallowed impedisce il funzionamento...

Mandalo a me. Questo è quello che stiamo catturando
 
Ho detto prima che non mi sono prefissato di catturare i problemi con gli ordini in sospeso. Ma ho un semplice risolutore di problemi :) e ne ha catturato uno (errore 6). Sto incollando il codice qui sotto.

Vorrei sottolineare che questo codice non dipende da nessuna condizione, eccetto l'attivazione del secondo dei due ordini pendenti. Pertanto, questo codice è stato richiamato un'ora dopo (ero fuori casa) e l'ordine pendente è stato cancellato. L'allarme è stato lasciato in sospeso.

Quindi, il sistema ha funzionato questa volta, senza riavviare il terminale. Non escludo che altri casi (con ordini urgenti) derivino anche dalla chiusura temporanea del terminale.

Questo concorda con il fatto che ripetendo la richiesta di operazione nel ciclo, si può avere successo alla seconda, terza e così via.

	if(nNumOfOpenedOrders > 0) { for(nCnt = OrdersTotal() - 1; nCnt >= 0; nCnt--) { OrderSelect(nCnt, SELECT_BY_POS, MODE_TRADES); if(OrderMagicNumber() == nMagic && 
				(OrderType() == OP_BUYSTOP || OrderType() == OP_SELLSTOP)) { bool bResult = OrderDelete(OrderTicket()); if(bResult == false) { int nError = GetLastError(); Alert("SimpleBreak " + Symbol() + " error: " + nErrore); } } }
 
Quark, è successo un miracolo =)
Il tuo esperto ha aperto una posizione =)))

Tutti gli 8 sono stati appesi all'orologio per molto tempo e nessuno sta scambiando... E ora alle 15:00 su Alpari si è aperta una posizione. È normale?).
 
Quark, è successo un miracolo =)<br/ translate="no"> Il tuo esperto ha aperto una posizione =)))

Tutti gli 8 sono stati in bilico sull'orologio per molto tempo e nessuno sta scambiando... E così alle 15 Alpari ha aperto una posizione. È normale?)


Si è aperto anche per me, e a 15 anni :)
La posizione precedente, anch'essa con successo, è stata aperta su USDCAD 23.08.

In realtà, è un buon Expert Advisor, e non fallisce il più delle volte. Così come qualsiasi altro. A giudicare dai log, non è la logica di trading ma il fatto. Quindi, puoi riscrivere l'Expert Advisor, per esempio, per invertire le posizioni ogni ora - genererà più trade :) E ci saranno anche altri fallimenti.
Questa EA è solo un esempio da dare agli sviluppatori. Altrimenti tutti falliscono di tanto in tanto. E anche tu, se ho capito bene, quindi non è a causa del nostro codice...
Motivazione: