Fair Value Gap Scalper Strategy
Criado 02 jun 2024
·
Atualizado 05 abr 2025
A Estratégia Fair Value Gap Scalper é uma estratégia mecânica Premium para a plataforma NinjaTrader 8. A estratégia pode ser usada para passar desafios de avaliação de propfirms.
Pré-requisitos
Para usar corretamente esta estratégia, deves ter os seguintes pré-requisitos disponíveis.
- NinjaTrader 8, com qualquer tipo de licença. Clique aqui para transferir
- Uma conta automated-trading.ch com um ativo Subscrição Premium
Aviso Importante
Recomendamos fortemente que nunca executes os teus sistemas de trading algorítmico com dinheiro real ganhado com dificuldade. Deves sempre minimizar o teu risco e executar as tuas estratégias em programas de financiamento de traders, de modo que o montante máximo que corre o risco de perder seja a taxa de subscrição mensal que pagas a esses programas.
Esta estratégia tem duas configurações de entrada, ambas baseadas em confluência entre Fair Value Gaps num timeframe superior e num timeframe inferior.
A estratégia analisa dois timeframes simultaneamente, procurando entradas baseadas em Fair Value Gaps que ocorrem em ambos. Os dois timeframes devem ser do mesmo tipo — ambos baseados em tempo, ou ambos baseados em intervalo, ou ambos baseados em tick, etc. A estratégia é executada no timeframe inferior (mais rápido), enquanto o timeframe superior (mais lento) é selecionado como parâmetro — por exemplo, executar num timeframe de 30 segundos como timeframe inferior enquanto o timeframe de 5 minutos é definido como timeframe superior.
Aqui está o algoritmo que a estratégia usa para encontrar entradas:
- A estratégia procura um Fair Value Gap no timeframe superior.
-
Uma vez que esse FVG ocorre, a estratégia reage a um de dois resultados possíveis:
- O preço se afasta do FVG de timeframe superior sem recuar e retestá-lo — o FVG é considerado inválido, e a estratégia retoma a procura de outro no timeframe superior.
- O preço retesta o FVG de timeframe superior e outro FVG então ocorre no timeframe inferior — a estratégia entra longo ou curto de acordo com o tipo desse FVG.
Uma variação desta configuração, o modo de entrada HTF Pullback, não requer o segundo FVG de timeframe inferior para entrar numa operação: uma vez que o preço recua e retesta o FVG de timeframe superior, uma operação é inserida assim que uma barra de preço fecha acima (para uma longa) ou abaixo (para uma curta) da zona FVG de timeframe superior.
Exemplos de Configuração de Entrada
Vejamos alguns exemplos de gráfico. Estes exemplos não se destinam a mostrar que a estratégia gera lucro — as operações foram intencionalmente selecionadas à mão para ilustrar as configurações de entrada claramente, sem confusão. Ao executar a estratégia tu mesmo, verás que muitas das mesmas configurações também levam a operações perdedoras — essa é a realidade da negociação, e o objetivo deve ser rentabilidade esperada no longo prazo apesar de algumas perdas individuais.
Exemplo #1: HTF Pullback + Entrada LTF FVG em MES
A estratégia executa no timeframe de 1 minuto no instrumento MES, com o timeframe superior definido para 15 minutos. Após um Fair Value Gap se formar no timeframe superior, a estratégia espera por um FVG no timeframe inferior. Assim que esse FVG de timeframe inferior fecha, uma operação longa é aberta, com o stop loss definido na borda inferior da zona FVG de timeframe superior e um take profit de 2:1. O preço mais tarde retornou ao timeframe superior e fez um segundo reteste, seguido por outro FVG de timeframe inferior confirmando uma segunda entrada.
Aqui está um segundo exemplo similar:
Exemplo #2: Entrada HTF Pullback Apenas em MES
Executando em MES no timeframe de 1 minuto com o timeframe superior definido para 15 minutos, e o modo de entrada definido para HTF Pullback. O preço recuou numa zona FVG de timeframe superior anteriormente formada, depois uma barra de preço fechou acima do nível de preço superior do FVG, acionando uma entrada longa. O stop loss foi definido para o nível inferior do FVG, e o take profit foi 2:1.
Exemplo #3: Modo Inverso num Pullback FVG de Timeframe Superior
Este exemplo demonstra a lógica de entrada invertida. Como no exemplo anterior, o preço recuou e retestou um FVG de timeframe superior e fechou acima dele com uma vela altista — mas com o parâmetro Invert Entries assinalado, a estratégia entrou curto em vez de longo, e os níveis de stop loss e take profit foram invertidos junto com ele: o take profit foi definido para a borda FVG inferior, e o stop loss foi calculado com uma relação de ganho/perda 1:1. Esta lógica invertida é útil em regimes de mercado entrecortados.
Exemplo #4: Sem Entrada, o Preço se Afasta do FVG de Timeframe Superior
Este exemplo ilustra o caso onde, após um FVG se formar no timeframe superior, o preço se afasta dele sem um recuo ou reteste — marcando o FVG como inválido e não produzindo comércio.
Funcionalidades
A estratégia FVG Scalper tem um conjunto de funcionalidades únicas:
- Nenhuma ordem pendente é colocada — apenas ordens de mercado
- Estratégia totalmente automática que pode ser dimensionada em múltiplas instâncias
- Capacidades precisas de backtesting seguindo as melhores práticas oficiais do NinjaTrader, alcançando backtesting de entrada/saída preciso no nível de tick
- Uma biblioteca robusta de gestão de encomendas em casa, resistente à perda de conexão, que funciona perfeitamente em contas Rithmic ou contas de corretagem NinjaTrader
Quantidade Dinâmica e Gestão de Risco
Como todas as nossas estratégias, esta implementa dois métodos para definir a quantidade de posições abertas:
- Quantidade Fixa: utiliza a mesma quantidade para cada posição. Se o stop loss variar entre posições, os montantes de ganho/perda também variarão.
- Quantidade Ajustada ao Risco Dinâmico: calcula a quantidade de cada posição a partir do seu stop loss, do risco máximo (em $) permitido por posição e da quantidade máxima permitida — produzindo montantes iguais de ganho/perda em todas as posições, independentemente da largura do stop loss.
Gestão de Posição
Como todas as nossas estratégias, esta implementa múltiplos métodos de gestão de posição:
- Estratégia ATM: delega completamente a gestão de posição à tua própria estratégia ATM, selecionada de um menu suspenso.
- Dollar Cost Averaging (Grid): aumenta a quantidade da posição conforme o preço se move contra ela, trazendo o preço de entrada médio mais perto do preço atual e visando fechar a posição em breakeven numa retração.
- Stop Trailing Clássico: acompanha o stop loss com base num gatilho e numa quantidade de acompanhamento.
A estratégia também permite definir o stop loss com base em múltiplas estratégias e o take profit com base numa relação — consulta a secção Parâmetros para detalhes.
Gestão de Conta
A estratégia implementa gatilhos de parada de negociação diária com base na contagem líquida de posições vencedoras, na contagem líquida de posições perdedoras, ou num alvo de lucro realizado líquido ou perda líquida.
Parâmetros
Tentamos manter os parâmetros ao mínimo — apenas os mais importantes estão expostos.
| Geral | |
| Execute Historical Trades | Permite executar operações quando a estratégia é executada em modos Histórico, Backtest ou Otimização — deve estar desmarcado ao executar ao vivo. |
| Daily TakeProfit Target | A estratégia para no dia uma vez que este montante diário de take-profit é atingido. Ignorado quando definido como 0. |
| Daily StopLoss Limit | A estratégia para no dia uma vez que o limite de perda diária é atingido (valor positivo — por exemplo 300 para a negociação uma vez que PnL realizado ≤ -$300). Ignorado quando definido como 0. |
| Stop @ Daily Winning Count | Para de negociar no dia uma vez que a contagem de operações vencedoras em rede atinge este valor. Ignorado quando definido como 0. |
| Stop @ Daily Losing Count | Para de negociar no dia uma vez que a contagem de operações perdedoras em rede atinge este valor. Ignorado quando definido como 0. |
| Render Opacity (1-100) | Opacidade utilizada para renderizar objetos no gráfico. Um valor de 20 é recomendado. |
| Execute on Different Instrument | Executa operações num instrumento diferente do gráfico ativo — por exemplo, executar lógica em Minis mas executar em Micros para melhor gerir o risco. Todos os cálculos de risco acontecem no instrumento de execução, e as operações num instrumento diferente não são desenhadas no gráfico. |
| Execution Instrument | Escolhe de uma lista de Micros disponíveis na tua conexão NinjaTrader como o instrumento em que as operações são executadas. Operações históricas e ao vivo não serão desenhadas no gráfico neste caso. |
| Estrutura de Mercado | |
| Higher TimeFrame | Seleciona o timeframe superior em que a análise de configuração de entrada é executada. Deve ser superior a, e do mesmo tipo que, o timeframe do gráfico ativo — por exemplo, não podes selecionar um timeframe superior baseado em Ticks enquanto o gráfico está num timeframe baseado em Minutos. |
| Higher TimeFrame Period | Define o período do timeframe superior. |
| Draw Higher Timeframe Candles | Ativa o desenho (sobreposição) de velas de timeframe superior no topo do gráfico ativo. |
| Swings Period | Também conhecida como Swing Sensitivity. Após cada fechamento de barra, uma oscilação (um máximo mais alto, mínimo mais alto, máximo mais baixo, ou mínimo mais baixo) pode ser detectada, e uma barra seguinte ainda pode cancelá-la formando uma nova oscilação do mesmo tipo — este parâmetro define quantas barras devem separar dois oscilações do mesmo tipo. Aumentar-lo diminui o número geral de oscilações detectadas; diminuir-lo aumenta-as. Valores comuns são 3, 6 ou 12. |
| Ignore FVG Older Than (X) Days | Filtra FVGs mais antigos que este número de dias da lógica de entrada. Esses FVGs ainda são desenhados, mas não gerarão operações. |
| Configuração de Entrada | |
| Time Zone |
O fuso horário utilizado para o parâmetro Trade Time abaixo. Os mercados de futuros operam na hora do Leste americano (EST), pelo que isto permite especificar o intervalo de negociação relativo ao fuso horário da tua máquina.
|
| Trade Time |
Especifica os intervalos de tempo durante os quais a estratégia tem permissão para colocar operações. Alguns exemplos:
|
| Quantity Strategy |
|
| Max Qty | Quantidade máxima permitida quando Ajustada ao Risco é selecionada — útil uma vez que algumas propfirms aplicam limites de quantidade de encomenda que podem invalidar uma conta. |
| Invert Entries | Inverte entradas de longo para curto e vice-versa. Stop loss, take profit e risco são todos calculados primeiro sem lógica de inversão, depois o tipo de comércio é invertido no último passo — portanto, o stop loss torna-se o take profit e vice-versa, e o risco é invertido em conformidade (por exemplo, um take profit de 2:1 torna-se um take profit de 1:2, aumentando o risco). Leva isto em conta antes de ativá-lo. |
| Long/Short Entry Mode |
Útil se já tiveres uma tendência direcional e quiseres restringir a negociação a uma direção.
|
| Trade Entry Mode |
|
| Order Qty | Utilizado apenas quando Quantity Strategy é Fixa — a quantidade fixa por comércio (e por aumento de quantidade, se o mecanismo de gestão de encomendas se dimensiona). Normalmente 1 ou 2. |
| Higher TF Invalidate Setup Points | Até que ponto, em pontos, o preço deve se afastar do FVG de timeframe superior para invalidar e repor a configuração de entrada ativa atual. |
| Previous Swing Breakout Filter | Ativa um filtro de entrada comparando o preço atual ao máximo/mínimo da vela de timeframe superior anterior — requerendo preço acima dele para uma entrada longa, ou abaixo para uma entrada curta. Isto pode melhorar a qualidade do comércio apenas negociando na direção de um breakout de timeframe superior. |
| Fair Value Gap | |
| Type of Min. Gap for HTF |
O tipo de medição para o gap mínimo de timeframe superior.
|
| Min. Gap for HTF | O gap mínimo para considerar um FVG no timeframe superior — por exemplo, definir para 10 com o tipo Pontos, FVGs com um gap inferior a 10 pontos são filtrados. |
| Max. Gap (Points) for HTF | O gap máximo para considerar um FVG no timeframe superior — por exemplo, definir para 50, FVGs com um gap superior a 50 pontos são filtrados. |
| Type of Min. Gap for LTF |
O tipo de medição para o gap mínimo de timeframe inferior.
|
| Min. Gap for LTF | O gap mínimo para considerar um FVG no timeframe inferior — mesma lógica de filtragem que o equivalente de timeframe superior. |
| Max. Gap (Points) for LTF | O gap máximo para considerar um FVG no timeframe inferior — mesma lógica de filtragem que o equivalente de timeframe superior. |
| Gestão de Encomenda | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Apenas utilizado com o método de gestão de encomenda Estratégia ATM — o nome exacto do modelo da tua estratégia ATM personalizada. Deve corresponder a um modelo existente, ou nenhuma posição será aberta. |
| On Opposite Signal |
|
| Enable Price Breakeven | Ativa/desativa o mecanismo de breakeven baseado em preço. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Disponível se breakeven baseado em preço está ativado — o valor de disparo necessário para mover o stop loss para breakeven. |
| Enable Time Breakeven | Ativa/desativa o mecanismo de breakeven baseado em tempo (em minutos). |
| Breakeven Time Trigger | Disponível se breakeven baseado em tempo está ativado — o valor de disparo, em minutos, necessário para mover o stop loss para breakeven. |
| StopLoss Strategy |
|
| TakeProfit Strategy |
|
| Target Risk Per Trade ($) | Risco máximo, em dólares, por posição — utilizado antes de abrir uma operação para verificar que o stop loss calculado respeita este limite (caso contrário, a operação é ignorada), e também utilizado para calcular quantidade quando a estratégia de quantidade é dinâmica. |
| Max Allowed Risk Per ($) | Apenas utilizado com quantidade ajustada ao risco — controla até que ponto o risco real calculado pode desviar do Target Risk (uma vez que uma correspondência exacta é raramente possível; por exemplo, um alvo de risco de $250 pode calcular uma quantidade de 3, produzindo um risco real de $257). |
| Stop Loss Points | Disponível quando a estratégia Stop Loss está definida como Pontos. |
| Take Profit Currency | O montante de take-profit em dólares, utilizado quando a estratégia Fixed Currency Value é selecionada. |
| Take Profit Points | Disponível quando a estratégia Take Profit está definida como Pontos. |
| Scale out % Qty at % Target | Fecha uma percentagem da quantidade da posição uma vez que o preço atinge uma percentagem do alvo de lucro (arredondado para baixo quando fracionário — por exemplo 50% de uma posição de 5 contratos fecha 2 contratos). |
| Scale out at % Target | A percentagem do alvo de lucro que dispara o mecanismo de scale-out. |
| Scale out % Qty | A percentagem da quantidade fechada pelo mecanismo de scale-out. |
| Parâmetros DCA (Grid) | |
| Breakeven Profit Shift | Utilizado com o método de gestão de posição DCA — adiciona um pouco de lucro à definição de breakeven, útil para cobrir custos de comissão ao fechar a grelha em breakeven. |
| Grid Size to Breakeven | Utilizado com o método de gestão de posição DCA — o número de aumentos de encomenda necessários antes da posição poder ser fechada em breakeven. |
| Min Grid Gap (Point) | Utilizado com o método de gestão de posição DCA — o gap mínimo, em pontos, necessário entre duas encomendas de grelha. |
| Bar Close Trigger | Utilizado com o método de gestão de posição DCA — as encomendas de grelha abrem no fechamento da barra na direção do comércio. |
| Parâmetros de Stop Trailing | |
| Trailing Stop Strategy |
Utilizado com o método de gestão de posição Classic Trail Stop.
|
| Trailing Stop Trigger | Utilizado com o método Classic Trail Stop — o gatilho (em pontos ou relação). |
| Trail Amount | Utilizado com o método Classic Trail Stop — o montante (em pontos ou relação) acompanhado uma vez que o gatilho é acionado. |
| Botões de Comando | |
A estratégia expõe botões de comando manual no painel Chart Trader — certifica-te de que está exibido no teu gráfico ativo.![]() | |
| Botões Arm/Disarm | Ativa/desativa manualmente a entrada de operações longas ou curtas — útil se tiveres uma tendência direcional ou convicção. |
| Botão de Fechar Posição | Flattens imediatamente a posição no instrumento ativo sem reiniciar a estratégia, que continua procurando novas operações depois. |
| Botão Aumentar Qty | Aumenta a quantidade da posição ativa atual pelo montante definido em Order Qty — útil para fazer média de custos de dólar manualmente, ou adicionar a uma posição vencedora. |
| Botão Set Breakeven | Move o stop loss da posição aberta para breakeven, se o fizer melhoraria. |
Relatórios de Desempenho
Resultados anteriores não são uma garantia de resultados futuros. Todos os resultados de backtesting são apenas para fins indicativos.
Nenhum relatório de desempenho foi carregado para esta estratégia ainda.
Instruções de Transferência e Instalação
Requisitos de Licença
Em automated-trading.ch podes optar por comprar uma subscrição mensal para utilizar os nossos produtos Premium, ou utilizar os nossos produtos gratuitos sem te subscreveres.
Em ambos os casos, precisas de criar uma conta para obter uma Licença que possas utilizar tanto para produtos Premium como gratuitos.
Para obteres a tua licença, simplesmente inscreve-te e depois obtém a tua licença em a página de faturação.
Transferência
Também podes transferir esta estratégia — e todas as outras estratégias ou indicadores automated-trading.ch — em qualquer altura a partir da tua página centralizada de Transferências.
Passos de Instalação
Perguntas Frequentes
Geral
Faturação
Céticos
Notas de Versão
- Bug Fix: Error when using ATM Strategy
- Fixed Entry bug making entry in only one direction; Various code optimizations; Added Decrease quantity button
- Complete makeover with new parameters added/removed
- Bug Fix on bearish FVG detection
- Added possibility to execute trades on micro instruments
- Fixed Take Profit value when in Points mode; Fixed very critical error on short FVG+FVG entries; Added FVG filter as new parameter
- Fixed installation issue
- First Release of the strategy
