Auguri per MQL5 - pagina 27

 
SK. писал (а):
L'era delle soluzioni collettive è finita ed è fallita. C'è sempre un numero molto piccolo di persone in prima linea, ispirate dalle proprie idee. Sono loro che determinano le nostre condizioni di esistenza.

C'è una faccina sorridente senza cappello /:-)

Avendo seguito la storia dell'umanità non ricordo alcuna decisione collettiva. Qui hai ragione. Ecco perché ho scritto che se uno sviluppatore è VERAMENTE interessato a...... Sarebbe una sorta di indicazione del suo interesse e non un'altra pillola dolce per mantenere l'autostima degli utenti.

 

Una domanda sulla versione attuale, e allo stesso tempo un desiderio per la versione futura.
Nel tester, quando si testa un EA usando "indicatori da indicatori",
non c'è abbastanza tempo nel modello per chiedere questi indicatori.
Per esempio:
Gli indicatori #1 e #1.1 ricevono dati da iMA()
L'indicatore 2 si basa sui dati degli indicatori 1 e 1.1.
L'indicatore 3 esegue calcoli quadratici sulla base dei dati dell'indicatore 2
L'indicatore di sondaggi Expert Advisor 3,
ma
Durante i test, l'Expert Advisor non riceve dati (anche se funziona perfettamente nella modalità di trading).
Si presenta così: durante il test l'Expert Advisor può dare uno o due trade correttamente e poi rimane in silenzio
perché l'indicatore viene macchina zero = 2147483647.
-è qualche stack overflowed?
-quando GetLastError()==0
-Non dipende dalla velocità di visualizzazione e modellazione delle barre.
- Se spostiamo gli indicatori nell'Expert Advisor, il test diventa possibile fino ad un certo limite di tempo per i calcoli nell'Expert Advisor.

1. Ci sono delle impostazioni disponibili nello Strategy Tester per aggiungere il tempo per il polling degli indicatori?
2. il GetLastError() rileverà l'errore "indicator did not get it"/"Expert Advisor did not get it"). ?
Cioè ora questo errore può essere rilevato solo per gli indicatori che disegnano DRAW_LINE con ritorno 2147483647

 
Korey:

Il consulente vota l'indicatore 3,
ma
Durante i test, l'Expert Advisor non riceve dati (anche se funziona bene in modalità di trading).
Sembra così, in esecuzione EA può dare uno o due trade correttamente, dopo di che è silenzioso
perché l'indicatore viene macchina zero = 2147483647.
-è qualche stack overflowed?
-quando GetLastError()==0

...


Avete un chiaro problema nell'indicatore. Quando avrai la versione corretta dell'indicatore, tutte le domande sulla sincronia dei calcoli scompariranno. A causa del bug nell'indicatore, si pensa che qualcosa non venga calcolato in tempo, che ci sia una qualche "lista d'attesa per il calcolo dell'indicatore". Non è questo il caso!
 
Rosh:
Korey:

Il consulente vota l'indicatore 3,
ma
Durante i test, l'Expert Advisor non riceve dati (anche se funziona bene in modalità di trading).
Sembra così, in esecuzione EA può dare uno o due trade correttamente, dopo di che è silenzioso
perché l'indicatore esce macchina zero = 2147483647.
-è qualche stack overflowed?
-quando GetLastError()==0

...


Evidentemente hai un problema con l'indicatore. Quando otterrete la versione corretta dell'indicatore, tutte le domande sulla sincronia dei calcoli scompariranno. A causa del bug nell'indicatore, si pensa che qualcosa non venga calcolato in tempo, che ci sia una qualche "lista d'attesa per il calcolo dell'indicatore". Non è questo il caso!


Ho trovato la mia solita dislocazione in risposta al suo commento.
Il numero calcolato di barre nell'indicatore è stato limitato a max=1000 (sono abituato a risparmiare risorse)
Aumentando il massimo a 3000 ha funzionato.
Cioè il bug è che il numero calcolato di barre era solo 1000.
Grazie, un ENORME GRAZIE, perché è più di un anno che faccio a meno dei test di qualità!!!

Tuttavia, non c'è modo di spiegare logicamente perché non si possa fare in questo modo. -I buffer degli indici funzionano diversamente nel tester?
Perché, se ho bisogno di 0,1,2 barre nel mio EA, devo contare più di 1000 barre di indicatori?

 
Nel tester tutto funziona allo stesso modo che online, questo è stato deliberatamente progettato. Il tester in MetaTrader 4: un must da conoscere
 

È auspicabile permettere ai programmatori di testare i programmi senza essere collegati a una rete.

 
Rosh:
Nel tester tutto funziona allo stesso modo che online, questo è stato deliberatamente progettato. Tester in MetaTrader 4: questo è un must da sapere

Le violazioni nella logica dell'indicatore si riferiscono a una sola cosa - profondità di calcolo "erroneamente" impostata <1024.
Pertanto:
1. Non si sa in anticipo e non è chiaro, che al calcolo dell'indicatore su un numero molto inferiore a BARS
la linea dell'indicatore può scomparire, sia nel trading che nel Tester,
Pertanto, vale la pena di fare aggiunte nella documentazione, per esempio,
"Quando si calcola il numero di barre dell'indicatore per meno di .... (1024?) il funzionamento stabile non è garantito".
...Ho aggiunto un indicatore all'interno del forum con limite di 1000 barre e improvvisamente ho scoperto,
che quando viene chiamato per la prima volta, a volte si rifiuta di tracciare una linea. Quando rimuovo la limitazione della profondità, tutto è normale.

2. Se è possibile e ovvio restituire lo zero macchina dell'indicatore invece del valore dell'indice del buffer,
Anche in questo caso, è auspicabile prenderlo in qualche modo. (sulla programmazione isi))
a) Se è fuori dall'array, perché il tracciatore non lo prende?
b)Ovvero, dovreste forzare l'inizializzazione della memoria allocata per l'index-buffer con il valore -(66666666))
per distinguere la nullità dell'indice-buffer dall'assenza di calcolo.

 
Dopo un mese di conoscenza di MQL4, ho capito che è un linguaggio molto serio), e nella sua specializzazione è probabilmente il migliore. Ma manca fortemente un debugger passo dopo passo per un linguaggio di programmazione completo. Tuttavia, non ho letto tutte le 27 pagine di questo argomento, quindi scusatemi se questa richiesta è già stata postata.
 
Ecco un pensiero. Quando si preleva o si ricalcola, gli indicatori dovrebbero rimuovere selettivamente solo i "loro" oggetti, cioè per trovarli dovrebbero avere l'attributo indicatore nel loro nome. Di solito uso il nome dell'indicatore nel nome dell'oggetto. Ma non funziona quando ci sono diversi indicatori uguali in un grafico. Possiamo supporre che ogni istanza dell'indicatore nel terminale abbia un ID unico. Sarebbe bene avere una funzione per accedere a questo ID, allora il problema sarebbe risolto semplicemente: Object_Name = ID+"nome interno dell'oggetto".
 
Signori, abbiamo desiderato così tanto per il futuro di MQL5, che Dio non voglia che si faccia almeno questo. Forse è il momento di dire a noi stessi di smettere? Forse è il momento di chiedere allo sviluppatore di dirci come sarà questo linguaggio, forse ci darà qualcosa da testare? Per esempio, per testare il debugger - penso che sia un buon punto di partenza per l'implementazione di MQL5. Per quanto ho capito, il debugger dovrebbe supportare anche il codice MQL4... E se è pronto, perché non testarlo?
Cosa ne pensate voi sviluppatori?
Motivazione: