Relatório Mensal de Derivativos
UNIVERSIDADE FEDERAL DA PARAÍBA
Introdução
Neste relatório, serão analisados duas das principais commodities negociadas no Brasil: a soja e o boi gordo. Ambos os produtos são fundamentais para o setor agropecuário brasileiro, sendo fortemente influenciados por variáveis econômicas como exportação, importação, estoque, disponibilidade interna e produção.
O objetivo deste relatório é explorar as dinâmicas dos preços no mercado futuro com fins especulativos. Para isso, será utilizada uma abordagem quantitativa, aplicando técnicas estatísticas, como a metodologia dos Mínimos Quadrados Ordinários (MQO) e testes nos resíduos, para verificar a robustez e a validade dos modelos estimados. Esse processo será realizado, principalmente, para definir como o preço spot pode afetar marginalmente o preço futuro. A análise dessas variáveis fornece informações valiosas sobre a formação de preços e a relação entre os mercados spot e futuro, além de destacar as tendências recentes de oferta e demanda que afetam diretamente esses mercados.
Boi Gordo
O Boi Gordo é uma das principais commodities agropecuárias produzidas no Brasil. A cadeia produtiva do boi gordo abrange desde a reprodução e engorda até o abate e comercialização, passando por uma série de processos que envolvem cuidados veterinários e manejo alimentar. Além dos produtores é importante destacar os frigoríficos, que são um dos principais responsáveis pela logística da carne em nível nacional e internacional.
O gráfico abaixo mostra a evolução do rebanho bovino, onde podemos ver que atualmente o Brasil chega no seu auge de produção com 242.931.900 milhões de cabeças de gado, atingindo seu maior patamar. Essa maior oferta gerou um impacto considerável nos preços spot e futuro.
A exportação de carne bovina brasileira foi um dos pontos de maior destaque dos últimos anos, até o atual momento de 2024 o volume exportado chegou a 109,7 mil toneladas até a terceira semana de agosto. O surpreendente volume de exportações representou uma das maiores âncoras para os preços da @. O gráfico abaixo mostra a evolução histórica das exportações da carcaça entre os periodos de 1997 até o atual momento de 2024.
De acordo com dados da Secex, no primeiro semestre, foram enviadas 1,14 milhão de toneladas de carne bovina in natura ao exterior, 29% a mais que no mesmo período do ano passado. Em julho, os embarques seguiram recordes.
O gráfico abaixo mostra a disponibilidade per capita, que representa a quantidade de carne bovina disponível para consumo por pessoa em um determinado período, nele podemos ver uma situação diferente das outras que foram apresentadas, onde esta está em uma situação pior do que em outros anos e não apresenta a mesma tendência dos outros gráficos, isso mesmo com o crescimento da produção brasileira de carne.
Segundo o Cepea, em seu último relatório (07/2024), a renda do brasileiro tem crescido, e, com isso, também aumentam as perspectivas de crescimento do consumo de carne bovina. De acordo com cálculos dos pesquisadores do Cepea, uma elevação de 1% na renda tem o potencial de aumentar em aproximadamente 0,7% o consumo de carne bovina de primeira, enquanto pode reduzir em quase 1% as compras de carnes de segunda.
Mesmo com as exportações recordes registradas, os preços da arroba caíram significativamente durante os primeiros meses do ano, ficando abaixo de R$ 230,00 por várias semanas. Essa pressão sobre os preços foi fortemente sentida pelos produtores. Como resposta, eles passaram a abater fêmeas para reduzir a oferta de bezerros, o que influenciou diretamente a cadeia produtiva, reduzindo a oferta futura de boi gordo.
O abate de fêmeas pelos produtores, com o objetivo de reduzir a oferta e alcançar preços mais confortáveis, é comumente associado ao ciclo pecuário. O ciclo possui três etapas fundamentais. Na primeira, os preços da carne estão elevados, incentivando os produtores a aumentar a oferta, o que resulta na retenção de fêmeas para expandir o rebanho. Na segunda fase, o aumento da oferta impacta negativamente os preços, diminuindo a lucratividade para os produtores e forçando-os a abater fêmeas. Por fim, na terceira etapa, o abate de fêmeas reduz a oferta, o que faz com que os preços voltem a subir.
O gráfico abaixo mostra a evolução dos preços spot e futuros entre 2014 e 2024, permitindo contextualizar o ciclo atual da pecuária. Em 2022, o preço spot atingiu seu pico de R$ 344,71, enquanto o preço futuro alcançou R$ 343,94. Esse aumento foi causado principalmente pela demanda de exportação no período, além da baixa oferta de animais prontos para o abate. Esses preços incentivaram os produtores, resultando na oferta recorde que observamos atualmente.
Atualmente, os preços da arroba vêm se recuperando, apresentando uma tendência de alta consistente há alguns meses. No entanto, ainda existem fatores que pressionam os preços, sendo um dos mais relevantes o confinamento de animais, que coloca os frigoríficos em uma situação mais confortável em relação à oferta. Mesmo assim, considerando o Agromensal do Cepea, que sinalizou um possível aumento na demanda interna, além das exportações, é esperado que os preços continuem subindo.
Preços Spot
Preços Futuros
Ciclo e Decomposição
Soja
A soja é uma das principais commodities agrícolas do Brasil, o Brasil, por sua vez é um dos maiores produtores e exportadores mundiais de soja, abastecendo diversas cadeias produtivas, desde a alimentação animal até a produção de biocombustíveis, além disso é importante mensionar que a soja brasileira é reconhecida internacionalmente pela sua extrema qualidade.
No mercado de grãos, a soja é fundamental para a alimentação animal, sendo uma fonte essencial de proteína para a produção de rações. A dinâmica dos preços desses produtos é influenciada por uma série de fatores, incluindo a oferta e demanda global, a produção doméstica, os estoques, e as políticas comerciais de grandes mercados consumidores como a China.
Os gráficos abaixo mostram a evolução das últimas safras de soja brasileiras entre 2020 e 2024, tanto para o grão, quanto o farelo e o óleo.
Atualmente, os preços da soja estão refletindo o crescimento abrupto na oferta mundial, em função da safra recorde que está sendo produzida nos EUA. Segundo o relatório do USDA publicado em 12 de agosto, a produção para 2024/25 é estimada em 4,6 bilhões de bushels, um aumento de 154 milhões em relação ao mês anterior, devido a uma área maior. A área colhida é projetada em 86,3 milhões de acres, um aumento de 1 milhão de acres em relação ao mês passado.
Os suprimentos de soja para 2024/25 são projetados em 4,9 bilhões de bushels, um aumento de 11% em relação ao ano anterior. Os estoques finais são estimados em 560 milhões de bushels, um aumento de 125 milhões em relação ao mês passado.
As exportações de soja dos EUA são previstas para aumentar em 25 milhões de bushels devido ao aumento da oferta. O preço médio da soja para 2024/25 é projetado em $10,80 por bushel, uma redução de $0,30 em relação ao mês anterior. Os preços da farinha de soja e do óleo de soja também foram ajustados, com a farinha reduzida para $320 por tonelada curta e o óleo mantido em 42 centavos por libra.
Por fim, a produção global de soja para 2024/25 foi aumentada em 6,9 milhões de toneladas, totalizando 428,7 milhões de toneladas. Isso se deve a aumentos na produção dos EUA, Ucrânia, Rússia, Índia e Benin. As exportações globais de soja são aumentadas em 1 milhão de toneladas, totalizando 181,2 milhões de toneladas.
Essa maior oferta de soja e seus derivados dos EUA pode acabar afetando os produtores brasileiros. Mesmo com uma qualidade superior do grão, os preços menores da soja americana causados pela maior oferta fazem com que o produto se torne mais competitivo.
Para o produtor brasileiro, segundo o Agromensal do Cepea os preços e os prêmios de exportação do óleo de soja subiram no Brasil em julho, impulsionados pela maior demanda, sobretudo de indústrias domésticas de biodiesel.
Ciclo e Decomposição
Resultado da Última Semana
| Data | Resultado Boi Gordo(%) | Resultado Soja(%) |
|---|---|---|
| 12/08/2024 | - | - |
| 13/08/2024 | -4,50 | -0,15 |
| 14/08/2024 | -0,50 | -1,15 |
| 15/08/2024 | -0,50 | 2,53 |
| 16/08/2024 | -0,50 | 0,70 |
Regressões
Código
Mensal_boi <- lm(boiS ~ boif)
Mensal_soja <- lm(SojaS ~ Sojaf)Boi Gordo Spot x Futuro
Código
summary(Mensal_boi)
Call:
lm(formula = boiS ~ boif)
Residuals:
Min 1Q Median 3Q Max
-38.428 -2.927 0.138 2.824 17.955
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 13.97286 4.21708 3.313 0.0012 **
boif 0.94428 0.01509 62.590 <0.0000000000000002 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 6.493 on 126 degrees of freedom
Multiple R-squared: 0.9688, Adjusted R-squared: 0.9686
F-statistic: 3917 on 1 and 126 DF, p-value: < 0.00000000000000022
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(Mensal_boi); head(residuos) 1 2 3 4 5 6
-1.3538003 -4.3807467 -3.1163002 1.2061731 2.5533822 0.6771623
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 537.193
P VALUE:
Asymptotic p Value: < 0.00000000000000022
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Mensal_boi, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Mensal_boi
GQ = 4.3436, df1 = 53, df2 = 52, p-value = 0.0000001967
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(Mensal_boi)
studentized Breusch-Pagan test
data: Mensal_boi
BP = 4.0908, df = 1, p-value = 0.04312
Teste de White:
Código
library(whitestrap)
white_test(Mensal_boi)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 8.52
P-value: 0.014123
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(Mensal_boi)
Durbin-Watson test
data: Mensal_boi
DW = 2.1435, p-value = 0.769
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(Mensal_boi, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: Mensal_boi
LM test = 4.3722, df = 4, p-value = 0.358
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 3.1139, df = 4, p-value = 0.5389
Soja Spot x Futura
Código
summary(Mensal_soja)
Call:
lm(formula = SojaS ~ Sojaf)
Residuals:
Min 1Q Median 3Q Max
-27.6837 -4.4608 -0.1208 6.2816 26.5271
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 9.69045 5.86456 1.652 0.101
Sojaf 0.88104 0.03858 22.835 <0.0000000000000002 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 10.36 on 126 degrees of freedom
Multiple R-squared: 0.8054, Adjusted R-squared: 0.8038
F-statistic: 521.4 on 1 and 126 DF, p-value: < 0.00000000000000022
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(Mensal_soja); head(residuos) 1 2 3 4 5 6
-1.856731 17.296668 14.280171 14.698587 12.546201 -3.225554
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 1.6925
P VALUE:
Asymptotic p Value: 0.429
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Mensal_soja, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Mensal_soja
GQ = 1.3034, df1 = 53, df2 = 52, p-value = 0.1704
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(Mensal_soja)
studentized Breusch-Pagan test
data: Mensal_soja
BP = 6.273, df = 1, p-value = 0.01226
Teste de White:
Código
library(whitestrap)
white_test(Mensal_soja)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 6.39
P-value: 0.041038
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(Mensal_soja)
Durbin-Watson test
data: Mensal_soja
DW = 0.59512, p-value = 0.0000000000000002831
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(Mensal_soja, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: Mensal_soja
LM test = 68.533, df = 4, p-value = 0.0000000000000463
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 36.791, df = 4, p-value = 0.0000001989
Janelamento dos Preços
Código
boif_janela <- window(boif, start = c(2021, 1), end = c(2024, 8))
boiS_janela <- window(boiS, start = c(2021, 1), end = c(2024, 8))
sojaf_janela <- window(sojaf, start = c(2021, 1), end = c(2024, 7))
SojaS_janela <- window(SojaS, start = c(2021, 1), end = c(2024, 7))
dolar_janela <- window(dolar, start = c(2021, 1), end = c(2024, 7))Código
Mensal_boiJ <- lm(boif_janela ~ boiS_janela)
Mensal_sojaJ <- lm(sojaf_janela ~ SojaS_janela)Boi Gordo Spot x Futura
Código
summary(Mensal_boiJ)
Call:
lm(formula = boif_janela ~ boiS_janela)
Residuals:
Min 1Q Median 3Q Max
-19.5075 -4.6360 -0.1932 3.9679 21.4693
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -6.16560 8.06195 -0.765 0.449
boiS_janela 1.02354 0.02745 37.282 <0.0000000000000002 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 7.91 on 42 degrees of freedom
Multiple R-squared: 0.9707, Adjusted R-squared: 0.97
F-statistic: 1390 on 1 and 42 DF, p-value: < 0.00000000000000022
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(Mensal_boiJ); head(residuos) 1 2 3 4 5 6
8.9153457 -2.2977780 4.2356278 -5.0692314 1.9026058 0.7498359
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 2.2663
P VALUE:
Asymptotic p Value: 0.322
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Mensal_boiJ, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Mensal_boiJ
GQ = 1.3263, df1 = 17, df2 = 16, p-value = 0.2885
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(Mensal_boiJ)
studentized Breusch-Pagan test
data: Mensal_boiJ
BP = 1.8198, df = 1, p-value = 0.1773
Teste de White:
Código
library(whitestrap)
white_test(Mensal_boiJ)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 1.82
P-value: 0.402488
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(Mensal_boiJ)
Durbin-Watson test
data: Mensal_boiJ
DW = 2.3896, p-value = 0.8769
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(Mensal_boiJ, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: Mensal_boiJ
LM test = 5.6876, df = 4, p-value = 0.2237
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 11.23, df = 4, p-value = 0.0241
Soja Spot x Futura
Código
summary(Mensal_sojaJ)
Call:
lm(formula = sojaf_janela ~ SojaS_janela)
Residuals:
Min 1Q Median 3Q Max
-23.121 -7.265 -1.334 9.197 23.670
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 7.81371 13.86902 0.563 0.576
SojaS_janela 0.98337 0.08438 11.654 0.0000000000000136 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 11.54 on 41 degrees of freedom
Multiple R-squared: 0.7681, Adjusted R-squared: 0.7625
F-statistic: 135.8 on 1 and 41 DF, p-value: 0.00000000000001365
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(Mensal_sojaJ); head(residuos) 1 2 3 4 5 6
2.849246 -6.240302 -12.260349 -16.714617 -6.929790 -1.132985
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 1.1185
P VALUE:
Asymptotic p Value: 0.5716
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Mensal_sojaJ, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Mensal_sojaJ
GQ = 1.6392, df1 = 17, df2 = 16, p-value = 0.1645
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(Mensal_sojaJ)
studentized Breusch-Pagan test
data: Mensal_sojaJ
BP = 0.32933, df = 1, p-value = 0.5661
Teste de White:
Código
library(whitestrap)
white_test(Mensal_sojaJ)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 0.4
P-value: 0.819832
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(Mensal_sojaJ)
Durbin-Watson test
data: Mensal_sojaJ
DW = 0.53724, p-value = 0.000000001349
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(Mensal_sojaJ, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: Mensal_sojaJ
LM test = 23.948, df = 4, p-value = 0.00008183
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 8.1328, df = 4, p-value = 0.08683
Corrigindo Altocorrelação da Soja
Código
lag <- stats::lag
Regressao <- dynlm(sojaf_janela ~ SojaS_janela + lag(sojaf_janela,-1))
summary(Regressao)
Time series regression with "ts" data:
Start = 2021(2), End = 2024(7)
Call:
dynlm(formula = sojaf_janela ~ SojaS_janela + lag(sojaf_janela,
-1))
Residuals:
Min 1Q Median 3Q Max
-16.363 -3.901 1.422 5.024 12.050
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.98005 8.87517 -0.110 0.9126
SojaS_janela 0.28235 0.09974 2.831 0.0073 **
lag(sojaf_janela, -1) 0.72528 0.08760 8.280 0.000000000403 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 7.117 on 39 degrees of freedom
Multiple R-squared: 0.9109, Adjusted R-squared: 0.9063
F-statistic: 199.3 on 2 and 39 DF, p-value: < 0.00000000000000022
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(Regressao); head(residuos) Feb 2021 Mar 2021 Apr 2021 May 2021 Jun 2021 Jul 2021
-6.488354 -1.927998 -2.827727 -4.898634 -14.978002 7.775759
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 2.8653
P VALUE:
Asymptotic p Value: 0.2387
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Regressao, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Regressao
GQ = 1.3285, df1 = 15, df2 = 14, p-value = 0.3004
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(Regressao)
studentized Breusch-Pagan test
data: Regressao
BP = 2.5124, df = 2, p-value = 0.2847
Teste de White:
Código
library(whitestrap)
white_test(Regressao)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 0.68
P-value: 0.710153
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(Regressao)
Durbin-Watson test
data: Regressao
DW = 1.3001, p-value = 0.00458
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(Regressao, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: Regressao
LM test = 6.1834, df = 4, p-value = 0.1859
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 4.5439, df = 4, p-value = 0.3374
Usando Dolar na Regressão da Soja
Soja Spot x Futura
Código
lag <- stats::lag
RegreD <- dynlm(sojaf_janela ~ SojaS_janela + lag(sojaf_janela,-1)+dolar_janela)
summary(RegreD)
Time series regression with "ts" data:
Start = 2021(2), End = 2024(7)
Call:
dynlm(formula = sojaf_janela ~ SojaS_janela + lag(sojaf_janela,
-1) + dolar_janela)
Residuals:
Min 1Q Median 3Q Max
-16.476 -3.364 2.000 4.039 12.247
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 164.069823 142.055454 1.155 0.2553
SojaS_janela 0.246180 0.104037 2.366 0.0232 *
lag(sojaf_janela, -1) 0.646516 0.110370 5.858 0.000000892 ***
dolar_janela -0.007566 0.006499 -1.164 0.2516
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 7.085 on 38 degrees of freedom
Multiple R-squared: 0.914, Adjusted R-squared: 0.9072
F-statistic: 134.5 on 3 and 38 DF, p-value: < 0.00000000000000022
Resíduos
Código
#----Residuos-----#
par(mfrow = c(1,1))
residuos <- residuals(RegreD); head(residuos) Feb 2021 Mar 2021 Apr 2021 May 2021 Jun 2021 Jul 2021
-7.049711 -2.608743 -2.957989 -5.216980 -16.476273 4.626316
Código
plot(residuos, type="l", col="red")
abline(h=0, col="blue", lw=3)Código
par(mfrow=c(1,2))
hist(residuos, main="", col="cadetblue", prob=T, xlab = names(residuos)[1], breaks = 30)
curve(expr=dnorm(x,mean=mean(residuos),sd=sd(residuos)),col="red",add= TRUE, lwd=2)
qqnorm(residuos, col="blue")
qqline(residuos, col="red")Normalidade
Código
#----Normalidade------#
jarqueberaTest(residuos)
Title:
Jarque - Bera Normalality Test
Test Results:
STATISTIC:
X-squared: 3.5498
P VALUE:
Asymptotic p Value: 0.1695
Testes para presença de heteroscedasticidade
Teste de Goldfeld-Quandt:
Código
gqtest(Mensal_sojaJ, fraction = length(residuos)*0.15, alternative = "greater")
Goldfeld-Quandt test
data: Mensal_sojaJ
GQ = 1.6392, df1 = 17, df2 = 16, p-value = 0.1645
alternative hypothesis: variance increases from segment 1 to 2
Teste de Breusch-Pagan-Godfrey:
Código
bptest(RegreD)
studentized Breusch-Pagan test
data: RegreD
BP = 2.3181, df = 3, p-value = 0.5091
Teste de White:
Código
library(whitestrap)
white_test(RegreD)White's test results
Null hypothesis: Homoskedasticity of the residuals
Alternative hypothesis: Heteroskedasticity of the residuals
Test Statistic: 0.13
P-value: 0.938736
Testes de autocorrelação
Teste de Durbin Watson:
Código
dwtest(RegreD)
Durbin-Watson test
data: RegreD
DW = 1.2589, p-value = 0.001804
alternative hypothesis: true autocorrelation is greater than 0
Teste de Breusch-Godfrey (1978):
Código
bgtest(RegreD, order = 4)
Breusch-Godfrey test for serial correlation of order up to 4
data: RegreD
LM test = 10.63, df = 4, p-value = 0.03106
Teste de Arch:
Código
ArchTest(residuos, lags = 4)
ARCH LM-test; Null hypothesis: no ARCH effects
data: residuos
Chi-squared = 5.1539, df = 4, p-value = 0.2719
Conclusão da Regressão
Após corrigir os probelmas de heteroscedasticidade, altocorrelação e ter mantido a normalidade da série é possivel avaliar por meio das regressões que foram feitas o efeito marginal dos preços spot sobre os preços Futuros a apartir dos Betas.
Para cada R$ 1,00 em spot de boi gordo, futuro varia em R$ 1,02354.
Para cada R$ 1,00 em spot de soja, futuro varia em R$ 0,28235