Errori, bug, domande - pagina 1089

 
MoneyJinn:

Questa era l'inizializzazione completa standard dell'indicatore, che viene eseguita al suo primo avvio e viene fatta tramite Oninit().

A volte, quando la storia viene aggiornata, ecc.

Nessuno ha mai pensato che l'inizializzazione ripetuta dell'indicatore tramite Oninit() avrebbe causato l'arresto degli array.

Per quale motivo?

"SetIndexBuffer lega il buffer di indicatori specificato all'array dinamico unidimensionale"

Stai collegando i buffer ad altri array quando aggiorni la cronologia?

Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
Усреднение ценовых рядов без дополнительных буферов для промежуточных расчетов
  • 2010.10.25
  • Nikolay Kositsin
  • www.mql5.com
Статья о традиционных и не совсем традиционных алгоритмах усреднения, упакованных в максимально простые и достаточно однотипные классы. Они задумывались для универсального использования в практических разработках индикаторов. Надеюсь, что предложенные классы в определенных ситуациях могут оказаться достаточно актуальной альтернативой громоздким, в некотором смысле, вызовам пользовательских и технических индикаторов.
 
MoneyJinn:

Questa era l'inizializzazione completa standard dell'indicatore, che viene eseguita al suo primo avvio e viene fatta tramite Oninit().

A volte, quando la storia viene aggiornata, ecc.

Nessuno ha mai pensato che l'inizializzazione ripetuta dell'indicatore attraverso Oninit() avrebbe causato il blocco degli array.

Ti è già stato offerto di mostrare il codice sorgente qui, per capire almeno qual è il problema.

Due righe di codice (anche se il codice sorgente) non permettono di determinare il problema.

 
MoneyJinn:

Questa era l'inizializzazione completa standard dell'indicatore, che viene eseguita al suo primo avvio e viene fatta tramite Oninit().

A volte, quando si aggiorna la cronologia, ecc.

Questo non è necessario.

Semplicemente si ri-legano per errore, e poi si spera di salvare i dati nel buffer e indirizzarli fino al ricalcolo dell'indicatore. Questo è il motivo per cui si ottiene un legittimo fuori portata accedendo a dati inesistenti all'indice sbagliato.

 
Renat:

Non ce n'è bisogno.

È solo che si ri-legano su errore, poi si spera di salvare i dati nel buffer e accedervi fino a quando non arriva il ricalcolo dell'indicatore. Ecco perché si ottiene un logico fuori portata accedendo a dati inesistenti all'indice sbagliato.

Inizializzo deliberatamente con l'azzeramento del buffer, quindi non conto di salvare i dati in linea di principio.

Il problema è che dopo il re-binding l'array non si riempie ed è quando provo a scrivere che appare l'errore specificato.

Se questa è la norma, allora va bene...

 

Il buffer è vuoto finché non arriva la richiesta di ricalcolare l'indicatore.

E se lo reinizializzate/re-bindate forzatamente, non avete il diritto di accedere a nessuno dei suoi elementi fino a quando non arrivate al gestore dell'indicatore OnCalculate.

 
Nella pagina Trading Signals Modules in russo, nella colonna "Signal Type" c'è scritto "For Buy" e "For Sell", o più correttamente "For...". Molto probabilmente una traduzione letterale dall'inglese con "For...".
 

Buon pomeriggio!

Aiutami a risolvere l'attività del terminale.

Iscritto per un segnale, il terminale ha funzionato per un po' - ordini aperti e chiusi. Poi l'account è stato bloccato con il commento "per l'alto carico del server". Il supporto ha detto che il mio terminale stava generando molte richieste al server (apertura, chiusura, modifica ecc.). Posso vedere dai log che metatrader cerca di sincronizzare il suo stato una volta ogni due minuti e non succede altro.

C'è un modo per tenere traccia del numero di richieste dal metatrader al server in modo da non far bloccare l'intero account?

 

1.Ditemi, l'uso di bandiere e variabili statiche è affidabile quando si usa un server vps?

A volte in condizioni EA complesse è necessario usare fino a dieci o più flag, senza contare le variabili statiche.

2. Per resettare tutte le bandiere e le variabili statiche sarebbe sufficiente rimuovere l'EA dal grafico?

3. Cosa succede se il server viene riavviato, le bandiere e le variabili statiche rimarranno?

4. Se il server va improvvisamente giù, le bandiere e le variabili statiche si resettano quando il server viene acceso?

Le domande riguardano MQL4 e MQL5.

 
forexman77:

1.Ditemi, l'uso di bandiere e variabili statiche è affidabile quando si usa un server vps?

A volte in condizioni EA complesse è necessario usare fino a dieci o più flag, senza contare le variabili statiche.

2. Per resettare tutte le bandiere e le variabili statiche sarebbe sufficiente rimuovere l'EA dal grafico?

3. Cosa succede se il server viene riavviato, le bandiere e le variabili statiche rimarranno?

4. Se il server va improvvisamente giù, le bandiere e le variabili statiche si resettano quando il server viene acceso?

Queste domande sono relative a MQL4 e MQL5.

1. Non importa se avete un VPS o il vostro PC; l'importante è che MQL4/5 funzioni.

2. Sì.

3. Nessun salvataggio.

4. Sì, lo faranno.

Se volete salvare le bandiere, scrivete i loro valori in un file e poi leggeteli. Provate a rimuovere le funzioni di trading dall'Expert Advisor, lasciate quelle che impostano le bandiere, emettetele nel commento, scrivete i loro valori, ricaricate MT4/5 e vedete cosa succede.

 
paladin800:

1. Sì, non importa se si tratta di un VPS o del proprio computer, purché MT4/5 funzioni.

2. Sì.

3. Nessun salvataggio.

4. Sì, lo faranno.

Se volete che le bandiere siano salvate, scrivete i loro valori in un file e poi leggeteli. Prova a rimuovere le funzioni di trading dall'Expert Advisor, lascia quelle che impostano i flag, scrivi i loro valori nel commento, ricarica MT4/5 e vedi cosa succede.

Grande soluzione con la scrittura su file!

Документация по MQL5: Файловые операции / FileWrite
Документация по MQL5: Файловые операции / FileWrite
  • www.mql5.com
Файловые операции / FileWrite - Документация по MQL5