MQL4 primo passo - pagina 2

 

HA... sono riuscito a ottenere un'istruzione/funzione iCustom per estrarre il valore da un indicatore di media mobile e vedere il valore nella piccola finestra dove si copia il nome e si esegue lo script e si vede il valore...

Chi è il vostro maestro programmatore! ;)

Qualche altra domanda che non mi è chiara in base alla mia lettura, per favore se posso:

1. Ho notato che c'è una sezione sull'EA che dice onTick e poi OnTimer... l'intesa tra i due è che se il costrutto EA deve essere attivato in base al movimento del prezzo allora onTick è la preferenza, mentre se il costrutto è basato sulla tempistica del grafico, cioè apertura e chiusura della barra M1, allora bisogna usare la sezione onTimer del programma?

2. 2. Con iCustom e altri indicatori integrati, quando l'indicatore ha più di un ingresso, faccio riferimento a tutti gli ingressi aggiuntivi nella stessa funzione di una linea o devo replicare la funzione lo stesso numero di volte in cui ci sono gli ingressi, per esempio l'indicatore stocastico che ha kPeriod, dPeriod ecc.

3. Se la mia comprensione di No1 è corretta, allora posso sincronizzare il mio indicatore per iniziare con il timer del grafico, cioè se carico l'EA che guarda i primi 5 secondi e gli ultimi 5 secondi della durata della barra, al tempo del grafico di 42secs rimasti su un M1, posso sincronizzare il mio EA per eseguire come tale o lo fa automaticamente?

Grazie ragazzi!


MW

 
MUZZLE_ZA:

1. Ho notato che c'è una sezione sull'EA che dice onTick e poi OnTimer ... l'intesa tra i due è che se il costrutto EA deve essere attivato in base al movimento del prezzo, allora onTick è la preferenza, mentre se il costrutto è basato sulla tempistica del grafico, cioè apertura e chiusura della barra M1, allora bisogna usare la sezione onTimer del programma?


Finora non ho incontrato una sola situazione in cui ho avuto bisogno di usare OnTimer.

Una barra non può chiudersi e aprirne una nuova finché non arriva un nuovo tick. Quindi se avete bisogno di controllare una nuova barra (nuova barra significa che la precedente deve essersi chiusa) fatelo in OnTick

 
MUZZLE_ZA:

2. Con iCustom e altri costruiti in i[indicatori] quando l'indicatore ha più di un ingresso faccio riferimento a tutti gli ingressi aggiuntivi nella stessa funzione di una linea o devo replicare la funzione lo stesso numero di volte che sono ingressi per es. indicatore stocastico che ha kPeriod, dPeriod ecc?

Non capisco la domanda
 

Buongiorno Gumrai,

Grazie per la tua risposta. Ora sono confuso sulla definizione di OnTick. La mia comprensione era che su OnTick è un cambiamento di prezzo cioè una fluttuazione del FXrate indipendente dal tempo?

Riferimento MQL: Tick è un evento caratterizzato da un nuovo prezzo per un simbolo in un certo momento.

Sulla base di quanto sopra il mio pensiero iniziale era che se un prezzo non si muove per un periodo di 10secs allora non c'è nessun evento Tick per quella durata?

Forse è necessaria una maggiore chiarezza?

Per quanto riguarda la domanda 2, sono riuscito a curarmi da solo, quindi sono contento dell'obiettivo raggiunto! - Grazie.

Tocca a te :)


MW

 
MUZZLE_ZA:

Buongiorno Gumrai,

Grazie per la tua risposta. Ora sono confuso sulla definizione di OnTick. La mia comprensione era che su OnTick è un cambiamento di prezzo cioè una fluttuazione del FXrate indipendente dal tempo?

Riferimento MQL: Tick è un evento caratterizzato da un nuovo prezzo per un simbolo in un certo momento.

Sì, hai ragione.

Immaginate sul grafico M1

una barra si apre alle 12:01:00

l'ultimo tick della barra arriva alle 12:01:59

in quel momento non sappiamo che è l'ultimo tick, c'è ancora tempo per 1 o più tick aggiuntivi

ma

il prossimo tick arriva alle 12:02:05 e questo è il momento in cui la nuova barra si apre e quella vecchia si chiude. Poiché c'è stato un periodo di 6 secondi senza tick, è impossibile rilevare l'inizio di una nuova barra finché non arriva un tick. Quindi testate una nuova barra in OnTick

 

Penso di aver capito quello che mi stai dicendo.

Allora mi sorge spontanea la domanda: a cosa serve l'OnTimer nell'EA?

Se il mio obiettivo primario fosse quello di guardare un periodo di tempo e poi l'azione che si è verificata in quel periodo di tempo non sceglierei allora l'OnTimer?

In altre parole sono più interessato a ciò che accade tra le 12:01:00 e le 12:02:00: Il risultato potrebbe essere un aumento di prezzo, un calo di prezzo o nessuna azione di prezzo durante quel periodo di tempo?

Spero che abbia senso?

 

Buongiorno gente,

Sono riuscito a convincere un amico programmatore ad aiutarmi con la logica di base del ruleset dopo essere riuscito a chiamare tutte le funzioni dell'indicatore dei grafici rilevanti.

Il problema ora è che quando carico l'EA su un grafico mi restituisce una grande quantità di avvisi stocastici invece dell'avviso richiesto...

Non sono sicuro che l'allarme dell'EA stia funzionando correttamente perché quando l'ho eseguito sul tester della strategia non è tornato nulla quando so che alcuni ruleset avrebbero dovuto far scattare un allarme.

Come faccio a convalidare che l'EA ha sparato un evento?

Ho notato che l'EA ha una faccia accigliata sul grafico che, se ho capito bene, va ancora bene perché non sono interessato a permettere il live trading?

Se non sto facendo trading dal vivo dall'EA ed eseguo l'EA sul tester strat dovrebbe sparare un allarme durante il test e fermarsi o non offre questa funzione nel tester?

Grazie,


M

 
Non si ottengono avvisi pop-up nel tester di strategia, ma saranno elencati nel giornale
 

Ehi GumRai...

Spero che tu abbia avuto un buon fine settimana.

Ok, ho aperto il codice dell'indicatore nell'editor e ho cambiato i valori degli avvisi in false, così ora non mi vengono spammati gli avvisi della divergenza stochs quando carico l'EA. - Spero che questo non abbia effetti negativi sul mio EA.

Quando provo ad eseguire l'indicatore su un grafico M1 per 2 giorni e guardo il diario, le voci indicano Indicatori personalizzati xyz: rimossi - Questo suona come un comportamento atteso quando il codice è nel blocco OnTick del programma?

Battendo la testa... :)

 

Ciao ragazzi,

C'è qualche tipo di ritardo nell'EA... cioè qualche secondo di ritardo nell'elaborazione dell'EA?

Se il tempo del mio sistema differisce dal tempo del grafico e appare un allarme, quale tempo di allarme è questo, basato sul mio tempo locale o sul tempo del grafico?

La funzione MqlTick che riporta il last_tick.bid è l'ultimo prezzo dell'offerta più recente?

Quando uso la funzione OPEN(0) è il prezzo di apertura della candela attuale in cui si trova il ticker?