template <typename T> void f( T& ) {} // Funciona apenas para objetos de estruturas e classes. template <typename T> void OnlyObjects( T& ) { const T Tmp; f((T)Tmp); // .... } void OnStart() { int i; MqlTick Tick; OnlyObjects(Tick); // OK OnlyObjects(i); // Erro }
No artigo, vi um recurso da MQL que eu não conhecia. Um exemplo de seu uso.
Ele provavelmente pertence a outro artigo ;-) - https://www.mql5.com/pt/articles/8028/ - os modelos foram usados lá, e o exemplo de lá foi simplesmente transferido para cá, já pronto.
- www.mql5.com
Stanislav, obrigado por seu trabalho!
Por que os quatro tipos de gráfico (equi-, renge-, tick- e renko) não estão combinados em um único EA? Havia algum motivo para separá-los ou era mais fácil refazer algo já pronto?
Muito boa ideia. Além disso, a negociação com base no gráfico funcionaria de forma integrada.
Para quem devo enviar um e-mail? @Renat Fatkhullin @Slava
Por que os quatro tipos de gráfico (equi-, renge-, tick- e renko) não estão combinados em um único EA? Havia motivos para separá-los ou era mais fácil refazer algo já pronto?
Em primeiro lugar, historicamente, eles foram feitos separadamente (para começar, algumas coisas não são minhas ;-). Em segundo lugar, na minha opinião, cada tipo de gráfico tem seus próprios adeptos e eles não se sobrepõem muito (por exemplo, os fãs do tick não são fãs do renko, e o timeshift é uma música completamente diferente). Em terceiro lugar, eles têm em comum apenas a inicialização, e não completamente, porque a continuação da geração após a reinicialização deve ser feita de forma diferente. Houve uma ideia de colocar o comum em um includnik separado, mas levando em conta o ponto 2, é mais fácil para todos escolherem um arquivo sem dependências.
Em primeiro lugar, historicamente, eles têm sido feitos separadamente (para começar, alguns não são minha praia ;-). Em segundo lugar, na minha opinião, cada tipo de gráfico tem seus próprios adeptos e eles não se sobrepõem muito (por exemplo, os fãs de tick não são fãs de renko, e timeshift é uma música separada). Em terceiro lugar, eles têm em comum apenas a inicialização, e não completamente, porque a continuação da geração após a reinicialização deve ser feita de forma diferente. Houve uma ideia de colocar o comum em um includnik separado, mas levando em conta o ponto 2, é mais fácil para todos escolherem um arquivo sem dependências.
Bem, todos eles têm o mesmo significado: pegar ticks (ou minutos) e criar um gráfico a partir deles sem uma linha do tempo.
A preparação do histórico (idealmente uma única vez, com continuação após uma pausa no lugar certo), a geração de novas barras e a emulação de ticks são semelhantes. Apenas as regras para "nova barra" são diferentes.
Mas entendo a resposta, eu também começaria com a adaptação de algo pronto, em vez de inventar uma bicicleta.
Engraçado) e quem e onde a posiciona dessa forma?
O servidor MT5 da minha corretora não consegue executar uma ordem pendente em 100 ms, então como pode ser HFT).
Sem mencionar que as ordens pendentes são executadas como ordens de mercado.
Engraçado) e quem e onde está posicionando-o dessa forma?
O servidor MT5 da minha corretora não consegue executar uma ordem pendente em 100ms, o que é HFT).
Sem mencionar que as ordens pendentes são executadas como ordens de mercado.
https://www.mql5.com/en/welcome/en-metatrader-5-high-frequency-trading
- www.mql5.com
Renko
Para criar gráficos renko, usamos o Expert Advisor RenkoTicks.mq5, que não é comercial. Ele gera renko na forma de cotações de um instrumento personalizado, processando ticks reais (disponíveis no MetaTrader 5 a partir de sua corretora). As cotações (barras) do símbolo original e o período de tempo do gráfico de trabalho onde o RenkoTicks é colocado não importam.
Uma alternativa aos símbolos personalizados ao plotar o renko poderia ser um indicador ou desenho (usando objetos ou na tela),mas em ambos os casos seria impossível aplicar indicadores ou scripts nesses pseudográficos.
Bem, por que ser tão categórico? Você pode desenhar na tela, gravar os valores no buffer do indicador e aplicar outros indicadores ao preço "Dados do indicador anterior". E essa é apenas uma das variantes mais primitivas. Há outras mais avançadas.
Bem, por que isso é tão categórico? Você pode desenhar na tela, gravar os valores no buffer do indicador e aplicar outros indicadores ao preço "Data of the previous indicator" (Dados do indicador anterior). E essa é apenas uma das variantes mais primitivas. Há outras mais avançadas.
Essa solução não abrange toda a variedade de ferramentas usadas na prática.
Esta solução não abrange toda a variedade de ferramentas usadas na prática.
Essa solução não pretende abranger toda a diversidade, mas apenas refutar a afirmação de que não há possibilidade de usar indicadores em um gráfico com um esquema de tempo de barranão padrão .
Repito: há soluções mais avançadas (embora muito mais complicadas) que já podem afirmar que abrangem "toda a diversidade".
- 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


Novo artigo Símbolos personalizados: Fundamentos práticos foi publicado:
O artigo é dedicado à geração programática de símbolos personalizados que são usados para demonstrar alguns métodos populares de exibição de cotações. Ele descreve uma variante sugerida da adaptação minimamente invasiva de Expert Advisors para negociar um símbolo real a partir de um gráfico de símbolo personalizado e derivado. Os códigos-fonte em MQL estão anexados a este artigo.
Além disso, o EA permite usar o modo de volume real para instrumentos de bolsa:
O gráfico LKOH original (a) e o equivolume (b) com o volume real de 10,000 por barra, gerado pelo EA EqualVolumeBars na MetaTrader 5
O período do símbolo no qual o EA está sendo executado não é importante, já que as barras M1 ou o histórico de ticks são sempre usados para cálculos.
O período dos gráficos de símbolos personalizados deve ser igual a M1 (o menor tempo gráfico disponível na plataforma). Assim, o tempo das barras, geralmente corresponde aproximadamente aos seus momentos de formação. No entanto, durante fortes movimentos do mercado, quando o número de ticks ou o tamanho dos volumes formam várias barras por minuto, o tempo das barras estará à frente do tempo atual. Quando o mercado se acalmar, os horários das barras de equivolume voltarão ao normal. Essa limitação da plataforma provavelmente não é particularmente crítica para barras de volume igual ou intervalo igual, uma vez que a própria ideia de tais gráficos é desvinculá-los do tempo absoluto.
Autor: Stanislav Korotky