Fundamentos de Probabilidade para Decisões
IFMG - Campus Formiga
28 de maio de 2025
O que vimos até hoje?
Aula 1 ✅
Aula 2 ✅
Metodologia CRISP-DM ✅
Tipos de Análise ✅
Configurações: Git/GitHub ✅
Aula 3 ✅
Introdução ao RStudio ✅
Aula 4 ✅
Introdução ao Git e GitHub ✅
Aula 5 ✅
Breve Revisão do IDE RStudio ✅
Introdução ao Sistema de Publicação Quarto ✅
Sessão Prática Guiada com Relatório 1 ✅
Aula 6 ✅
Parte I ✅
Parte II ✅
Aula 7 ✅
Introdução ao sistema Quarto (continuação) ✅
Introdução à Linguagem R (continuação) ✅
Aula 8 ✅
Início do estudo do pacote dplyr para manipulação de dados ✅
Aula 9 ✅
Aula 10 ✅
Aula 11 ✅
Aula 12 ✅
Aula 13 ✅
Aula 14 ✅
Aula 15 ✅
Aula 16 ✅
Tópicos
Características da Distribuição de uma VA
Instruções
Abra o RStudio e o seu Projeto da Disciplina
Crie a subpasta 10-relatorio dentro da pasta relatorios.
Acesse o site da disciplina e baixe o arquivo 10-relatorio.zip
Descompacte o arquivo, copie/recorte o arquivo 10-relatorio.qmd
e cole dentro da subpasta 10-relatorio.
Diretrizes para Aulas Mais Produtivas
🔊 Mantenha conversas em volume baixo
⌨️ Código com método:
95% dos erros são evitáveis com:
🤝 Inteligência colaborativa:
💪 Capacidade de Resolver Problemas
Cada erro resolvido é uma evolução da sua habilidade analítica
O Desafio: Sintetizar Informação
Uma distribuição de probabilidade contém infinitos pontos de informação. Na prática, é impossível analisar cada valor possível de uma VA e suas respectivas probabilidades.
Por isso, precisamos de medidas-resumo que capturem as características essenciais da distribuição em poucos números interpretáveis.
1. Posição: Onde os Dados se Concentram?
Valor Esperado: Resume em um único número o “centro” da distribuição
Transforma infinitas possibilidades em uma métrica gerenciável
2. Variabilidade: Quantificando a Incerteza
Variância e Desvio-Padrão: Condensam toda a dispersão dos dados em uma medida
Permitem comparar riscos entre diferentes investimentos ou processos
Essenciais porque dois processos podem ter mesma média mas riscos totalmente diferentes
3. Forma da Distribuição: Capturando Padrões Não-Simétricos
4. Interdependências: Síntese de Relações Complexas
Covariância e Correlação: Reduzem relações multidimensionais a números interpretáveis
Permitem decisões de diversificação sem analisar cada cenário possível
Definição
A variância \(V(X)\) de uma variável aleatória \(X\) mede a dispersão dos valores de \(X\) em torno do seu valor esperado.
Para uma VA Discreta:
\[ V(X) = \sigma_{X}^2 = \sum_{i} (x_i - E(X))^2 P(X = x_i) \]
Para uma VA Contínua:
\[ V(X) = \sigma_{X}^2 = \int_{-\infty}^{\infty} (x - E(X))^2 f(x) \, dx \]
Definição
O desvio-padrão (\(\sigma\)) de uma VA é a raiz quadrada da variância e fornece uma medida da dispersão dos valores de \(X\) em torno do seu valor esperado na mesma unidade de \(X\).
\[ \sigma = \sqrt{V(X)} \]
Por exemplo, se a unidade de \(X\) for R$ (reais), o desvio-padrão também será em reais, enquanto a variância será em reais ao quadrado (R$\(^2\)).
Análise de Risco de um Pequeno Investimento
Uma empresa está considerando lançar um novo produto. Baseado em pesquisas de mercado, os possíveis lucros mensais são:
Cenário | Lucro Mensal (R$) | Probabilidade |
---|---|---|
Pessimista | 2.000 | 0.3 |
Esperado | 5.000 | 0.4 |
Otimista | 8.000 | 0.3 |
Passo 1: Calcular o Valor (Lucro) Esperado
\[ E[L] = 2.000 \times 0.3 + 5.000 \times 0.4 + 8.000 \times 0.3 = 5.200\ \]
Passo 2: Calcular a Variância
\[\begin{aligned} V[L] &= \sigma^2 = (2.000 - 5.200)^2 \times 0.3 + (5.000 - 5.200)^2 \times 0.4 + (8.000 - 5.200)^2 \times 0.3 \\ &= (-3.200)^2 \times 0.3 + (-200)^2 \times 0.4 + (2.800)^2 \times 0.3 \\ &= 10.240.000 \times 0.3 + 40.000 \times 0.4 + 7.840.000 \times 0.3 \\ V[L] &= \sigma^2 = 5.440.000\,\, R\$^2 \end{aligned}\]Passo 3: Calcular o Desvio-Padrão
\[ \sigma_L = \sqrt{\sigma^2} =\sqrt{5.440.000} \approx 2.333\,\,R\$ \]
Interpretação: O lucro esperado é R$ 5.200 com desvio-padrão de R$ 2.333, indicando uma variabilidade moderada em torno da expectativa.
# Definir os dados
lucros <- c(2000, 5000, 8000)
probabilidades <- c(0.3, 0.4, 0.3)
# Calcular valor esperado
valor_esperado <- sum(lucros * probabilidades)
valor_esperado
[1] 5000
# Calcular variância manualmente
variancia <- sum((lucros - valor_esperado)^2 * probabilidades)
variancia
[1] 5400000
[1] 2323.79
# Verificação usando simulação
set.seed(123)
simulacao <- sample(lucros, 10000, prob = probabilidades, replace = TRUE)
mean(simulacao) # Valor esperado empírico
[1] 5036.6
[1] 5422602.7
[1] 2328.6483
Propriedades
Se \(c\) é uma constante, então a variância de \(c\) é zero:
\(\boxed{V(c) = 0}\)
Se \(X\) é uma variável aleatória e \(c\) é uma constante, a variância de \(X + c\) é igual à variância de \(X\):
\(\boxed{V(X + c) = V(X)}\)
Para qualquer variável aleatória \(X\) e uma constante \(a\), a variância de \(aX\) é dada por:
\(\boxed{V(aX) = a^2 V(X)}\)
Para variáveis aleatórias \(X\) e \(Y\) não necessariamente independentes, a variância da soma é:
\(\boxed{V(X + Y) = V(X) + V(Y) + 2\text{Cov}(X, Y)}\)
onde \(Cov(X, Y)\) é a covariância entre \(X\) e \(Y\).
Para variáveis aleatórias \(X\) e \(Y\) independentes:
\(\boxed{V(X + Y) = V(X) + V(Y)}\)
Para variáveis aleatórias \(X\) e \(Y\) independentes:
\(\boxed{V(X - Y) = V(X) + V(Y)}\)
# Exemplo das propriedades
set.seed(123)
investimento <- rnorm(1000, mean = 0.05, sd = 0.12) # Retorno 5%, vol 12%
# Propriedade 1: V(X + constante) = V(X)
# Adicionar uma constante não altera o risco
taxa <- 0.02
var(investimento)
[1] 0.014161809
[1] 0.014161809
# Propriedade 2: V(a*X) = a²*V(X)
# Dobrar o investimento quadruplica o risco
dobro_investimento <- 2 * investimento
var(investimento)
[1] 0.014161809
[1] 0.056647234
[1] 0.056647234
Definição
O coeficiente de variação (CV) é uma medida de variabilidade relativa que expressa o desvio-padrão como uma porcentagem da média, permitindo comparações diretas entre variáveis com diferentes escalas ou unidades.
\[ CV = \frac{\sigma}{|\mu|} \times 100\% \]
onde:
Características principais:
Interpretação prática:
Aplicação em finanças: Útil para comparar riscos relativos de investimentos com diferentes retornos esperados, permitindo identificar qual ativo oferece melhor relação risco-retorno.
Comparando Risco Relativo de Investimentos
Cenário: Um gestor precisa comparar três opções de investimento com características muito diferentes:
Investimento | Retorno Esperado | Desvio-Padrão | Unidade |
---|---|---|---|
Ação Tech | 15% | 6% | % a.a. |
Fundo Imobiliário | R$ 1.200 | R$ 180 | R$/mês |
Criptomoeda | US$ 50 | US$ 25 | US$/semana |
Problema: Como comparar o risco relativo entre investimentos com escalas e unidades diferentes?
Solução usando Coeficiente de Variação:
Interpretação:
Conclusão: O coeficiente de variação revela que, proporcionalmente aos seus retornos, o Fundo Imobiliário apresenta o menor risco relativo, seguido pela Ação Tech e, por último, a Criptomoeda.
# Ação Tech
retorno_acao <- 15
desvio_acao <- 6
cv_acao <- (desvio_acao / retorno_acao) * 100
cv_acao
[1] 40
# Fundo Imobiliário
retorno_fundo <- 1200
desvio_fundo <- 180
cv_fundo <- (desvio_fundo / retorno_fundo) * 100
cv_fundo
[1] 15
# Criptomoeda
retorno_crypto <- 50
desvio_crypto <- 25
cv_crypto <- (desvio_crypto / retorno_crypto) * 100
cv_crypto
[1] 50
O que é o Valor-em-Risco?
O Valor-em-Risco (VaR) é uma medida estatística que quantifica o risco de perdas em um investimento ou portfólio durante um período específico, com um determinado nível de confiança.
Definição formal: O VaR de α% é o valor tal que existe apenas α% de probabilidade de a perda exceder esse valor.
Elementos do VaR:
Interpretação do VaR de 95%:
“Existe apenas 5% de chance de a perda exceder o valor do VaR”
Aplicações práticas:
Fórmula do VaR Paramétrico (Normal)
Assumindo que os retornos seguem distribuição normal:
\[ \text{VaR}_\alpha = \mu + z_\alpha \times \sigma \]
onde:
\(\mu\) = retorno esperado do investimento
\(\sigma\) = volatilidade (desvio-padrão) dos retornos
\(z_\alpha\) = quantil da distribuição normal padrão para o nível de confiança α
Para os níveis de confiança mais comuns:
VaR 95%: \(z_{0.05} = -1.645\) - “Existe apenas 5% de chance de a perda exceder o valor do VaR”
VaR 99%: \(z_{0.01} = -2.326\) - “Existe apenas 1% de chance de a perda exceder o valor do VaR”
Importante: O sinal negativo indica que estamos interessados na cauda esquerda da distribuição (perdas).
Fórmula do VaR Paramétrico
Assumindo que os retornos \(R\) seguem uma distribuição normal:
\[ \boxed{ \text{VaR}_\alpha = \mu + z_\alpha \cdot \sigma } \]
Sendo:
Explicação Intuitiva
\[ R \sim \mathcal{N}(\mu, \sigma^2) \]
\[ P(R \leq \text{VaR}_\alpha) = \alpha \quad \Rightarrow \quad P\left(\underbrace{\frac{R - \mu}{\sigma}}_{Z} \leq \frac{\text{VaR}_\alpha - \mu}{\sigma}\right) = \alpha \]
\[ \frac{\text{VaR}_\alpha - \mu}{\sigma} = z_\alpha \quad \Rightarrow \quad \text{VaR}_\alpha = \mu + z_\alpha \cdot \sigma \]
Valores Críticos Comuns
Nível de Confiança | \(\alpha\) | \(z_\alpha\) |
---|---|---|
95% | 5% | \(-1.645\) |
99% | 1% | \(-2.326\) |
Observação:
O sinal negativo de \(z_\alpha\) reflete a cauda esquerda da distribuição (perdas).
Cenário: Investimento em Ações
Dados históricos de um fundo de ações:
Pergunta: Qual o VaR mensal de 95%?
Solução:
\[\text{VaR}_{95\%} = 1.2\% + (-1.645) \times 4.5\%\]
\[\text{VaR}_{95\%} = 1.2\% - 7.4\% = -6.2\%\]
Em valores monetários:
\[\text{VaR}_{95\%} = R\$ 100.000 \times (-6.2\%) = -R\$ 6.200\]
Interpretação: Existe apenas 5% de chance de a perda mensal exceder R$ 6.200.
# Parâmetros do investimento
retorno_medio <- 0.012 # 1.2% ao mês
volatilidade <- 0.045 # 4.5% ao mês
valor_investido <- 100000 # R$ 100.000
# Cálculo do VaR 95%
nivel_confianca <- 0.95
quantil_95 <- qnorm(1 - nivel_confianca) # -1.645
quantil_95
[1] -1.6448536
# Cálculo do VaR 95% percentual
var_percentual_95 <- retorno_medio + quantil_95 * volatilidade
var_percentual_95
[1] -0.062018413
# Cálculo do VaR 95% monetário
var_monetario_95 <- valor_investido * var_percentual_95
var_monetario_95
[1] -6201.8413
# Cálculo do VaR 99%
quantil_99 <- qnorm(1 - 0.99) # -2.326
# Cálculo do VaR 99% percentual
var_percentual_99 <- retorno_medio + quantil_99 * volatilidade
var_percentual_99
[1] -0.092685654
# Cálculo do VaR 99% monetário
var_monetario_99 <- valor_investido * var_percentual_99
var_monetario_99
[1] -9268.5654
Definições
Coeficiente de Assimetria (Skewness):
\[ \text{Assimetria}(X) = E\left[\left(\frac{X - \mu}{\sigma}\right)^3\right] \]
Coeficiente de Curtose (Kurtosis):
\[ \text{Curtose}(X) = E\left[\left(\frac{X - \mu}{\sigma}\right)^4\right] \]
Interpretação:
Exercício
Cenário: Um gestor de investimentos está comparando dois fundos com diferentes perfis de risco.
Dados Calculados:
Perguntas:
# Cálculo dos Coeficientes de Variação (CV)
cv_fundo_conservador <- (1.9 / 8.6) * 100
cv_fundo_conservador
[1] 22.093023
[1] 67.647059
Interpretação
Exercício
Cenário: Uma loja está comparando a previsibilidade da demanda de dois produtos.
Dados:
Perguntas:
[1] 15
[1] 24
Interpretação
Cálculo do VaR
Você está analisando um portfólio de títulos governamentais com:
Considerando que os retornos do protfólio seguem aproximadamente uma distribuição normal:
Dica: Use qnorm()
no R para obter os quantis da distribuição normal
# Parâmetros do investimento
retorno_medio <- 0.008 # 0.8%
volatilidade <- 0.032 # 3.2%
valor <- 250000 # US$ 250k
# 1. VaR 95% percentual e monetário
var_95_percentual <- retorno_medio + qnorm(0.05) * volatilidade
var_95_percentual
[1] -0.044635316
[1] -11158.829
# 2. VaR 99% percentual e monetário
var_99_percentual <- retorno_medio + qnorm(0.01) * volatilidade
var_99_percentual
[1] -0.066443132
[1] -16610.783
Interpretação
VaR Mensal a 95%:
Percentual: -4.46%
Significa que há 5% de probabilidade de o portfólio perder mais que 4.46% em um mês.
Monetário: US$ 11.158,83
Representa a perda máxima esperada com 95% de confiança para o investimento de US$ 250.000.
VaR Mensal a 99%:
Percentual: -6.64%
Indica que há apenas 1% de chance de perdas superiores a 6.64% no mês.
Monetário: US$ 16.610,78
Mostra a perda máxima esperada com 99% de confiança.
Comparação:
O VaR a 99% é maior (em valor absoluto) que o VaR a 95%, como esperado
→ Quanto maior o nível de confiança, maior a perda potencial extrema
A diferença reflete o trade-off entre:
O VaR negativo indica perda potencial (retorno abaixo da média)
Observação: Esses cálculos assumem distribuição normal dos retornos, o que pode subestimar riscos em eventos extremos.
Definição
A covariância \(\text{Cov}(X, Y)\) mede o grau da relação linear entre duas variáveis aleatórias numéricas \(X\) e \(Y\).
\[ \begin{align} \text{Cov}(X, Y) &= E[(X - E(X))(Y - E(Y))] \\\ &= E[(X - \mu_X))(Y - \mu_Y)] \\ &= E(XY) - \mu_X\mu_Y \end{align} \]
Para variáveis aleatórias discretas:
\[ \text{Cov}(X, Y) = \sum_{x} \sum_{y}xyP(x,y) - \mu_X\mu_Y \]
Para variáveis aleatórias contínuas:
\[ \text{Cov}(X, Y) = \int_{-\infty}^{\infty} \int_{-\infty}^{\infty} (x - \mu_X)(y - \mu_Y)) f(x, y) \, dx \, dy \]
Limitações
Embora a covariância forneça uma indicação da direção da relação entre variáveis aleatórias, a covariância não tem um limite superior ou inferior, e seu tamanho é muito influenciado pela escala (unidade de medida) dos números.
Assim, é difícil usar a covariância para fornecer uma medida da força de uma relação linear porque ela é ilimitada.
Uma medida relacionada, o coeficiente de correlação, fornece uma medida da força da relação linear entre duas variáveis aleatórias, com a medida sendo limitada ao intervalo de -1 a +1.
Definição
A correlação \(\rho_{XY}\) é uma medida numérica padronizada (ou normalizada) do grau da relação linear entre duas variáveis aleatórias, indicando tanto a força quanto a direção dessa relação.
\[ \rho_{XY} = \frac{\text{Cov}(X, Y)}{\sigma_X \sigma_Y} \]
sendo:
Intervalo
\(-1 \leq \rho_{XY} \leq 1\)
Correlação Linear entre Variáveis Aleatórias Numéricas
Coeficiente de Correlação Linear entre Variáveis Aleatórias Numéricas
Covariação entre Vendas de Sorvete e Temperatura
Dados hipotéticos de uma sorveteria durante 5 dias:
Dia | Temperatura (°C) | Vendas (R$) |
---|---|---|
1 | 25 | 300 |
2 | 30 | 450 |
3 | 20 | 200 |
4 | 35 | 500 |
5 | 28 | 400 |
Médias:
Interpretação da Covariância:
# Dados do exemplo
temperatura <- c(25, 30, 20, 35, 28)
vendas <- c(300, 450, 200, 500, 400)
# Criar data frame
dados <- data.frame(temperatura, vendas)
# Gráfico de dispersão
ggplot(dados, aes(x = temperatura, y = vendas)) +
geom_point(size = 3) +
labs(title = "Relação: Temperatura vs Vendas",
x = "Temperatura (°C)",
y = "Vendas (R$)") +
theme_minimal()
Interpretação do Gráfico
O gráfico de dispersão mostra uma relação positiva forte entre temperatura e vendas.
indicando que, à medida que a temperatura aumenta, as vendas também tendem a aumentar, e vice-versa.
[1] 660
[1] 0.97968795
Correlação Muito Forte
Como indicado pelo gráfico de dispersão, há uma correlação positiva muito forte entre temperatura e vendas de sorvete, (0.97 ou 97%).
Se a temperatura aumenta, as vendas tendem a aumentar também, e vice-versa.
Guia para Interpretação de Correlações (Cohen, 1988, 1992)
Diretrizes Clássicas de Cohen (valores absolutos):
Observações Importantes:
Essas diretrizes são pontos de referência gerais, não limites rígidos
O contexto da análise sempre deve ser considerado na interpretação
Correlação não implica causalidade!
Covariação entre os retornos de duas ações
Cenário: Um investidor está analisando a correlação entre os retornos de duas ações para construir um portfólio diversificado. Os retornos mensais históricos (em %) das duas ações nos últimos 6 meses foram:
Mês | Ação A | Ação B |
---|---|---|
1 | 2.5 | 1.8 |
2 | -1.2 | 3.1 |
3 | 4.1 | -0.5 |
4 | 1.8 | 2.4 |
5 | -0.8 | 1.2 |
6 | 3.6 | -1.0 |
Perguntas:
Faça um gráfico de dispersão dos retornos das duas ações. Analisando o gráfico, você considera que há alguma correlação entre os retornos das duas ações? Se sim, qual?
Calcule a covariância e o coeficiente de correlação entre as duas ações.
Com base na correlação, essas ações são uma boa opção para diversificação? Explique.
# Dados das ações
acao_a <- c(2.5, -1.2, 4.1, 1.8, -0.8, 3.6)
acao_b <- c(1.8, 3.1, -0.5, 2.4, 1.2, -1.0)
# Criar data frame
dados <- data.frame(acao_a, acao_b)
# Gráfico de dispersão
ggplot(dados, aes(x = acao_a, y = acao_b)) +
geom_point(size = 2.5) +
labs(title = "Relação entre Ação A e Ação B",
x = "Retorno Ação A (%)",
y = "Retorno Ação B (%)") +
theme_minimal()
Interpretação
[1] -2.6353333
[1] -0.73198834
Correlação Negativa
Como indicado pelo gráfico de dispersão, há uma correlação positiva muito forte entre temperatura e vendas, (- 0.73).
Se a retorno da ação a aumenta, o retorno da ação b tende a diminuir, e vice-versa.
Origem da Simulação de Monte Carlo
Descrição Informal
A Simulação de Monte Carlo é uma técnica computacional que utiliza amostragem aleatória e estatística para modelar e quantificar o impacto da incerteza e variabilidade em sistemas complexos e processos de tomada de decisão.
Esses métodos são úteis para a obtenção de soluções numéricas para problemas que são muito complexos para serem resolvidos analiticamente.
Podemos estar interessados em simular um processo aleatório ou verificar como o comportamento de um processo é alterado quando mudamos determinados parâmetros.
Métodos de Monte Carlo são usadas extensivamente em Estatística, Física, Engenharia, Economia, Medicina, Administração e em diversas outras áreas.
Probabilidade e Simulação de MC
Uma simulação de Monte Carlo é baseada no conceito de probabilidade como a frequência relativa de um evento.
Dado um processo aleatório e algum evento \(A\), a probabilidade \(P(A)\) é estimada repetindo-se o experimento aleatório muitas vezes e calculando-se a proporção de vezes que \(A\) ocorre.
Seja \(X_1, X_2,\ldots\) uma sequência de variáveis aleatórias, sendo:
\[ X_k = \begin{cases} 1, & \text{se A ocorre na k-ésima repetição} \\ 0, & \text{se A não ocorre na k-ésima repetição} \end{cases} \]
para \(k = 1, 2,\ldots\), então:
\[ \frac{X_1 + X_2 + \ldots + X_n}{n} \]
é a proporção de vezes em que \(A\) ocorre em \(n\) repetições.
Para n grande, o método de Monte Carlo estima \(P(A)\) por:
\[ P(A) \approx \frac{X_1 + X_2 + \ldots + X_n}{n} \]
Probabilidade e Simulação de MC
Vejamos um exemplo inicial muito simples.
Considere simular a probabilidade de que uma moeda honesta resulte “cara” em \(n\) lançamentos. Pode-se fazer uma simulação física apenas jogando uma moeda várias vezes e tomando a proporção de caras para estimar \(P(Caras)\).
Usando um computador, escolha o número de tentativas n (quanto maior, melhor) e utilize o seguinte comando R:
O comando faz uma amostragem com reposição de \({0, 1}\), \(n\) vezes de forma que os resultados sejam igualmente prováveis.
Considerando que \(0\) representa coroa e 1 representa cara, a saída é uma sequência de \(n\) uns e zeros correspondentes a caras e coroas.
A média da sequência é precisamente a proporção de uns.
Para simular o lançamento de uma moeda justa (processo aleatório) e estimar a \(P(Cara)\) fazemos:
Uma Aplicação em Finanças
Procedimento Simplificado:
Definição do Problema: Identifique uma variável aleatória financeira de interesse (receitas, lucros, etc.) e os possíveis cenários que podem afetá-la.
Determinação das Probabilidades: Atribua probabilidades a cada cenário com base em dados históricos ou estimativas.
Execução das Simulações: Realize um grande número de simulações (por exemplo, 10.000) para gerar uma distribuição dos possíveis valores da variável aleatória de interesse
Análise dos Resultados: Calcule estatísticas como a média (valor esperado), probabilidades e outras medidas de interesse.
Exemplo de Aplicação 1
Vamos considerar a mesma empresa que está planejando suas receitas para o próximo ano, mas desta vez, utilizaremos a simulação de Monte Carlo para modelar a incerteza nas receitas.
Parâmetros da Simulação
Cenários e Probabilidades:
Cenário Pessimista: Receita esperada de - R$ 900,000 com probabilidade de 20%.
Cenário Base: Receita esperada de R$ 1,500,000 com probabilidade de 50%.
Cenário Otimista: Receita esperada de R$ 2,000,000 com probabilidade de 30%.
Procedimento:
Realizar 10.000 simulações.
Em cada simulação, selecionar um cenário com base nas probabilidades e registrar a receita correspondente.
Calcular a média das receitas simuladas (receita esperada).
Calcular a probabilidade da receita ser positiva.
O que é a função replicate
?
A função replicate
em R é usada para repetir a execução de uma expressão várias vezes, retornando os resultados em forma de vetor ou matriz.
n
: Número de vezes que a expressão deve ser repetida.
expr
: A expressão a ser avaliada.
Como usar a função replicate
?
Neste exemplo, replicate
seleciona aleatoriamente 5 números entre 1 e 10 e os retorna em um vetor.
A função replicate
é frequentemente usada em simulações de Monte Carlo para realizar várias simulações independentes.
# cria uma função para simular lucros para alguns cenários que
# ocorrem com as probabilidades dadas.
simulacao_retorno <- function() {
sample(c(-200000, 300000, 600000),
size = 1,
prob = c(0.25, 0.5, 0.25),
replace = TRUE)
}
# executa 10.000 simulações/repetiçõs
retornos_simulados <- replicate(10000, simulacao_retorno())
Vantagens da função replicate
Simplificação do Código: Evita a necessidade de escrever loops explícitos (for
) para repetições.
Eficiência: É geralmente mais eficiente e conciso para tarefas repetitivas.
Facilidade de Uso: Integra-se facilmente com outras funções em R para análises estatísticas e simulações.
# define os cenários e as probabilidades
cenarios <- c(-500000, 1500000, 2000000)
probabilidades <- c(0.2, 0.5, 0.3)
# número de simulações
simulacoes <- 10000
# função para realizar selecionar um cenário e receita
simulacao_receita <- function() {
sample(cenarios, size = 1, prob = probabilidades, replace = TRUE)
}
# executando as simulações
set.seed(123)
receitas_simuladas <- replicate(simulacoes, simulacao_receita())
# estimativa da receita esperada
receita_esperada <- mean(receitas_simuladas)
receita_esperada
[1] 1259900
# estimativa da P(receita > 0)
probabilidade_receita_positiva <- mean(receitas_simuladas > 0)
probabilidade_receita_positiva
[1] 0.8051
Exemplo de Aplicação 2
Uma empresa está avaliando a viabilidade de um novo projeto de investimento. O projeto tem três possíveis resultados financeiros: prejuízo, lucro moderado e lucro alto. Cada resultado tem uma probabilidade associada, baseada em fatores de mercado e estimativas da empresa.
Parâmetros da Simulação
Cenários e Probabilidades:
Prejuízo: lucro esperado de R$ -200,000 com probabilidade de 25%.
Lucro Moderado: lucro esperado de R$ 300,000 com probabilidade de 50%.
Lucro Alto: lucro esperado de R$ 600,000 com probabilidade de 25%.
Procedimento
Realizar 10.000 simulações.
Em cada simulação, selecionar um cenário com base nas probabilidades e registrar o retorno correspondente.
Calcular a média dos retornos simulados (retorno esperado).
Calcular a probabilidade de o retorno ser positivo.
# Definindo os cenários e probabilidades
cenarios <- c(-200000, 300000, 600000)
probabilidades <- c(0.25, 0.5, 0.25)
# Número de simulações
simulacoes <- 10000
# Função para realizar uma simulação
simulacao_lucros <- function() {
sample(cenarios, size = 1, prob = probabilidades, replace = TRUE)
}
# Realizando as simulações
set.seed(456) # Para reprodutibilidade
lucros_simulados <- replicate(simulacoes, simulacao_lucros())
# Estimativa da retorno esperado
lucro_esperado <- mean(lucros_simulados)
lucro_esperado
[1] 247460
# Estimativa da P(lucro > 0)
probabilidade_lucro_positivo <- mean(lucros_simulados > 0)
probabilidade_lucro_positivo
[1] 0.7454
Análise de Viabilidade de Projeto de Investimento
Cenário: Uma startup de tecnologia está avaliando o lançamento de um novo aplicativo. A receita líquida do primeiro ano depende de fatores como aceitação do mercado e concorrência. Os possíveis cenários são:
Perguntas:
Use simulação de Monte Carlo com 10.000 repetições para estimar a receita líquida esperada.
Qual a probabilidade de a empresa ter receita líquida positiva no primeiro ano?
Qual a probabilidade de a receita líquida superar R$ 300.000?
# Definir cenários e probabilidades
receitas <- c(-100000, 200000, 500000)
probabilidades <- c(0.30, 0.50, 0.20)
# Função de simulação
simulacao_receita <- function() {
sample(receitas, size = 1, prob = probabilidades, replace = TRUE)
}
# Simulação de Monte Carlo com 10.000 repetições
# fixa a semente para reprodutibilidade
set.seed(123)
simulacoes <- 10000
receitas_simuladas <- replicate(simulacoes, simulacao_receita())
# 1. Receita liquida esperada
receita_esperada <- mean(receitas_simuladas)
receita_esperada
[1] 168650
[1] 0.7006
[1] 0.1949
Gestão de Riscos Operacionais
Cenário: Uma transportadora precisa avaliar os custos extras mensais devido a problemas operacionais (acidentes, multas, manutenção não programada). Historicamente, os custos extras seguem este padrão:
Perguntas:
Use simulação de Monte Carlo com 15.000 repetições para estimar o custo extra médio mensal.
Qual a probabilidade de os custos extras mensais excederem R$ 25.000?
Para fins de planejamento orçamentário, qual valor a empresa deveria reservar mensalmente para cobrir custos extras em 90% dos casos?
# Definir cenários e probabilidades
custos_extras <- c(5000, 15000, 35000, 60000)
probabilidades <- c(0.40, 0.35, 0.20, 0.05)
# Função de simulação
simulacao_custos <- function() {
sample(custos_extras, size = 1, prob = probabilidades, replace = TRUE)
}
# 1. Simulação de Monte Carlo com 15.000 repetições
set.seed(456)
simulacoes <- 15000
custos_simulados <- replicate(simulacoes, simulacao_custos())
# Custo extra médio mensal
custo_extra_medio <- mean(custos_simulados)
custo_extra_medio
[1] 17399.333
[1] 17250
[1] 0.25406667
# 3. Valor para cobertura de 90% dos casos
percentil_90 <- quantile(custos_simulados, 0.90)
percentil_90
90%
35000
Para Fundamentos de Probabilidade:
Instruções
Prof. Washington Silva - Introdução à Ciência de Dados