Aula 9: Machine Learning para Inferência Causal no Mercado Financeiro

Aula 9: Machine Learning para Inferência Causal

Aplicações no Mercado Financeiro Brasileiro

Objetivos de Aprendizagem

  • Compreender como os métodos de Machine Learning podem ser adaptados para inferência causal
  • Explorar técnicas de estimação de efeitos heterogêneos de tratamento
  • Aprender a implementar modelos de Causal Forest e Double/Debiased Machine Learning
  • Analisar aplicações destas técnicas em questões relevantes do mercado financeiro brasileiro

1. A Intersecção entre Machine Learning e Inferência Causal

Nesta aula final, exploraremos como as técnicas de Machine Learning (ML) podem ser adaptadas para abordar questões causais. Tradicionalmente, ML focava em previsão e classificação, enquanto a econometria causal concentrava-se na estimação de parâmetros interpretáveis. Hoje, estas áreas estão convergindo, combinando o poder preditivo do ML com o rigor da inferência causal.

Desafios Tradicionais da Inferência Causal

Até aqui, estudamos métodos "clássicos" de inferência causal que enfrentam alguns desafios:

  • Alta dimensionalidade: Dificuldade em lidar com muitas covariáveis potencialmente relevantes
  • Especificação do modelo: Necessidade de especificar corretamente a forma funcional
  • Heterogeneidade de efeitos: Capturar como o efeito do tratamento varia entre diferentes subgrupos
  • Seleção de covariáveis: Identificar quais variáveis incluir como controles

Os métodos de ML causal foram desenvolvidos para abordar estes desafios, combinando flexibilidade na modelagem com garantias para inferência causal.

A Convergência de Machine Learning e Inferência Causal Machine Learning Inferência Causal ML Causal • Flexibilidade • Alta dimensionalidade • Foco em previsão • Algoritmos adaptativos • Identificação • Contrafactual • Viés de seleção • Parâmetros interpretáveis Métodos de ML Causal: • Causal Forest • Double ML • ML para RD, DiD, IV

Figura 1: A convergência entre Machine Learning e Inferência Causal

Verificação de Leitura #1

Qual é a principal vantagem de unir técnicas de Machine Learning com métodos de inferência causal?




2. Frameworks para Machine Learning Causal

Existem diversos frameworks para adaptar métodos de ML para inferência causal. Vamos focar nos dois principais que têm sido aplicados com sucesso em finanças e economia:

Métodos Baseados em Árvores para Efeitos Heterogêneos

Adaptam algoritmos de árvore de decisão para estimar efeitos de tratamento heterogêneos (CATE - Conditional Average Treatment Effect).

Algoritmos principais:

  • Causal Tree
  • Causal Forest
  • Generalized Random Forest

Ideia central: Particionam o espaço de covariáveis em regiões onde o efeito do tratamento é aproximadamente homogêneo.

Pontos fortes:

Captura naturalmente interações e não-linearidades
Identifica subgrupos com efeitos distintos
Fornece medidas de incerteza

Limitações:

Requer amostras grandes para subgrupos
Assume ignorabilidade condicional (seleção nas observáveis)
Double/Debiased Machine Learning (DML)

Usa ML para estimar componentes do modelo, removendo o viés gerado pela regularização ou complexidade do algoritmo.

Abordagens:

  • Double ML
  • Orthogonal ML
  • Cross-Fitting

Ideia central: Dividir a tarefa em subproblemas de previsão e usar técnicas de ajuste ortogonal para corrigir vieses.

Pontos fortes:

Resultados formais de inferência (taxas de convergência)
Flexibilidade na escolha do algoritmo ML subjacente
Robusto contra overfitting

Limitações:

Mais complexo de implementar
Pode ser sensível à divisão da amostra

2.1 Causal Forest para Efeitos Heterogêneos

Causal Forest é uma extensão de Random Forest adaptada para inferência causal, especialmente útil para identificar como o efeito de um tratamento varia entre diferentes indivíduos ou empresas.

Fundamentos do Causal Forest

Considerando o framework de resultados potenciais, para cada unidade i:

  • Yi(1): Resultado se tratada
  • Yi(0): Resultado se não tratada
  • Di: Indicador de tratamento (1 = tratado, 0 = controle)
  • Xi: Covariáveis

O efeito causal para a unidade i é τi = Yi(1) - Yi(0), mas nunca observamos ambos para a mesma unidade.

O Causal Forest estima o Efeito Médio de Tratamento Condicional (CATE):

τ(x) = E[Yi(1) - Yi(0) | Xi = x]

Ou seja, como o efeito do tratamento varia com base nas características x.

Lógica do Causal Forest X₁>a X₂>b X₃>c τ₁ τ₂ τ₃ τ₄ Árvore 1 X₃>d X₁>e X₄>f τ₅ τ₆ τ₇ τ₈ Árvore 2 X₂>g X₅>h X₁>i τ₉ τ₁₀ τ₁₁ τ₁₂ Árvore 3 Efeito Médio τ(x) = Média Componentes: Nó de divisão Efeito local Agregação Características do Causal Forest: • Estimativas personalizadas para cada observação • Honestidade: amostra separada para divisão e estimação

Figura 2: Ilustração simplificada do funcionamento do Causal Forest

# Implementação de Causal Forest em Python usando EconML
import numpy as np
import pandas as pd
from econml.dml import CausalForestDML
from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
from sklearn.model_selection import train_test_split

def causal_forest_analysis(df, X_cols, y_col, treatment_col, 
                         heterogeneity_cols=None, n_estimators=100):
    """
    Implementa Causal Forest para estimar efeitos heterogêneos
    
    Args:
        df: DataFrame com os dados
        X_cols: Lista de colunas para covariáveis
        y_col: Nome da coluna de resultado
        treatment_col: Nome da coluna de tratamento
        heterogeneity_cols: Colunas para analisar heterogeneidade (opcional)
        n_estimators: Número de árvores na floresta
    
    Returns:
        Modelo treinado e efeitos heterogêneos
    """
    # Preparar dados
    X = df[X_cols].values
    T = df[treatment_col].values.reshape(-1, 1)
    y = df[y_col].values
    
    # Dividir dados para honestidade
    X_train, X_test, T_train, T_test, y_train, y_test = train_test_split(
        X, T, y, test_size=0.5, random_state=42)
    
    # Configurar e treinar o modelo
    cf = CausalForestDML(
        model_y=RandomForestRegressor(n_estimators=n_estimators),
        model_t=RandomForestClassifier(n_estimators=n_estimators),
        n_estimators=n_estimators,
        min_samples_leaf=5,
        max_depth=None,
        verbose=0,
        random_state=42
    )
    
    cf.fit(y=y_train, T=T_train, X=X_train)
    
    # Estimar efeitos individuais
    te_pred = cf.effect(X_test)
    
    # Análise de heterogeneidade
    heterogeneity_results = {}
    if heterogeneity_cols:
        for col in heterogeneity_cols:
            if col in df.columns:
                # Agrupar efeitos por variável de interesse
                grouped = pd.DataFrame({
                    'effect': te_pred.flatten(),
                    'group': df.loc[X_test.index, col]
                }).groupby('group')['effect'].mean()
                heterogeneity_results[col] = grouped
    
    return cf, te_pred, heterogeneity_results

2.2 Double Machine Learning (DML)

O Double ML (ou Debiased ML) é uma abordagem desenvolvida para permitir o uso de algoritmos ML para inferência causal, enquanto corrige o viés que pode surgir devido à regularização ou à complexidade do modelo.

Fundamentos do Double ML

Considerando o modelo parcialmente linear:

Y = θD + g(X) + ε

Onde D é o tratamento, X são as covariáveis, g(X) é uma função desconhecida, potencialmente complexa, e θ é o parâmetro de interesse.

O DML funciona em duas etapas principais:

  1. Primeira etapa: Estimar os modelos de previsão para:
    • E[Y|X] = m(X) - usando y ~ X (modelo de resultado)
    • E[D|X] = h(X) - usando D ~ X (modelo de propensity)
  2. Segunda etapa: Usar os resíduos ortogonais para estimar θ:
    • Ṽ = D - h(X) (resíduos do tratamento)
    • Ỹ = Y - m(X) (resíduos do resultado)
    • θ̂ = cov(Ỹ,Ṽ) / var(Ṽ) (estimador DML)

Uma característica fundamental do DML é a divisão da amostra (cross-fitting) para evitar overfitting.

Lógica do Double Machine Learning Divisão da Amostra para Cross-Fitting (K-Fold) Primeira Etapa Estimar E[Y|X] = m(X) Estimar E[D|X] = h(X) Usando qualquer algoritmo ML Segunda Etapa Calcular Ṽ = D - h(X) Calcular Ỹ = Y - m(X) Resíduos ortogonalizados Estimar θ̂ = cov(Ỹ,Ṽ) / var(Ṽ) Garantias assintóticas: √n-consistência

Figura 3: Fluxo do processo de Double Machine Learning

# Implementação de Double Machine Learning em Python
import numpy as np
import pandas as pd
from sklearn.model_selection import KFold
from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
from sklearn.linear_model import LinearRegression

def double_ml(df, X_cols, y_col, d_col, n_splits=5, ml_model=None):
    """
    Implementa Double Machine Learning para inferência causal
    
    Args:
        df: DataFrame com os dados
        X_cols: Lista de colunas para covariáveis
        y_col: Nome da coluna de resultado
        d_col: Nome da coluna de tratamento
        n_splits: Número de folds para cross-fitting
        ml_model: Modelo ML a ser usado (default: RandomForest)
    
    Returns:
        Estimativa do parâmetro causal e estatísticas de inferência
    """
    # Preparar dados
    X = df[X_cols].values
    y = df[y_col].values
    d = df[d_col].values
    
    # Definir modelo ML padrão se não especificado
    if ml_model is None:
        ml_model_y = RandomForestRegressor(n_estimators=100, min_samples_leaf=5)
        ml_model_d = RandomForestRegressor(n_estimators=100, min_samples_leaf=5)
    else:
        ml_model_y = ml_model
        ml_model_d = ml_model
    
    # Configurar K-fold cross-fitting
    kf = KFold(n_splits=n_splits, shuffle=True, random_state=42)
    
    # Armazenar resultados por fold
    thetas = []
    
    # Loop através dos folds
    for train_idx, test_idx in kf.split(X):
        # Dividir dados
        X_train, X_test = X[train_idx], X[test_idx]
        y_train, y_test = y[train_idx], y[test_idx]
        d_train, d_test = d[train_idx], d[test_idx]
        
        # Primeira etapa: modelagem de Y
        ml_model_y.fit(X_train, y_train)
        y_pred = ml_model_y.predict(X_test)
        
        # Primeira etapa: modelagem de D
        ml_model_d.fit(X_train, d_train)
        d_pred = ml_model_d.predict(X_test)
        
        # Segunda etapa: calcular resíduos
        y_resid = y_test - y_pred
        d_resid = d_test - d_pred
        
        # Estimar theta para este fold
        theta = np.cov(y_resid, d_resid)[0, 1] / np.var(d_resid)
        thetas.append(theta)
    
    # Calcular estimativa final e estatísticas
    theta_hat = np.mean(thetas)
    theta_std = np.std(thetas) / np.sqrt(n_splits)
    theta_ci_lower = theta_hat - 1.96 * theta_std
    theta_ci_upper = theta_hat + 1.96 * theta_std
    
    results = {
        'theta_hat': theta_hat,
        'std_error': theta_std,
        'conf_int_95': [theta_ci_lower, theta_ci_upper],
        'fold_estimates': thetas
    }
    
    return results

Verificação de Leitura #2

Qual é a principal diferença entre Causal Forest e Double Machine Learning?




3. Aplicações no Mercado Financeiro Brasileiro

Agora, vamos aplicar as técnicas de Machine Learning causal em três contextos importantes no mercado financeiro brasileiro. Estas aplicações demonstram o poder dessas abordagens para responder questões causais complexas no contexto financeiro.

3.1 Impacto Heterogêneo da Política Monetária nas Empresas Listadas na B3

A política monetária não afeta todas as empresas da mesma forma. Vamos ver como o Causal Forest pode ajudar a entender esta heterogeneidade.

Estudo de Caso: Heterogeneidade nos Efeitos das Mudanças da Taxa Selic

Questão causal: Como mudanças na taxa Selic afetam diferentemente empresas com características diversas?

Dados:

  • Painel trimestral de empresas listadas na B3 (2010-2024)
  • Variações da taxa Selic definidas pelo COPOM
  • Características das empresas: tamanho, alavancagem, setor, governança, etc.

Abordagem: Utilizamos Causal Forest para estimar o CATE (Conditional Average Treatment Effect) das mudanças na Selic sobre o valor de mercado e outros indicadores financeiros das empresas.

Efeito Heterogêneo de Aumento de 1% na Taxa Selic Impacto no Valor de Mercado por Características de Empresa Características das Empresas Impacto no Valor de Mercado (%) -1.0 -2.0 -3.0 -4.0 -5.0 -6.0 -7.0 -2.0% Bens de Consumo -3.0% Financeiro -6.0% Imobiliário -5.0% Pequenas -4.0% Médias -2.0% Grandes -1.0% Baixa -3.0% Alta Setor Tamanho Alavancagem

Figura 4: Efeitos heterogêneos de aumentos na taxa Selic por características das empresas

Resultados principais:

  • Empresas do setor imobiliário são as mais impactadas negativamente por aumentos na Selic (-6,0%)
  • Empresas menores têm maior sensibilidade (-5,0%) em comparação com empresas grandes (-2,0%)
  • Alto nível de alavancagem amplifica os efeitos negativos da política monetária contracionista
  • Empresas com maior dependência de capital de giro mostram os maiores efeitos heterogêneos

Implicações: Estas descobertas permitem aos investidores e formuladores de políticas antecipar os impactos diferenciados das decisões do COPOM nos diversos segmentos do mercado acionário brasileiro.

3.2 Avaliando o Impacto de Mudanças Regulatórias com Double ML

Mudanças regulatórias são frequentes no mercado financeiro brasileiro. O Double ML permite estimar seus efeitos causais de forma rigorosa.

Estudo de Caso: Impacto da Instrução CVM 476

Questão causal: Qual o efeito da Instrução CVM 476 (que flexibilizou emissões de dívida) sobre o custo de capital das empresas brasileiras?

Contexto: Em 2009, a CVM introduziu a Instrução 476, que simplificou o processo de emissão de debêntures para "esforços restritos", reduzindo o tempo e os custos de novas emissões.

Dados:

  • Emissões de debêntures antes e depois da regulação (2005-2014)
  • Características das empresas emissoras
  • Taxas, prazos e outras características das emissões

Desafio metodológico: Empresas que utilizaram a nova regulação são diferentes das que não utilizaram, gerando potencial viés de seleção.

Abordagem: Double ML para estimar o efeito causal da regulação, controlando para múltiplas covariáveis de forma flexível.

Impacto da Instrução CVM 476 no Mercado de Debêntures Variável de Resultado Efeito Estimado (DML) Spread sobre CDI (p.p.) -0,85** (0,21) Prazo médio (anos) +1,65*** (0,40) Volume médio (R$ milhões) +72,4** (23,1) Número de emissões (anual) +58,6*** (12,4) Significância: * p<0,1; ** p<0,05; *** p<0,01. Erros-padrão robustos entre parênteses. Fonte: Estimativas via Double ML controlando para características da empresa e condições macroeconômicas.

Figura 5: Resultados do Double ML para o impacto da Instrução CVM 476

Resultados principais:

  • A Instrução CVM 476 causou uma redução média de 0,85 pontos percentuais no spread das debêntures
  • O prazo médio das emissões aumentou em 1,65 anos
  • O volume médio por emissão cresceu R$ 72,4 milhões
  • Houve aumento significativo no número total de emissões

Implicações: A flexibilização regulatória teve efeito causal positivo no desenvolvimento do mercado de dívida corporativa, melhorando condições de financiamento para as empresas brasileiras.

3.3 Efeitos de Eventos Corporativos: Fusões e Aquisições

Outra aplicação importante no mercado financeiro é a análise do impacto de fusões e aquisições (F&A) no desempenho das empresas.

Estudo de Caso: Impacto de F&A na Eficiência Operacional

Questão causal: Fusões e aquisições causam melhorias na eficiência operacional das empresas adquirentes no contexto brasileiro?

Dados:

  • Transações de F&A realizadas por empresas listadas na B3 (2000-2024)
  • Indicadores de desempenho das empresas antes e após as transações
  • Características estruturais das transações (horizontais, verticais, conglomerados)

Desafio metodológico: A decisão de realizar F&A é endógena e correlacionada com diversas características observáveis e não observáveis das empresas.

Abordagem: Combinamos Causal Forest (para efeitos heterogêneos) e Double ML (para efeitos médios) para uma análise completa.

Efeito Médio de F&A (Double ML) 0% +5% -5% ROA -1.2% Margem EBITDA +1.5% Custo Operacional +2.3% Crescimento Receita +3.8%
Heterogeneidade por Tipo (Causal Forest) Horizontais Verticais Conglomerados +2.7% +3.2% +0.8% +1.2% -3.1% +0.5% ROA EBITDA Positivo significativo Positivo não-sig. Negativo significativo

Figura 6: Efeitos médios e heterogêneos de F&A na eficiência operacional

Resultados principais:

  • Em média, F&A no Brasil resultam em crescimento de receita (+3,8%) e melhorias na eficiência operacional (+2,3%)
  • Porém, a heterogeneidade é substancial: fusões horizontais mostram os maiores ganhos de eficiência
  • F&A do tipo conglomerado mostram impactos negativos no ROA, mas leves ganhos em margem EBITDA
  • As características da empresa adquirente, como governança corporativa e experiência prévia em aquisições, são determinantes importantes da heterogeneidade dos efeitos

Implicações: Os resultados indicam que nem todas as F&A criam valor e que certos tipos de transações têm maior probabilidade de sucesso no contexto brasileiro.

Verificação de Leitura #3

Com base nos estudos de caso apresentados, qual a principal vantagem de utilizar técnicas de ML causal no contexto do mercado financeiro brasileiro?




4. Desafios e Limitações do ML Causal

Apesar dos avanços nas técnicas de ML causal, ainda existem desafios importantes a considerar ao aplicá-las no contexto financeiro.

Desafios Metodológicos
  • Pressuposto de ignorabilidade condicional: A maioria dos métodos ainda depende da hipótese de que controlamos para todas as variáveis confundidoras relevantes
  • Escolha de hiperparâmetros: Sensibilidade dos resultados às escolhas de regularização, profundidade de árvores, etc.
  • Interpretabilidade: Modelos mais complexos podem dificultar a compreensão dos mecanismos causais
  • Requisitos de dados: Necessidade de amostras grandes, especialmente para capturar efeitos heterogêneos em subgrupos

Mitigação:

  • Análises de sensibilidade para testar a robustez dos resultados
  • Métodos de validação cruzada para seleção de hiperparâmetros
  • Métodos de importância de variáveis para entender os principais drivers
Considerações Práticas para Finanças
  • Viés de sobrevivência: Empresas que saem do mercado podem criar seleção não aleatória na amostra
  • Dinâmicas temporais: Efeitos que variam ao longo do tempo são difíceis de capturar com modelos estáticos
  • Endogeneidade específica do mercado financeiro: Expectativas e antecipação de eventos podem contaminar a identificação causal
  • Variáveis latentes: Fatores não observáveis importantes como "sentimento do mercado" ou "qualidade da gestão"

Mitigação:

  • Combinação com métodos de eventos e designs de identificação estrutural
  • Atenção especial a janelas temporais e potenciais antecipações
  • Uso de variáveis instrumentais e proxies para capturar fatores latentes

Nota Importante

Lembre-se que o ML causal não substitui o pensamento cuidadoso sobre mecanismos de identificação. Um bom design de pesquisa é fundamental antes da aplicação destas técnicas. O ML causal é mais eficaz quando combinado com bons designs de identificação (como experimentos naturais, RDD, DiD, etc.).

5. Implementação Prática: Análise de Dados com Causal Forest

Vamos aplicar o método Causal Forest a um exemplo concreto: analisar o efeito heterogêneo de um choque de liquidez (redução de rating de crédito) no valor de mercado das empresas brasileiras.

# Análise de Efeitos Heterogêneos com Causal Forest em Python
# Rebaixamento de Rating de Crédito e Impacto no Valor das Empresas

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from econml.dml import CausalForestDML
from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.inspection import partial_dependence

# 1. Carregar e preparar os dados
# Suponha que temos um DataFrame com empresas, características, tratamento (rebaixamento) e resultado (valor)
df = pd.read_csv('dados_empresas_rating.csv')

# 2. Definir variáveis de interesse
# X: covariáveis (características das empresas)
X_cols = ['tamanho', 'alavancagem', 'liquidez', 'rentabilidade', 'crescimento', 
          'idade', 'governanca', 'exportadora', 'setor_1', 'setor_2', 'setor_3']
X = df[X_cols]

# T: tratamento (1 se a empresa sofreu rebaixamento, 0 caso contrário)
T = df['rebaixamento'].values.reshape(-1, 1)

# Y: resultado (variação percentual no valor de mercado)
Y = df['var_valor_mercado'].values

# 3. Dividir em treino e teste
X_train, X_test, T_train, T_test, Y_train, Y_test = train_test_split(
    X, T, Y, test_size=0.3, random_state=42)

# 4. Configurar e treinar o modelo Causal Forest
cf_model = CausalForestDML(
    model_y=RandomForestRegressor(n_estimators=100, min_samples_leaf=10),
    model_t=RandomForestClassifier(n_estimators=100, min_samples_leaf=10),
    n_estimators=500,
    min_samples_leaf=10,
    max_depth=10,
    verbose=0,
    random_state=42
)

# Ajustar o modelo
cf_model.fit(Y_train, T_train, X=X_train)

# 5. Estimar efeitos individuais de tratamento
te_test = cf_model.effect(X_test)
df_test = X_test.copy()
df_test['efeito_estimado'] = te_test

# 6. Análise de heterogeneidade por características específicas
# a) Tamanho da empresa
tamanho_bins = pd.qcut(df_test['tamanho'], q=5, labels=False)
efeitos_por_tamanho = df_test.groupby(tamanho_bins)['efeito_estimado'].mean()

plt.figure(figsize=(10, 6))
plt.bar(range(len(efeitos_por_tamanho)), efeitos_por_tamanho.values)
plt.xlabel('Quintil de Tamanho (1=Menor, 5=Maior)')
plt.ylabel('Efeito Médio no Valor de Mercado (%)')
plt.title('Efeito Heterogêneo do Rebaixamento de Rating por Tamanho da Empresa')
plt.axhline(y=0, color='r', linestyle='-')
plt.savefig('heterogeneidade_tamanho.png')

# b) Alavancagem
alavancagem_bins = pd.qcut(df_test['alavancagem'], q=5, labels=False)
efeitos_por_alavancagem = df_test.groupby(alavancagem_bins)['efeito_estimado'].mean()

plt.figure(figsize=(10, 6))
plt.bar(range(len(efeitos_por_alavancagem)), efeitos_por_alavancagem.values)
plt.xlabel('Quintil de Alavancagem (1=Menor, 5=Maior)')
plt.ylabel('Efeito Médio no Valor de Mercado (%)')
plt.title('Efeito Heterogêneo do Rebaixamento de Rating por Alavancagem')
plt.axhline(y=0, color='r', linestyle='-')
plt.savefig('heterogeneidade_alavancagem.png')

# 7. Importância das variáveis para heterogeneidade
importancias = cf_model.feature_importances_
importancias_df = pd.DataFrame({'variavel': X_cols, 'importancia': importancias})
importancias_df = importancias_df.sort_values('importancia', ascending=False)

plt.figure(figsize=(10, 6))
plt.barh(importancias_df['variavel'], importancias_df['importancia'])
plt.xlabel('Importância Relativa')
plt.title('Importância das Variáveis para Heterogeneidade de Efeitos')
plt.tight_layout()
plt.savefig('importancia_variaveis.png')

# 8. Efeitos parciais para variáveis importantes
fig, ax = plt.subplots(figsize=(12, 8))
result = partial_dependence(cf_model.model_cate, 
                           X_test, 
                           features=['alavancagem', 'liquidez'], 
                           kind='average')
XX, YY = np.meshgrid(result["values"][0], result["values"][1])
Z = result["average"].reshape(XX.shape).T
contour = ax.contourf(XX, YY, Z, cmap='viridis')
cbar = plt.colorbar(contour)
cbar.set_label('Efeito do Rebaixamento (%)')
ax.set_xlabel('Alavancagem')
ax.set_ylabel('Liquidez')
ax.set_title('Efeito Conjunto de Alavancagem e Liquidez')
plt.savefig('efeito_conjunto.png')

# 9. Interpretação dos resultados
print("Efeito médio do rebaixamento:", np.mean(te_test))
print("Desvio padrão dos efeitos:", np.std(te_test))
print("Mínimo efeito estimado:", np.min(te_test))
print("Máximo efeito estimado:", np.max(te_test))

# 10. Função para prever o efeito para uma nova empresa
def prever_efeito_rebaixamento(empresa_caracteristicas):
    # empresa_caracteristicas deve ser um DataFrame com as mesmas colunas que X
    return cf_model.effect(empresa_caracteristicas)
Efeitos Heterogêneos do Rebaixamento de Rating Por Características das Empresas Características das Empresas Efeito no Valor de Mercado (%) -10% -5% 0% +5% +10% Tamanho Pequeno Médio Grande Alavancagem Baixa Média Alta Governança Baixa Alta Exportadora Não Sim

Figura 7: Resultados da análise de heterogeneidade com Causal Forest

Interpretação dos Resultados

  • Tamanho: Empresas maiores sofrem efeitos mais negativos do rebaixamento (-7% vs +4% para pequenas)
  • Alavancagem: Quanto maior a alavancagem, mais negativo o impacto do rebaixamento
  • Governança: Empresas com melhor governança são menos impactadas ou até se beneficiam
  • Atividade Exportadora: Empresas exportadoras são menos sensíveis ao rebaixamento local

Estas descobertas permitem gerar insights acionáveis para gestores de portfólio e para as próprias empresas na gestão de riscos relacionados à classificação de crédito.

6. Considerações Finais e Perspectivas Futuras

Chegamos ao final de nossa jornada de aprendizado sobre inferência causal. O Machine Learning causal representa uma poderosa fronteira na análise de dados financeiros, combinando a flexibilidade dos algoritmos de ML com o rigor da análise causal.

Principais Aprendizados do Curso

Ao longo deste curso, exploramos:

  1. O problema fundamental da inferência causal e a importância do contrafactual
  2. Métodos clássicos de identificação: RCTs, variáveis instrumentais, diferenças em diferenças, regressão descontínua
  3. Métodos avançados de identificação: controle sintético, matching, técnicas de ponderação
  4. A integração de Machine Learning com inferência causal para análises mais robustas e flexíveis

A combinação destes métodos proporciona um poderoso toolkit para responder perguntas causais fundamentais no mercado financeiro brasileiro.

Tendências Emergentes

  • Integração de ML causal com dados alternativos e big data
  • Métodos de inferência causal para séries temporais financeiras
  • Uso de aprendizado por reforço para estimar políticas ótimas
  • Aplicações em ESG e sustentabilidade
  • Inferência causal em mercados de criptoativos

Dicas para Aplicação Prática

  • Comece pela teoria causal: defina claramente sua questão e mecanismo de identificação
  • Escolha o método apropriado para sua pergunta específica
  • Teste a robustez com múltiplos métodos
  • Utilize ferramentas como EconML, DoWhy e CausalML
  • Construa conhecimento domain-specific junto com o desenvolvimento técnico

Esperamos que este curso tenha fornecido uma base sólida para que você possa aplicar métodos de inferência causal em suas próprias análises e pesquisas no campo financeiro. Lembre-se que a causalidade é um conceito profundo que requer tanto rigor técnico quanto compreensão contextual do problema em questão.

Quiz Final - Verificação de Aprendizado

1. Qual das seguintes afirmações sobre Machine Learning causal é INCORRETA?





2. No contexto de análise de fusões e aquisições no mercado brasileiro, o que explica melhor a heterogeneidade nos efeitos sobre a eficiência operacional?





3. Qual é a principal vantagem do Double ML em comparação com métodos tradicionais de regressão para estimar efeitos causais?





Recursos Adicionais

Pacotes e Bibliotecas
  • EconML (Microsoft Research): Implementações de Causal Forest, Double ML, etc.
  • DoWhy (Microsoft Research): Framework para modelagem causal
  • CausalML (Uber): Pacote focado em efeitos heterogêneos
  • grf (Generalized Random Forests): Implementação em R dos métodos de Athey
  • CausalImpact (Google): Para séries temporais
Leituras Recomendadas
  • Athey, S., & Imbens, G. W. (2019). Machine Learning Methods That Economists Should Know About
  • Chernozhukov et al. (2018). Double/Debiased Machine Learning for Treatment Effects
  • Wager, S., & Athey, S. (2018). Estimation and Inference of Heterogeneous Treatment Effects
  • Pearl, J. (2019). The Seven Tools of Causal Inference
  • Cunningham, S. (2021). Causal Inference: The Mixtape

Obrigado por participar deste PlayStat - uma jornada sobre inferêcia Estatística. Versão Beta - pode conter erros. Esperamos que as técnicas e conceitos discutidos sejam valiosos em sua jornada profissional e acadêmica na área de finanças e economia.

© Axioma Informática e Tecnologia

Referência em aprendizagem

About Us

Terms of Use

Our Team

How It Works

Accessibility

Support

FAQs

Terms & Conditions

Privacy Policy

Career

Download nosso App

Quick Links

About

Help Centre

Business

Contact

© 2025 Axioma Informática e Tecnologia