Inizializza e reinizializza automaticamente l'EA da un file - pagina 6

 
Romal001:
Buona sera ditemi la qualità del test del robot per quanti anni non dovrebbe avere trades in perdita?????????? Se potete rispondermi inviate un messaggio in praesentia grazie in anticipo!
Data la scarsa qualità dei dati storici, indipendentemente dalla loro fonte, anche pochi anni non sono un indicatore. L'Expert Advisor dovrebbe essere ottimizzato e testato per un particolare broker, ma non dimenticare che un "particolare" broker ha un sacco di "buchi" nella sua storia. Pertanto, i test dipendono dall'orizzonte temporale in cui opera l'EA. Se su M1-M5, allora 6-12 mesi sono sufficienti per le conclusioni. Se su M15 e oltre, abbiamo bisogno di 12 mesi per testare e sperare nella correttezza dei dati storici. E nessun Ducascopy e simili ci salverà qui.
 
Vasiliy Sokolov:
Non stai spingendo la tua mitica esperienza qui. Molte persone qui hanno una vera esperienza di trading, anche su FORTS, anche usando MetaTrader 5. Se i commercianti non hanno soldi sul FORTS, devono fare trading sul FORTS, e poi non possono fare trading sul FORTS nel mercato reale.

Per quanto riguarda l'esperienza di Michael.

Più di un anno fa, io e lui ci siamo scambiati i servizi. Gli ho fornito un servizio e in cambio mi ha scritto un EA per MT5 FORTS. Durante l'anno ci sono stati crash di borsa, interruzioni di corrente e guasti di connessione, ma il robot che ha scritto non ha mai fatto un solo errore.

L'unico colpo al denaro è stato quando il server dell'Exchange è andato in crash a causa del superamento delle transazioni, ma questo è dovuto al fatto che gli sviluppatori non hanno ancora fatto un normale codice di ritorno del server di trading.

Abbiamo discusso questo problema con lui e non volevo bloccare l'EA su un codice di ritorno della richiesta non valido perché il server di trading, a volte, nel funzionamento normale, restituisce questo codice di ritorno (codice 10013).

Se pensate che questo sia un problema artificioso che sta solo nella sua testa, allora per favore consigliate come aggirarlo.

 
kond777:

Per quanto riguarda l'esperienza di Michael.

Più di un anno fa, io e lui ci siamo scambiati i servizi. Gli ho fornito un servizio e in cambio mi ha scritto un EA per MT5 FORTS. Durante l'anno ci sono stati crash di borsa, interruzioni di corrente e guasti di connessione, ma il robot che ha scritto non ha mai fatto un solo errore.

L'unico colpo al denaro è stato quando il server dell'Exchange è andato in crash a causa del superamento delle transazioni, ma questo è dovuto al fatto che gli sviluppatori non hanno ancora fatto un normale codice di ritorno del server di trading.

Abbiamo discusso questo problema con lui e non volevo bloccare l'EA su un codice di ritorno di richiesta non valido perché il server di trading, a volte, nel funzionamento normale, restituisce questo codice di ritorno (codice 10013).

Se pensate che questo sia un problema artificioso che sta solo nella sua testa, allora per favore consigliate come aggirarlo.

Non c'è bisogno di rivedere qualcosa sull'esperienza di Mihail se ha già detto che i suoi EA nell'Inite sono stupidamente cancellano gli ordini e poi ricominciano, e questo accade ad ogni avvio. Cosa c'è da dire?

Non possiamo consigliare nulla perché la portata di questa spazzatura non è nota né nella sua mente né in quella dei suoi difensori. Qui hai scritto "bloccare l'Expert Advisor per codice di ritorno". Perché bloccarlo del tutto? Devi fare la cosa giusta. Tu hai i tuoi principi speciali di programmazione EA lì (nessuno ha visto il codice ed è improbabile che lo veda), quindi pensa da solo a come affrontare le tue situazioni speciali.

 
Romal001:
Buona sera ditemi la qualità del test del robot per quanti anni non dovrebbe avere trades in perdita?????????? Se puoi dirmi la risposta in un messaggio privato, ti ringrazio in anticipo!
Può essere. Senza perdere trade è irrealistico e sospetto.
 
Dmitry Fedoseev:

Perché parlarci ancora dell'esperienza di Mikhail quando lui stesso ci ha già detto che i suoi EA nell'Inite cancellano stupidamente gli ordini e poi ricominciano da capo, e così via ad ogni avvio. Cosa c'è da dire?

Non possiamo consigliare nulla perché la portata di questa spazzatura non è nota né nella sua mente né in quella dei suoi difensori. Qui hai scritto "bloccare l'Expert Advisor per codice di ritorno". Perché bloccarlo del tutto? Devi fare la cosa giusta. Tu hai i tuoi principi speciali di programmazione EA lì (nessuno ha visto il codice ed è improbabile che lo veda), quindi pensa da solo a come affrontare le tue situazioni speciali.

 
Sì. Le immagini a colori per gli adulti sono argomenti molto forti.
 
Dmitry Fedoseev:

Perché parlarci ancora dell'esperienza di Mikhail quando lui stesso ci ha già detto che i suoi EA nell'Inite cancellano stupidamente gli ordini e poi ricominciano da capo, e così via ad ogni avvio. Cosa c'è da dire?

Non possiamo consigliare nulla perché la portata di questa spazzatura non è nota né nella sua mente né in quella dei suoi difensori. Qui hai scritto "bloccare l'Expert Advisor per codice di ritorno". Perché bloccarlo del tutto? Devi fare la cosa giusta. Tu hai i tuoi principi speciali di programmazione EA lì (nessuno ha visto il codice ed è improbabile che lo veda), quindi pensa da solo a come affrontare le tue situazioni speciali.

Non sto difendendo nessuno, sto solo esponendo i fatti a mia disposizione.

Tornando all'errore sui codici di ritorno. Michael suggerisce di sospendere l'EA dopo tre richieste, citando che questa è una svista da parte degli sviluppatori

https://www.mql5.com/ru/forum/58012/page2#comment_2017705

Sono d'accordo con te che non vale la pena fermare il lavoratore EA, quindi come pensi che il problema menzionato nel link sopra possa essere risolto?

ФОРТС: OnTradeTransaction() коды возврата
ФОРТС: OnTradeTransaction() коды возврата
  • www.mql5.com
Сейчас, коды возврата торгового сервера функции OnTradeTransaction() выглядят так:. - Страница 2 - Категория: автоматические торговые системы
 

Ovviamente, se:

Когда "подглючивает" сервер МТ5 или сбой на бирже, то происходит следующее:

L'esaminatore invia ordini per cancellare un ordine ESISTENTE e la risposta torna

"Richiesta non valida"!!!! E l'EA continua a "martellare" il server con ordini di cancellazione

dell'ordine.

Allora devi continuare a martellare. Non è necessario bloccare l'Expert Advisor. Forse la quantità di errori aumenta e l'intervallo di tempo tra i tentativi aumenta. La soluzione più semplice è fare diversi tentativi e mettere in pausa fino all'apertura della prossima barra.

 
Dmitry Fedoseev:

È già stato scritto qui - ricalcolare tutto da capo. Cioè analizzare la situazione con gli ordini. Memorizzare alcuni dati in file o in qualsiasi altro modo (forse in variabili globali) - non è importante. Il punto principale è che se alcuni dati sono necessari, vengono memorizzati in modo vincolante per i biglietti d'ordine, e in questo caso non c'è nessun problema con i dati obsoleti - abbiamo ordine - abbiamo dati, nessun ordine - non abbiamo dati. Ci possono essere dati non legati a un ordine specifico, ma dobbiamo pensare a ogni caso ed è un problema risolvibile.

La compensazione è davvero il problema più complicato. Ma non è un problema di memorizzazione dei dati a lungo termine (o la sua obsolescenza), possiamo memorizzare i dati in semplici variabili nell'Expert Advisor (un po' rischioso, ma solo per 5 minuti). La difficoltà qui è come affrontarla dopo. Possiamo creare un gruppo di variabili terminali globali per ogni ordine e memorizzare il prezzo di apertura in esse. Poi, quando appaiono gli ordini non marcati (o all'apertura di un nuovo giorno), guardiamo gli ultimi ordini chiusi nella storia, li abbiniamo in base alle caratteristiche che possono essere utilizzate (per esempio, il lotto), e resettiamo tutte le variabili globali dall'ordine chiuso al nuovo ordine.

Grazie. L'idea principale è chiara. Pensavo che ci fosse una soluzione semplice e universale per tutte le situazioni.
 
Andrey Khatimlianskii:

Sono d'accordo con gli oratori precedenti (quasi tutti).

  1. Ripristiniamo tutto ciò che possiamo dall'ambiente del mercato.
  2. Tutto il resto è memorizzato con un riferimento a qualcosa (biglietto d'ordine, ora di inizio del giorno, ecc.).
Basta definire una "data di scadenza" diversa per ciascuna delle variabili memorizzate (non può essere la stessa per tutte), e caricare solo se non è scaduta.

Nel tuo esempio con il numero di domande: basta aggiungere una variabile in più - l'ora di inizio dell'ultimo giorno. Il giorno è cambiato - il contatore è stato azzerato e la nuova data è stata registrata.

Per l'esempio con la riapertura di una posizione: dovete decidere quali eventi possono rendere inutilizzabili queste informazioni. Per esempio, come consigliava Mikhail - se non c'è una posizione, dimenticate tutto, e se c'è, considerate le informazioni aggiornate.

In generale, quello che serve non è una ricetta generale, ma delle specifiche.

Capisco.

Specifiche: domani penserò a come prendere una posizione al volo su FORTS. In effetti, ciò di cui ho bisogno più di tutto è conoscere il prezzo di apertura reale di una posizione che si è liberata (riaperta al prezzo di compensazione).

La posizione su FORTS è guadagnata dalla somma dei trade su uno (o più ordini). Alla compensazione c'è un trade tecnico senza biglietto, dobbiamo capire come determinare il prezzo di POSITION_PRICE_OPEN che era prima della compensazione.

Motivazione: