[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 230

 
doon:

O que poderia estar causando o erro (preço errado)?


Em algum lugar do código, a variável não é inicializada corretamente. Ou opção 2 - você esqueceu de normalizar o preço(NormalizeDouble())
 
drknn:

Em algum lugar do código, a variável é inicializada incorretamente. Ou opção 2 - você esqueceu de normalizar o preço (NormalizeDouble())

Duvido que seja este o caso, pois nem sempre acontece, raramente e não sistematicamente. É devido a algum fator de preço, mas qual deles?

 
doon:

Duvido que seja este o caso, pois nem sempre isso acontece, raramente e não sistematicamente. Isso acontece por causa de algum fator de preço, mas qual?


Então, qual é o problema? Assim que o número de erro suceder, imprimir (" MyValue = ",MyValue);) e imediatamente se tornará claro o que é igual.
 

Qual é o valor do MyValue?

 
doon:

Qual é o valor do MyValue?


Como posso saber o que sua variável é igual? :) Deixe a impressora mostrar-lhe o que é igual.
 
doon:

Qual é o valor do MyValue?


Qualquer um pode ajudar. ZeroLag MACD indicador. Preciso fazer o fundo acima da linha 0,00 uma cor e abaixo dela outra. Aqui está o código

//+------------------------------------------------------------------+
//| ZeroLag MACD.mq4 |
//| RD |
//| marynarz15@wp.pl |
//+------------------------------------------------------------------+
#propriedade copyright "RD
#link da propriedade "marynarz15@wp.pl
//----

#janela_indicadora de propriedade_separarate_window
#property indicator_buffers 2
#código de propriedade_cores1 azul
#indicador de propriedade_color2 Vermelho
//---- parâmetros de entrada
externo int FastEMA = 12;
externo int SlowEMA = 24;
sinal externo intalEMA = 9;
//---- buffers
MACDBuffer duplo[];
duplo SignalBuffer[];
duplo FastEMABuffer[];
duplo SlowEMABuffer[];
duplo sinalEMABuffer[];
//+------------------------------------------------------------------+
//| Função de inicialização do indicador personalizado |
//+------------------------------------------------------------------+
int init()
{

//---- indicadores
IndicatorBuffers(5);
SetIndexBuffer(0, MACDBuffer);
SetIndexBuffer(1, SignalBuffer);
SetIndexBuffer(2, FastEMABuffer);
SetIndexBuffer(3, SlowEMABuffer);
SetIndexBuffer(4, SignalEMABuffer);
SetIndexStyle(0, DRAW_HISTOGRAM);
SetIndexStyle(1, DRAW_LINE,EMPTY);
SetIndexDrawBegin(0, SlowEMA);
SetIndexDrawBegin(1, SlowEMA);
IndicatorShortName("ZeroLag MACD(" + FastEMA + "," + SlowEMA + "," + SignalEMA + "," + SignalEMA + ")");
SetIndexLabel(0, "MACD");
SetIndexLabel(1, "Sinal");
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| Função de desinicialização do indicador do cliente |
//+------------------------------------------------------------------+
int deinit()
{
//----
retorno(0);
}
//+------------------------------------------------------------------+
//| Função de iteração de indicador personalizada |
//+------------------------------------------------------------------+
int start()
{
limite int;
int counted_bars = IndicatorCounted();
if(counted_bars < 0)
retorno(-1);
if(counted_bars > 0)
barrinhas_contadas..;
limite = Barras - contadas_barras;
duplo EMA, ZeroLagEMAp, ZeroLagEMAq;
for(int i = 0; i < limite; i++)
{
FastEMABuffer[i] = iMA(NULL, 0, FastEMA, 0, MODE_EMA, PRICE_CLOSE, i);
SlowEMABuffer[i] = iMA(NULL, 0, SlowEMA, 0, MODE_EMA, PRICE_CLOSE, i);
}
para(i = 0; i < limite; i++)
{
EMA = iMAOnArray(FastEMABuffer, Bars, FastEMA, 0, MODE_EMA, i);
ZeroLagEMAp = FastEMABuffer[i] + FastEMABuffer[i] - EMA;
EMA = iMAOnArray(SlowEMABuffer, Bars, SlowEMA, 0, MODE_EMA, i);
ZeroLagEMAq = SlowEMABuffer[i] + SlowEMABuffer[i] - EMA;
MACDBuffer[i] = ZeroLagEMAp - ZeroLagEMAq;
}
para(i = 0; i < limite; i++)
SignalEMABuffer[i] = iMAOnArray(MACDBuffer, Barras, SignalEMA, 0, MODE_EMA, i);
para(i = 0; i < limite; i++)
{
EMA = iMAOnArray(SignalEMABuffer, Barras, SignalEMA, 0, MODE_EMA, i);
SignalBuffer[i] = SignalEMABuffer[i] + SignalEMABuffer[i] - EMA;
}
retorno(0);
}
//+------------------------------------------------------------------+

 

O compilador produz: 'MyValue' - variável não definida

 
doon:

O compilador produz: 'MyValue' - variável não definida

Você deve estar usando uma construção antiga do terminal.

Na construção do 388 esta variável já deve ser compilada normalmente. Por favor, atualize sua versão do terminal.

 
sergeev:

você deve estar usando uma construção antiga do terminal.

Na construção do 388 esta variável já deve ser compilada normalmente. Atualize sua versão do terminal.


Como isso pode ser feito?

 
doon:

Como isso pode ser feito?

Você precisa escrever uma carta oficial para sua corretora, indicando os detalhes de seu passaporte e os números da conta na qual você trabalha para esta corretora.

Dentro de três dias úteis, você deverá receber por correio registrado um disco com o arquivo de instalação atualizado e as instruções de instalação.