Tecnica Bailout

Sezione dedicata a metatrader (ed altre piattaforme) ed al suo linguaggio di programmazione per il trading automatico
zetalakappa
Messaggi: 42
Iscritto il: 06/07/2015, 15:45

Re: Tecnica Bailout

Messaggio da zetalakappa »

Io ti sto parlando di mql4 per MT4, Soul ti sta spiegando il tutto correttamente ma per MT5.

dicci cosa ti serve.

per amore del ragionamento, ecco la funzione per mt4

Codice: Seleziona tutto

bool SonoPassateAbbastanzaBarre()
{
int i=OrdersTotal();
int TicketTrovato=False;
datetime DTAperturaPosizione=NULL;

while (i>=0 && TicketTrovato==False)
{
  if (
         OrderSelect(i,SELECT_BY_POS,MODE_TRADES)
      && OrderMagicNumber()==MagicNumber
      && OrderSymbol()==Symbol()
     )
      {
       TicketTrovato=True;
       DTAperturaPosizione=OrderOpenTime();
      }
   i--;
 }

if (TicketTrovato==True && DTAperturaPosizione<=Time[BARRE_DA_PASSARE])return(True); else return (False);

 }
LucaMQL4
Messaggi: 91
Iscritto il: 15/02/2016, 23:11

Re: Tecnica Bailout

Messaggio da LucaMQL4 »

Ah ecco. Perfetto vi ringrazio avete risolto i miei problemi. Ancora grazie :green: :green: :green:
soul
Messaggi: 18
Iscritto il: 05/05/2017, 18:24

Re: Tecnica Bailout

Messaggio da soul »

Il codice é mql4. La funzione Sonopassateabbastanzabarre potrebbe restituire false anche quando si verifica la condizione dedcritta da Luca, perchè la data dell'apertura dell'ordine non combacia sempre con il datetime dell'apertura della barra. Ti conviene usare ibarshift, eseguendola una sola volta, il primo tick tick di ogni nuova barra, così come ti ho mostrato nel post precedente. In questo modo, quando arriva il tick che determina l'apertura dell'ultima barra, se il profitto é positivo e sono passate tot barre, la posizione verrá chiusa, altrimenti aspetta il tick che realizza l'apertira della prossima barra per verificare nuovamente.
Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti