O filtro perfeito - página 6

 
Indicador útil.
Autor, por favor faça uma versão de VAMA para MT4.
Obrigado.
 
G001:
Indicador útil.
Autor, por favor faça uma versão de VAMA para MT4.
Obrigado.

Obrigado pelo feedback. Infelizmente não conheço o mql4, comecei a partir do mql5, mas tenho a certeza que se olharmos para o código do indicador seremos capazes de o implementar em 4, é muito simples.

P.S. Na versão 1.01 adicionei um atributo para desactivar o desenho do indicador no sentido tickwise, de modo a que só quando a barra estiver terminada é desenhada.

input bool bar_exist=1;

Arquivos anexados:
vaMA.mq5  4 kb
vaMACl.mq5  5 kb
vaZZ.mq5  4 kb
 

Bem, acho que estou satisfeito com isso, pelo menos não sinto quaisquer lacunas. Estou satisfeito com a vista até agora, agora vou apertar a volatilidade e o filtro de tendência/plano para misturar as transições de tendência para plano e vice-versa e fazer uma adaptação agradável, não feia como o AMA clássico.

1.12 está anexado, se quiser saber. ZZ e cor não fizeram com ele, porque esta é apenas a fase inicial, quando penso em como fazer já uma adaptação de qualidade, vou-me dispor a preparar.

Arquivos anexados:
vaMA.mq5  4 kb
 
J.B:

É isso, acho que já o temos...

A primeira opção é melhor (a do codobase). Neste já misturou em demasia... IMHO

 

Basta lê-lo, o fio é uma delícia! Muito obrigado a todos os envolvidos, especialmente ao iniciador do tópico. Eu próprio nunca fiz filtros, mas pensar um pouco sobre o assunto em voz alta seria bom, penso eu.

A questão de encontrar uma característica quantitativa da qualidade do filtro já foi aqui levantada muitas vezes. A sério, qual é melhor, JJMA ou EMA e por quanto? Existe uma certa quantidade de atraso do filtro, como medi-lo e qual é a sua utilidade? Portanto, no cômputo geral, estas são questões lógicas normais.


Evidentemente, um método simples através da soma dos ZigZags construídos sobre os nós de filtragem também foi expresso. É quase tudo bom, mas não é bem assim.

Caros autores, uma vez que têm métodos de comparação de filtros, poderiam dar dados gráficos, tabulares ou outros dados técnicos destas comparações. Além disso, se estiver a resumir os ZigZags, então vamos subtrair o valor de spread de cada joelho. Traçar a característica quantitativa como função do período de filtragem. Sobrepor os gráficos resultantes de diferentes filtros um sobre o outro e avaliar os prós e os contras de ambos.

E mais uma vez, porque é que generaliza tudo tão fortemente: um filtro para todos os tempos? Imagine que o seu filtro se comporta graciosamente à noite, e está terrivelmente errado em outros momentos. Afinal de contas, tal filtro é excelente! No entanto, devido à aproximação da temperatura média hospitalar, rejeitá-la-ia.

OK, pensamentos a entrar, cartas insuficientes. Sugiro também uma abordagem mais generalizada - One Way of Research:

Берется понравившийся кусок истории цВР. На нем выбираются понравившиеся интервалы, для которых суммарно будет проделываться нижеследующее. Например, берем крайний месяц, и рассматриваем далее только ночные интервалы.

Задача разложить данные по косточкам и написать ТС именно под этот кусок истории (точнее под выбранные интервалы в нем), чтобы на нем ТС показывала как можно больший профит.

Т.е. задача сводится к тому, чтобы обнаружить уже на известном куске истории закономерности для максимального профита.

Очевидно, что вычислить максимально-возможный профит на куске истории очень просто. Но надо создать такую ТС, у которой показатель Profit / Func(AmountIN) был бы максимален, где AmountIN - количество явных и неявных входных параметров ТС, а Func - некая функция (для простоты начала исследования - простейшая линейная: Func(X) = X).

Например, нескольким людям нравится какой-то замечательный флэтовый кусок, который эти люди считают чуть ли не классическим рыночным флэтовым (типовым) состоянием. Люди выкладывают этот кусок публично и устраивают свого рода соревнование по созданию оптимальной ТС для этого куска. Далее сравниваются характеристики полученных ТС, идеи в них заложенные. И уже исходя из этого анализа происходит некоторое понимание формализации флэтовости и более обобщенных понятий.
P.S. Написано очень примитивно, но основа подобных манипуляций позволяет уловить суть подходов и к исследованиям посложнее.

E também um pedido forte, ter em conta as diferenças da TZVR. Por exemplo, o seu filtro pode mostrar completo disparate no EURUSD e ser excelente no GBPJPY. Se tais diferenças forem observadas, então é lógico investigar o EURUSDvsGBPJPY. De qualquer modo, há muitos lugares para escavar.

 

hrenfx:

Evidentemente, um método simples através da soma dos joelhos em ZigZag construídos sobre quebras de filtro foi também expressado. Tudo é quase bom, mas não é bem assim.

Caros autores, uma vez que têm métodos de comparação de filtros, poderiam fornecer dados gráficos, tabulares ou outros dados técnicos destas comparações. Além disso, se estiver a resumir os ZigZags, então vamos subtrair o valor de spread de cada joelho. Traçar a característica quantitativa como função do período de filtragem. Sobrepor os gráficos obtidos de diferentes filtros um sobre o outro e avaliar os prós e os contras de ambos.

E mais uma vez, porque é que generaliza tudo tão fortemente: um filtro para todos os tempos? Imagine que o seu filtro se comporta graciosamente à noite, e está terrivelmente errado em outros momentos. Afinal de contas, tal filtro é excelente! No entanto, a abordagem da temperatura média hospitalar irá levá-lo a rejeitá-la.

E também um pedido forte, ter em conta as diferenças na TzVR. Por exemplo, o seu filtro pode mostrar um lixo total em EURUSD e ser excelente em GBPJPY. Se vir tais diferenças, então é lógico investigar o EURUSDvsGBPJPY. Em suma, há muitos lugares para escavar.

Obrigado! É o critério de eficiência de diferentes filtros para diferentes mercados e o agrupamento utilizando este critério permitir-nos-á calcular o ponto de conversão necessário entre diferentes sistemas de encomenda sintonizados para diferentes condições de mercado. Este é o plano.

Já pensei no cálculo do spread no totalizador, é uma invenção adicional, tendo em conta as empresas de corretagem e as suas cotações, estou a tentar resolver os problemas de forma consistente, para que cada elemento do sistema fosse razoavelmente autónomo, para poder compreender a "contribuição líquida" de cada elemento, e depois analisar o efeito cumulativo.

Contudo, ainda não sou um bom programador e a minha velocidade de codificação é horrível, luto constantemente com ultrapassagens de matriz e sem especificar um novo buffer de cálculo para o indicador e assim por diante. É por isso que estou a gastar 99,9% do meu tempo em insectos técnicos em vez de pensar na arquitectura TC, o que é triste, mas inevitável.

Por favor diga-me, se não se importa, que métodos ou heurística são utilizados para evitar a sobreposição de matrizes? Porque pensa constantemente que laço de que e em que elemento fazer, penso que não é kosher. É possível, por exemplo, para valores inválidos e acessos fora de loop, não quebrar a lógica ? Por exemplo, poderia a divisão por 0 não causar um erro, mas um grande valor de 1000, por exemplo, e o endereçamento fora da matriz deu um item da margem da matriz mais próxima do endereço?

(Portanto... pensamentos de principiante, compreendo que pode ser pouco-homem, talvez até vergonhoso pensar desta forma))) Mas perdoem-me, não estou muito atento, infelizmente. Tenho mais facilidade em criar estruturas do que em implementá-las, mas se tiver de ordenar a codificação para cada pequena coisa, fico arruinado. Os pequenos testes são ainda melhores para fazer por si próprio.

 

J.B:

que métodos ou heurística utiliza para evitar matrizes fora dos limites?

Uma aula para a criação de um buffer de anéis
 
J.B:

Já pensei em ter em conta o spread no totalizador, já é um truque adicional, tendo em conta uma determinada empresa de corretagem e as suas cotações, estou a tentar resolver os problemas de forma consistente para que cada elemento do sistema seja suficientemente autónomo, de modo a poder compreender a "contribuição líquida" de cada elemento, e depois analisar o efeito cumulativo.

Mencionei a propagação, não para quebrar os estereótipos. De facto, não há propagação. Há apenas o Bid and Ask of BP. Também constrói ZigZags, mas coloca tops em Bid BP, e lows em Ask BP. Então a soma dos joelhos será responsável pelo"espalhamento flutuante". Na realidade, não é tão nerd como possa parecer. Também não é um desejo de calcular com super precisão onde não se pode. Há aqui uma questão de princípio: fracturas demasiado frequentes, embora bastante precisas, são más, pois não são lucrativas.

Ainda não sou um bom programador e a minha taxa de codificação é demasiado lenta, estou constantemente preocupado com erros fora da matriz e com o facto de não ter criado um novo buffer para calcular os valores dos indicadores. Portanto 99,9% do meu tempo é gasto em falhas técnicas e não a pensar na arquitectura TC, o que é triste, mas inevitável.

Eu também sou um programador de merda. Por conseguinte, há uma recomendação para não realizar tais estudos em MQL. Usar MQL apenas como fonte de dados e como uma simples visualização. Para análise, utilizar o mesmo pacote matricial. Isto irá poupar-lhe muito tempo e esforço.

Os dados Bid and Ask devem estar disponíveis através de FXOPEN ECN, FXCM, Dukascopy, ou qualquer outra fonte de tick. Deverá utilizar apenas M1, como um compromisso entre velocidade e precisão. Sei que quase ninguém se vai preocupar com isso, e que continuará a permanecer em quadros de MQL. Mas só tem de responder a si próprio se quer investigar ou brincar.

 

Obrigado! Vou tentar))))

hrenfx:

Eu disse sobre a propagação, não para quebrar estereótipos. De facto, não há propagação. Há apenas o Bid and Ask BP. Constrói ZigZags da mesma forma, mas coloca tops em Bid BP, e lows em Ask BP. Então a soma dos joelhos será responsável pelo"espalhamento flutuante". Na realidade, não é tão nerd como possa parecer. Também não é um desejo de calcular com super precisão onde não se pode. Há aqui uma questão de princípio: fracturas demasiado frequentes, embora bastante precisas, são más, pois não são lucrativas.

Eu também sou um programador de merda. Por conseguinte, há uma recomendação para não realizar tais estudos em MQL. Usar MQL apenas como fonte de dados e como uma simples visualização. Para análise, utilizar o mesmo pacote matricial. Isto irá poupar-lhe muito tempo e esforço.

Os dados Bid and Ask devem estar disponíveis através de FXOPEN ECN, FXCM, Dukascopy, ou qualquer outra fonte de tick. Deverá utilizar apenas M1, como um compromisso entre velocidade e precisão. Sei que quase ninguém se vai preocupar com isso, e que continuará a permanecer em quadros de MQL. Mas aqui só tem de responder a si próprio, quer pesquisar ou brincar.

Obrigado pela recomendação! Na verdade, estou a segui-lo retroactivamente))). Utilizo STATICTICA e Matlab para estudos numéricos, sideFX Houdini para visualizações e alguns cálculos pouco usuais. Mas mesmo assim, tenho de codificar algo bastante personalizado a nível de vector (matriz) e operações com os seus componentes em loops. É por isso que terei de estudar mql5 para mt5 e muito provavelmente C# também.

O 5-ésimo foi escolhido pelas seguintes razões, por ordem de importância para mim:

1)mql5 é um análogo de C++.

E C++ é a linguagem de programação mais avançada hoje em dia, e mesmo numa pitada, se o mt5 não me ajudar por causa de um marketing inadequado, posso facilmente mudar para uma codificação C++ pura. E esta experiência não será perdida.

É claro que o OOP, em contraste com o 4º C, que é como a potência sob a capota de um carro frio, agrada como o potencial para implementar projectos estruturalmente complexos. Uma linguagem processual seria um golpe mental, dada a minha atenção e o planeamento de ninhos estruturais de projectos.

2)Mt5 é a última versão do mt.

Uma grande probabilidade de que as próximas versões do mql se baseiem também em valias e o mt5 está a ser promovido a trocas, o que é uma enorme vantagem absoluta e o facto de as empresas de corretagem não estarem a mudar em massa para 5 na minha opinião é um fenómeno temporário.

Comecei também a utilizar o mql5 e c# para implementar as minhas ideias. Já tive experiência em encomendar algumas ideias a codificadores, mas decidi que faz sentido encomendar apenas conchas. E os blocos de previsão e MM devem ser feitos por mim mesmo. Por isso, terei de aprender línguas pelo menos para dar a tarefa correctamente e verificar/investigar correctamente os projectos. De momento, isto é apenas IMHO.

 

Francamente, esta é uma visão estranha. O que tem a investigação sobre o TzWD a ver com qualquer plataforma ou língua? Trata-se apenas de investigação. Pode fazê-lo em papel, pode fazê-lo numa linguagem parecida com C e, tal como salientou correctamente, em alguns pacotes matemáticos. Dito isto, ter a capacidade de programar e importar dados e DLLs de terceiros. A investigação e o comércio são actividades completamente diferentes.

Brincar é passar o seu precioso tempo a construir infra-estruturas de investigação a partir do zero: através de uma linguagem de programação.

Não vou discutir ou persuadir, claro. Ainda se partiu do princípio de que o fio estava sobre o tema da investigação.