Gostaria de saber qual a melhor forma de fazer um scanner para localizar ativos (Script, EA, Indicador). Algo como um Explorer do MetaStock.
Por exemplo: localizar todos os ativos que fechou fora e depois fechou dentro das bandas de bollinger no último pregão.
Olá Luciano,
a plataforma MetaTrader é bastante flexível, de forma que, teoricamente, um scanner de mercado poderia ser implementado tanto através de scripts, EA's ou indicadores. De acordo com a própria documentação, scripts e EA's podem executar tanto funções analíticas quanto de operação, enquanto que os indicadores são limitados apenas às funções analíticas.
Entretanto, dada a facilidade de acesso a dados de múltiplos ativos presente nos indicadores e sua especificidade, eu ficaria com esse último caso quisesse desenvolver um scanner para MetaTrader 5.
Acho que aqui cabe muita discussão, mas, já que temos aqui um certo espaço para opiniões, eu ficaria mesmo com os indicadores se precisasse desenvolver um scanner de mercado.
Abraços,
Malacarne
Olá Luciano,
a plataforma MetaTrader é bastante flexível, de forma que, teoricamente, um scanner de mercado poderia ser implementado tanto através de scripts, EA's ou indicadores. De acordo com a própria documentação, scripts e EA's podem executar tanto funções analíticas quanto de operação, enquanto que os indicadores são limitados apenas às funções analíticas.
Entretanto, dada a facilidade de acesso a dados de múltiplos ativos presente nos indicadores e sua especificidade, eu ficaria com esse último caso quisesse desenvolver um scanner para MetaTrader 5.
Acho que aqui cabe muita discussão, mas, já que temos aqui um certo espaço para opiniões, eu ficaria mesmo com os indicadores se precisasse desenvolver um scanner de mercado.
Abraços,
Malacarne
Malacarne, obrigado por sua dica! Sou novo como MT, não consigo entender como um indicador poderia fazer um scanner nos ativos e retornar os que se enquadram em determinada situação.
Um script eu consigo entender, acho que faz sentido.
Já o EA eu confesso que tenho certa dificuldade de entender.
Por isto abri este tópico! Eu conheço programação, mas não estou habituado a arquitetura do MT. Então dicas e exemplos, são bem vindos.
Olá Luciano, o fórum MQL5.com é exatamente o lugar correto para discutir esse tipo dúvida!
Caso você forneça maiores informações sobre o quê exatamente você gostaria de implementar, ou, melhor ainda, caso você forneça um "minimum working example" (em forma de código), seria possível aprofundar um pouco mais no que você deseja implementar, de forma que nossa ajuda seria mais focada e específica.
Entretanto, antes disso, eu sugiro fortemente que você dê uma olhada nos Artigos do site MQL5.com e nos códigos gratuitos disponíveis na Base de Código. Eventualmente um destes exemplos poderá ser de grande valia para você!
Dê uma olhada, apenas a título de curiosidade, nesses exemplos: 1, 2, 3 e 4.
Vale a pena também dar uma olhada nesses artigos: 1 e 2.
Espero ter ajudado.
Abraços,
Malacarne
Vou tentar te ajudar baseado no que eu entendi do seu problema. Você gostaria de saber todos os ativos que fecharam em um determinado ponto de acordo com um indicador certo? Você poderia fazer uma função onde informa: o indicador e seus parâmetros, o ativo que vc quer verificar e por ultimo o ponto de comparaçao (por exemplo: se fechou ABAIXO das bandas de bollinger) e gerar uma lista com os resultados. Estes resultados podem ser gravados em um arquivo caso vc necessite deles mais tarde. Você vai usar a mesma função para todos os ativos.
Espero ter ajudado.
Abraços
Gostaria de saber qual a melhor forma de fazer um scanner para localizar ativos (Script, EA, Indicador). Algo como um Explorer do MetaStock.
Por exemplo: localizar todos os ativos que fechou fora e depois fechou dentro das bandas de bollinger no último pregão.
Luciano, bom tópico e questão, acredito que os maiores problemas de fazer esse tipo de scanner estejam relacionados à utilização de múltiplos instrumentos em um mesmo aplicativo.
Afinal, espera-se que um bom scanner seja capaz de varrer preços, volumes e indicadores a partir desses dados em grande volume e velocidade.
Se o teu objetivo é construir algo para poucos ativos, o problema não é tão crítico.
Entretanto, o MT5 não parece muito eficaz quando começa a tratar dados de vários ativos, e é importante fazer uma gestão eficaz do acesso deles para evitar problemas, como deixar a plataforma muito lenta.
Luciano, bom tópico e questão, acredito que os maiores problemas de fazer esse tipo de scanner estejam relacionados à utilização de múltiplos instrumentos em um mesmo aplicativo.
Afinal, espera-se que um bom scanner seja capaz de varrer preços, volumes e indicadores a partir desses dados em grande volume e velocidade.
Se o teu objetivo é construir algo para poucos ativos, o problema não é tão crítico.
Entretanto, o MT5 não parece muito eficaz quando começa a tratar dados de vários ativos, e é importante fazer uma gestão eficaz do acesso deles para evitar problemas, como deixar a plataforma muito lenta.
Vou tentar te ajudar baseado no que eu entendi do seu problema. Você gostaria de saber todos os ativos que fecharam em um determinado ponto de acordo com um indicador certo? Você poderia fazer uma função onde informa: o indicador e seus parâmetros, o ativo que vc quer verificar e por ultimo o ponto de comparaçao (por exemplo: se fechou ABAIXO das bandas de bollinger) e gerar uma lista com os resultados. Estes resultados podem ser gravados em um arquivo caso vc necessite deles mais tarde. Você vai usar a mesma função para todos os ativos.
Espero ter ajudado.
Abraços
Confesso que cairia exatamente no caso em que figurelli sitou de queda de desempenho caso fossem manipuladas muitas variáveis de vários símbolos.
Caro achaa, não entendi sua última colocação: "Você vai usar a mesma função para todos os ativos.". Está sugerindo que ele rode um indicador para cada gráfico? Não ficaria mais fácil criar um único indicador que fizesse a varredura dos símbolos presentes na Observação de Mercado e gera-se estes dados?
Confesso que cairia exatamente no caso em que figurelli sitou de queda de desempenho caso fossem manipuladas muitas variáveis de vários símbolos.
Desculpem a má Português, estou usando a ferramenta de tradução automática.
Não há nenhum problema de desempenho com vários (dezenas) de símbolos se o seu programa está devidamente codificada. Pelo menos, eu nunca encontrei tal problema de desempenho.
Desculpem a má Português, estou usando a ferramenta de tradução automática.
Não há nenhum problema de desempenho com vários (dezenas) de símbolos se o seu programa está devidamente codificada. Pelo menos, eu nunca encontrei tal problema de desempenho.
Agradeço a resposta angevoyageur! Só queria uma confirmação de pessoas que já fizeram este teste. Estou trabalhando com alguns indicadores que possuem elementos gráficos (ex: buttons e panels) e manipulam um grande número de dados de vários ativos e também não obtive nenhum problema com desempenho.
Pode ser que alguns computadores mais antigos venham apresentar tais problemas, mas essa é uma outra questão.
Caro figurelli, acha que a plataforma perderia agilidade na busca de uma ou duas variáveis específicas (ex: preço fechamento, volume diário) apenas quando se trabalha com um vasto acervo de símbolos?
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Gostaria de saber qual a melhor forma de fazer um scanner para localizar ativos (Script, EA, Indicador). Algo como um Explorer do MetaStock.
Por exemplo: localizar todos os ativos que fechou fora e depois fechou dentro das bandas de bollinger no último pregão.