Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1216

 
Pineapple88:

Qual è la ragione per aprire una posizione subito dopo l'avvio dell'EA?

Le condizioni per aprire una posizione non sono soddisfatte, ma la posizione viene aperta

In questi casi, il modo migliore per farlo è usare il Print. Questo mostrerà se le condizioni sono soddisfatte o meno.

...
if(PositionsTotal()==0)
 {
  Print(" MovingAverage1[0]: ",MovingAverage1[0]," MovingAverage2[0]: ",MovingAverage2[0]);
  trade.Sell(0.1);
 }
...
 
Vladimir Karputov:

Quando dovremmo controllare 'MinDist(30 pips)' e 'OpenDev(10 pips)' - su ogni tick o solo al momento della nascita di una nuova barra?

Dovrebbe essere controllato su ogni Tick!

ma per i test è possibile fare due varianti, e un interruttore per il tester nei parametri? forse c'è un esempio pronto in CODEBASE

 
Milhail Novgorodcev:

È necessario testare in ogni Tick!

ma per i test è possibile fare due varianti, e un interruttore per il tester nei parametri? forse c'è un esempio pronto in CODEBASE

Se vuoi controllare su ogni tick, allora dovresti specificare COME e DOVE controllare il parametro 'MinDist(30 pips)'.

Per esempio, volete controllarlo sulla barra corrente? O a qualsiasi numero di barre o solo cercare l'ultimo momento in cui'MinDist(30 pips)' era?

 

Ciao Compagni!

Nel tester di strategia visuale, quando si esegue l'EA, l'indicatore MACD utilizzato nell'EA viene visualizzato o meno, e lo stesso vale per l'EA negli esempi standard. È un bug invisibile nel Visual Tester o cosa?

 
Chi richiederà. inviato per posta una cartella con un EA su mql5.ma installarlo nel terminale non può.come fare? dove trovare informazioni per fare questo?
 
kokines:
Mi è stata inviata per posta una cartella con un Expert Advisor su mql5, ma non riesco a installarlo nel terminale. Come posso farlo? Dove posso trovare le informazioni su come farlo?

Forse ti hanno mandato la cartella con il codice sorgente, poi devi compilarlo con MetaEditor.

 
Vladimir Karputov:

Se controlli su ogni tick, allora devi specificare COME e DOVE controllare il parametro 'MinDist(30 pips)'.

Per esempio, volete controllare la barra corrente? O in qualsiasi barra o solo cercare l'ultimo momento in cui era'MinDist(30 pips)'?

abbiamo bisogno dell'ultimo MinDist(30) - questo evento darà un segnale per aprire un ordine, che sarà aperto una volta raggiunto il valore di OpenDev(10) nel momento attuale e l'ordine sarà BAY - se il valore del prezzo di MinDist(30) era sopra la media (o Sell se sotto la media)

E dopo l'apertura dell'ordine il valore MinDist viene resettato, e bisogna aspettare ancora!!! per il valore MinDist (30), e così via...

 
Milhail Novgorodcev:

avete bisogno dell'ultimo momento in cui c'è stato un MinDist(30) - questo evento dà un segnale per aprire un ordine, che si aprirà quando il valore di OpenDev(10) è raggiunto nel momento attuale e l'ordine sarà BAY - se il valore del prezzo di MinDist (30) era sopra la media (o Sell se sotto la media)

e dopo l'apertura dell'ordine il valore MinDist viene resettato, e bisogna aspettare ancora!!! per il valore MinDist (30), e così via...

La prima volta che si esegue, trovare la prima data per l'evento 'MinDist(30)' e ricordarla. Successivamente scansiona lo spazio da questa data all'ora corrente. Non appena trovate un nuovo evento 'MinDist(30)', sovrascrivete la data salvata.

 
Qual è l'errore che invia l'errore 10054 nel tester?

 

Buon pomeriggio!

Sto cercando di capire gli array e ho la seguente domanda.

MqlRates rates[]; 
   ArraySetAsSeries(rates,true); 
   int copied=CopyRates(Symbol(),0,0,100,rates);

Perché usareArraySetAsSeries in questo esempio e impostare il flag true, se inCopyRates il conteggio viene fatto dal presente al passato?

Ho capito che la funzioneArraySetAsSeries è necessaria per cercare l'array dal presente al passato.

Voglio capire lo scopo di questa funzione in questo esempio.

Motivazione: