Tabela de conteúdos

Medidor de Agressão

Download

Resumo

📋 Descrição

Indicador que mede a agressão compradora contra vendedora usando dados reais de fluxo de ordens (AgressionVolBuy, AgressionVolSell) com a lógica de normalização do Chaikin Money Flow.

O resultado é um oscilador normalizado entre −1 e +1 que indica acumulação ou distribuição, similar ao CMF, mas com dados de agressão real em vez de estimativas baseadas em preço.

💡 Agressão vs Pressão: Agressão mede quem está executando ordens a mercado (takers). Pressão mede ordens limitadas no book (makers). Este indicador foca na agressão.

🎯 Chaikin Money Flow (CMF)

O CMF mede se o dinheiro está entrando ou saindo de um ativo:

<br>

Formula Original (Profitchart)

// Money Flow Multiplier (MFM) - onde o preco fechou dentro do range
MFM := ((Fechamento - Minima) - (Maxima - Fechamento)) / (Maxima - Minima);
 
// Chaikin Money Flow - MFM ponderado pelo volume
CMF := Summation(MFM * Volume, Periodo) / Summation(Volume, Periodo);
 
// Ou simplesmente:
CMF := ChaikinMoneyFlow(21);
O MFM varia de −1 (fechou na minima) a +1 (fechou na maxima). Quando ponderado pelo volume, indica se o dinheiro “inteligente” esta acumulando ou distribuindo.

<br>

Nossa Adaptação

Em vez de usar o MFM (aproximação pela posição do fechamento), usamos dados reais de agressão:

// Delta e Volume de Agressao
Delta := AgressionVolBuy - AgressionVolSell;
VolTotal := AgressionVolBuy + AgressionVolSell;
 
// CMF com dados reais
CMF_Real := Summation(Delta, Periodo) / Summation(VolTotal, Periodo);

<br>

Por que é melhor?

Resultado: mesma interpretação, dados mais precisos.


💻 Código NTSL

// ============================================
// MEDIDOR DE AGRESSÃO (CMF COM DADOS REAIS)
// Normaliza dados de agressão usando lógica do Chaikin
// ============================================
 
parametro
  Periodo(21);           // Período de acumulação (como CMF)
  NivelExtremo(0.10);    // Nível para considerar agressão extrema
 
var
  volTotal, delta, cmfReal : real;
  somaDelta, somaVolume : real;
 
inicio
  // ========== DADOS DE AGRESSÃO ==========
  volTotal := AgressionVolBuy + AgressionVolSell;
  delta := AgressionVolBuy - AgressionVolSell;
 
  // ========== CMF COM AGRESSÃO REAL ==========
  somaDelta := Summation(delta, Periodo);
  somaVolume := Summation(volTotal, Periodo);
 
  se (somaVolume > 0) entao
    cmfReal := (somaDelta / somaVolume)
  senao
    cmfReal := 0;
 
  // ========== PLOTAGEM ==========
  se (cmfReal >= 0) entao
    SetPlotColor(1, clVerdeLimao)
  senao
    SetPlotColor(1, clVermelho);
 
  Plot(cmfReal);
 
  // Linhas de referência
  Plot2(0);               // Linha zero
  Plot3(NivelExtremo);    // Nível extremo compra
  Plot4(-NivelExtremo);   // Nível extremo venda
 
fim;

🔍 Como Interpretar

CMF Real (Histograma)

Zona Valor Interpretação
🟢 Acumulação Forte > +0.10 Compradores dominando agressivamente
🟢 Acumulação +0.05 a +0.10 Agressão compradora moderada
Neutro -0.05 a +0.05 Equilíbrio entre compradores e vendedores
🔴 Distribuição -0.10 a -0.05 Agressão vendedora moderada
🔴 Distribuição Forte < -0.10 Vendedores dominando agressivamente
⚠️ Nota sobre calibração: Os valores acima são referências iniciais. Cada ativo e timeframe pode ter comportamentos diferentes. Observe o histórico do seu ativo para ajustar o parâmetro NivelExtremo conforme necessário.

📊 Divergências (Sinal Avançado)

Preço CMF Real Interpretação
⬇️ Caindo 🟢 Subindo Absorção/Acumulação - possível reversão para alta
⬆️ Subindo 🔴 Caindo Distribuição - possível reversão para baixa

Vídeos


➕ Mais informações

🗃️ ScApp_MedidorAgressao.psf

📽️ Video explicativo