Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 603

 
001:

Sui buchi nella storia, ovviamente. Una domanda anche per voi: come si ottiene una storia di qualità sullo strumento?

Ci sono istruzioni sul forum ista. L'autore, se ricordo bene, è Onna.

Sì, lo è. L'ho salvato nei miei segnalibri , solo che non è insta, ma robo.

Ma non so come sarà ora con la nuova MT, il formato è cambiato.
 

Nel corso del lavoro dell'EA si incontra il seguente effetto.

Apro un ordine nel mercato. C'è sempre un solo ordine nel mercato. Se il profitto va a profitto, lo SL dovrebbe essere trainato.

Ma in alcuni casi lo SL non è tracciato sulla candela corrente. Ma non appena si apre una nuova candela, tutto inizia a funzionare perfettamente (SL è respinto).

Da notare che questo non accade regolarmente. La sensazione è che dopo aver aperto OrdersTotal() sulla candela corrente rimane nullo e quindi non viene eseguita alcuna azione durante la ricerca.

Se ci fosse un errore nel codice, si verificherebbe in ognuno di questi casi. Ma qui questo effetto si verifica in modo irregolare.

Quale potrebbe essere la ragione di questo comportamento?


L'effetto è stato riscontrato nello Strategy Tester ed è apparso anche su un conto demo.

Il codice è standard. Costruzioni: MetaEditor (versione 5.00) - 934, MetaTrader (versione 4.00) - 646.

   for(i= OrdersTotal()-1; i >=0; i--) 
     {
      if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
       {
        if(OrderSymbol()==Symbol() && (Магик < 0 || OrderMagicNumber()==Магик))
         {
          Трал();
         }
       }
     }
 
Desead:

non guardare al futuro ma al passato, fare un controllo dei buchi e basta.


Come si fa ad aprire una posizione alle 03:00 quando il terminale è alle 04:00?
 
AlexeyVik:

Ci sono istruzioni sul forum ista. L'autore, se ricordo bene, è Onna.

Sì, lo è. L'ho salvato nei miei segnalibri , solo che non è insta, è robo.

Non so come sarà ora con il nuovo MT però, il formato è cambiato.
Grazie, quasi esattamente quello che volevo! Purtroppo AllMinutes_Step1 non ha "riempito" i buchi con le citazioni precedenti, come mi aspettavo da lui.
 
001:
Grazie, quasi esattamente quello che volevo! Purtroppo AllMinutes_Step1 non ha "riempito" i buchi, con le citazioni precedenti, come mi aspettavo che facesse.

Non ho provato a fare tutto quello che è descritto lì, ho solo preso la base pronta alla fine e ho eseguito l'Expert Advisor. Non uso affatto il tester, lo uso solo per rilevare gli errori nel codice. Ma considerando i cambiamenti nel formato della storia penso che dovremmo riscrivere gli script che ci sono tenendo conto di questi cambiamenti.
 
AlexeyVik:
Non ho provato a fare tutto quello che è descritto lì, ho solo preso una base pronta alla fine e ho eseguito l'EA. Non uso affatto il tester, lo uso solo per rilevare gli errori nel codice. Ma considerando i cambiamenti nel formato della storia, penso che dovremmo riscrivere gli script che ci sono tenendo conto di questi cambiamenti.


Sembra che dovremo riscriverlo. O usare il vecchio terminale + firewall.
 
001:

Sembra che dovremo riscriverlo. O usare il vecchio terminale + firewall.
Il firewall non aiuta. Dovete cancellare i file di aggiornamento. Cerca nel forum il percorso per raggiungerli.
 
AlexeyVik:
Il fuoco non aiuta. Dovete cancellare i file di aggiornamento. Cerca nel forum il percorso per raggiungerli.


Intendevo terminale SOLO per i test, cioè non loggato + firewall. Perché anche quando non sono connesso, si aggiorna da solo.
 
001:

Intendevo terminale SOLO per i test, cioè non loggato + firewall. Perché anche quando non sono connesso, si aggiorna da solo.

Per evitare l'aggiornamento e la necessità di rimuovere i file di aggiornamento. MT non li scarica ogni volta che devi aggiornare, vengono scaricati e aggiornati solo una volta.
 

Gente, potreste dirmi come convertire il doppio in int?

MatRound e altre funzioni di arrotondamento restituiscono, stranamente, Double. E se la variabile int è assegnata alla funzione MatRound, il compilatore genera molti avvertimenti come

possible loss of data due to type conversion
Motivazione: