Especialistas: Programação no MQL5 para traders: códigos-fonte retirados do livro. Parte 7 - página 2
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
Em geral, para um livro didático, seria melhor escrever entre colchetes:
Todos os operadores do formato @=, em que doggy significa o símbolo de qualquer operação, são sempre executados sobre o operando direito, totalmente contado antes da execução da operação. Isso é abordado na Parte 2, em Operações de modificação.
O arquivo de cálculo de margem é descrito na sexta parte, onde se supõe que as partes anteriores tenham sido dominadas. A complexidade aumenta no final do livro - não discuto isso, então tentei fazer referências aos grandes conceitos e princípios das seções anteriores nas seções seguintes, onde eles foram usados como blocos de construção (para refrescar a memória), mas não para coisas tão pequenas.
...A complexidade aumenta no final do livro - não há dúvida quanto a isso, portanto, para os grandes conceitos e princípios das seções anteriores, tentei fazer referências às seções seguintes, onde foram usados como blocos de construção (para refrescar minha memória), mas não para coisas tão pequenas.
Stanislav, tenho um nível de programação mais modesto do que o seu. Tento escrever o código de modo que seja mais fácil verificá-lo no depurador. É por isso que não uso com frequência o operador ternário. E se o faço, uso-o com parênteses... Há pessoas muito habilidosas que escrevem vários operadores ternários incluídos uns nos outros. Isso é algo próximo ao estilo de programação de macros do meu colega fxsaber. Provavelmente, toda abordagem tem direito à vida. E isso já é uma questão de gosto...
Grande respeito e respeito pelo tutorial! Algumas coisas interessantes são descritas com mais detalhes do que na documentação.
De qualquer forma, é de pouca utilidade, pois no final ele ainda conta a margem incorretamente se o volume for maior que três.
Cálculo da margem para dez contratos.
Favor anexar o script para verificação. Agora eu o executei em toda a visão geral do mercado - ele coincide com a função padrão, independentemente do volume.
E o compilador está irritado:
Provavelmente algo mudou no compilador. Na época do lançamento do livro, todos os códigos-fonte eram compilados sem avisos ou erros, exceto nos casos em que havia irregularidades deliberadas para fins de demonstração.
Tento escrever o código de modo que seja mais fácil verificá-lo no depurador. É por isso que não uso com frequência o operador ternário. E se o faço, uso-o com parênteses....
Eu concordo. Eu também sigo essa regra, exceto em casos simples - mas aqui cada um tem sua própria barreira de simplicidade. A legibilidade do código é tratada individualmente, geralmente procuramos uma "média de ouro" entre a abordagem "tudo em uma linha" e "cada token em uma linha separada". Com colchetes - da mesma forma. As empresas de software geralmente têm um conjunto de regras sobre o layout do código-fonte - nesse caso, não havia nenhuma.
Anexe o script para verificação. Agora eu o executei em toda a visão geral do mercado - ele coincide com a função padrão, independentemente do volume.
Ah, cara. Não acredito que não vi essa mensagem. Caramba.
Na verdade, nada mudou para mim.
Servidor Metaquot, versão de terminal 4420.
O código é o seguinte
O resultado é o seguinte.
Alguém está contando errado.
Talvez eu tenha me livrado do namespace MPM incorretamente. Não sei o que ele é e por que é necessário, mas ele não me permitiu compilar o EA.
Na verdade, apenas removi a linha do namespace MPM, as chaves depois dela e renomeei OrderCalcMargin, acrescentando o sublinhado.
Em geral, o arquivo foi compilado dessa forma. É possível que esse seja o erro?
O código é o seguinte
O resultado é o seguinte
Alguém está contando errado.
Aqui está a notícia do início de 2024 (ou seja, após a redação do livro) sobre a compilação 4150 - https://www.metatrader5.com/en/releasenotes/terminal/2342.
Nas configurações do servidor e na interface de especificação de símbolos, eles adicionaram a dependência da margem em relação ao volume.
Não descobri como acessar essas propriedades a partir da MQL5.
Em uma corretora/instrumento específico, essa configuração de margem flutuante pode não estar ativada, portanto, não vi nenhuma diferença ao verificar se não estava na MQ demo.
Foi adicionada a dependência da margem de volume às configurações do servidor e à interface de especificação de símbolos.
Não encontrei como acessar essas propriedades a partir da MQL5.
@Renat Fatkhullin
Há algum plano para adicionar a capacidade de obter essas propriedades da MQL5?
Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação
Expert Advisors: MQL5 Programming for Traders - códigos-fonte do livro. Parte 7
Stanislav Korotky, 2024.11.23 20:26
Encontrei aqui nas notícias do início de 2024 (ou seja, depois que o livro foi escrito) sobre a compilação 4150 - https://www.metatrader5.com/en/releasenotes/terminal/2342.
Nas configurações do servidor e na interface de especificação de símbolos, eles adicionaram a dependência de margem no volume.
Não encontrei uma maneira de acessar essas propriedades a partir da MQL5.
Em um determinado corretor/instrumento, essa configuração de margem flutuante pode não estar ativada, portanto, não vi nenhuma diferença ao verificar se não estava na demonstração MQ.