Erros, bugs, perguntas - página 2605

 

Peço desculpa pelo pequeno offtop

Igor Makanu:

É impossível para um processador abandonar a linha de 12v de uma PSU

se a sua PSU estiver avariada, não vai entregar todas as classificações (12,5, 3,3), depois a memória vai falhar, depois a cpu, e só depois os discos rígidos, ventiladores.... Se tiver uma placa de vídeo, pode começar a falhar se o sag de 12 V, mas o primeiro sag de 12 V sentirá o SSD, e outros dispositivos funcionarem sem problemas ... imho, não funciona assim...embora.... pensasse que era o disco rígido quando a memória falhou, nem mesmo Win7 conseguia instalar no disco rígido sob suspeita, a 30% da instalação que escreveu não consegue copiar o ficheiro... o problema foi causado por memória defeituosa

ZS: escreveu sobre AIDA64 - foi você que o fez?

Substituí agora a fonte de alimentação e não reconheço o meu computador. Até a Internet é mais rápida. É um milagre.
 
Alexey Viktorov:

Peço desculpa pelo pequeno offtop

Substituí agora a fonte de alimentação e não reconheço o meu computador. Até a Internet é agora mais rápida. É um milagre.

Isso é óptimo.
Mas não é surpresa, as fontes de alimentação não duram para sempre,
especialmente sem um regulador, os condensadores podem flácidos rapidamente,
dependendo da qualidade da fonte de alimentação, pode facilmente morrer num ano de utilização activa.

 

A fonte(Math\Stat\Math.mqh) deve ser ajustada à construção mais recente, a função MathArctan2 com estes parâmetros já é redundante:


 
Aliaksandr Hryshyn:

É necessário corrigir a fonte(Math\Stat\Math.mqh) para a última construção, a função MathArctan2 com determinados parâmetros já é supérflua:


Fixo.

Um novo beta com correcções estará disponível dentro de 2 horas.

 
Ao chamar o CopyTicksRange para histórico, que ainda não existe localmente, a função "fica suspensa" por tempo indefinido em termos de código de chamada MQL5, durante o qual os ficheiros são descarregados para a pasta de trabalho da base de dados, enquanto o programa MQL5 "espera". Quando todo o histórico solicitado é recebido, o "enforcamento" subsidia-se por si só, mas como fazer o utilizador saber durante este período que o programa funciona realmente? Existe alguma forma de obter a percentagem de conclusão do processo de descarga? Tenho vários anos de história descarregada durante alguns minutos. Sem um feedback claro, o utilizador médio irá cuspir e raspar o programa sem esperar pelo resultado. Também não quero lançar um relógio estúpido e não tenho confirmação na MQL de que o download está realmente a acontecer.
 
Stanislav Korotky:
Ao chamar o CopyTicksRange para histórico, que ainda não está disponível localmente, a função do código MQL5 que chama "pendura" por tempo indefinido, durante o qual os ficheiros são descarregados para a pasta de carraças da base de dados de trabalho e do programa MQL5 ao mesmo tempo "espera". Quando todo o histórico solicitado é recebido, o "enforcamento" subsidia-se por si só, mas como fazer o utilizador saber durante este período que o programa funciona realmente? Existe alguma forma de obter a percentagem de conclusão do processo de descarga? Tenho vários anos de história descarregada durante alguns minutos. Sem um feedback claro, o utilizador médio irá cuspir e raspar o programa sem esperar pelo resultado.

O Testador de soluções KB costumava fazer algo como isto. Não me lembro da essência, o código deve ser claro. Também se pode tentar com o indicador. Não parece esperar pela execução se a história não estiver pronta.

 
fxsaber:

No Testador de soluções KB fez, penso eu, algo do género. Não me lembro da essência, o código deve ser claro. Também se pode tentar com o indicador. Parece que não espera pela execução ali, se a história não estiver pronta.

Pode mostrar-me o local exacto, porque existem vários Tester's? ;-)

Os indicadores não dão o progresso do cálculo das cotações para eles - bem, o CopyBuffer devolverá sempre o mesmo código de erro - não torna a situação mais clara.

 
Stanislav Korotky:

Pode ser mais específico sobre o local, porque existem alguns Tester's? ;-)

Neste ficheiro

  static bool HistoryIsReady( const datetime tBeginTime, MqlTick &BeginTick )
  {
    MqlTick Ticks[1];
  
    ::ResetLastError();
  
    if (::CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, (ulong)tBeginTime * 1000, 1) == 1)
      BeginTick = Ticks[0];
  
    return(!::GetLastError() ||
           (!::TerminalInfoInteger(TERMINAL_CONNECTED) && 
           ((::CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, (ulong)(tBeginTime - 7 * 24 * 3600) * 1000, 1)) == 1) &&
           (Ticks[0].time < tBeginTime)));
  }

Os indicadores não fornecem o progresso do cálculo de cotações para eles - bem, o mesmo código de erro será sempre devolvido por CopyBuffer - isso não torna a situação mais clara.

Eu queria dizer outra coisa, mas não é importante.

 

Não compreendo de todo o que se passa.

   struct myPositionPrepare
   {
      ENUM_ORDER_TYPE      order_type;          // тип устанавливаемого ордера
      ENUM_POSITION_TYPE   position_type;       // тип устанавливаемого ордера
.................
   };
   myPositionPrepare       structPosPrep;       // подготовительная структура для открытия позиции/ордера
.
.
      structPosPrep.position_type         = PositionGetInteger(POSITION_TYPE); // implicit enum conversion

O que é que está errado?

 
Сергей Таболин:

Não compreendo de todo o que se passa.

O que é que está errado?

LongPositionGetInteger()

Também acho este ponto inconveniente: poderia traduzir de enumerar para tipos inteiros e voltar automaticamente, sem ter de

structPosPrep.position_type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);