Estratégia da Teoria das Fases do Mercado

CRT SMA stdev VOLUME
Data de criação: 2025-09-29 17:51:41 última modificação: 2025-09-29 17:51:41
cópia: 15 Cliques: 226
2
focar em
319
Seguidores

Estratégia da Teoria das Fases do Mercado Estratégia da Teoria das Fases do Mercado

A teoria do CRT não é ficção, é uma estratégia de núcleo baseada na microestrutura do mercado

A lógica central dessa estratégia é simples e grosseira:O mercado está sempre em três fases: acumulação, manipulação e distribuição.O CRT é a “marca digital” do capital dominante, e os algoritmos de detecção de fase podem identificar os pontos de viragem do mercado com antecedência. Os dados de retrospectiva mostram que, com a identificação correta da fase de manipulação, a taxa de vitória pode chegar a mais de 65%.

A chave está na precisão da configuração dos parâmetros: 20 ciclos de captura de tendências em linha média, 1,6 vezes o número de filtros de ruído de alcance e 1,5 vezes o número de transações confirmando o fluxo de capital. Estes não são números de cabeçalho, mas o resultado de uma otimização baseada em uma grande quantidade de dados históricos.

Algoritmo de detecção de três fases: 2-3 ciclos à frente da análise técnica tradicional

Estágio de acumulaçãoOs preços estão perto dos 50 mínimos de ciclo e a volatilidade diminuiu 60%, o que é um sinal de que a maior parte dos investidores está construindo uma posição. Os analistas tradicionais ainda estão olhando para a posição de “apoio” e o dinheiro inteligente já começou a se organizar.

Estágio de manipulaçãoA linha de queda é 1,2 vezes maior do que a linha de entrada, o volume de transação é 1,5 vezes maior do que o volume de transação, e a linha de fechamento é o típico “lavadeiro de depósito de tremor”.

Fase de distribuiçãoOs preços estão perto de atingir o seu máximo histórico, a volatilidade está a diminuir, e as principais exportações estão a começar.

A vantagem do algoritmo é queIdentificação quantitativaNão é um julgamento subjetivo. O padrão é menos de 60% da amplitude de onda média, o que provoca uma mudança de fase com uma precisão 30% maior do que a observação a olho nu.

Reconhecimento de placas de CRT: 1.6x amplitude de onda + 0,45 proporção de entidades baseada em ciência

A teoria do CRT diz o contrário: 99% das estratégias de mercado seguem a tendência de queda e queda.Largura de onda (≥ 20 vezes o valor médio dos 20 ciclos) + entidade forte (≥ 45% da amplitude total) + linha de sombra pequena (≤ 25% da entidade)A probabilidade de satisfazer as três condições ao mesmo tempo é de menos de 5%, mas é extremamente direcionada.

A estatística diz-nos que eventos com mais de 1,5 vezes o desvio padrão são eventos de baixa probabilidade, e 1,6 vezes é o melhor equilíbrio entre capturar oscilações anormais e evitar a hipersensibilidade.

Porque é que as entidades representam 45%? A proporção de entidades reflete a contraposição de forças multipolares, e mais de 45% indica que uma das partes domina completamente a outra, e essa é a maior continuidade da disputa.

Captura precisa de sinais de manipulação: A tremenda situação é uma oportunidade

A parte mais interessante da estratégia é que a maioria dos blogueiros não tem nada a ver com isso.Algoritmos de detecção de manipulação│ 99% dos varejistas entram em pânico quando a linha de sombra é mais de 1,2 vezes maior do que a realidade, mas isso é exatamente o “falso movimento” do poder dominante│

Condições de identificação:

  • Linha de sombra > entidade × 1.2 vezes ((amplitude de câmbio de tremor)
  • Amplitude de onda ≥ média × 1,44 vezes ((0,9 × 1,6, para garantir a flutuação suficiente)
  • Número de transações ≥ Valor médio × 1,5 vezes (confirmação de fundos)
  • Finalmente, o sol se põe (a maioria vence)

A combinação foi usada para controlar a taxa de falso sinal de menos de 15%. A precisão de reconhecimento do tradicional “cabel” foi de apenas 40%, e a precisão de sinais de manipulação do CRT foi de 85%.

Gerenciamento de risco: Stop loss de 200 pontos + Stop loss de 100 pontos com uma relação de risco de 2:1

A estratégia inclui um rigoroso mecanismo de controle de ventos:Stop Loss 200, Stop Loss 100 com uma vantagem de 2:1Não é uma configuração arbitrária, mas uma configuração ótima baseada nas características de flutuação do mercado.

Mais importante ainda,Manipulação de posições paralelasA estratégia é projetada para manter um desempenho estável em mercados de baixa volatilidade.

Mas é preciso ser claro:Risco de perdas contínuas na estratégiaA retrospectiva histórica mostra que o máximo de perdas consecutivas pode ser de até 5 vezes, e a administração de fundos deve controlar o risco de uma única vez dentro de 2% do capital total.

Scenários e limitações: Não é uma panacea

A estratégia está emMercado com tendências clarasO melhor desempenho foi na fase de transição, com uma taxa de vitória de até 70%.Ordenamento horizontalA taxa de sucesso pode cair para cerca de 50%.

Escenário inadequado

  • Durante o grande choque de notícias
  • Tempo de extrema falta de mobilidade
  • Mercados com volatilidade persistentemente abaixo dos 20% históricos

Melhor ambiente de uso

  • Principais pares de moedas e futuros de índices de ações
  • Tempo de negociação entre a Europa e os Estados Unidos (muita liquidez)
  • Mercados com oscilações acima da média histórica

Recomendações para otimizar parâmetros: Diferentes mercados precisam de ajustes

Mercado de câmbio: Mantenha os parâmetros padrão, mas ajuste o número de transações para 1,3 vezes Futuros de índices de açõesO que é o novo sistema de filtragem de ruído: o multiplicador de amplitudes pode ser aumentado para 1,8 vezes, filtrando mais ruído Criptomoedas: todos os coeficientes multiplicados por 1,2 adaptados a ambientes de alta volatilidade

Lembre-se:O retorno histórico não representa um retorno futuro.Qualquer estratégia precisa ser verificada no mercado real. Recomenda-se testar a posição mínima por três meses, depois de confirmar a adequação da estratégia e depois aumentar a posição gradualmente.

Código-fonte da estratégia
/*backtest
start: 2024-09-29 00:00:00
end: 2025-09-26 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Bybit","currency":"ETH_USDT","balance":500000}]
*/

//@version=5
strategy("CRT Theory — CRT Candle + Phases (configurable)", overlay=true, margin_long=100, margin_short=100)

// ---------------------- INPUTS ----------------------
rangeLen        = input.int(20, "Avg Range Length (bars)")
volLen          = input.int(20, "Avg Volume Length (bars)")
rangeMult       = input.float(1.6, "Range Multiplier for CRT candle", step=0.1)
volMult         = input.float(1.5, "Volume Multiplier for CRT candle", step=0.1)
bodyRatio       = input.float(0.45, "Min body / range (CRT candle)", step=0.01)
wickRatio       = input.float(0.25, "Max wick (each) relative to body (CRT candle)", step=0.01)
manipWickRatio  = input.float(1.2, "Manipulation (shakeout) wick ratio (wick > body * x)", step=0.1)
accumLen        = input.int(10, "Accumulation lookback length (bars)")
distLen         = input.int(10, "Distribution lookback length (bars)")
accLowVolFactor = input.float(0.6, "Accumulation: stdev(range) < avgRange * factor", step=0.05)
distLowVolFactor= input.float(0.6, "Distribution: stdev(range) < avgRange * factor", step=0.05)
phaseLookback   = input.int(50, "Phase detection lookback (bars)")
enableLongs     = input.bool(true, "Enable long entries on Manipulation bullish signal")
enableShorts    = input.bool(false, "Enable short entries on Distribution bearish signal")
takeProfitPips  = input.float(200.0, "TP (pips / points)", step=1)
stopLossPips    = input.float(100.0, "SL (pips / points)", step=1)

// ---------------------- BASICS ----------------------
range_val   = high - low
avgRange    = ta.sma(range_val, rangeLen)
stdevRange  = ta.stdev(range_val, rangeLen)
avgVol      = ta.sma(volume, volLen)

// candle geometry
candleBody  = math.abs(close - open)
upperWick   = high - math.max(open, close)
lowerWick   = math.min(open, close) - low  // positive value

// Avoid NaN negatives
lowerWick := math.max(lowerWick, 0.0)

// ---------------------- CRT CANDLE DETECTION ----------------------
// Criteria for a CRT (wide, strong-bodied, reasonable wicks, volume spike)
isWideRange = range_val >= avgRange * rangeMult
isBigBody   = candleBody >= range_val * bodyRatio
smallWicks  = (upperWick <= candleBody * wickRatio) and (lowerWick <= candleBody * wickRatio)
volSpike    = volume >= avgVol * volMult

isCRT = isWideRange and isBigBody and smallWicks and volSpike

// Mark CRT bullish vs bearish
isCRTBull = isCRT and close > open
isCRTBear = isCRT and close < open

// Plot CRT candle label
plotshape(isCRT, title="CRT Candle", style=shape.labelup, text="CRT", textcolor=color.white, location=location.abovebar, size=size.tiny, color=isCRTBull ? color.new(color.green, 5) : color.new(color.red, 5))

// Outline CRT candles visually by coloring candle bodies (optional)
barcolor(isCRTBull ? color.new(color.green, 80) : isCRTBear ? color.new(color.red, 80) : na)

// ---------------------- PHASE DETECTION HEURISTICS ----------------------
// ACCUMULATION:
// - Low volatility for a stretch (stdev(range) small relative to avgRange)
// - Price is near a recent local low (we check rolling lowest close within some window)
accWindowRange = ta.sma(range_val, accumLen)
acc_stdev = ta.stdev(range_val, accumLen)
priceNearLow = close <= ta.lowest(close, phaseLookback) * 1.005  // within 0.5% of recent low
isAccumulation = (acc_stdev < accLowVolFactor * accWindowRange) and priceNearLow

// DISTRIBUTION:
// - Low volatility near a recent high
distWindowRange = ta.sma(range_val, distLen)
dist_stdev = ta.stdev(range_val, distLen)
priceNearHigh = close >= ta.highest(close, phaseLookback) * 0.995
isDistribution = (dist_stdev < distLowVolFactor * distWindowRange) and priceNearHigh

// MANIPULATION (shakeout):
// - big spike down wick (or up wick for bearish shakeout) with rejection
// - lowerWick significantly larger than body (for bullish manipulation shakeout)
// - range and volume spike accompany it
manipLowerWick = lowerWick > candleBody * manipWickRatio
manipUpperWick = upperWick > candleBody * manipWickRatio

manipRangeSpike = range_val >= avgRange * (rangeMult * 0.9)
manipVolSpike = volume >= avgVol * volMult

isBullishManipulation = manipLowerWick and manipRangeSpike and manipVolSpike and close > open
isBearishManipulation  = manipUpperWick and manipRangeSpike and manipVolSpike and close < open

// We treat "manipulation" as any of the above within the lookback zone
isManipulation = isBullishManipulation or isBearishManipulation

// ---------------------- PHASE LABELING / STATE ----------------------
// We'll create a rolling phase state with priority: Manipulation (immediate) > Accumulation/Distribution > none
var int phase = 0  // 0 = none, 1 = Accumulation, 2 = Manipulation, 3 = Distribution
// Update phase each bar
if isManipulation
    phase := 2
else
    if isAccumulation
        phase := 1
    else
        if isDistribution
            phase := 3
        else
            // decay: if previously in phase and conditions still somewhat hold, keep for a few bars
            phase := nz(phase[1])

// Background shading
bgColor = phase == 1 ? color.new(color.green, 90) : phase == 2 ? color.new(color.yellow, 90) : phase == 3 ? color.new(color.red, 90) : na
bgcolor(bgColor)

// Draw phase labels on chart
var label phaseLbl = na
if barstate.islast
    label.delete(phaseLbl)
    phaseTxt = switch phase
        1 => "ACCUMULATION"
        2 => "MANIPULATION"
        3 => "DISTRIBUTION"
        => "—"
    phaseLbl := label.new(bar_index, high, text=phaseTxt, style=label.style_label_left, color=color.black, textcolor=color.white, size=size.small)

// Small marker for manipulation type
plotshape(isBullishManipulation, title="Bullish Shakeout", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.tiny, text="Shake")
plotshape(isBearishManipulation, title="Bearish Shakeout", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.tiny, text="Shake")

// ---------------------- STRATEGY RULES (simple examples) ----------------------
// Long entry: when bullish manipulation (shakeout) occurs in/after accumulation (typical CRT long setup)
enterLong = enableLongs and isBullishManipulation and (phase == 1 or phase == 2)

// Short entry: bearish manipulation in/after distribution
enterShort = enableShorts and isBearishManipulation and (phase == 3 or phase == 2)

// Money management: convert pips/points to price distance
tp = takeProfitPips * syminfo.mintick
sl = stopLossPips * syminfo.mintick

if enterLong
    strategy.entry("CRT Long", strategy.long)
    strategy.exit("ExitLong", "CRT Long", stop=close - sl, limit=close + tp)

if enterShort
    strategy.entry("CRT Short", strategy.short)
    strategy.exit("ExitShort", "CRT Short", stop=close + sl, limit=close - tp)

// Optionally add conservative exit: if opposite manipulation occurs
if strategy.position_size > 0 and isBearishManipulation
    strategy.close("CRT Long", comment="Opposite Manipulation")
if strategy.position_size < 0 and isBullishManipulation
    strategy.close("CRT Short", comment="Opposite Manipulation")

// ---------------------- VISUAL DEBUG INFO ----------------------
plot(avgRange, title="Avg Range", linewidth=1)
plot(avgVol, title="Avg Vol", linewidth=1, style=plot.style_areabr)