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

 
Roman.:


Come se questo non bastasse?

e poi c'è qualcosa del genere da escludere, in modo che non te ne freghi niente della costruzione...

Non ci sono funzioni o macro in MQL4 che restituiscono il numero di build.
 
Zhunko:
Non ci sono funzioni o macro in MQL4 che restituiscono il numero di build.


Ora ho capito. Senkue.

Ho pensato che fosse possibile fare tutto per analogia con la rimozione di un pezzo di codice dal tutorial fi nd responsabile del trading civetta solo su un certo account, password, ecc.

 
Ciao a tutti. Per favore, aiutatemi.

Ecco il succo: C'è un bot che piazza automaticamente gli ordini in sospeso, ad un certo prezzo.

Dobbiamo mettere un divieto di piazzare un ordine, a condizione che l'ordine o un affare a quel prezzo siano aperti.

Ho provato per tre giorni e non ho avuto fortuna.
 

ci sono diverse opzioni.... fare il test.

//
// проверим среди Выставленных ордеров /сработавших/ - есть ли Байка
//
void CheckOrdBye()
{
  int total = OrdersTotal();
  int TotalOpenOrders = 0;
  for( int cnt=0; cnt<total; cnt++){
     if (OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) == true)  {
        if (OrderSymbol()==Symbol() ) {
            if ( OrderType() == OP_BUY)   { OrdYN = 1; return;}
            if ( OrderType() == OP_SELL)  { OrdYN = 2; return;}
        }
     }
  }
}
 
bestfx:
Ciao a tutti. Per favore, aiutatemi.

Ecco il succo: C'è un bot che piazza automaticamente gli ordini in sospeso, ad un certo prezzo. ...

Mettilo davanti al blocco di invio dell'ordine:
if (OrdersTotal()>0)
{  for (int i=OrdersTotal()-1; i>=0; i--)
   {  if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      if (OrderSymbol()!=Symbol()) continue;
      if (OrderOpenPrice()==bad_price) // bad_price - значение цены при котором не хотите выставить очередной ордер
      return(0);
}  }
 
Aleksander:

ci sono diverse opzioni.... fare il test.



Potresti commentare il codice? Non è chiaro cosa fare.
 
paladin80:
Mettilo prima del blocco di invio dell'ordine:


E se ci sono ad esempio 30 ordini?

L'essenza è la seguente: si piazzano due operazioni opposte con una differenza di 40 punti dal prezzo medio fino a tre decimali.

Diciamo 1,251 per eur/usd cioè compri 1,253 vendi 1,249 poi il mercato per esempio taglia il prezzo di acquisto e torna a 1,251 e ora piazza altri due ordini agli stessi prezzi. E mentre il mercato si muoveva verso il prezzo di acquisto, lo script poteva piazzare altrettanti ordini e questi dovevano essere trattati allo stesso modo, cioè un prezzo = un ordine. Come implementare questo?

 
bestfx:


E se ci sono 30 ordini, per esempio?

L'essenza è la seguente: si piazzano due operazioni opposte con una differenza di 40 punti dal prezzo medio fino a tre decimali.

Diciamo 1,251 per eur/usd cioè compri 1,253 vendi 1,249 poi il mercato per esempio taglia il prezzo di acquisto e torna a 1,251 e ora piazza altri due ordini agli stessi prezzi. E mentre il mercato si muoveva verso il prezzo di acquisto, lo script poteva piazzare altrettanti ordini e questi dovevano essere trattati allo stesso modo, cioè un prezzo = un ordine. Come implementare questo?


Basta fare il Magic == prezzo
 
FAQ:

Basta fare il Magic == prezzo

Potresti essere un po' più specifico?
 
Dividi il prezzo per le cifre = riducilo a un intero e scrivilo in un medjic, poi cerca il medjic nell'array degli ordini aperti prima di impostare un nuovo ordine.