O método GetData() é definido na classe mãe de base e não precisa de ser substituído neste caso.
Note que antes de chamar GetData() precisa de actualizar os valores nos buffers indicadores da classe utilizando o método Refresh()
Aqui estão alguns exemplos que compilam e trabalham.
Estava a falar da MQL4. Nada que não seja compilado por causa daqueles bugs que indiquei. Tanto quanto percebi da resposta no Service Desk, ninguém quer lidar com 4.
314:55:11.739Cannot open file 'D:\progy\mt4\MQL4\indicators\.ex4' [123]
Apareceu quando o laço estava a correr muito depressa:
1. mudar para o gráfico seguinte por ordem 2. lista aberta de indicadores 3. verificar todos os nomes dos indicadores 4. Início de um novo indicador(indicador personalizado "ХХХ_Сombo")
Inseri pequenos atrasos no código - parece ter sido resolvido (provavelmente as operações assíncronas não se acompanharam em algum lugar)
//+------------------------------------------------------------------+//| Expert initialization function |//+------------------------------------------------------------------+intOnInit()
{
//--- open the DOM and subscribe for notifications if(!MarketBookAdd(_Symbol)){Alert("Error ",GetLastError());return -1;}
//---return0;
}
//+------------------------------------------------------------------+//| Expert deinitialization function |//+------------------------------------------------------------------+voidOnDeinit(constint reason)
{
//--- close the DOMif(!MarketBookRelease(_Symbol))
Print("Failed to close the DOM!");
}
//+------------------------------------------------------------------+//| BookEvent function |//+------------------------------------------------------------------+voidOnBookEvent(conststring &symbol)
{
Print("Book event for: "+symbol);
//--- select the symbolMqlBookInfo priceArray[];
bool getBook=MarketBookGet(NULL,priceArray);
if(getBook)
{
int size=ArraySize(priceArray);
Print("MarketBookInfo по ",Symbol());
for(int i=0;i<size;i++)
{
Print(i,":",priceArray[i].price
," Volume= ",priceArray[i].volume,
" type = ",priceArray[i].type);
}
}
else
{
Print("Не удалось получить содержимое стакана по символу ",Symbol());
}
}
//+------------------------------------------------------------------+
Parece que a construção do 989 foi quebrada. Os peritos na construção do 989 produzem resultados completamente diferentes sobre a mesma história e com os mesmos parâmetros que na construção 975. Tomem qualquer EA, pelo menos a partir dos meus exemplos... Portanto, é um conto, actualizações do agente de mosca e aqui está um rentável Expert Advisor a começar a martelar as perdas reais.
crOss: Parece ter quebrado a construção 989. Os peritos na construção do 989 dão resultados completamente diferentes sobre a mesma história e com os mesmos parâmetros que o 975 construído. Tomem qualquer EA, pelo menos a partir dos meus exemplos... É assim que é trivial, a actualização sobre o agente de mosca e um Expert Advisor lucrativo começa a ter prejuízos na conta real.
Agora a construção oficial é 1010 e 989 era um beta.
O método GetData() é definido na classe mãe de base e não precisa de ser substituído neste caso.
Note que antes de chamar GetData() precisa de actualizar os valores nos buffers indicadores da classe utilizando o método Refresh()
Aqui estão alguns exemplos que compilam e trabalham.
Estava a falar da MQL4. Nada que não seja compilado por causa daqueles bugs que indiquei. Tanto quanto percebi da resposta no Service Desk, ninguém quer lidar com 4.
3 14:55:11.739 Cannot open file 'D:\progy\mt4\MQL4\indicators\.ex4' [123]
Apareceu quando o laço estava a correr muito depressa:
1. mudar para o gráfico seguinte por ordem
2. lista aberta de indicadores
3. verificar todos os nomes dos indicadores
4. Início de um novo indicador(indicador personalizado "ХХХ_Сombo")
Inseri pequenos atrasos no código - parece ter sido resolvido (provavelmente as operações assíncronas não se acompanharam em algum lugar)
Terminal 1010, roboforex, erro 4901,
Algo não está a funcionar!Terminal 1010, roboforex, erro 4901,
Não está a funcionar!Existe uma pilha para o símbolo solicitado?
O que é que a pergunta regressa?
SymbolInfoInteger(_Symbol,SYMBOL_TICKS_BOOKDEPTH)
?
Não há pilha para o EURUSD.
Existe um copo pelo carácter solicitado?
O que é que a pergunta regressa?
SymbolInfoInteger(_Symbol,SYMBOL_TICKS_BOOKDEPTH)
?
Não há janela de preços para EURUSD.
devolve 0
a janela do mercado abre-se...
Ou a função de profundidade do mercado não funciona agora em forex?
devolve 0
abre a janela de vidro do mercado...
ou a função forex price cup não está a funcionar agora?
Não é uma janela de apostas de acções.
Se um Expert Advisor precisar de utilizar objectos gráficos para o funcionamento: linhas de tendência, linhas horizontais, etc.
Uma EA deste tipo funcionará correctamente no alojamento virtual incorporado no terminal?
Exemplo: Um consultor especializado abre ordens ao tocar numa linha de tendência.
Peço desculpa.
Porque é que existe um tal ultraje?sobre a mesma história e com os mesmos parâmetros que na construção 975.
Tomem qualquer EA, pelo menos a partir dos meus exemplos...
Portanto, é um conto, actualizações do agente de mosca e aqui está um rentável Expert Advisor a começar a martelar as perdas reais.
Parece ter quebrado a construção 989. Os peritos na construção do 989 dão resultados completamente diferentes
sobre a mesma história e com os mesmos parâmetros que o 975 construído.
Tomem qualquer EA, pelo menos a partir dos meus exemplos...
É assim que é trivial, a actualização sobre o agente de mosca e um Expert Advisor lucrativo começa a ter prejuízos na conta real.
Agora a construção oficial é 1010 e 989 era um beta.
Por favor, actualize e tente novamente.