Erros, bugs, perguntas - página 1113

 
silhouette:

Porque é que este aviso aparece nesta linha?

possível perda de dados devido à conversão do tipo

Esta função devolve o tipo longo, enquanto que os seus dígitos são do tipo int.

Precisa assim:

int digits=(int)SymbolInfoInteger(m_symbol,SYMBOL_DIGITS);

ou como este:

long digits=SymbolInfoInteger(m_symbol,SYMBOL_DIGITS);
 
vicmos:

Esta função devolve o tipo longo, mas os seus dígitos são do tipo int.

Precisa assim:

ou como este:

Obrigado, agora está tudo bem.

Em Help, a propósito, diz int por alguma razão

SÍMBOLO_DIGITOS

Número de casas decimais

int

 
alexey_pak:
Talvez possa elaborar sobre o tipo de erro que está a cometer.
Por exemplo: (assumindo que antes de eu compilar o mesmo guião sem erros e o executar)
void OnStart()
{
\       Print( TimeCurrent());
}

Depois mudo para MetaTrader, corro este guião e no separador "Especialistas" vejo um novo registo: 'AAA.mq5' compilado com sucesso (o tempo mostra que é novo), mas o guião em si não está a correr. Na verdade, MetaTrader sabe que a última tentativa de compilação - falhou, mas produz uma mensagem contraditória.

 
Bom dia para vocês =), aconselhem! No Mercado há um consultor especializado, no teste mostra bons resultados, mas as análises são más! Em geral, a questão - é possível configurar o Expert Advisor para o teste e este irá comportar-se de forma absolutamente diferente na conta real? Tanto quanto sei, o teste só encontra pontos de entrada de acordo com o algoritmo e implementa/fecha ordens.
 
pode
 
Por favor, informe qual pode ser o problema, eu subscrevi um sinal, apareceu um ícone que permite a cópia automática das transacções, mas as transacções não são copiadas.
 
dbc220:
Por favor, informe qual pode ser o problema, eu subscrevi o sinal, o ícone apareceu que a cópia automática das transacções está activada, mas as transacções não são copiadas.

O que está escrito no diário de bordo do terminal?

Por favor, dê-me os registos.

 
Ficheiro EX5 inválido (8)
#define  MACRO( s )              (s + ";" + s)

void OnStart()
{
        ushort ch = ::StringGetCharacter( MACRO( NULL ), 0 );
}
 
A100:

O que há de tão bom nisso?

ushort ch = ::StringGetCharacter( NULL + ";" + NULL, 0 );
 
TheXpert:

O que há de tão bom nisso?

Qual é a diferença? E depois é um erro de tempo de execução, não um erro de compilação
Razão: