Erros, bugs, perguntas - página 980

 
Renat:

Absolutamente.

E é uma pena que não compreenda coisas tão simples.

Poderia explicar-me a diferença? Pergunta sincera, nada de trolling.
 
voix_kas:
Poderia explicar-me a diferença? Pergunta sincera, nada de trolling.

Experimente você mesmo, é a melhor maneira de aprender.

Embora, se completar a primeira pergunta com a condição de que a bandeira seja inicialmente verdadeira e o uso pretendido do código seja "accionar apenas uma vez e saltar a atribuição um milhão de vezes", então o conselho seria diferente. Mas a pergunta original não continha tais esclarecimentos.

 

Em alguns instrumentos a forma de calcular o valor colateral do instrumento não está definida. Servidor MQ. Por exemplo, pode ser visto em instrumentos sob GBOT. Porquê?

Este código pode ser testado:

//+------------------------------------------------------------------+
//| СКРИПТ                                                           |
//+------------------------------------------------------------------+
void OnStart()
  {
   Print(GetStringTradeCalcMode(SymbolInfoInteger(_Symbol,SYMBOL_TRADE_CALC_MODE)));
   //---
   if(GetLastError()>0)
     Print("GetLastError(): ",GetLastError());
  }
//+------------------------------------------------------------------+
//| Возвращает строку о способе вычисления                           |
//| величины залоговых средств по инструменту                        |
//+------------------------------------------------------------------+
string GetStringTradeCalcMode(long mode)
  {
   string str="?";
//---
   switch((int)mode)
     {
      case SYMBOL_CALC_MODE_FOREX       :
         str="Forex mode";                 break;
      case SYMBOL_CALC_MODE_FUTURES     :
         str="Futures mode";               break;
      case SYMBOL_CALC_MODE_CFD         :
         str="CFD mode";                   break;
      case SYMBOL_CALC_MODE_CFDINDEX    :
         str="CFD index mode";             break;
      case SYMBOL_CALC_MODE_CFDLEVERAGE :
         str="CFD Leverage mode";          break;
     }
//---
   return(str);
  }
 

Pergunta à MQ. É a triagem garantida Transacções/ Encomendas. na ordem da sua origem histórica Depois de executar o HistorySelect?

Ou será necessária a garantia de ordem cronológica:

1. Colocar todas as transacções/ordens seleccionadas pela funçãoHistorySelect numa matriz temporária, incluindo o número de ordem/transacção e a data de registo. Será apenas o número suficiente?

2. Separação adequada da matriz.

3. Processamento posterior em ordem cronológica histórica.

 

Olá.

Sabe se é possível devolver uma referência a uma variável na MQL5?

Ou seja, algo como isto:

class Array{

int data[];

Array(int n){

        ArrayResize(data,n);

        ArrayInitialize(data,0); 

} 

int& operator[](const int index){

        return data[index];

} 

} ;
В данном случае компилятор сообщает, что ссылка не может быть использована.
 
voix_kas:

Pergunta à MQ. É a triagem garantida Transacções/ Encomendas. na ordem da sua origem histórica Depois de efectuar HistorySelect?

Ou será necessária a garantia de ordem cronológica:

1. Colocar todas as transacções/ordens seleccionadas pela funçãoHistorySelect numa matriz temporária, incluindo o número de ordem/transacção e a data de registo. Será apenas o número suficiente?

2. Separação adequada da matriz.

3. Processamento posterior em ordem cronológica histórica.

Não é garantida qualquer tipo de transacção/ordens.

Faça tudo de acordo com os pontos que mencionou

 
stringo:

Não é garantido nenhum tipo de comércio/ordens.

Faça tudo de acordo com os pontos que especificou

Obrigado. Gostaria também de compreender uma nuance esclarecedora. Provavelmente, pode parecer óbvio para algumas pessoas, mas depois, mais uma vez, não é explicitamente mencionado na documentação, por isso gostaria de ouvir a resposta da fonte (representante MQ).

Que variável (única) é mais fiável para utilizar para ordenar o histórico de negócios na ordem do histórico:DEAL_TIME/DEAL_TIME_MSCou um bilhete?

Até agora, estou inclinado a ordenar por bilhete, porque suponho que o número do bilhete é auto-incrementação na base de dados no servidor. E não há possibilidade de quebrar esta sequência, por exemplo,se o corretor desejar fazer alterações na história, adicionando um novo negócio com o valor do bilhete, menos do que o último negócio no servidor (nem sequer na conta). Isto é, uma nova transacção pode ser datada (manualmente) mesmo no ano passado, mas o bilhete será formado com o valor de auto-incremento a partir da última transacção no servidor.

Por favor, informe, se os meus pressupostos estão correctos? É possível utilizar o bilhete do ofício como os mais fiáveis como ponto de referência para construir uma verdadeira linha temporal histórica da manutenção / registo de transacções?

 

voix_kas:

Um bilhete de transacção pode ser utilizado como um os mais fiáveis ponto de referência para construir uma verdadeira linha temporal histórica da condução/registro das transacções?

não.
 
sergeev:
Não.

Pode revelar a sua resposta? Razões, alternativas, a sua experiência pessoal/opinião.

P.S.

Ainda assim, gostaria muito de ouvir a resposta detalhada do promotor (MQ).

 
voix_kas:

Pode revelar a sua resposta? Razões, alternativas, a sua experiência pessoal/opinião.

não compreende que, se quer uma linha temporal, precisa de tempo?

o que é que uma linha temporal tem a ver com um bilhete, cujo calendário pode mudar.