Erros, bugs, perguntas - página 1261
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial
As aplicações móveis MetaTrader 4 e MetaTrader 5 para Android foram actualizadas
pav36krs, 2014.12.20 10:21
Os meus amigos ajudam!!! Descarreguei o Metatrader, e não começará em 32 bits no meu Windows de 64 bits. Esta é a primeira vez que me deparo com tal problema antes de instalar o Metatrader a partir do alpha forex, e tudo funcionou bem.Erros em operações bitwise.
Recebemos 4, que deveriam ser 0. Quantos anos de polimento de MT, e ainda assim tais erros.
E o quê, o compilador não jurou esta compensação? Duvido.
Seja como for, era isso que queríamos.
E o quê, o compilador não jurou esta compensação? Duvido.
Seja como for, era isso que queríamos.
Nada pode ocorrer lá nas partes de baixa ordem.
A documentação MQL não diz nada sobre um turno cíclico, pelo que o turno habitual é assumido. Mas encontrei aí a seguinte frase
Não é recomendado deslocar mais ou igual número de bits do que o número de bits na variável a ser deslocada, porque o resultado desta operação é indefinido.
Isto é incorrecto. Não pode haver um resultado indefinido em operações bitwise. É que o bit de partida ou é armazenado numa bandeira especial ou não é armazenado, mas isto não tem qualquer efeito sobre o algoritmo de deslocamento, ou seja, os bits certos são preenchidos com zeros de qualquer forma. Se for um deslocamento cíclico, isto deve ser explicitamente declarado (embora um deslocamento normal compatível com C++ seria mais correcto).
é possível ligar um indicador compilado pelo antigo edifício como recurso a outro indicador?
Não consigo que funcione desta forma:
........
#resource "\\Indicators\\тфьу.ex4"
........
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
........
ExtLimeBuffer[i]=iCustom(_Symbol,0,"::Indicators\\тьфу.ex4",pr1,pr2,pr3,pr4,pr5,pr6,pr7,2,i);
........
return(rates_total);
}
o compilador diz o seguinte:
unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1
A documentação MQL não diz nada sobre um turno cíclico, pelo que assume um turno normal. No entanto, encontrei aí uma frase como essa:
Isto é incorrecto. Não pode haver um resultado indefinido em operações bitwise. É que o bit de partida ou é armazenado numa bandeira especial, ou não é armazenado, mas isto não afecta o algoritmo do turno, ou seja, os bits certos são preenchidos com zeros de qualquer forma. Se for um turno cíclico, é necessário especificar explicitamente isto (embora um turno simples++-compatível fosse mais correcto).
Pode ser.
Um máximo de 5 bits para inteiros de 32 bits (ou 6 bits para inteiros de 64 bits) deve estar envolvido em operações de turno. Se um valor de turno leva mais de 5 (ou 6) bits, processadores diferentes tratam esta situação de forma diferente. Na documentação, acabámos de reflectir este facto ao afirmar que o resultado da operação é indefinido.
...
o compilador escreve desta forma:
unknown resource type 'C:\Program Files\MT4\MQL4\Indicators\тфьу.ex4' тфьу1.mq4 10 1