![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Isto é provavelmente para aqueles símbolos que não estão na MarketWatch, como diz para SymbolName:
Produzir o nome do símbolo pelo qual se obtém um resultado inesperado e comparar com a lista na MarketWatch....não é mencionado na ajuda, que para o trabalho bem sucedido desta função é necessário que a ferramenta esteja presente na janela do MarketWatch
A ajuda precisa realmente de ser provida de pessoal com exemplos e estrangulamentos normais.
PS
Além disso, há frequentemente situações em que, após efectuar alterações na língua, alguns EAs da base deixam de funcionar (ou geram erros de compilação).
Notado hoje...MT5(access.metatrader5.com:443)
EURJPY, Daily:
Por exemplo GBPJPY, Daily: Aqui tudo está bem.
E aqui está um screenshot de EURJPY, Diário de um MT4 DC:
A diferença é visível a olho nu....
Como é que isto pode ser corrigido?
Isto é provavelmente para aqueles símbolos que não estão presentes na MarketWatch, como para SymbolName diz:
Produzir o nome do símbolo pelo qual se obtém um resultado inesperado e compará-lo com a lista da MarketWatch.Para símbolos que não estão presentes na MarketWatch, SymbolInfoTick() devolve um erro ERR_MARKET_SELECT_ERROR "Símbolo não seleccionado na MarketWatch" (código 4302). Apenas EURUSD e GBPUSD são seleccionados na MarketWatch. Uma execução elementar mostra que SymbolInfoTick() retorna um erro ERR_MARKET_SELECT_ERRORpara símbolos não seleccionados :
A propósito, o último bloco de dados em sergey1294 é diferente dos outros: primeiro, SymbolInfoTick() devolve o mesmo código de erro desta vez, e segundo, - não acha que o instrumento, moeda base e moeda margem têm alguns nomes estranhos neste bloco de dados?
Isto é um insecto? Já notou esta esquisitice de todo?
Quanto ao último bloco de dados, é apenas o laço de força bruta que se rasgou um pouco e na última consulta de dados acedeu a um símbolo inexistente, pelo que todos os campos, excepto a moeda de depósito, estão vazios
Como é isto? Quer dizer, o registo não é da versão do código que foi dado?
A julgar pelo código, aí tudo está bem.
Ou SymbolsTotal() retornou um valor, mas durante a execução do script, algures no meio do ciclo, por um terrível acidente, o corretor, definindo a parte do servidor, removeu um símbolo do disponível, e o SymbolsTotal() - se o script o pedisse - retornaria um novo valor, um a menos, mas, uma vez que a condição de fim de loop era baseada no valor antigo armazenado na variável Total, então as funções correspondentes na última iteração ao aceder ao símbolo agora inexistente retornaram linhas vazias? :)
Até agora, apenas este cenário surgiu para que isto acontecesse. :)
... Depois o valor calculado é explicitamente convertido em ulong. Exactamente ao ulong, porque há uma garantia de que o valor a ser fundido não é negativo.
Ao ser lançada a um tipo inteiro, a parte fracionária do tipo real é descartada. Não é o arredondamento para o mais próximo, mas precisamente o deitar fora a parte fracionária que garante o não aumento do valor máximo dos lotes, que a margem livre permite. É exactamente o que precisamos.
Desenvolvedores.
Como faço aparecer parâmetros nos guiões (sou demasiado preguiçoso para mudar constantemente o código para novas condições)?
Desenvolvedores.
Como faço aparecer parâmetros nos guiões (sou demasiado preguiçoso para mudar constantemente o código para novas condições)?
#property script_show_inputs