Comunità di esperti - pagina 7

 
Questo è un controllo per il caso speciale in cui la differenza == 0
Questo ciclo attraversa la serie all'indietro finché non trova una differenza diversa da zero.

Questo può essere omesso, ma allora c'è la possibilità di mancare l'intersezione se accidentalmente colpiamo una barra quando M1 == M2.

Possiamo sostituire < con <=, allora questo caso di intersezione sarà preso,
ma la condizione produrrà anche un'intersezione quando due righe si toccano senza incrociarsi.

In generale, è più corretto usare il testo che è scritto in
(ma devo solo controllarlo nel lavoro - non l'ho controllato).

Per quanto riguarda la velocità, sarà la stessa.
Questo ciclo sarà attivato molto raramente,
e praticamente sempre non più di 1 controllo supplementare.
 
Domanda per gli sviluppatori: ci sarà un debugger per il meta-editor?

Domanda ai colleghi lottatori del caos: MQL4 supporterà l'accesso a qualsiasi database?
 
Qualcuno ha provato a cucire le candele giapponesi in un EA?
(Teoricamente, non c'è nessun problema per questo).
 
Domanda agli sviluppatori: ci sarà un debugger per il meta-editor?

Sì, ci sarà - è previsto. Molto probabilmente sarà insieme alla nuova versione del compilatore MQL4.
 
Domanda a chi potrebbe saperlo:

Qual è il tempo di esecuzione del codice compilato in MQL4 rispetto ad altri linguaggi di programmazione? Per esempio C++ è il più veloce, Java è molto più lento...
 
Devo guardare negli archivi, una volta Renat si vantava, e devo dire, non per niente. Gli esperti sono davvero molto veloci
 
Una funzione incorporata (metodo) è molto necessaria

Tutti i momenti di vendita contano come momenti di acquisto

Tutti i momenti di acquisto contano come momenti di vendita

Esiste o no una cosa del genere? E se non è così, come mi sembra (forse mi sbaglio), sarebbe bene che gli sviluppatori includessero una tale funzione integrata.

O forse ce n'è uno dopo tutto?
 
Domanda a qualcuno che potrebbe sapere:<br / translate="no">
Qual è il tempo di esecuzione del codice compilato in MQL4 rispetto ad altri linguaggi di programmazione? Per esempio C++ è il più veloce, Java è molto più lento...

"MQL4, MQL2, EasyLanguage, Wealth-Lab 3.0 e VC++: confronto di velocità".
 
Vi ho già dato questo codice.
È solo un esempio, buttate via le cose in più :))

Prima di chiudere una posizione, chiudiamo tutte le posizioni opposte.
int _OrderCloseAll(int _type = EMPTY, int Slippage = 5) { int count = 1; int limit = 5; while(count > 0 && limit > 0) { int n = OrdersTotal(); count = 0; limit--; for(int i = 0; i < n; i++) { if (OrderSelect(i, SELECT_BY_POS) == false) continue; if (OrderSymbol() != Symbol()) continua; if (_Magic != 0 && OrderMagicNumber() != _Magic) continue; if (OrderType() == OP_BUY && (_type == EMPTY || _type == OP_BUY)) { WaitOrderTimeOut(); if (OrderSelect(i, SELECT_BY_POS)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage); count++;
         } else if (OrderType() == OP_SELL && (_type == EMPTY || _type == OP_SELL)) { WaitOrderTimeOut(); if (OrderSelect(i, SELECT_BY_POS)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage); count++; } } return (0); }
 
Ti ho già dato questo codice. <br / translate="no"> Questo è solo un esempio, basta buttare l'eccesso :))

Chiudere tutte le posizioni opposte prima di aprirle.
int _OrderCloseAll(int _type = EMPTY, int Slippage = 5)
{
   int count = 1;
   int limit = 5;

   while(count > 0 && limit > 0)
   {
      int n = OrdersTotal();

      count = 0;
      limit--;

      for(int i = 0; i < n; i++)
      {
      }
   }
   return (0);
}


Ho già fornito un link al nostro forum inglese sulla chiusura di tutte le posizioni. apparentemente, nessuno ha letto l'intero thread. il ciclo inverso sarebbe più corretto.
      for(int i = n-1; i >= 0; i--)


State cancellando una posizione e questa viene rimossa dalla lista. La posizione successiva prende il suo posto e il contatore viene incrementato e proprio questa posizione viene saltata.