Discussão do artigo "Criando Filtros Digitais Sem Atraso"

 

Novo artigo Criando Filtros Digitais Sem Atraso foi publicado:

O artigo descreve uma das abordagens para a determinação de um sinal útil (tendência) num fluxo de dados. Pequenos testes de filtragem (suavização) aplicados às cotações do mercado demonstram o potencial para a criação de filtros digitais sem atrasos (indicadores) que não são redesenhados nas últimas barras.

Filtro Cluster

Filtro Cluster é um conjunto de filtros digitais aproximando a sequência inicial. Filtros de cluster não devem ser confundidos com indicadores cluster.

Filtros cluster são convenientes ao analisar séries temporais não-estacionárias em tempo real, em outras palavras, o fluxo de dados. Isso significa que estes filtros tem o interesse principal em não suavizar os valores das séries de tempo já conhecidas, mas sim obter os valores suavizados mais prováveis ​​dos novos dados recebidos em tempo real.

Ao contrário de vários métodos de decomposição ou simplesmente filtros de frequência desejada, filtros cluster criam uma composição ou um leque de prováveis valores ​​de séries iniciais que são posteriormente analisados ​​para aproximação da sequência inicial. A sequência de entrada atua mais como uma referência do que o alvo da análise. A análise principal diz respeito aos valores calculados por um conjunto de filtros depois de processar os dados recebidos.

Figura 1. O diagrama de um filtro cluster simples

Figura 1. O diagrama de um filtro cluster simples

No caso geral, cada filtro incluído no cluster tem suas próprias características individuais e não está relacionado com os outros de qualquer forma. Algumas vezes estes filtros são personalizados para a análise de séries de tempo estacionária próprias, descrevendo as propriedades individuais da série inicial de tempo não estacionária. No caso mais simples, se a série não estacionária inicial modifica os seus parâmetros, os filtros de "switch" desligam. Assim, um filtro cluster controla as alterações em tempo real nas características.

Autor: Konstantin Gruzdev

 
Agradecemos ao autor pelo artigo interessante.
 

A ideia de criar um filtro sem atraso tem me ocupado nos últimos dois anos. Também tenho obtido resultados regulares que parecem melhores do que outros, e até mesmo sem defasagem. Todos eles foram quebrados em uma análise por etapas. Peço ao autor que realize o sinal do modelo de entrada como uma função Heaviside: uma etapa, até o momento em que o nível T =0, depois de um. E mostre a linha de filtro sobre isso. Tenho 99,99% de certeza de que veremos uma curva indo para o nível 1 durante algum intervalo de tempo, ou seja, defasagem. Um filtro ideal, verdadeiro e sem defasagem deve ser capaz de lidar com as "etapas" de modo que a saída seja igual à entrada. Se esse não for o caso, o raciocínio sobre a "não latência" é um remendo. Embora eu apoie o autor: a criação de um filtro sem atraso e sem desenho é possível.

P.S. As comparações com outros filtros devem ser feitas em uma "etapa", colocando todos os filtros em um gráfico.

P.P.S. Se isso já foi feito em algum vídeo - por favor, desculpe-me, mas no momento (em um computador que está funcionando) não consigo ver o vídeo (aparentemente, postado no youtube?).

 

Acrescentarei um teste com uma etapa para o Momentum com um filtro.

A reação do filtro às etapas do fluxo de cotações pode ser vista claramente no quarto vídeo.

 
Lizar:

Acrescentarei um teste com uma etapa para o Momentum com um filtro.

Qual é a reação do filtro às etapas do fluxo de cotações pode ser vista claramente no quarto vídeo.

Digamos que o período em algum sentido efetivo (não literal) de média seja de 101 barras, portanto, a defasagem é de 50 barras. E em uma etapa limpa, posso ver isso muito bem. Mas nas cotações, onde duas seções horizontais (0 e 1 condicionalmente) somam apenas 20 barras, e ao redor das cotações, não verei nada disso.

Os filtros devem ser investigados inserindo-se SOMENTE sinais de modelo e, depois disso, após entender sua natureza, apreciar as imagens do trabalho nas cotações.

 
MAIS:

Digamos que o período, em algum sentido efetivo (não literal) de cálculo de média, seja de 101 barras, portanto, a defasagem é de 50 barras. E em uma etapa limpa, posso ver isso muito bem. Mas nas cotações, onde duas seções horizontais (0 e 1 condicionalmente) somam apenas 20 barras, e ao redor das cotações, não verei nada disso.

Os filtros devem ser investigados inserindo-se SOMENTE sinais de modelo e, depois disso, após entender sua natureza, apreciar as imagens do trabalho nas cotações.

Entendo, vou adicionar esse teste.
 
Lizar:
Entendi, vou adicionar esse teste.
Obrigado. Estou supondo o que veremos. Talvez seu filtro apresente menos atraso com melhor suavização do que os concorrentes. Mas ele não será 100% um filtro sem atraso e sem desenho. A próxima pergunta é: seu filtro está próximo o suficiente de um filtro sem atraso e sem desenho para ser usado nessa função? O teste é simples, na minha opinião. Se o filtro realmente não atrasou e não foi redesenhado, é razoável supor que uma estratégia de negociação simples seria lucrativa: comprar se o filtro estiver acima do preço, vender se for vice-versa. Vamos implementá-la entrando em cada barra (ou se a divergência for maior que um determinado limite) e entrando com o mesmo lote e TP=SL igual. Por exemplo, TP=SL=50 pips. A questão é que, se entrarmos aleatoriamente, teremos 50% de probabilidade de pegar o SL, sem levar em conta o spread. Levando em conta o spread - mais. E é por isso que perdemos dinheiro lentamente. Se o filtro não estiver realmente defasado, a probabilidade de pegar um TP é maior (sem levar em conta o spread). Se houver um efeito, não podemos deixar de notá-lo depois de analisar uma parte bastante longa das cotações. Se você puder mostrar que a probabilidade de TP em uma estratégia tão simples é de pelo menos 55%, isso é suficiente para compensar o spread e até mesmo ganhar. Se o seu filtro for realmente sem atraso, então, ao selecionar o limite da diferença entre o filtro e o preço, quando o módulo atingir o limite, você poderá mostrar a probabilidade de TP com o spread de 70, ou 80, ou 90+ por cento.... Em caso afirmativo, seu filtro quase não atrasa e não se arrasta, e sua estratégia de negociação é o Graal. Se não, e a probabilidade de TP não for maior do que a da SMA, desculpe.
 
MAIS:
Obrigado a você. Estou supondo o que veremos. Talvez seu filtro apresente menos atraso com melhor suavização do que os concorrentes. Mas ele não será 100% um filtro sem defasagem e sem desenho....

Vamos aguardar a publicação do indicador GMomentum_test para tirar conclusões e não suposições. Ele deveria ter sido publicado junto com o artigo, mas aparentemente eles não tiveram tempo para prepará-lo. Agora parece que será publicado na segunda-feira. Agora, parece que ele será publicado na segunda-feira.

Quanto aos testes em geral, os testes para filtros lineares não são adequados para filtros de cluster. Mais precisamente, eles podem ser feitos, mas não são indicativos, porque os filtros de cluster são não lineares. Um exemplo disso é a situação com um único pulso do artigo. Muito provavelmente, um teste com uma função de etapa única seria igualmente espetacular. Mas será, assim como no caso do pulso único, apenas um caso especial divertido de suavização. Nada mais.

Технические индикаторы как цифровые фильтры
Технические индикаторы как цифровые фильтры
  • 2013.10.07
  • Timur Gatin
  • www.mql5.com
В данной статье технические индикаторы рассматриваются как цифровые фильтры. Объясняется принцип работы и основные характеристики цифровых фильтров. Рассматриваются практические способы получения ядра фильтра в терминале MetaTrader 5 и интеграция с готовым анализатором спектра, предложенным в статье "Строим анализатор спектра". В качестве примеров приведены импульсные и спектральные характеристики типичных цифровых фильтров.
 
Lizar:

Vamos aguardar a publicação do indicador GMomentum_test, para que possamos tirar conclusões sem base em suposições. Ele deveria ter sido publicado junto com o artigo, mas aparentemente eles não tiveram tempo de prepará-lo. Agora parece que será publicado na segunda-feira. Agora, parece que ele será publicado na segunda-feira.

Quanto aos testes em geral, os testes para filtros lineares não são adequados para filtros de cluster. Mais precisamente, eles podem ser feitos, mas não são indicativos, porque os filtros de cluster são não lineares. Um exemplo disso é a situação com um único pulso do artigo. Muito provavelmente, um teste com uma função de etapa única seria igualmente espetacular. Mas será, assim como no caso do pulso único, apenas um caso especial divertido de suavização. Nada mais.

Não se trata do teste de filtro. Está claro que um filtro não retardado e não desenhado, se existir, é não linear. Trata-se de testar um sistema de negociação na geometria proposta por mim, a priori lucrativo para ESSE filtro não retardado e não desenhado, e POSSIVELMENTE lucrativo para alguma aproximação desse filtro ideal. O teste com uma etapa não é um caso especial, mas um demonstrador das qualidades internas e inatas do filtro, que sempre estarão presentes em qualquer dado, apenas na etapa em que são visíveis.
 
MAIS:

Aqui está o que eu recebi:

A linha pontilhada cinza é Heaviside, a linha grossa azul é Momentum e a linha vermelha é Momentum com o filtro ativado

 
Lizar:

Aqui está o que eu recebi:

A linha cinza pontilhada é Heaviside, a linha azul grossa é Momentum e a linha vermelha é Momentum com o filtro ligado

A linha pontilhada cinza não é Heaviside. O degrau deveria ser vertical. Se for porque a discretização está na abscissa e está desenhada com uma linha, é uma pena. E eu queria ver valores de suavização mais altos. Assim, a defasagem seria maior do que as 3 barras mostradas. E, em geral, se a defasagem for pequena, costumo praticar a repetição quantas vezes forem necessárias: aplico um filtro ao resultado da filtragem, depois de mil repetições tudo fica visível, fica claro que fração da barra de defasagem está contida no algoritmo com a suavização aparentemente minúscula.