Errori, bug, domande - pagina 223

 
Graff:
Sono d'accordo, ma è necessario disabilitare in qualche modo l'aggiornamento automatico in modo che il terminale non si aggiorni continuamente

Questo è esattamente ciò che MQ non farà, propongo che l'aggiornamento automatico sia automaticamente ritardato fino alla prossima (dopo quella che è stata rollata indietro) build. E mantenere l'ultima build "buona" nel backup, e saltare quella che è stata fatta retrocedere.

Migliorate un po' il sistema di aggiornamento automatico e tutti saranno felici.

 
Dali:

Questo è esattamente ciò che MQ non farà, propongo che l'aggiornamento automatico sia automaticamente ritardato fino alla prossima (dopo quella che è stata rollata indietro) build. E tenere l'ultima build "buona" in un backup, e saltare quella che è stata fatta retrocedere.

Migliorate un po' il sistema di aggiornamento automatico e tutti saranno felici.

Gli aggiornamenti vengono fatti non solo perché la build sta migliorando, ma anche perché i vecchi bug vengono risolti.

Proponi una nuova build con dei bug per tornare a una vecchia con più bug?

PS Se MQ accetterà il sistema di rollback (cosa di cui dubito seriamente), allora almeno la divisione delle build in improved (che introduce nuove funzionalità) e patched (che cattura i bug) dovrebbe essere fatta. Allora, e solo allora, sarà possibile rollbackare il bug non finito all'ultimo bug fissato.

 
Urain:

Gli aggiornamenti vengono fatti non solo perché la build viene migliorata, ma anche perché vengono risolti vecchi bug.

State suggerendo che una nuova build che ha dei bug dovrebbe essere riportata ad una vecchia che ha ancora più bug?

PS Se MQ accetterà il sistema di rollback (cosa di cui dubito fortemente), almeno le build dovrebbero essere divise in finalizzate (introducendo nuove funzionalità) e rilasciate (catturando i bug). Allora, e solo allora, sarà possibile rollbackare il bug non finito all'ultimo bug fissato.

Non lo faranno, e giustamente...
 

Urain:

Stai suggerendo di fare il rollback della nuova build con errori a quella vecchia con ancora più errori?

No :) Propongo uno scenario diverso (per me è rilevante almeno la 2a volta, dato che sto facendo MQ5).

Propongo di rollbackare la build 362, che ha diverse caratteristiche importanti che non funzionano, a quella precedente, che può aver avuto piccoli bug minori, ma MY Expert ha funzionato. Tornate indietro fino alla prossima build dove questi bug fatali sono già stati risolti.

Sottolineo che il rollback è una mia decisione personale. Non tutti sono affetti da questo errore (non tutti usano queste funzioni, non tutti usano MQ5, ecc.)

Per quanto riguarda la separazione delle costruzioni - non c'è bisogno di complicarla. La build nel MIO backup personale sarà sempre quella precedente, saltando quelle da cui sono tornato indietro. La logica è semplice e senza complicazioni. E nessuno, tranne l'utente, deve decidere quali build sono buone.

IMHO la ragione principale per cui MQ non ha voluto che le build precedenti fossero disponibili è per far cadere gli utenti fuori dalla cerchia dei beta tester. Nel caso di rollback solo fino alla prossima build disponibile, non sarà rilevante. E la complicazione dell'implementazione qui è trascurabile.

Altrimenti, il lavoro di sviluppo per gli sviluppatori (cioè per noi che siamo affetti da questi bug fatali) rallenterà per diversi giorni (mentre sono passati 6 giorni dal rilascio della build 362). Anche se, per semplicità, ci si può annoiare.
 
Due terminali... 4 и 5.. stesso terminale...

MT4 ha un pannello...

Controllo delle operazioni di trading dalla tastiera... ma solo se ForegroundWindow è ::MetaTrader e il grafico con il bot è il primo nell'ordine z...


su MT5 - solo elaborazione
[CODICE]
void OnChartEvent(const int id, // ID evento
const long& lparam, // Parametro di tipo evento lungo
const double& dparam, // Parametro di tipo doppio evento
const string& sparam // Parametro di tipo stringa eventi
){
if(lparam=='A')OpenOrder(0,MB,1);//compila il modulo di scambio
...
if(lparam=='X')CloseOrder(;)
}
[/CODE]

Quando il segnale TradeIsDisabled appare in MT4, Five inizia a riempire un modulo di trade (quello di F9)... nell'ACTIVE Editor di MT5(!?!)... MT5 - build 3-62... Prima, andava bene... 2-29 MT4...

Come mai?

 

quando si convertono esplicitamente dati di tipo double in datetime, c'è una perdita di precisione?

Time_Max_Candle[CandleNumber]=(double)TimeCurrent();

ObjectCreate(0, "Line_Trend_Down_"OBJ_TRENDBYANGLE,0,Time_Red_0,Red_Line_0,(datetime)Time_Max_Candle[CandleNumber],Green_Line);

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов - Документация по MQL5
 
dentraf:

quando si convertono esplicitamente dati di tipo double in datetime, c'è una perdita di precisione?

Time_Max_Candle[CandleNumber]=(double)TimeCurrent();

ObjectCreate(0, "Line_Trend_Down_"OBJ_TRENDBYANGLE,0,Time_Red_0,Red_Line_0,(datetime)Time_Max_Candle[CandleNumber],Green_Line);

Non ci sarà nessuna perdita di precisione perché il valore massimo della data-ora è 32535244799 (il numero di secondi dal 1 gennaio 1970 al 31 dicembre 3000) ed è rappresentato accuratamente nel formato reale
 

Buon pomeriggio a tutti!

Esperti di MQL5, potreste consigliarmi come passare un array di puntatori in una funzione?

Per esempio, array gSymbols:CSymbolInfo *gSymbols[] .

 
Cari sviluppatori, sarebbe bello fare quanto segue nella prossima build:

1. Lascia che MT5 provi a connettersi agli agenti una volta ogni 10 minuti per un numero infinito di volte. Poi abbiamo 6 tentativi all'ora (uniformemente distanziati nel tempo).

2. In MT5, nel settore Agenti (dove si trovano le cartelle Locale, Remoto, Pacchetto) aggiungere un'opzione per creare le proprie cartelle per fare le liste degli agenti remoti. Sta già diventando scomodo gestire così tanti agenti in una cartella.

3. In relazione al bug (a volte alcuni agenti danno risultati di elaborazione con 0 compravendite, forse salterà fuori qualcos'altro), aggiungere il controllo dopo un certo numero di passaggi, diciamo 100, sulla correttezza del risultato dell'agente (possiamo avere un errore, diciamo il 5%) con l'agente locale. Se l'agente dà risultati sbagliati, fate eseguire a MT5 un riavvio remoto e cancellate tutti i risultati precedenti da questo agente, e dopo 10 riavvii senza successo (cioè i risultati sbagliati si verificheranno ancora), disconnettetevi da esso.

Ho postato le immagini in Test sugli agenti remoti in MetaTrader 5

 
le scelte di risposta...
visto - letto - pensato - fatto - fatto - reso ridicolo... //underline...
benvenuto...