Símbolos personalizados. Erros, bugs, perguntas, sugestões. - página 15
![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
Bem, o que não está claro aqui, no correio com o bug #20 eu especifiquei a configuração de identificação, e indiquei a razão para não corresponder.
SYMBOL_TRADE_EXEMODE
SÍMBOLO_COMÉRCIO_CALC_MODE
Estes são modos completamente diferentes, e não se aplicam ao problema.
Isso deve torná-lo mais claro.
E se você quiser usar outro identificador da ENUMSYMBOL_FILLING_XXX
Não há identificadorparaSYMBOL_FILLING_RETURN!
Isso mesmo - não há. Eles não são identificadores - são bandeiras. Porque SYMBOL_FILLING_RETURN sempre existe. E as outras duas bandeiras podem ser ambas ou uma delas:
Ao enviar uma ordem você pode especificar uma política para preencher o volume declarado na ordem comercial. As variantes permitidas de execução de pedidos por volume para cada símbolo são mostradas na tabela abaixo. Não apenas um modo pode ser definido para cada símbolo, mas vários modos através de uma combinação de bandeiras. A combinação de bandeiras é expressa como a operação lógica OR (|), por exemplo SYMBOL_FILLING_FOK|SYMBOL_FILLING_IOC. Para verificar se uma determinada modalidade é permitida para um instrumento, o resultado da lógica AND (&) deve ser comparado com a bandeira da modalidade.
Política de preenchimento
Identificador
Valor
Descrição
Todos/Nenhum
SÍMBOLO_ENCHIMENTO_FOK
1
Esta política de execução significa que o pedido só pode ser preenchido até o tamanho especificado. Se o volume do instrumento financeiro for insuficiente atualmente disponível no mercado, a ordem não será executada. O volume necessário pode ser compilado a partir de várias ofertas atualmente disponíveis no mercado.
Tudo/Parcial
ALL_FILLING_IOC
2
Neste caso, o comerciante concorda em realizar um negócio com o volume máximo disponível no mercado dentro do volume especificado no pedido. Se a execução completa não for possível, a ordem será executada para o volume disponível, e o volume não executado da ordem será cancelado. A possibilidade de uso das ordens do COI é definida em um servidor de negociação.
Retornar
Não há COI
Esta modalidade é utilizada para ordens de mercado (Compra e Venda), limite e stop-limit e somente nas modalidades "Execução de Mercado" e "Execução de Bolsa". Em caso de execução parcial, uma ordem de mercado ou limite com um volume residual não é removida, mas permanece em vigor.
Certo - não. Eles não são identificadores - são bandeiras. Porque SYMBOL_FILLING_RETURN está sempre presente. E as outras duas bandeiras - podem ser ambas ou uma só:
Mas isto não é um comportamento explícito, o que é enganoso.
E a documentação não diz que o SYMBOL_FILLING_RETURN está sempre presente.
Por que não colocá-lo explicitamente? SYMBOL_FILLING_RETURN
Mostre-me um exemplo de como colocar corretamente a bandeira para enchimento de troca então
Estou ficando confuso com estas bandeiras não explícitas.
Mas não é um comportamento explícito que é enganoso.
E a documentação não diz que o SYMBOL_FILLING_RETURN está sempre lá.
Por que não defini-lo explicitamente? SYMBOL_FILLING_RETURN
Por favor, mostre-me um exemplo de como colocar corretamente a bandeira para o enchimento de troca então
Porque estou confuso com estas bandeiras não explícitas.
Zero - se não forem necessárias outras bandeiras.
Mas não é um comportamento explícito que é enganoso.
E a documentação não diz sobre o sinal de que SYMBOL_FILLING_RETURN está sempre lá.
Por que não defini-lo explicitamente? SYMBOL_FILLING_RETURN
Por favor, mostre-me um exemplo de como colocar corretamente a bandeira para o enchimento de troca então
Porque estou confuso com estas bandeiras não explícitas.
Aqui está a partir da documentação:
"Nos modos de execução "Por Mercado" e "Troca", a política de preenchimento "Retorno" é sempre permitida para todos os tipos de ordem. A permissibilidade dos outros tipos é verificada usando as propriedades SYMBOL_FILLING_FOK e SYMBOL_FILLING_IOC. "
Zero - se não forem necessárias outras bandeiras.
Fixa zero, fixa nenhum.
Nenhum deles não é um preenchimento de troca.
Se eu tentar desta maneira
SYMBOL_FILLING_FOK & SYMBOL_FILLING_IOC também devolve Nenhum, não 3 como você disse acima.
Afinal de contas, como faço para que a troca seja preenchida corretamente?
E depois há isto.
Define Tudo, o que é o mesmo que Tudo é permitido.
E na documentação, na coluna "Valor", não há nada, vazio!
E na coluna "Identificador" para a linha "Return", ainda sugiro especificar a combinação correta para as bandeiras!
Por que não simplesmente adicionarSYMBOL_FILLING_RETURN com valor 3, claro e compreensível para todos.
Preencher bandeiras em bandeiras personalizadas para que finalidade prática?
Fixa zero, fixa nenhum.
Nenhum deles não é um preenchimento de troca.
Se eu tentar desta maneira
SYMBOL_FILLING_FOK & SYMBOL_FILLING_IOC também devolve Nenhum, não 3 como você disse acima.
Afinal de contas, como faço para que a troca seja preenchida corretamente?
Ali, essa combinação estabelece Tudo. Obrigado.
Mas concordo que esta combinação não parece óbvia.
Não usamos um "Não" lógico ao definir as propriedades
Se nãoSYMBOL_FILLING_FOK ou nãoSYMBOL_FILLING_IOC
então oSYMBOL_FILLING_RETURN escondido-"Sempre lá" éusado
Em sua combinação, em vez disso dizemos explicitamente, defina FOK ou IOC.
No enchimento de câmbio não há FOC ou IOC, portanto, é enganoso.
Portanto, é lógico, esta combinação deve ser adicionada à documentação, na coluna"Identificador" e seu valor 3
ou melhor, para adicionarSYMBOL_FILLING_RETURN
Então o Bug #20 é excluído de bugs.
Mas tenha em mente que o recurso de explicitação é violado.
Preencher bandeiras em bandeiras personalizadas para que finalidade prática?
Para exibir a especificação da ferramenta corretamente.
Também é possível que estes modos sejam utilizados em algum lugar nas profundezas do terminal.
No testador ou em outro lugar, portanto, estou acostumado a preencher tudo explicitamente.