Erros, bugs, perguntas - página 660

 
tol64:

Peça o histórico das últimas três transacções:

E vemos que a história não coincide. Ou seja, podemos vê-lo no terminal, mas não o podemos obter de forma programática.

//---

É um insecto ou assim foi concebido e agora só pode obter estas ofertas programáticas quando o mercado abre?

P.S. Eu também tentei desta forma, não ajuda:

Em vez deTimeCurrent(), use TimeTradeServer() ao seleccionar o histórico.
Документация по MQL5: Дата и время / TimeTradeServer
Документация по MQL5: Дата и время / TimeTradeServer
  • www.mql5.com
Дата и время / TimeTradeServer - Документация по MQL5
 
Valmars:
Utilize TimeTradeServer() em vez deTimeCurrent() ao seleccionar o histórico.
Obrigado Valery. Sim, de facto, em alguns casos, o TimeLocal() pode mostrar um resultado errado dependendo do fuso horário em que nos encontramos. É por isso que o TimeTradeServer() é a variante mais precisa para solicitar a história do comércio.
 
tol64:. Portanto, o TimeTradeServer() é a opção mais precisa para solicitar a história das negociações.
Só precisamos de sincronizar o tempo do computador a tempo, caso contrário podemos também perder negócios.
 
Valmars:
Só precisamos de sincronizar o tempo do computador a tempo, caso contrário podemos também perder negócios.

Está a falar a sério? :

Ainda não descobri, para ser honesto, em que outro caso não se pode ter toda a história dos ofícios...

 

Pode dizer-me o que significa esta mensagem no diário de bordo?

Isto só aconteceu uma vez e não pôde ser reproduzido novamente.

 

Tenho duas perguntas ao mesmo tempo.

O último x32 build está instalado. Está a decorrer há quase duas semanas. Os problemas começaram ontem ou anteontem. Ou seja, a mesma construção não funcionou mal antes disso, mas começou de repente, não foi? O indicador também não foi modificado durante muito tempo. Acontece que a culpa também não é sua. Então o que é? Ao saltar de um período para outro em alguns casos arbitrários, o indicador parece incorrecto em alguns dos períodos de tempo, o gráfico desliza literalmente para baixo. Quando saio e volto a este período de tempo nada é corrigido, os cálculos errados são corrigidos desde a última vez, como se estivessem armazenados algures na cache. Por vezes reiniciar o terminal ajuda, mas às vezes tenho de limpar manualmente a pasta de cache com um ficheiro .hc- doente do período de tempo correspondente. Isto nunca tinha acontecido antes. (A propósito, para ter a certeza que verifiquei o meu disco à procura de erros e desfragmentei-o: apenas uma ligeira aceleração do desempenho do sistema, mas o indicador não efectua os mesmos cálculos que antes).

1. Qual pode ser o problema se tanto a construção como o mesmo indicador se realizavam bem antes? Não está na hora de atirar o computador para a sucata? Talvez a RAM tenha "secado" e esteja a respirar um grande favor?

2. Porque é que, na ausência de um novo histórico (ou seja, carrapatos nos fins-de-semana), quando mudo para prazos atípicos, para os quais já mudei anteriormente e para os quais já construí os ficheiros .hc apropriados, acontece novamente o mesmo atraso"À espera de actualização" que antes? Mesmo sem quaisquer indicadores, num gráfico completamente novo!

 
x100intraday:

Tenho duas perguntas ao mesmo tempo.

O último x32 build está instalado. Está a decorrer há quase duas semanas. Os problemas começaram ontem ou anteontem. Ou seja, a mesma construção não funcionava mal antes, mas de repente começou?

Tenho semelhanças convosco, no meu problema, em que antes, desde a actualização do terminal, o erro(violação do acesso lido a 0x... ) não ocorria e só agora é que começou a manifestar-se. No fim-de-semana. ))
 
tol64:
Tenho consigo uma semelhança no meu problema, na medida em que o erro(violação de acesso lido a 0x... ) não ocorreu antes, desde que o terminal foi actualizado, e só agora começou a mostrar-se. No fim-de-semana. ))
Deve ser a conspiração Mason. São eles que controlam secretamente o Forex...
 
x100intraday:
Devem ser as maquinações dos Maçons Livres. São eles que controlam secretamente o Forex.
Não sei. )) Alguém está a controlar algo em todo o lado. Tudo é controlado e tudo é controlável. Qualquer coisa que não possa ser controlada por um, pode ser controlada por outro. É natural e, portanto, normal. Mas normalmente não é disso que estamos aqui a falar. )))
 
MetaQuotes:

O pedido, juntamente com os comentários, está em vigor, mas por alguma razão não visível no perfil.

Não deixaremos de o descobrir.

(risos) Está bem. Bem, isso parece-me agora mesmo. :)

Há um número negativo onde não deveria haver. Aqui está um guião que reproduz o problema.

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print(FOrdType(-1));
  }
//---
string FOrdType(uint type)
  {
   string str="";
//---
   switch(type)
     {
      case ORDER_TYPE_BUY            : str="buy";             break;
      case ORDER_TYPE_SELL           : str="sell";            break;
      case ORDER_TYPE_BUY_LIMIT      : str="buy_limit";       break;
      case ORDER_TYPE_SELL_LIMIT     : str="sell_limit";      break;
      case ORDER_TYPE_BUY_STOP       : str="buy_stop";        break;
      case ORDER_TYPE_SELL_STOP      : str="sell_stop";       break;
      case ORDER_TYPE_BUY_STOP_LIMIT : str="buy_stop_limit";  break;
      case ORDER_TYPE_SELL_STOP_LIMIT: str="sell_stop_limit"; break;
      //---
      default: str="unknown_order_type: "+string(type); break;
     }
//---
   return(str);
  }

Se passar um número negativo a uma função que aceite um número inteiro não assinado, voilà:

Penso que tais coisas deveriam ser tratadas em tempo de compilação.