Discussão do artigo "Receitas MQL5 - Criamos um buffer circular para calcular rapidamente indicadores numa janela deslizante" - 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
Entendi perfeitamente seu ponto de vista na primeira vez.
O que é uma "assinatura de alteração de valor"? É um valor que muda na dinâmica. Portanto, é um indicador. Não é necessário desenvolver um buffer de anel para essa finalidade, mas é suficiente criar um algoritmo para calcular o próprio "caráter de mudança" de que você está falando com base em vários desses indicadores de anel.
A assinatura não é um valor. A assinatura é o caráter de mudança de um valor.
Não é importante exibi-la em um gráfico ou criar um indicador a partir dela. É importante que o programa possa ver o caráter da mudança de valor no período atual. É importante criar um mecanismo para extrair essa assinatura da matriz de dados, que é o buffer em anel.
Esse mecanismo é o mais complicado. Você o entenderá se tentar criá-lo.
Se simplesmente traçarmos uma curva em um gráfico, nosso cérebro verá a assinatura da alteração do valor em si. Ele está adaptado para fazer isso.
Mas tente fazer com que um programa veja isso.
Para acrescentar:
No momento, os algoritmos de negociação funcionam apenas com valores específicos dos parâmetros do ambiente de mercado. Eles não veem o "comportamento" dos parâmetros observados em diferentes escalas de tempo.
Os Expert Advisors não podem extrair um concentrado significativo do histórico de alterações nos valores registrados em matrizes de dados (buffers em anel, por exemplo).
Os buffers em anel permitem "observar" as alterações nos valores no período atual, mas sem extrair os caracteres das alterações, seu uso é ineficaz.
A presença de um mecanismo para sintetizar assinaturas levará os Expert Advisors de negociação a um novo patamar. O usuário poderá definir a natureza das alterações nos parâmetros do mercado dentro das condições de negociação de seu programa.
O nível e a qualidade desse programa estarão muito acima do que estamos fazendo agora.
Artigo interessante.
Quando eu calculo um indicador no MT4 pelas últimas 50 barras, por exemplo, no testador, esse indicador funciona muito mais rápido do que quando é calculado por todas as barras.
Tenho a impressão de que no MT5 essa abordagem(cálculo do indicador pelas últimas n barras) não é muito mais rápida. Quem sabe sobre esse assunto, se é assim ou se estou fazendo algo errado?
Artigo interessante.
Quando eu calculo um indicador no MT4 pelas últimas 50 barras, por exemplo, no testador, esse indicador funciona muito mais rápido do que quando é calculado por todas as barras.
Tenho a impressão de que no MT5 essa abordagem(cálculo do indicador pelas últimas n barras) não é muito mais rápida. Quem sabe se isso é verdade ou se estou fazendo algo errado?
Não estou entendendo muito bem o cálculo. Qualquer indicador requer n períodos para seu cálculo. Se n=50, então você o calcula nas últimas 50 barras. E qual é o cálculo em todas as barras?
O cálculo nas últimas n barras é o cálculo em 50 barras, e o cálculo em todas as barras é o cálculo em todo o histórico disponível no terminal(Bars-Period_). No MT4, eu uso essa construção:
O indicador é chamado no Expert Advisor, não em cada barra, mas quando várias condições são acionadas(a chamada do indicador está no corpo de vários operadores condicionais).
No MT5, a velocidade de otimização com essa abordagem não diminui muito.
Artigo interessante.
Quando eu calculo um indicador no MT4 pelas últimas 50 barras, por exemplo, no testador, esse indicador funciona muito mais rápido do que quando é calculado por todas as barras.
Tenho a impressão de que no MT5 essa abordagem(cálculo do indicador pelas últimas n barras) não é muito mais rápida. Quem sabe se isso é verdade ou se estou fazendo algo errado?
A única diferença é a velocidade do cálculo inicial para 1000 barras, que é preparado pelo testador. Então, qualquer indicador escrito de forma econômica funcionará com a mesma rapidez, tanto no MT4 quanto no MT5.
Apenas a velocidade do cálculo inicial para 1.000 barras preparado pelo testador é diferente. Então, qualquer indicador escrito de forma econômica funcionará com a mesma rapidez, tanto no MT4 quanto no MT5.
para usar distorções com construções de programação que, segundo eles, podem acelerar o código.
No MT4, com a ajuda dessa torção, a otimização é muitas vezes mais rápida e não me parece que eu possa ver isso. É bem possível que eu esteja fazendo algo errado no MT5.
Talvez não seja o indicador, mas o EA.
No MT4, com a ajuda dessa torção, a otimização é muitas vezes mais rápida, e eu não acho que seja assim, eu posso ver isso. É bem possível que eu esteja fazendo algo errado no MT5.
Talvez não seja o indicador, mas o EA.
O cálculo nas últimas n barras é o cálculo em 50 barras, e o cálculo em todas as barras é o cálculo em todo o histórico disponível no terminal(Bars-Period_). No MT4, eu uso essa construção:
O indicador é chamado no Expert Advisor, não em cada barra, mas quando várias condições são acionadas(a chamada do indicador está no corpo de vários operadores condicionais).
No MT5, a velocidade de otimização com essa abordagem não diminui muito.
Calcular apenas o último valor do indicador, e não recalculá-lo completamente com a chegada de um novo tick, é uma história tão padrão que é estranho que você tenha começado a discuti-la. É duplamente estranho que você fale sobre isso como se fosse um truque que você descobriu. Na realidade, é um padrão para escrever todos os indicadores. Ele também é mencionado na documentação. É por isso que absolutamente todo mundo usa o recálculo na última barra/ tick.