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
Ecco, la soluzione è semplice: introduciamo un altro controllo per cambiare la storia, in questo modo non si perde nulla e funziona al 100%.
Questo può anche essere usato come un OnTrade() incompleto
Credo di non essere abbastanza intelligente).
Come posso applicarlo?
C'è solo un problema ed è estremamente raro, l'ho trovato oggi per la prima volta in un paio d'anni, potrebbe essere stato prima, solo non l'ho notato
Stavo parlando del calcolo della somma hash - come si può aggiungere un nome di carattere al valore della somma hash - calcolare i valori dei codici delle lettere che compongono il nome del carattere.
Ecco, la soluzione è semplice: introdurre un altro controllo di modifica della cronologia, in questo modo non si perde nulla e funziona al 100%.
Ecco un estratto del mio articolo #3:
-------
Concentriamoci di più sulla quantità di hash come parte della struttura.
Consideriamo un biglietto. L'aggiunta/rimozione di un ordine pendente cambierà la quantità totale di tick sul conto, l'attivazione di un ordine pendente non cambierà la quantità totale di tick sul conto.Non è sufficiente conoscere il numero di ordini e posizioni per poter determinare con precisione cosa è cambiato nel conto - un ordine in sospeso può essere cancellato, e in questo caso il numero totale di ordini e posizioni nel conto cambierà. Ma... Un ordine in sospeso può scattare e diventare una posizione. In questo caso, la quantità totale di ordini e posizioni non cambierebbe (per i conti hedge e MQL4) - il numero di posizioni è aumentato, ma il numero di ordini è diminuito, quindi la quantità totale è ancora la stessa. Questo non funziona per noi.
Guardiamo il volume totale. Avete piazzato o cancellato un ordine in sospeso - importo totale nel conto è cambiato; abbiamo aperto o chiuso, o cambiato la posizione - importo totale nel conto è cambiato. Sembra essere adatto, ma ancora una volta, l'attivazione di un ordine pendente non cambierà il volume totale.
Vediamo quindi un'altra proprietà della posizione - tempo del suo cambiamento in millisecondi: l'apertura di una nuova posizione cambierà il tempo totale di cambiamento della posizione, la chiusura parziale cambierà il tempo di cambiamento della posizione, l'aggiunta di volume a un conto di compensazione cambierà il tempo totale di cambiamento della posizione.Quale di questi metodi è adatto per determinare la posizione precisa dei cambiamenti sul conto? Biglietto + ora del cambio di posizione. Controlliamo:
Qui, però, non ho aggiunto un simbolo alla somma dell'hash - non c'erano precedenti per questo. Ma ho funziona insieme alla cronologia dei controlli. Pertanto - dovrebbe funzionare senza errori. Tuttavia, lo controllerò qualche volta.
La soluzione è semplice: introdurre un altro controllo del cambio di cronologia, in questo modo non si perde nulla e funziona al 100%.
E sì, lo farà. Se il numero di ordini aperti non cambia, allora il numero nella storia cambierà. (Non mi importa degli ordini in sospeso - non li uso) E non dovremo passare tutto il giorno per prendere un solo evento.
E se l'utente ha ricevuto un messaggio di testo e ha deciso di visualizzare solo la storia dell'ultimo mese nel terminale, sarà un controllo aggiuntivo con provare tutti gli ordini, che non è fatale.
Sembra essere una buona soluzione. E senza riferimento a nient'altro che a ciò che abbiamo, cioè un conto di trading e un terminale.
Ecco un estratto del mio articolo #3:
-------
Concentriamoci di più sulla quantità di hash come parte della struttura.
Considera un biglietto. Aggiungendo/rimuovendo un ordine in sospeso cambierà la quantità totale di biglietti sul conto, attivando un ordine in sospeso non cambierà la quantità totale di biglietti sul conto.Non è sufficiente conoscere la quantità di ordini e posizioni che sono cambiati nel conto per poter determinare con precisione questo cambiamento - un ordine in sospeso può essere cancellato e in questo caso, la quantità totale di ordini e posizioni nel conto cambierà. Ma... Un ordine in sospeso può scattare e diventare una posizione. In questo caso, la quantità totale di ordini e posizioni non cambierebbe (per i conti hedge e MQL4) - il numero di posizioni è aumentato, ma il numero di ordini è diminuito, quindi la quantità totale è ancora la stessa. Questo non funziona per noi.
Considera il volume totale. Hai piazzato o cancellato un ordine in sospeso - volume totale del conto cambiato, aperto, chiuso o cambiato posizione - volume totale del conto cambiato. Sembra essere adatto, ma ancora una volta, l'attivazione di un ordine pendente non cambierà il volume totale.
Vediamo quindi un'altra proprietà della posizione - tempo del suo cambiamento in millisecondi: l'apertura di una nuova posizione cambierà il tempo totale di cambiamento della posizione, la chiusura parziale cambierà il tempo di cambiamento della posizione, l'aggiunta di volume a un conto di compensazione cambierà il tempo totale di cambiamento della posizione.Quale di questi metodi è adatto per determinare la posizione precisa dei cambiamenti sul conto? Biglietto + ora del cambio di posizione. Controlliamo:
Qui, però, non ho aggiunto un simbolo alla somma dell'hash - non c'erano precedenti per questo. Ma ho funziona insieme alla cronologia dei controlli. Pertanto - dovrebbe funzionare senza errori. Tuttavia, lo controllerò qualche volta.
Soluzione grassa, non c'è ancora bisogno di una tale variante.
Grazie!
Decisione grassa, non c'è ancora bisogno di questa opzione.
Grazie!
"Audace" perché non è stato fatto per una soluzione locale, ma come una parte di una sostituzione completa di OnTradeXXXX. C'è più lavoro con la storia.
E questo è un grande vantaggio - abbiamo dati pronti per la ricerca e l'ordinamento di qualsiasi ordine e posizione nel programma (non abbiamo bisogno di cercare di nuovo ordini e posizioni per soddisfare le esigenze del programma - tutto è già nelle liste). Un altro vantaggio è che il programma sa quale ordine ha originato la posizione in MQL4, cosa che non può essere fatta nelle versioni menzionate sopra.
Ripeto, la biblioteca è fatta per facilitare le cose a coloro che hanno troppo tempo e denaro per fare tutto da soli. Non insisto su nulla, naturalmente :)
E così è. Se il numero di ordini aperti non cambia, lo farà il numero nella storia.(Non mi importa degli ordini in sospeso - non li uso) E non devi disturbare tua nonna con l'andare attraverso gli ordini tutto il giorno per prendere solo un evento.
E se l'utente ha ricevuto un messaggio di testo e ha deciso di visualizzare la storia nel terminale invece di tutto solo per l'ultimo mese, sarà un controllo aggiuntivo con provare tutti gli ordini, che non è fatale.
Sembra essere una buona soluzione. Se hai un conto di trading e un terminale, puoi usare solo quello che hai senza essere legato a niente.
Al fine di non passare attraverso l'intera giornata, è possibile controllare solo quando le condizioni che possono portare ad un cambiamento, apertura, chiusura di una posizione, cioè concentrarsi sul raggiungimento dei prezzi che l'Expert Advisor utilizza per aprire, TP, SL. Beh, dipende dalla logica dell'Expert Advisor, sai cosa è più conveniente.
Per evitare di percorrere l'intera giornata, è possibile controllare solo quando le condizioni che possono portare a un cambiamento, all'apertura, alla chiusura di una posizione sono state soddisfatte, cioè concentrarsi sul raggiungimento dei prezzi che l'Expert Advisor utilizza per aprire, TP, SL. Beh, sì, dipende dalla logica dell'Expert Advisor, sai cosa è più conveniente.
Un EA (su un computer, in un continente) fa trading. L'altro (su un altro computer, in un altro continente) si occupa delle sue funzioni. Una soluzione è già stata trovata.
Vi sarei grato se poteste fornire qualche esempio riproducibile (senza sondare la storia del trading).
Ecco cosa è venuto fuori (anche se offtopic qui, ma chiesto qui).
Tagliare per vivere. Nessuna compatibilità con MT4 (ovviamente), nessuna gestione degli errori, ecc.
Il trading è primitivo, apre BUY, chiude su SL/TP. L'unico punto è dimostrare OnTradeTransaction() rispetto al "polling del server".
Per me ci sono voluti 2.34s contro 3.06s per passare nel tempo dato. La differenza è piccola a causa del basso carico sulle funzioni del server (solo una posizione, nessun controllo per magik e simbolo). In EA reale la differenza sarà molto più grande. La differenza sarà leggermente compensata dal calcolo dei segnali e dall'aggiunta di trailing stop, ma non è necessario farlo ad ogni tick. Il mio ATR è calcolato su M1, ma per 6 ore (cioè c'è spazio per ingrandire TF). E il trailing e il Breakeven sono calcolati su H3. Tutto dipende dalla strategia.
Sei irrimediabilmente indietro con i tempi!
Questi eventi sono garantiti da molto tempo!
Supponiamo che si sia verificato un evento in OnTradeTransaction() dopo il quale qualche azione deve essere eseguita, ma si è verificato un errore al primo tentativo di eseguire questa azione. Cosa fare? Ovviamente, deve essere ripetuto, e per questo è necessario salvare da qualche parte i dati sulla necessità di ripetere questa azione - molto probabilmente, questi dati sono salvati nelle solite variabili globali di Expert Advisor o in funzioni statiche. E improvvisamente ho dovuto riavviare il terminale... i dati sono spariti.
E quando si analizza la situazione attuale e la storia - niente va da nessuna parte.