Errori, bug, domande - pagina 1217

 
fyords:

C'è un semplice script (MT4) che emette il tempo di chiusura di un ordine prima e dopo la sua chiusura.

Risultato al cliente(711 build):

Ho il risultato (711-719 build):

UPD: questo succede solo quando do il prodotto compilato. Se passo la fonte, non ci sono questi problemi, tutto funziona come un orologio.
Grazie per il messaggio, risolto, si prega di attendere la nuova build (prevista per domani).
Usa la seguente costruzione per le funzioni OrderCloseTime,OrderOpenTime e OrderExpiration per funzionare nella build corrente:
int time=(int)OrderCloseTime();
TimeToString(time);
 
mql5:
Grazie per il messaggio, risolto, si prega di attendere la nuova build (prevista per domani).
Utilizzare la seguente costruzione per le funzioni OrderCloseTime, OrderOpenTime e OrderExpiration per funzionare nella build corrente:
Grazie per la vostra reattività.
 
Ci sono piani per modificare la funzioneWebRequest per lavorare con il testo russo?
 

non funziona così, ci sono oggetti sul grafico:

   double Pos_Buy=(-1);
   if(ObjectFind("UP_Line")==0)
   {
      Pos_Buy=ObjectGetValueByShift("UP_Line",0);
   }
   double Pos_Sell=(-1);
   if(ObjectFind("DN_Line")==0)
   {
      Pos_Sell=ObjectGetValueByShift("DN_Line",0);
   }
   double Pos_Buy_CH=(-1);
   if(ObjectFind("UP_Line1")==0)
   {
      Pos_Buy_CH=ObjectGetValueByShift("UP_Line1",0);
   }
   double Pos_Sell_CH=(-1);
   if(ObjectFind("DN_Line1")==0)
   {
      Pos_Sell_CH=ObjectGetValueByShift("DN_Line1",0);
   }
   Print(Pos_Buy," ",Pos_Sell," ",Pos_Buy_CH," ",Pos_Sell_CH);
   if(Pos_Buy==(-1)&&Pos_Sell==(-1)&&Pos_Buy_CH==(-1)&&Pos_Sell_CH==(-1))return;
   Print(2);


2014.10.09 20:10:37.906 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1
2014.10.09 20:10:37.906 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1
2014.10.09 20:10:37.890 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1
2014.10.09 20:10:37.890 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1
2014.10.09 20:10:37.875 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1
2014.10.09 20:10:37.875 2014.10.02 14:52  cat_in_the_bagLast2 EURUSD,H4: -1 -1 -1 -1 1


 
nessun errore durante la compilazione, ObjectFind() non vede l'oggetto
 

Sì, questa merda non passa vero:

   if(ObjectFind("UP_Line")==0)
   {
      Print(3);
      //Pos_Buy=ObjectGetValueByShift("UP_Line",0);
   }

вот это возвращает -1 при наличии объекта на графике

   Print(ObjectFind("UP_Line"));
 
 

OH HORROR, e quindi restituisce -1:

   Print(ObjectFind(0,"UP_Line"));
   if(ObjectFind(0,"UP_Line")==0)
   {
      Print(3);
      //Pos_Buy=ObjectGetValueByShift("UP_Line",0);
   }

COME VIVERE?

gli oggetti sul grafico del tester sono lì.

 

qualcuno controlli il codice della build 719.

Funziona?

 
sanyooooook:

qualcuno controlli il codice della build 719.

Funziona?

Ora darò un'occhiata...

P.S. Controllato nella build 719 con lo script. Funziona.

//+------------------------------------------------------------------+
//|                                                        #Test.mq4 |
//|                        Copyright 2014, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link      "http://www.mql4.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   int res=ObjectFind("Hello");
   if(res<0)
      Print("Объект Hello не найден!");
   else
      Print("Объект Hello найден в окне: ",res);
  }
//+------------------------------------------------------------------+
0       19:51:10.567    Script #Test  EURGBP,M15: loaded successfully
0       19:51:10.568    #Test  EURGBP,M15: initialized
0       19:51:10.568    #Test  EURGBP,M15: Объект Hello найден в окне: 0
0       19:51:10.568    #Test  EURGBP,M15: uninit reason 0
0       19:51:10.568    Script #Test  EURGBP,M15: removed
 

Ecco l'accordo:

1. Apro un nuovo grafico

2. creare un oggetto

3. Copia il nome dell'oggetto (già creato da Expert Advisor) da un altro grafico

4. cambiare il nome dell'oggetto copiandolo nel nuovo grafico

5. lanciare lo script

void OnStart()
  {
//---
   Print(ObjectFind(0,"UP_Line"));
   if(ObjectFind(0,"UP_Line")==0)
   {
      Print(3);
      //Pos_Buy=ObjectGetValueByShift("UP_Line",0);
   }   
  }

6. ottenere il risultato:

2014.10.09 20:46:21.828 TestObjectFind EURUSD,H1: uninit reason 0
2014.10.09 20:46:21.828 TestObjectFind EURUSD,H1: -1
2014.10.09 20:46:21.828 TestObjectFind EURUSD,H1: initialized