Erros, bugs, perguntas - página 1287

 
paladin800:
GMT.
TimeGMT();
 
artmedia70:
TimeGMT();
Sim, tropeçei também nesta função. Não consigo descobrir como fazer uma variável em parâmetros externos como 4AM e a outra como 5PM e depois basta comparar o resultado de TimeGMT() com eles.
 
papaklass:

Porque é que o meu perfil mostra 4 códigos publicados no CodeBase?

Mas se eu for à CodeBase através do menu e seleccionar "Meus Códigos", tenho 7 códigos publicados:

Qual é o truque?

O cálculo é realmente diferente. As realizações dos utilizadores não têm em conta as publicações importadas de mql4.com, tem 3 delas.

Apenas as publicações originalmente publicadas em mql5.com são contadas - tem 4 destas = três para MT5 + uma para MT4.

 

Penso que todos notaram que não é necessário ser sensível aos casos para entrar na sua conta aqui. Quando estou a escrever aqui agora, podem ver que o meu login está escrito em letras pequenas e números. Se estiver a iniciar sessão com todas as letras maiúsculas ou letras minúsculas, ainda estarei logado. Ok, não me está a orientar de forma alguma.

No seu ME5 criou um projecto, que deve ligar outra parte e o desconforto é que quando a janela para adicionar um utilizador para escrever um companheiro de login, aparece a mensagem de que não existe tal coisa. Perguntei no ServiceDesk, eles disseram que eu devia respeitar o caso das cartas. Aqui a exploração madeireira não é importante, mas quando se acrescenta ao projecto ME5 é importante. Se o caso não for importante aqui, então faça-o de modo a que nos projectos também não seja importante.
 
zhserg:

Pode dizer-me o que está errado, pelo menos aproximadamente. Poderá ser por causa do WinXP?

Verificado em WinXP - o seu código funciona.

O seu objecto aparece na lista de objectos da tabela?

 
Estou a publicar aqui a minha candidatura ao serviço de secretária para acelerar o seu processamento. (Já passou uma semana e nenhuma resposta)Aberto,Início: 2015.03.03 10:49,#1169959

Versão terminal e taxa de bits

MetaTrader 5, construir 1085

Descrição do problema

Grau de dependência do tempo de procura de ordens ou negócios em relação ao seu número. É evidente que o tempo de execução das funções HistoryOrderGetDouble, HistoryOrderGetInteger, HistoryDealGetInteger, HistoryDealGetDouble chamadas para cada ordem na história deve aumentar linearmente com o número crescente de ordens processadas por elas:

tempo total de execução = tempo de execução de consulta por encomenda * número de encomendas;

Na realidade, não é este o caso. Em vez disso, foi revelada uma dependência de poder de umacontagem de milissegundos =0,000005*n^2 onden é o número de encomendas a serem processadas.

Sequência de acções

Este guião mostra o problema existente:

//+------------------------------------------------------------------+
//|                                             TestSpeedHistory.mq5 |
//|                                 Copyright 2015, Vasiliy Sokolov. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property  copyright "Copyright 2015, Vasiliy Sokolov."
#property  link      "http://www.mql5.com"
#property  version   "1.00"
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
{
//---
   HistorySelect(0, TimeCurrent()+100);
   for(int end_order_index = 1000; end_order_index < HistoryOrdersTotal(); end_order_index+=1000)
   {
      uint tiks_begin = GetTickCount();
      TestProgression(end_order_index);
      uint tiks = GetTickCount() - tiks_begin;
      printf("Parsing " + (string)end_order_index + " for " + (string)tiks + " msc.");   
   }
}

void TestProgression(int end_order_index)
{
   for(int i = 0; i < end_order_index; i++)
   {
      ulong id = HistoryOrderGetTicket(i);
      string symbol = HistoryOrderGetString(id, ORDER_SYMBOL);
      double priceSetup = HistoryOrderGetDouble(id, ORDER_PRICE_OPEN);
      double volumeSetup = HistoryOrderGetDouble(id, ORDER_VOLUME_INITIAL);
      long tSetup = HistoryOrderGetInteger(id, ORDER_TIME_SETUP_MSC);
      string comment = HistoryOrderGetString(id, ORDER_COMMENT);
      ENUM_ORDER_TYPE type = (ENUM_ORDER_TYPE)HistoryOrderGetInteger(id, ORDER_TYPE);
      ENUM_ORDER_STATE state = (ENUM_ORDER_STATE)HistoryOrderGetInteger(id, ORDER_STATE);
      ulong magic = HistoryOrderGetInteger(id, ORDER_MAGIC);
      HistoryDealGetInteger
   }
}
//+------------------------------------------------------------------+

O resultado obtido

Parece óbvio que o tempo de execução para este guião deve aumentar linearmente com o aumento do índice de fim de_ordem. Assim, se o processamento de 1000 encomendas em TestRegression levar 16 ms, o processamento de 2 000 encomendas deve levar 16 * 2 = 32 ms. Mas não é este o caso. Em vez disso, a dependência é uma dependência escalonada. O guião mostra a seguinte mensagem:

2015.03.03 12:14:29.385 TestSpeedHistory (USDCHF,D1)    Parsing 22000 for 4025 msc.
2015.03.03 12:14:25.354 TestSpeedHistory (USDCHF,D1)    Parsing 21000 for 3666 msc.
2015.03.03 12:14:21.689 TestSpeedHistory (USDCHF,D1)    Parsing 20000 for 3323 msc.
2015.03.03 12:14:18.358 TestSpeedHistory (USDCHF,D1)    Parsing 19000 for 2995 msc.
2015.03.03 12:14:15.365 TestSpeedHistory (USDCHF,D1)    Parsing 18000 for 2715 msc.
2015.03.03 12:14:12.658 TestSpeedHistory (USDCHF,D1)    Parsing 17000 for 2418 msc.
2015.03.03 12:14:10.243 TestSpeedHistory (USDCHF,D1)    Parsing 16000 for 2106 msc.
2015.03.03 12:14:08.134 TestSpeedHistory (USDCHF,D1)    Parsing 15000 for 1872 msc.
2015.03.03 12:14:06.266 TestSpeedHistory (USDCHF,D1)    Parsing 14000 for 1622 msc.
2015.03.03 12:14:04.645 TestSpeedHistory (USDCHF,D1)    Parsing 13000 for 1388 msc.
2015.03.03 12:14:03.244 TestSpeedHistory (USDCHF,D1)    Parsing 12000 for 1170 msc.
2015.03.03 12:14:02.074 TestSpeedHistory (USDCHF,D1)    Parsing 11000 for 983 msc.
2015.03.03 12:14:01.097 TestSpeedHistory (USDCHF,D1)    Parsing 10000 for 796 msc.
2015.03.03 12:14:00.295 TestSpeedHistory (USDCHF,D1)    Parsing 9000 for 639 msc.
2015.03.03 12:13:59.657 TestSpeedHistory (USDCHF,D1)    Parsing 8000 for 500 msc.
2015.03.03 12:13:59.164 TestSpeedHistory (USDCHF,D1)    Parsing 7000 for 358 msc.
2015.03.03 12:13:58.796 TestSpeedHistory (USDCHF,D1)    Parsing 6000 for 266 msc.
2015.03.03 12:13:58.537 TestSpeedHistory (USDCHF,D1)    Parsing 5000 for 171 msc.
2015.03.03 12:13:58.369 TestSpeedHistory (USDCHF,D1)    Parsing 4000 for 94 msc.
2015.03.03 12:13:58.277 TestSpeedHistory (USDCHF,D1)    Parsing 3000 for 47 msc.
2015.03.03 12:13:58.229 TestSpeedHistory (USDCHF,D1)    Parsing 2000 for 15 msc.
2015.03.03 12:13:58.208 TestSpeedHistory (USDCHF,D1)    Parsing 1000 for 16 msc.


Função de dependência do tempo de processamento em número de encomendas:

Resultado esperado

Prevê-se que esta operação demoreO(n), enquanto queO(n^2) demora.

Mais detalhes

Para se certificar de que o guião funciona correctamente, deve executá-lo numa conta com uma grande quantidade de negócios e encomendas.

A tabela anexa em função do tempo vs. o número de encomendas é anexada. Ilustra claramente a dependência graduada da operação da função em relação à quantidade de encomendas

Importante: Segundo as minhas observações, esta dependência desagradável apareceu no MetaTrader 5 por volta do início do Verão de 2014. Antes desse tempo tudo estava a funcionar rapidamente.

 
Bom dia! Espero estar a afixar a minha pergunta na secção correcta. Tentei testar o MT5 em Wine e ele não funciona. Quando inicio o Vinho mostra um erro, mesmo que a aplicação esteja a funcionar. Também não é claro onde guardar os certificados. Tentei instalá-lo ou simplesmente copiar a aplicação, o erro é o mesmo. Eu até desabilitei os sons só por precaução, não ajuda. Talvez um lugar para descarregar um estável a funcionar sem ambiguidades sob Linux, a versão?
 
polik:
Bom dia! Espero ter colocado a minha pergunta na secção correcta. Tentei usar o MT5 em Wine e não funciona. O vinho mostra um erro durante o arranque do Vinho, embora a aplicação esteja a funcionar. Também não é claro onde guardar os certificados. Tentei instalá-lo ou simplesmente copiar a aplicação, o erro é o mesmo. Eu até desabilitei os sons só por precaução, não ajuda. Não faço ideia onde posso descarregar uma versão estável que funcione inequivocamente sob Linux.

Tarde,

O que é o erro? Que sistema é este? Versão do vinho?

 
C-4:
Publico aqui o meu pedido no serviço de secretária para acelerar o seu processamento. (Já passou uma semana, sem resposta.)Aberto,Início: 2015.03.03 10:49,#1169959

Versão terminal e taxa de bits

MetaTrader 5, construir 1085

Descrição do problema

Grau de dependência do tempo de procura de ordens ou negócios em relação ao seu número. É evidente que o tempo de execução das funções HistoryOrderGetDouble, HistoryOrderGetInteger, HistoryDealGetInteger, HistoryDealGetDouble chamadas para cada ordem na história deve aumentar linearmente com o número crescente de ordens processadas por elas:

tempo total de execução = tempo de execução de consulta por encomenda * número de encomendas;

Na realidade, não é este o caso. Em vez disso, foi detectada uma dependência de energia ondemilissegundos =0,000005*n^2 onden é o número de encomendas a processar.

Um padrão semelhante acontece quando se calcula um grande número de indicadores. Tudo começou abruptamente com a versão 1079.
Tenho 8 TFs abertas ao mesmo tempo, com 10 indicadores em cada uma. É impossível de trabalhar.

 

Quem tem isto na vida real.....

htimes estão constantemente a pairar mt4