Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 321
![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
Mais uma vez (ler atentamente):
No MetaTrader4 só se pode fechar ordens sequencialmente: enviar uma ordem para fechar uma ordem, esperar pela sua execução, passar para a ordem seguinte, etc. Por esta razão, o tempo para fechar um lote de encomendas em MetaTrader4 é substancial e não pode ser reduzido por meios triviais. No entanto, pode carregar vários Conselheiros Peritos nas suas próprias cartas e fazê-los trocar informações uns com os outros e fechar ordens através de um comando comum. Cada perito fecha as encomendas apenas com o seu símbolo. Uma vez que existem vários fios comerciais no MetaTrader4, eles não se bloqueariam uns aos outros e enviariam ordens uns aos outros. No entanto, a organização de um tal grupo de peritos é complicada, e a julgar pelo vosso nível de conhecimentos, não vos aconselharia nada do género.
Se ainda pensa que escrevi demasiadas palavras, aqui está um breve resumo:
1. a resposta à sua pergunta é não, não pode executar um guião de um consultor especializado.
2. Não é possível aumentar a velocidade de execução das ordens de negociação no MetaTrader4 sem utilizar métodos complexos.
A única forma de resolver a sua questão normalmente é a função OrderSendAsync, que não existe no MetaTrader4.
Muito obrigado pela sua resposta detalhada! Se não se importa, por favor partilhe as suas ideias sobre uma tal ideia:
Adicionar 2 parâmetros ao Expert Advisor que fecha todas as encomendas com lucro total, para classificar as encomendas:
(1 parâmetro - 1 ordem de classificação por mag em ordem decrescente ou 2 - ordem ascendente e 2 - 0 ordem de venda e compra, 1 ordem de venda, 2 ordem de compra)
Abrir 4 terminais com 1 conta e 1 gráfico conjunto do mesmo par, para que os ticks coincidam e definam parâmetros diferentes como 1-1, 1-2, 2-1, 2-2
que os dividirá em 4 fluxos: mínimo mágico vender, mínimo mágico comprar, máximo mágico vender, máximo mágico comprar
Ou estarei eu a ser estúpido novamente? E sim, tem razão sobre o meu nível de conhecimento!
Muito obrigado pela resposta detalhada! Se não se importa, por favor partilhe as suas ideias sobre esta ideia:
Adicionar 2 parâmetros ao Expert Advisor que fecha todas as encomendas com lucro total, para classificar as encomendas:
(1 parâmetro - 1 ordem de classificação por mag em ordem decrescente ou 2 - ordem ascendente e 2 - 0 ordem de venda e compra, 1 ordem de venda, 2 ordem de compra)
Abrir 4 terminais com 1 conta e 1 gráfico conjunto do mesmo par, para que os ticks coincidam e definam parâmetros diferentes como 1-1, 1-2, 2-1, 2-2
que os dividirá em 4 fluxos: mínimo mágico vender, mínimo mágico comprar, máximo mágico vender, máximo mágico comprar
Ou estarei eu a ser estúpido novamente? E sim, tem razão sobre o meu nível de conhecimento!
Sim, nós podemos fazer isto. Mas não há necessidade de gerir vários terminais. É necessário lançar um terminal, e este tem 4 janelas. Colocar um robô em cada janela. Utilizar números como um dos parâmetros deste robô: 1-4. Por outras palavras, deve atribuir o robô com o parâmetro 1 à primeira janela, com o parâmetro 2 à segunda janela e assim por diante. Quando chegar o momento de fechar as ordens, cada um dos robôs irá comparar o número mágico da ordem seleccionada com o número mágico do parâmetro e fechá-lo. Encomendas com outros consultores especializados serão dadas a outros consultores especializados para encerrar.
No fórum mt5, quando inicialmente considerei 4 janelas, como sugere, um programador respondeu: "O terminal é um só". Isto significa que existe apenas um "buraco", ou seja, existe apenas um pequeno "buraco" no terminal para acesso ao servidor, do tamanho de um pedido, que é utilizado por todos os EAs e scripts, que estão a correr no terminal. Ninguém pode aceder ao servidor até que o pedido único seja processado.
Então, o que é melhor e mais verdadeiro - 4 gráficos em 1 terminal ou 4 terminais?
No fórum mt5, quando inicialmente considerei 4 janelas, como sugere, um programador respondeu: "O terminal é um só". Isto significa que existe apenas um "buraco", ou seja, existe apenas um pequeno "buraco" no terminal para acesso ao servidor, do tamanho de um pedido, que é utilizado por todos os EAs e scripts, que estão a correr no terminal. Enquanto um pedido não for processado, mais ninguém pode aceder ao servidor.
Então, o que será melhor e mais correcto - 4 gráficos em 1 terminal ou 4 terminais?
Pense você mesmo na resposta deste "programador". Se assim fosse, seria impossível negociar com vários Conselheiros Especialistas num único terminal. Ficariam constantemente ocupados com o contexto, ou seja, bloquear-se-iam mutuamente. Anteriormente, nas versões desgrenhadas do MT4 havia de facto um tal erro e podia-se encontrá-lo, mas agora, tanto quanto sei, foi mesmo removido porque já não é relevante. A multi-tarefa de execução de encomendas em MT4 foi muito alargada e já existe há muito tempo.
Em qualquer caso, deve seguir o meu conselho e se algo correr mal, será fácil mover alguns EAs para outro terminal.
No fórum mt5, quando inicialmente considerei 4 janelas, como sugere, um programador respondeu: "O terminal é um só". Isto significa que existe apenas um "buraco", ou seja, existe apenas um pequeno "buraco" no terminal para acesso ao servidor, do tamanho de um pedido, que é utilizado por todos os EAs e scripts, que estão a correr no terminal. Ninguém pode aceder ao servidor até que o pedido único seja processado.
Então, o que é melhor e mais verdadeiro - 4 gráficos em 1 terminal ou 4 terminais?
Caro, mais uma pergunta: a função OrderCloseBy ajudaria a acelerar o fecho de uma grande pilha de encomendas?
Por exemplo: Quando um determinado lucro é alcançado, abrir mais 1 ordem no(s) par(s) para igualizar o tamanho do lote de ordens de compra e venda, e depois executar "fechar ordens sobrepostas".
As citações são de 5 dígitos.
Rapazes, podem aconselhar sobre esta questão, ela pode ser de natureza organizacional. Não lhe posso mostrar o código do indicador. Está escrito de forma competente, tudo já foi testado antes.
Começou a pergunta a partir daqui: https://www.mql5.com/ru/forum/6343/page323
Instalou o terminal a partir do website MQ - por defeito, oferecia um servidor de demonstração Alp. Acabou por executar o teste sobre o eurobucks:
O meu entendimento é que está à espera de dados da libra-dólar. Nenhum comércio está a abrir em qualquer lugar.
A seguir, quando se corre com a libra, diz:
dados pendentes por USDJPY.
E apenas quando se corre com USDJPY - não há dados à espera - mas ainda assim não há negócios abertos.
Eu não especifiquei explicitamente um par para abrir negócios no código, ou seja, por exemplo
Tudo para qualquer símbolo _Símbolo. E não é uma questão de abrir ordens... Qual poderia ser a razão? Obrigado.
O indicador atribui pesos a cada instrumento, o que resulta numa espécie de análise de agrupamento. Não quer trabalhar no testador. Qual poderá ser a razão? Agradeço-vos.
E os agentes trabalham bem, tudo está carregado e pronto para ir...
O indicador atribui pesos a cada instrumento, o que resulta numa espécie de análise de agrupamento. Não quer trabalhar no testador. Qual poderá ser a razão? Agradeço-vos.
E os agentes trabalham bem, tudo está carregado e pronto para ir...