Funzione Price_diff e GetTime

2 risposte

Zsolt72

Abbonato, bbp_partecipante, comunità, 5 risposte.

Visita il profilo

10 anni fa #111806

Caro supporto,

 

L'EA Wizard è molto buono, ma non capisco alcune funzioni:

 

1. Come posso utilizzare la funzione Price Difference ( PRICE_DIFF )? Vorrei un ordine quando la differenza di prezzo tra l'ultimo ordine e il tasso attuale è di 5 pip.

2. Vorrei operare tra le 8 e le 16 ore. Come posso utilizzare la funzione GetTime?

 

Grazie in anticipo

Zsolt

0

Zsolt72

Abbonato, bbp_partecipante, comunità, 5 risposte.

Visita il profilo

10 anni fa #123135

L'assistenza ha risposto via e-mail. Molte grazie:

 

> 1. Come posso utilizzare la funzione Price Difference ( PRICE_DIFF )? Vorrei un ordine quando la differenza di prezzo tra l'ultimo ordine e il tasso attuale è di 5 pip.

 

La differenza di prezzo è qualcosa di diverso, cioè la differenza tra due indicatori.

Nel vostro caso dovreste probabilmente utilizzare la funzione Open PL (in pips). Questa funzione restituirà la differenza in pips tra l'ultimo ordine aperto e il prezzo corrente.

 

 

> 2. Vorrei operare tra le 8 e le 16 ore. Come posso utilizzare la funzione GetTime?

 

è semplice, basta aggiungere queste condizioni alle regole:

SE TempoCorrente() > GetTime(8, 0, 0)

e TimeCrrent() < GetTime(16, 0, 0)

e ... le altre condizioni

 

 

Queste funzioni utilizzano l'ora del broker - l'ora della MetaTrader, non l'ora locale.

 

Cordiali saluti,

 

Andrew Safo

Team di supporto

0

stearno

Cliente, bbp_partecipante, comunità, 379 risposte.

Visita il profilo

10 anni fa #123145

@Zsolt72

 

Per le regole temporali, esiste un'altra opzione rispetto al suggerimento di Andrews. Io uso l'ora nel menu a tendina Valori temporali, come si vede nell'allegato.  

 

Per quanto riguarda la prima domanda, forse non ho compreso appieno la sua richiesta. Andrew è corretto trovare la differenza di prezzo di un ordine aperto o in corso. Pensavo che lei chiedesse di scoprire quando il prezzo corrente è a 5 pip di distanza dal prezzo dell'ultimo ordine o di quello chiuso.  

 

Se la domanda è questa, un modo per farlo è creare una variabile chiamata "Lastordersprice" o qualsiasi altro nome. Poi, si inserisce Assegna variabile nell'istruzione THEN delle regole. Assegnerete quindi alla variabile il prezzo dell'ultimo ordine e potrete quindi utilizzare tale variabile nell'altra regola che entra quando il prezzo è superiore a 5 pips rispetto al prezzo indicato nella variabile (la regola di esempio è in allegato).

 

 

Se si desidera il prezzo di apertura dell'ultimo ordine, è possibile farlo quando la regola apre l'ordine e scegliere Prezzo di apertura dell'ordine nel menu a tendina del controllo della strategia (come si vede in allegato).

 

La parte difficile è se si vuole utilizzare il prezzo di chiusura dell'ultimo ordine. Per farlo, è necessario assegnare la variabile quando una regola chiude l'ordine. Quindi, dovrete capire cosa potrebbe chiudere l'ordine e assegnare la variabile con quel valore. Quindi, se è il TP a chiudere l'ordine, dovrete assegnare il valore con il prezzo del TP. Se è l'attraversamento di una MA a chiudere l'ordine, si dovrà assegnare il valore con l'importo della MA. Questo sarebbe più facile se una delle vostre regole chiudesse l'ordine. In tal caso, è sufficiente aggiungere Assign Variable alla parte WHEN di quella regola con il valore. È più complesso quando è lo SL o il TP a chiudere l'ordine e non una regola. Quindi giocate con questo per vedere se riuscite a capire come farlo con il vostro EA.

 

Suggerisco poi di aggiungere Assegna variabile = 0 quando si inserisce un nuovo ordine (se non si utilizza il prezzo di apertura ma il prezzo di chiusura dell'ultimo ordine). Questo rimuoverà qualsiasi prezzo presente in questo campo, in modo che sia pronto per la regola di assegnazione del nuovo prezzo. Mi piace utilizzare questa funzione per assicurarmi che le mie regole non vengano eseguite accidentalmente a partire da un livello di prezzo precedente.

 

Ci vorrà un po' di tempo per capirlo, ma è possibile farlo se si vuole.  

 

 

-Stearno

0

Stai visualizzando 2 risposte - da 1 al 2 (di 2 totali)