Errori, bug, domande - pagina 2410
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
Nuh-uh :)
OK. Illuminaci. Quale errore nel codice, o quale codice, può chiudere una posizione nel tester al prezzo di un altro strumento. Sono davvero, davvero interessato.
Il codice è di diverse migliaia di righe. Non ha senso aggiungerlo, non ci sono variabili statiche. Ci sono delle classi. In ogni caso è un errore del tester.
Ecco il vostro errore.
In modalità debug, esegui un controllo prima di inviare un ordine di compravendita. Guarda il simbolo e i prezzi. E prova almeno in modalità "Tutte le zecche".
OK. Illuminaci. Quale errore nel codice, o quale codice, potrebbe chiudere una posizione nel tester al prezzo di un altro strumento. Sono davvero, davvero curioso.
Facilmente. Dipende direttamente dalla slavità del codice. L'ho fatto io stesso :). Sistema di controllo dell'inizializzazione delle classi di caratteri mal concepito. E in più ci sono le variabili statiche.
Comunque, non ha senso parlare oltre senza il codice scritto dalla persona di cui si chiede.
Facilmente. È una correlazione diretta con la curvatura del codice. L'ho fatto io stesso :). Sistema di controllo insufficientemente elaborato dell'inizializzazione delle classi di caratteri. E in più ci sono le variabili statiche.
Quindi non ha senso parlare oltre senza chiedervi il codice.
Puoi mostrarci un esempio di codice? Come posso chiudere una posizione in EURUSD al prezzo GPBUSD?
Se è così, non sarà un problema per voi. Te ne sarei molto grato.
Puoi mostrarmi un codice di esempio? Come si chiude una posizione EURUSD al prezzo GPBUSD?
Se è così, non sarebbe un problema per voi. Vi sarò molto grato.
Forum sul trading, sistemi di trading automatico e test di strategia
Bug, bug, domande
Vladimir Karputov, 2019.03.24 05:58
È facile. La dipendenza della curvatura del codice. Anch'io ho fatto questi errori :). Sistema di controllo dell'inizializzazione delle classi di caratteri non sufficientemente ben concepito. E in più le variabili statiche.
In ogni caso, non ha senso parlare oltre senza il codice scritto dalla persona di cui si chiede.
Non c'è nessun errore nel debug, modalità di visualizzazione. La posizione non viene chiusa da un ordine di trading, ma da uno stop loss:
Molto probabilmente un errore logico nel codice, molto probabilmente qui, lo esaminerò, naturalmente, non so ancora come - nessun errore in modalità debug:
riesce a impostare uno stop per un ordine a 1,60704, 3000 pip sopra il prezzo corrente della posizione.
Il tester avrebbe dovuto proibire l'impostazione dell'arresto in questo caso.
Qui sto guardando il registro:
l'ordine di cambiare lo stop viene inviato per gpbusd, la linea evidenziata, ma viene effettivamente eseguito per eurusd- dopo.
Ecco il codice per impostare lo stop
dove
OrderSend( req, res )
funzione nativa mql, non sovraccaricata.
cioè qui
dice che imposta uno stop per gbpusd e dovrebbe essere così, ma in realtà
OrderSend( req, res )
imposta per eurusd
Qui sto guardando il registro:
l'ordine di cambiare lo stop viene inviato per gpbusd, la linea evidenziata, ma viene effettivamente eseguito per eurusd- quella successiva.
ci sono 2 errori.
№1. Il tuo errore. Da qualche parte nel codice. Hai impostato uno SL per una posizione EURUSD usando il prezzo GBPUSD. Il terminale non dovrebbe avere nulla in contrario.
№2. Bug nel terminale. Se questo SL viene attivato ad un prezzo che non esiste in quel momento nel flusso EURUSD, utilizzando il prezzo GBPUSD.
Qui sto guardando il registro:
l'ordine di cambiare lo stop viene inviato per gpbusd, la linea evidenziata, ma viene effettivamente eseguito per eurusd- dopo.
Ecco il codice per impostare lo stop
dove
funzione nativa mql, non sovraccaricata.
https://www.mql5.com/ru/docs/constants/structures/mqltraderequest
A quanto pare, quando si invia una richiesta di modifica, il campo posizione ha la precedenza sul simbolo. Stampareq.position