consulente esperto - domande varie - pagina 41

 

Cose stupide oggi ho provato alcune volte la vecchia versione EA che chiude tutti gli ordini aperti.
Ora sono confuso.

---

Ma comunque uso MarketInfo() invece del semplice Bid e Ask.

 

Di solito le provo tutte per scoprire cosa funziona meglio.

Ho uno script che chiude tutti gli ordini quando è necessario.

         for(int order=0; order<=OrdersTotal()-1; order++)
           {
            bool selected=OrderSelect(order,SELECT_BY_POS);
              {
               if(selected==1)
                 {
                  bool close=OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),3,clrNONE);
                 }
              }
           }
Ma come potete vedere non viene controllato nulla, quindi è per l'implementazione manuale dove è possibile verificare visivamente che gli ordini siano chiusi o meno.
 
whroeder1:
  1. In presenza di ordini multipli (un EA più grafici, più EA, trading manuale)
Max Enrik: RefreshRates() Non capisco dove potrei metterlo.
Fai la domanda, ottieni la risposta, la ignori e chiedi di nuovo. Nessun down, nessun RefreshRate.

 
whroeder1:
Fai la domanda, ottieni la risposta, la ignori e chiedi di nuovo. Nessun down, nessun RefreshRate.

Perché ho chiesto di nuovo. Mi dispiace di non aver capito la frase qui sotto. (Non riesco a tradurla).

  • È necessarioRefreshRates dopo lo sleep e tra più chiamate al server se si desidera utilizzare levariabili predefinite(Bid/Ask) oOrderClosePrice().
 

@Marco

Dopo aver sostituito, JPY non mostra il prezzo corretto e non apre l'ordine.

 
Avete lo snippet del codice.
 
Marco vd Heijden:
Avete il codice snippet.

Ecco a voi.

void buyorder()
 {
  Ticket = OrderSend( _Symbol, OP_BUY, lotsize, MarketInfo(OrderSymbol(),MODE_BID), slippage, sl, tp, "trade panel", magic, 0, clrRed );
  return;
 }
 
Ticket = OrderSend( _Symbol, OP_BUY, lotsize, MarketInfo(OrderSymbol(),MODE_BID), slippage, 
  1. Non è possibile utilizzare alcuna funzione commerciale se non si ha un ordine selezionato.
  2. Controlla i tuoi codici di ritornoCosa sono i valori di ritorno delle funzioni? Come si usano? -Forum MQL4 ed errori comuni nei programmi MQL4 e come evitarli - Articoli MQL4
 
whroeder1:
  1. Non è possibile utilizzare alcuna funzione commerciale se non si ha un ordine selezionato.
  2. Controlla i tuoi codici di ritornoCosa sono i valori di ritorno delle funzioni? Come si usano? -Forum MQL4 ed errori comuni nei programmi MQL4 e come evitarli - Articoli MQL4

#1 Potrei usare Bid invece di MarketInfo?
#2 Potrei scriverlo come qui sotto?

void buyorder()
 {
  Ticket = OrderSend( _Symbol, OP_BUY, lotsize, Bid, slippage, sl, tp, "trade panel", magic, 0, clrRed );
   if( Ticket < 0 )
   {
      Print("OrderSend failed with error: ", GetLastError() );
      return;
   }
  return;
 }
 

Solo per il simbolo del grafico.

Ask, Bid, _Period,_Symbol,Symbol(),Period()

Questi sono tutti relativi al simbolo del grafico.

Usa MarketInfo quando lavori con simboli diversi da quello del grafico.