Financial Time Series Models (ARCH/GARCH)

Exploration of the Volatility Dynamics of the USD Index

Literature Review

Using an ARCH/GARCH model on the USD index is crucial for several key reasons. Firstly, it excels in forecasting financial time series volatility, which is vital for investors and policymakers in anticipating market fluctuations. This is especially important for risk management in international trade and investment, as understanding the volatility of the USD index allows businesses and investors to make more informed decisions and mitigate potential risks. Additionally, since the USD index is a significant economic indicator, reflecting the value of the U.S. dollar relative to a basket of foreign currencies, employing an ARCH model can offer deeper insights into the dynamics of currency markets. These insights are invaluable for economic policy and strategy formulation. Furthermore, for companies engaged in international business, accurately modeling USD index volatility can assist in strategic planning, particularly in currency hedging and pricing strategies. Finally, by providing a more accurate understanding of future price movements and volatility, ARCH models contribute to enhancing the efficiency of financial markets, benefiting a wide range of market participants. Overall, the application of an ARCH model to the USD index is essential for better market understanding, effective risk management, and strategic economic decision-making.

Data Processing

The first plot shows the USD Index value over time, illustrating how the strength of the US dollar has changed against a basket of foreign currencies. It highlights a significant dip around 2008, which aligns with the financial crisis, followed by a general upward trend with some intermittent volatility, reflecting various economic conditions and policy changes.

The second plot represents the returns of the USD Index over the same time frame. Unlike the first plot, which shows the value, this one focuses on the rate of change, indicating the volatility of the returns. The returns fluctuate around zero, with several spikes both upwards and downwards, which suggests periods of increased volatility.


ARMA Model Fitting

In the ACF plot for the squared returns, significant autocorrelation at various lags that exceed the confidence bands is observed. This indicates that there is volatility clustering in the data, where large changes in returns tend to be followed by large changes, and small changes tend to be followed by small changes.

The PACF plot for the squared returns also shows some significant spikes at early lags, which may indicate that there is a relationship between the current squared return and its previous values that is not explained by its more recent past.


Hyperparameter Tuning

Both AIC and AICc indicate that an ARMA(1,0) model is preferred, implying the data is best described by one autoregressive term. In contrast, BIC points to a simpler ARMA(0,0) model, implying that the returns might be random and not significantly influenced by past values.

Model fitting with minimum AIC:
 1, 0, 0, 3652.88456117709, 3672.11137999501, 3652.88991473497

Model fitting with minimum AICc:
 1, 0, 0, 3652.88456117709, 3672.11137999501, 3652.88991473497

Model fitting with minimum BIC:
 0, 0, 0, 3659.15114148268, 3671.96902069463, 3659.15381766466


Model Diagnostics

The ARMA(1,0) model’s diagnostics indicate a good fit for the usd_return data, with no significant autocorrelation in the residuals and a generally normal distribution of standardized residuals. The convergence of the model and low AIC, AICc, and BIC values also support its adequacy.

 [1] "Call:"                                                                                 
 [2] "arima(x = xdata, order = c(p, d, q), seasonal = list(order = c(P, D, Q), period = S), "
 [3] "    xreg = xmean, include.mean = FALSE, transform.pars = trans, fixed = fixed, "       
 [4] "    optim.control = list(trace = trc, REPORT = 1, reltol = tol))"                      
 [5] ""                                                                                      
 [6] "Coefficients:"                                                                         
 [7] "         ar1   xmean"                                                                  
 [8] "      0.0429  0.0043"                                                                  
 [9] "s.e.  0.0149  0.0057"                                                                  
[10] ""                                                                                      
[11] "sigma^2 estimated as 0.132:  log likelihood = -1823.44,  aic = 3652.88"                
[12] ""                                                                                      
[13] "$degrees_of_freedom"                                                                   
[14] "[1] 4485"                                                                              
[15] ""                                                                                      
[16] "$ttable"                                                                               
[17] "      Estimate     SE t.value p.value"                                                 
[18] "ar1     0.0429 0.0149  2.8766  0.0040"                                                 
[19] "xmean   0.0043 0.0057  0.7579  0.4486"                                                 
[20] ""                                                                                      
[21] "$AIC"                                                                                  
[22] "[1] 0.814104"                                                                          
[23] ""                                                                                      
[24] "$AICc"                                                                                 
[25] "[1] 0.8141046"                                                                         
[26] ""                                                                                      
[27] "$BIC"                                                                                  
[28] "[1] 0.818389"                                                                          
[29] ""                                                                                      

GARCH Model Fitting

The ACF and PACF plots of the squared residuals from the ARMA(1,0) model indicate the presence of volatility clustering. The significant spikes across various lags in the ACF plot suggest an ARCH effect. This pattern implies that ARCH or GARCH is more appropriate for capturing the observed volatility dynamics in the USD index returns.


Hyperparameter Tuning

The GARCH(1,1) model parameters suggest that volatility shocks have a significant impact on current volatility, with a high persistence of these shocks over time. This indicates a stable model with long-lasting effects of volatility in the data.


Call:
garch(x = res, order = c(q, p), trace = F)

Coefficient(s):
       a0         a1         b1  
0.0005776  0.0535034  0.9440053  


Model Summary

The GARCH(1,1) model indicates significant volatility patterns in the USD index returns. High significance of model coefficients suggests that past volatility has a strong influence on future volatility. The Jarque-Bera test shows that the return distribution is not normal, hinting at the potential for extreme movements. The Box-Ljung test confirms that the model captures these patterns well.


Call:
garch(x = res, order = c(1, 1), trace = FALSE)

Model:
GARCH(1,1)

Residuals:
     Min       1Q   Median       3Q      Max 
-6.06950 -0.59906 -0.02512  0.59002  6.72451 

Coefficient(s):
    Estimate  Std. Error  t value Pr(>|t|)    
a0 0.0005776   0.0001327    4.355 1.33e-05 ***
a1 0.0535034   0.0031997   16.721  < 2e-16 ***
b1 0.9440053   0.0031733  297.481  < 2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Diagnostic Tests:
    Jarque Bera Test

data:  Residuals
X-squared = 951.23, df = 2, p-value < 2.2e-16


    Box-Ljung test

data:  Squared.Residuals
X-squared = 0.098419, df = 1, p-value = 0.7537


Final Model

\[ x_t = \mu + z_t \] \[z_t=\sigma_t \epsilon_t\]

\[\sigma_t = 0.0005776 + 0.0535034 (z_{t-1}) + 0.9440053 (\sigma_{t-1})\]

Forecasting

The plot suggests that the model expects the variable to remain relatively stable in the near future. The fact that the bands are quite narrow suggests the model is confident about its forecasts.

The volatility plot from the GARCH model on USD returns highlights periods of heightened volatility with shaded areas, aligning with significant economic events. Notably, the plot shows increased volatility during the 2008-2009 global financial crisis, the 2010 European debt crisis, the 2020 COVID-19 pandemic, and the 2022-2023 Federal Reserve Inflationary Countermeasure. The accompanying R code snippet details the creation of this plot, plotting estimated volatility against time and marking key periods with shaded rectangles. This visual analysis suggests that the U.S. Dollar Index experienced its most significant volatility during these marked economic events, as shown by the frequency and magnitude of the peaks in the plot.