Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 513

 
Aleksey Vakhrushev:
Oksana, no, controllo solo la condizione(cioè ho prescritto i parametri dell'indicatore completamente senza di loro per vedere se c'è una differenza)

Forse stai contando male le candele? Forse è vero che su una candela 1439 o 1140 o 1441 il parametro è 0, e, per esempio, su una candela 1445 avrà già un valore? (Ho appena dato un'occhiata veloce all'indicatore stesso)

Il valore dovrebbe essere solo sulla candela in cui è avvenuta la rottura. Consiglio di usare un ciclo. Il valore potrebbe non essere sulla 1440esima candela. Bisogna guardare avanti e indietro da esso.

 
Oksana Berenko:

Forse stai contando male le candele allora? Forse è vero che su una candela 1439 o 1140 o 1441 il parametro è 0, e, per esempio, su una candela 1445 avrà già un valore? (Ho solo dato un'occhiata veloce all'indicatore stesso)

Il valore dovrebbe essere solo sulla candela in cui si è verificata la rottura. Ti consiglio di usare un ciclo. Il valore potrebbe non essere sulla 1440esima candela. È necessario guardare avanti e indietro da esso.

Ho provato con lo zigzag standard, anche 1440 bar non funziona, ma 288 sembra essere ok
 

Buon pomeriggio,

Ho incasinato il codice da qualche parte e il risultato è che non fa esattamente quello che mi serve. Come posso scaricare il codice passo dopo passo per vedere cosa mi sono perso?

 
kashi_ann:

Buon pomeriggio,

Ho incasinato il codice da qualche parte e il risultato è che non fa esattamente quello che mi serve. Come posso scaricare il codice passo dopo passo per vedere cosa mi sono perso?

Sviluppo di programmi: Debug - MetaEditor
 

Sì, lo uso tutto. Vorrei vedere il risultato di, diciamo, 10-20 corse, in una tabella. È possibile?

Per esempio su un grafico a 15 minuti:

Le 9:00 sono i dati.

9-15- il seguente

9-30- il seguente e così via.

La logica è la seguente:

Apriamo 2 ordini pendenti multidirezionali (2,3). Uno di essi si attiva (2) e l'altro (3) viene cancellato.

Quando anche il primo (2) si chiude (chiuso dall'ordine 4), controlliamo se ci sono ordini/posizioni. In caso contrario, il ciclo viene ripetuto.

Non sembra essere molto complicato.

L'ho ottenuto debuggando nessun ordine aperto e nessuna posizione. E il passo successivo in questa situazione è quello di impostare 2 nuovi ordini pendenti (5,6) e il risultato è che solo uno (5) è impostato.

Allo stesso tempo, quando il debugger non scrive ordini/posizioni, il grafico mostra linee per qualche ordine/posizione senza un numero.

Poi procede alle linee di immissione degli ordini, non succede nulla, anche se al primo turno gli ordini sono stati immediatamente inseriti nel commercio.

Raggiunge la fine del codice, ritorna all'inizio, i dati vengono aggiornati, l'ordine che era visibile prima viene cancellato dal grafico e appare un nuovo ordine (5).

Di cosa non ho tenuto conto?

Forse dovremmo aspettare una barra... e poi il ciclo si ripete...

 
kashi_ann:

Sì, lo uso tutto. Vorrei vedere il risultato di, diciamo, 10-20 corse, in una tabella. È possibile?

Per esempio su un grafico a 15 minuti:

Le 9:00 sono i dati.

9-15- il seguente

9-30- il seguente e così via.

Le funzioni

Comment();
Alert();
Print();
PrintFormat();

per aiutarvi

 
kashi_ann:

Sì, lo uso tutto. Vorrei vedere il risultato di, diciamo, 10-20 corse, in una tabella. È possibile?

...

Non riesco a capire cosa vuoi vedere?
 
Karputov Vladimir:
Non riesci a capire cosa vuoi vedere?

Di fatto, non c'è nulla di concreto.

Mi trovo di fronte a un problema che non so come risolvere.

L'esperienza precedente mi dice che ho trascurato qualcosa.

Non sono in grado di rintracciare il mio errore per mezzo del debug.

E non capisco bene come il programma elabora il codice, quindi voglio vedere l'intera sequenza per vedere il quadro completo.

Se c'è un altro modo, sono felice di saperlo.

 
kashi_ann:

Di fatto, non c'è nulla di concreto.

Mi trovo di fronte a un problema che non so come risolvere.

L'esperienza precedente mi dice che ho trascurato qualcosa.

Non sono in grado di rintracciare il mio errore per mezzo del debug.

E non capisco bene come il programma elabora il codice, quindi voglio vedere l'intera sequenza per vedere il quadro completo.

Se c'è un altro modo, lieto di ascoltare.

Di nuovo, nessun dettaglio. OK: dito nel cielo -DebugBreak.

Per applicarlo più o meno così:

//---
   if(PositionSelect(Symbol()))
     {
      //--- если успешно выбрали позицию по символу
      DebugBreak(); // программная остановка отладки
     }
 
Ciao, Potresti dirmi il codice che farà sì che l'EA esegua qualche azione all'inizio di un nuovo giorno, cioè 00.00, o in altre parole come visualizzare la condizione "Se è un nuovo giorno (00.00)" in MQL?