Ondas triangulares e em forma de serra: ferramentas para o trader
Introdução
Quando se fala em ondas, a primeira imagem que vem à mente são as senoides. Com elas, é possível modelar e descrever oscilações das mais diversas naturezas. Inclusive os ciclos de mercado.
Se o assunto é análise de ondas, imediatamente lembramos da teoria das ondas de Elliott. De acordo com essa teoria, o preço se move ciclicamente: primeiro ocorre um movimento impulsivo (onda de alta), seguido de uma correção (onda de baixa). Esses movimentos formam uma estrutura fractal, onde cada onda maior é composta por ondas menores. E estas, por ondas ainda menores.
Assim, tanto as senoides quanto as ondas de Elliott são duas concepções distintas, mas ambas estão relacionadas à ideia de periodicidade e repetição dos processos. À primeira vista, pode parecer que todas essas teorias de ondas já foram estudadas e testadas, e que não há mais nada de novo a ser criado. Mas essa impressão é enganosa: sobre uma base antiga, sempre é possível construir algo novo. É exatamente isso que faremos agora.
Ondas triangulares
Todos nós estamos acostumados a imaginar ondas com formato ondulado. Mas elas podem ter outras formas. Recentemente, li um artigo sobre ondas quadradas, mas sobre ondas triangulares, confesso que ouvi falar pela primeira vez. Na verdade, ondas triangulares já existem no terminal MetaTrader, mas a empresa MetaQuotes guarda cuidadosamente esse segredo.
Vamos pegar 3 valores consecutivos de uma SMA com período 3 e calcular a média entre eles. Obteremos uma média móvel com o método de suavização MODE_SMMA. Os cálculos ficariam assim:
![]()
![]()
![]()
![]()
Agora, vamos observar esse problema dos 3 corpos de indicadores sob outro ponto de vista. Qualquer indicador linear é apenas um conjunto de coeficientes. Com esses coeficientes, podemos realizar qualquer operação aritmética. Como exemplo, consideremos a soma de três SMA. Primeiro, anotamos os coeficientes de cada indicador separadamente e, em seguida, somamos os coeficientes correspondentes ao mesmo preço. Como resultado, obtemos uma função de janela triangular.
| price[0] | price[1] | price[2] | price[3] | price[4] |
|---|---|---|---|---|
| 1 | 1 | 1 | ||
| 1 | 1 | 1 | ||
| 1 | 1 | 1 | ||
| 1 | 2 | 3 | 2 | 1 |
Mas uma janela triangular também pode ser obtida de forma ainda mais simples. Primeiro, precisamos definir o período do indicador. Então, seus coeficientes podem ser facilmente calculados pela fórmula:
![]()
Agora precisamos normalizar esses coeficientes. Primeiro, devemos encontrar a soma de todos os coeficientes. Depois, dividimos cada coeficiente pelo valor obtido. Um indicador desse tipo suavizará os preços, mas sua diferença em relação ao SMMA será muito pequena.
Vou propor uma tarefa mais complexa e interessante. Com base nos coeficientes da janela triangular, construir um indicador que reaja a mudanças desse tipo no preço.

Esse indicador será composto por duas partes. A primeira parte é a mais simples, já que todos os seus coeficientes são iguais a 1. A segunda parte é um pouco mais elaborada. Primeiro, precisamos calcular os coeficientes da janela triangular. Depois disso, é necessário normalizá-los de forma que o resultado seja um oscilador. Para isso, encontramos a soma dos coeficientes:
![]()
Em seguida, recalculamos cada coeficiente pela fórmula:
![]()
Agora, vejamos como aplicar esse indicador na prática. Suponhamos que o período do indicador seja igual a 5. Então, o indicador será formado por 2 matrizes de coeficientes:
![]()
![]()
Com esses coeficientes, precisamos calcular 2 pesos:
![]()
![]()
Cada um desses pesos é um indicador separado. W0 é a conhecida SMA, e W1 é o oscilador construído com base na janela triangular. Usando esses pesos, podemos obter os valores do indicador:
![]()
No gráfico, ele pode se parecer com o seguinte:

Obtivemos nosso primeiro sucesso. Agora, vamos tentar aprimorar o indicador. Por exemplo, consideremos um indicador com período igual a 24. Já sabemos como construir a onda triangular principal. Mas dentro desse período cabem duas ondas com período 12. Também teremos um número inteiro de ciclos para ondas com períodos 8, 6, 4 e 3. Vamos tentar adicionar essas ondas ao nosso indicador. Tudo o que precisamos fazer é ajustar levemente o cálculo dos coeficientes. Se o período da onda PW couber um número inteiro de vezes dentro do período do indicador, os valores dos coeficientes podem ser encontrados pela fórmula:
![]()
A normalização dos coeficientes, o cálculo dos pesos e do próprio indicador permanecem os mesmos.
Naturalmente, quanto mais ondas houver no indicador, melhor ele suavizará o preço. Porém, ondas com períodos menores são mais sensíveis ao ruído, e seu uso nem sempre é justificável. Por isso, adicionaremos ao indicador a opção de escolher a quantidade de ondas.

A principal vantagem desse indicador é o alisamento do preço. Além disso, ele pode revelar e destacar movimentos ondulatórios no preço, caso existam.

A principal desvantagem desse indicador também é o alisamento do preço. Todos os cálculos e construções do indicador são feitos em relação ao seu centro. Por isso, ele pode apresentar atraso. Vamos tentar eliminar essa desvantagem.
Ondas em forma de serra
Uma tendência surge quando uma direção do movimento do preço ganha vantagem sobre a outra. Por exemplo, o movimento do preço para cima ocorre com mais frequência e intensidade do que o movimento para baixo. Ou seja, uma tendência é sempre uma quebra de simetria. Consequentemente, para destacar uma tendência linear, precisamos de algo assimétrico e linear. A onda em forma de serra atende exatamente a esses requisitos.
Na verdade, as ondas em forma de serra já existem no terminal MetaTrader, mas... bem, estou me repetindo. Vamos pegar o indicador LWMA. Seus coeficientes podem ser calculados assim:
![]()
Ou seja, o indicador LWMA representa apenas um dente da serra. Um único dente não é suficiente, precisamos de mais. Portanto, os coeficientes da onda em forma de serra com período PW serão calculados assim:
![]()
Todos os outros cálculos permanecem os mesmos que nas ondas triangulares.
As ondas em forma de serra consideram qualquer movimento do preço como uma tendência. A primeira onda mostra a tendência geral. A segunda onda divide a tendência em 2 ou 3 partes (dependendo do período do indicador). As ondas seguintes dividem essas partes ainda mais. Pode-se dizer que o indicador constrói canais de tendência. E quanto mais próximas entre si estão as linhas do canal, mais forte é a tendência.

Esse indicador tem uma característica interessante. Se o número de ondas for par, o indicador suavizará a tendência, fazendo uma média. Com um número ímpar de ondas, o indicador buscará identificar a tendência com a máxima precisão possível.
Não há limite para a perfeição
Voltemos às ondas triangulares. Digamos que o período do indicador seja igual a 6. Ele inclui 2 ondas triangulares com período 3. Os coeficientes dessas ondas serão:
![]()
Dependendo de como os preços estão dispostos, essas ondas estarão direcionadas para cima ou para baixo. Vamos fazer pequenas mudanças no cálculo dos coeficientes para que ambas as ondas se tornem independentes uma da outra. Em vez de um único sistema de coeficientes, teremos dois:
![]()
![]()
Ou seja, separamos as duas ondas no tempo. Agora, a direção e o peso de cada onda não dependem mais da outra. Graças a essa separação, o indicador se tornará mais flexível e rastreará as mudanças de preço com maior precisão.
A mesma separação pode ser aplicada às ondas em forma de serra. Isso resulta em uma característica interessante: se duas ondas em forma de serra adjacentes estiverem direcionadas em sentidos opostos, elas formarão uma onda triangular.
Indicadores na forma de funções de janela são extremamente raros. E podemos recriar o indicador de ondas para que ele seja exibido como uma linha. Para isso, precisamos calcular apenas o último valor do indicador. Com essa abordagem, o trader não poderá avaliar quais fatores influenciaram o indicador, mas poderá ver o movimento do indicador aqui e agora.
O cálculo dos parâmetros das ondas ocorre como oscilações em torno de um valor médio. Se descartarmos essa média, poderemos construir um oscilador. Este oscilador somará ondas de diferentes períodos. A soma resultante mostrará em que direção e com que intensidade as ondas se desviam do valor médio do preço. Como resultado, obtivemos 2 novos indicadores.

Os indicadores adquiriram a aparência habitual. Mas deixaram de mostrar, propriamente, as ondas.
Estratégias de trading
Construímos os indicadores. Agora precisamos verificar sua adequação para o trading. Primeiro, vou utilizar uma estratégia simples, que é o cruzamento do indicador com o preço:
- se o preço cruzar a linha do indicador de baixo para cima, o Expert Advisor abrirá uma posição de compra e fechará todas as posições de venda;
- se o preço cruzar a linha do indicador de cima para baixo, o Expert Advisor abrirá uma posição de venda e fechará todas as posições de compra.
Apesar dessa abordagem simples, a estratégia parece bastante funcional.

Vamos modificar um pouco essa estratégia. Em vez do preço, utilizaremos os valores de outro indicador. Todas as demais regras permanecem as mesmas. A aplicação de diferentes métodos para destacar ondas e tendências pode afetar os resultados.

Para a próxima estratégia, vou explorar uma característica das funções de janela, que consiste na capacidade de reescrever todos os valores assim que um novo preço é recebido. Por exemplo, é possível que, na barra anterior, tenha ocorrido o cruzamento de duas funções de janela, mas ao abrir a nova barra esse cruzamento desapareça. Da mesma forma, o cruzamento pode não ocorrer na barra atual, mas sim mais adiante no histórico.
O EA acompanhará o cruzamento de dois indicadores ao longo de todo o gráfico e emitirá o sinal para abertura de posição independentemente de em qual barra esse cruzamento aconteceu. No entanto, com essa abordagem, os sinais podem apresentar atraso. Para evitar isso, incluirei um filtro. Os sinais serão considerados válidos apenas se o preço de abertura da posição for melhor que o anterior. Para posições de compra, o preço deverá ser inferior ao anterior; para posições de venda, superior. Parece um tanto arriscado, mas ainda assim vale a pena testar.

Essa estratégia precisa de um método adicional de encerramento das posições, como stop-loss, take-profit ou trailing stop. Assim, poderá apresentar resultados mais consistentes.
As ondas triangulares e as ondas em forma de serra podem identificar tendências. Com base nessa característica, construirei uma estratégia de trading com as seguintes regras:
- se o valor atual do indicador for menor que todos os anteriores, o EA abrirá uma posição de compra (buy);
- se o valor atual do indicador for maior que todos os anteriores, será aberta uma posição de venda (sell).
A estratégia parece simples, mas tem potencial.

Outra estratégia pode ser construída com base no oscilador. As regras dessa estratégia se fundamentam no princípio do retorno à média. As condições para abertura de posições de compra (buy) são as seguintes: a linha do oscilador atinge um mínimo local, e esse mínimo local está abaixo de um nível previamente definido. Para abertura de posições de venda (sell), a regra é que a linha do oscilador atinge um máximo local, e esse máximo está acima do nível definido.

As ondas triangulares e as ondas em forma de serra são ferramentas úteis da análise técnica. Elas podem ser utilizadas tanto como base para estratégias de trading quanto como filtros adicionais. Com sua ajuda, é possível identificar possíveis pontos de entrada e saída do mercado. No entanto, devem sempre ser aplicadas em conjunto com outros métodos de análise e com uma gestão de risco sensata.
Considerações finais
Assim, analisamos diferentes abordagens para o uso de ondas triangulares e ondas em forma de serra no trading. Desde o simples alisamento de preços até a criação de combinações complexas capazes de detectar movimentos ondulatórios e tendências. Infelizmente, em um único artigo é impossível abordar todas as formas de aplicação dessas ondas. O tema é vasto, mas você sempre pode explorá-lo mais a fundo. As perspectivas para o estudo das características e aplicações dessas ondas são bastante promissoras. Mesmo as estratégias mais simples, baseadas nelas, podem ser lucrativas, embora exijam refinamento e ajustes cuidadosos.
Durante a elaboração deste artigo, foram utilizados os seguintes programas:
| Nome | Tipo | Características |
|---|---|---|
| Wave | indicador |
O período mínimo para ondas triangulares é 3, e para ondas em forma de serra é 2. O número de ondas permite manter apenas os componentes de baixa frequência do sinal. |
| Wave Lin | indicador | Exibe apenas o valor mais recente conhecido das ondas. |
| Wave Osc | indicador | Calcula e soma apenas os pesos das ondas. |
| EA Wave | Expert Advisor | Estratégia simples baseada no cruzamento das linhas do indicador e do preço. |
| EA Wave 2 | Expert Advisor | Estratégia baseada no cruzamento de duas linhas do indicador nas duas últimas barras. |
| EA Wave 3 | Expert Advisor | Estratégia baseada no cruzamento de duas linhas do indicador em todas as barras. |
| EA Wave 4 | Expert Advisor | Estratégia baseada no alcance do máximo ou mínimo do valor mais recente do indicador. |
| EA Wave Osc | Expert Advisor | Estratégia que opera com base nos valores do oscilador. |
Traduzido do russo pela MetaQuotes Ltd.
Artigo original: https://www.mql5.com/ru/articles/17595
Aviso: Todos os direitos sobre esses materiais pertencem à MetaQuotes Ltd. É proibida a reimpressão total ou parcial.
Esse artigo foi escrito por um usuário do site e reflete seu ponto de vista pessoal. A MetaQuotes Ltd. não se responsabiliza pela precisão das informações apresentadas nem pelas possíveis consequências decorrentes do uso das soluções, estratégias ou recomendações descritas.
Algoritmo de Otimização de Força Central (Central Force Optimization, CFO)
Do básico ao intermediário: Classes (II)
Reimaginando Estratégias Clássicas (Parte 12): Estratégia de Breakout EURUSD
Introdução ao MQL5 (Parte 10): Um Guia para Iniciantes sobre como Trabalhar com Indicadores Embutidos no MQL5
- 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