Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Graphical copula GARCH modeling with dynamic conditional dependence

Lupe S. H. Chan   
The Hong Kong University of Science and Technology
and
Amanda M. Y. Chu
The Education University of Hong Kong
and
Mike K. P. So
The Hong Kong University of Science and Technology
Corresponding author
Abstract

Modeling returns on large portfolios is a challenging problem as the number of parameters in the covariance matrix grows as the square of the size of the portfolio. Traditional correlation models, for example, the dynamic conditional correlation (DCC)-GARCH model, often ignore the nonlinear dependencies in the tail of the return distribution. In this paper, we aim to develop a framework to model the nonlinear dependencies dynamically, namely the graphical copula GARCH (GC-GARCH) model. Motivated from the capital asset pricing model, to allow modeling of large portfolios, the number of parameters can be greatly reduced by introducing conditional independence among stocks given some risk factors. The joint distribution of the risk factors is factorized using a directed acyclic graph (DAG) with pair-copula construction (PCC) to enhance the modeling of the tails of the return distribution while offering the flexibility of having complex dependent structures. The DAG induces topological orders to the risk factors, which can be regarded as a list of directions of the flow of information. The conditional distributions among stock returns are also modeled using PCC. Dynamic conditional dependence structures are incorporated to allow the parameters in the copulas to be time-varying. Three-stage estimation is used to estimate parameters in the marginal distributions, the risk factor copulas, and the stock copulas. The simulation study shows that the proposed estimation procedure can estimate the parameters and the underlying DAG structure accurately. In the investment experiment of the empirical study, we demonstrate that the GC-GARCH model produces more precise conditional value-at-risk prediction and considerably higher cumulative portfolio returns than the DCC-GARCH model.

1 Introduction

Portfolio selection for large portfolios is often a challenging problem. The mean-variance optimization introduced by \textcitemarkowitz provides a framework to decide the allocation of a set of assets by balancing the risk and return. The problem is also known as the minimum variance (MV) optimization if we do not specify the target return. To take the extreme scenarios into account (for example, catastrophic losses), \textciterockafellar2000optimization proposes an efficient formulation to minimize the Conditional Value-at-Risk (CVaR) of the portfolio. These optimization problems require us to estimate the covariance matrix and the CVaR of the portfolio. However, the number of parameters in the covariance matrix grows quadratically in the size of the portfolio, and the traditional models often omit the nonlinear dependence in the tails due to the assumption of multivariate normality or multivariate t𝑡titalic_t, which may give poor CVaR predictions.

The capital asset pricing model (CAPM) developed by \textcitesharpe1964capital and \textcitelintner1975valuation has often been adopted in the literature, and uses a smaller number of risk factors to capture the co-movements among a large portfolio of stocks, so as to reduce the number of parameters in the estimation. Several works attempt to apply the CAPM to reduce the dimension in the covariance estimation \parencitefan2008high,fan2011high,engle2019large. Nevertheless, these works are limited to multivariate normal distribution or multivariate t𝑡titalic_t distribution. These multivariate distributions fail to capture the nonlinear dependencies in the tails, which are crucial for the portfolio selection when we consider the minimum CVaR problem.

To effectively capture time series properties of high-dimensional returns, we also need to take the dynamic dependence features into account. \textciteDCC_model and \textciteDCC_GARCH propose the dynamic conditional correlation (DCC)-GARCH models to model the dynamic correlations. However, these models again fail to capture the non-linear dependencies in the tails. The literature provides evidence that assets are more likely to co-move in extreme scenarios \parencitejang2002asian,jiang2017financial. It motivates us to develop a model that can reduce the dimension of parameters, and in the meantime, also capture non-linear dependence in the tails dynamically.

\textcite

sklar1959fonctions introduces the framework of the copula, which promotes flexibility to model the marginal distributions of the variables and their multivariate dependencies separately. Several works introduce copula-GARCH models \parencitejondeau2006copula,huang2009estimating,aloui2013conditional,lee2009copula,mayer2023estimation, where the marginal time series are assumed to follow GARCH structures, and the multivariate dependencies among variables are modeled using multivariate copulas. Time-varying dependence structures can also be incorporated \parencitelu2014portfolio,wang2011dynamic,ozun2007portfolio. A drawback of the multivariate copula is that some copula parameters are applied to all variables to capture the non-linear dependence structure. For example, in the multivariate t𝑡titalic_t-copula, the degrees of freedom is shared among all variables to explain the tail dependencies. This could still be too restrictive as the tail dependencies may vary across different pairs of variables.

Pair-copula construction (PCC) has been used to further flexibilize the copula-GARCH models, where the joint distribution is decomposed into a product of bivariate copulas based on a hierarchical structure, allowing the copula parameters to vary for different pairs of variables. Vine decomposition proposed by \textcitejoe1997multivariate is one of the methods to define the hierarchy in the PCC. Vine-copula GARCH models are used in modeling financial returns in the literature \parencitebrechmann2013risk,vine_copula,min2010bayesian,acar2019flexible. \textcitemin2010bayesian,vine_copula use the Markov chain Monte Carlo (MCMC) methods for parameter estimation in vine-copula GARCH models. Besides, \textcitebauer2016pair,pairwise_copula_constructions attempt to use Bayesian networks (BN) to specify the hierarchical structures among variables in the PCC. Bayesian networks are graphical models to represent dependence structures among variables using directed acyclic graphs (DAG), where the nodes in the DAG represent variables, and the directed edges in the DAG represent the dependence structures. The advantage of using BN is that we can specify topological orders for the variables in the BN, where topological orders give a linear ordering of the variables in the BN. The topological orders of a BN of stock returns can be regarded as the flow of information or risk in the financial market \parencitechan2023moving,garvey2015analytical, which provide a natural way to set up a hierarchy in the variables for PCC. Furthermore, PCCs using BN are more parsimonious than that using vine copula models in general due to its focus on conditional independence \parencitebauer2016pair; the number of copulas to be estimated in PCCs using BN is smaller than or equal to that using vine decomposition.

In this paper, we aim to develop a Graphical Copula GARCH (GC-GARCH) framework to model the nonlinear dependencies in the tails among a large portfolio of stocks (say, 100 stocks). The GC-GARCH model consists of the following four components:

  1. (1)

    The conditional independence of stock returns given the risk factors motivated from the Capital Asset Pricing Model (CAPM).

  2. (2)

    The use of a directed acyclic graph to define the dependence structures of the risk factors.

  3. (3)

    To specify the conditional distributions of returns using pair-copula constructions.

  4. (4)

    To impose time-varying dependence structures through copula parameters.

Having these four components, we can greatly reduce the dimensionality in the parameter estimation; in the meantime, we can explain dynamically the nonlinear dependencies among stocks from the market indexes using the copulas, where the market indexes are hierarchized naturally using a DAG.

The rest of the paper is as follows. In Section 2, we provide details of the methodology of the GC-GARCH model and explain the logic of the above four components. In Section 3, we discuss the computational issues in the GC-GARCH model. In Section 4, we derive the likelihood functions and posterior distributions, and provide algorithms for parameter estimation and DAG estimation. In Section 5, we discuss how we use the GC-GARCH model in portfolio selection. In Section 6, we provide the results of a simulation study to illustrate that the estimation algorithms in Section 4 can recover the parameters and the underlying DAG accurately. In Section 7, we present findings of the empirical study by applying the GC-GARCH model to a portfolio of 92 stocks with 10 market indexes. We also compare the predictive performance between the GC-GARCH model and the DCC-GARCH model. In Section 8, we present our conclusions and a discussion of the paper.

2 Methodology

We denote the m𝑚mitalic_m risk factor returns and p𝑝pitalic_p stock returns on day t𝑡titalic_t by r1,t,,rm,tsubscript𝑟1𝑡subscript𝑟𝑚𝑡r_{1,t},\ldots,r_{m,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT, and rm+1,t,,rm+p,tsubscript𝑟𝑚1𝑡subscript𝑟𝑚𝑝𝑡r_{m+1,t},\ldots,r_{m+p,t}italic_r start_POSTSUBSCRIPT italic_m + 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT, respectively, for t=1,2,,T𝑡12𝑇t=1,2,\ldots,Titalic_t = 1 , 2 , … , italic_T. To model nonlinear dependence among risk factor returns and stock returns dynamically, we are interested in developing F[t](r1,t,,rm+p,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡F^{[t]}(r_{1,t},\ldots,r_{m+p,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ), the joint distribution function of r1,t,,rm,t,rm+1,t,,rm+p,tsubscript𝑟1𝑡subscript𝑟𝑚𝑡subscript𝑟𝑚1𝑡subscript𝑟𝑚𝑝𝑡r_{1,t},\ldots,r_{m,t},r_{m+1,t},\ldots,r_{m+p,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT italic_m + 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT given t1subscript𝑡1\mathcal{F}_{t-1}caligraphic_F start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT, the information set up to time t1𝑡1t-1italic_t - 1. We further let D={D1,,DT}𝐷subscript𝐷1subscript𝐷𝑇D=\{D_{1},\ldots,D_{T}\}italic_D = { italic_D start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_D start_POSTSUBSCRIPT italic_T end_POSTSUBSCRIPT } be the set of data containing all returns from day 1111 to day T𝑇Titalic_T, where Dt={r1,t,,rm+p,t}subscript𝐷𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡D_{t}=\{r_{1,t},\ldots,r_{m+p,t}\}italic_D start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT } contains all returns on day t𝑡titalic_t, t=1,,T𝑡1𝑇t=1,\ldots,Titalic_t = 1 , … , italic_T. This conditional distribution setting is inline with the usual GARCH modeling. In this paper, we develop the graphical copula GARCH (GC-GARCH) model. There are four main features in the GC-GARCH specification: (1) the conditional independence of stock returns, rm+1,t,,rm+p,tsubscript𝑟𝑚1𝑡subscript𝑟𝑚𝑝𝑡r_{m+1,t},\ldots,r_{m+p,t}italic_r start_POSTSUBSCRIPT italic_m + 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT, given the risk factors, r1,t,,rm,tsubscript𝑟1𝑡subscript𝑟𝑚𝑡r_{1,t},\ldots,r_{m,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT motivated from the Capital Asset Pricing Model (CAPM) theory; (2) the use of a directed acyclic graph to define the dependence structures of the risk factors; (3) the specification of the conditional distributions using pair-copula construction; and (4) the imposition of time-varying dependence structures in the modeling; more specifically, we allow the correlation parameters in the conditional bivariate copulas to be time varying in a similar way to the dynamic conditional correlation (DCC)-GARCH model \parenciteDCC_model,DCC_GARCH.

2.1 Conditional independence of stock returns

The first level of construction of the GC-GARCH model is through application of the conditional independence property motivated from the CAPM theory. The joint density function of stock returns and risk factor returns can be factorized into

f[t](r1,t,,rm+p,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡\displaystyle f^{[t]}(r_{1,t},\ldots,r_{m+p,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ) =f[t](rm+1,t,,rm+p,t|r1,t,,rm,t)f[t](r1,t,,rm,t)absentsuperscript𝑓delimited-[]𝑡subscript𝑟𝑚1𝑡conditionalsubscript𝑟𝑚𝑝𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡\displaystyle=f^{[t]}(r_{m+1,t},\ldots,r_{m+p,t}|r_{1,t},\ldots,r_{m,t})f^{[t]% }(r_{1,t},\ldots,r_{m,t})= italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m + 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) (1)
=[j=m+1m+pf[t](rj,t|r1,t,,rm,t)]f[t](r1,t,,rm,t),absentdelimited-[]superscriptsubscriptproduct𝑗𝑚1𝑚𝑝superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡\displaystyle=\left[\prod_{j=m+1}^{m+p}f^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{m,t})% \right]f^{[t]}(r_{1,t},\ldots,r_{m,t}),= [ ∏ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) ] italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) ,

where f[t](r1,t,,rm,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡f^{[t]}(r_{1,t},\ldots,r_{m,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) is the conditional joint density of the risk factor returns given t1subscript𝑡1\mathcal{F}_{t-1}caligraphic_F start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT. It gives a crucial property that the stock return series ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT is independent of other stock return series rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT for ij𝑖𝑗i\neq jitalic_i ≠ italic_j and i,j>m𝑖𝑗𝑚i,j>mitalic_i , italic_j > italic_m, conditional on the risk factor returns r1,t,,rm,tsubscript𝑟1𝑡subscript𝑟𝑚𝑡r_{1,t},\ldots,r_{m,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT. A similar exploration under multivariate t𝑡titalic_t distribution assumption was found in \textciterisk_factor_mapping.

2.2 Directed acyclic graph models for risk factor returns

We formulate the conditional joint distribution of the m𝑚mitalic_m risk factor returns, i.e., the term

f[t](r1,t,,rm,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡f^{[t]}(r_{1,t},\ldots,r_{m,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT )

in (1), using directed acyclic graphs (DAGs) \parencitekoller2009probabilistic. A principle of DAG is to represent possible causal or conditional independence relationships through a graph. The variables in the DAG are called nodes, and a relationship between any two variables is indicated by a directed edge. Figure 1 presents two DAGs with four nodes (i.e., m=4𝑚4m=4italic_m = 4) and multiple directed edges. Whenever there is an edge from node i𝑖iitalic_i to node j𝑗jitalic_j, we say that node i𝑖iitalic_i is a parent of node j𝑗jitalic_j, and we notate ipa(j)𝑖pa𝑗i\in\text{pa}(j)italic_i ∈ pa ( italic_j ), where pa(j)pa𝑗\text{pa}(j)pa ( italic_j ) is the parent set of node j𝑗jitalic_j. For example, in 1(a), pa(1)=pa(2)=pa1pa2\text{pa}(1)=\text{pa}(2)=\varnothingpa ( 1 ) = pa ( 2 ) = ∅ (where \varnothing denotes the empty set), pa(3)={1}pa31\text{pa}(3)=\{1\}pa ( 3 ) = { 1 }, and pa(4)={1,2,3}pa4123\text{pa}(4)=\{1,2,3\}pa ( 4 ) = { 1 , 2 , 3 }. Variables in a DAG can be ordered topologically. A topological order, or simply an order, is valid if ipa(j)𝑖pa𝑗i\in\text{pa}(j)italic_i ∈ pa ( italic_j ), then node i𝑖iitalic_i must be on the left of node j𝑗jitalic_j in the order. We notate an order using the symbol precedes\prec. For example, an order of the DAG in 1(a) is =(1,2,3,4)\prec=(1,2,3,4)≺ = ( 1 , 2 , 3 , 4 ). Another order =(2,1,3,4)\prec=(2,1,3,4)≺ = ( 2 , 1 , 3 , 4 ) is also valid for the DAG in 1(a); since nodes 1111 and 2222 are not connected by an edge, we can either order node 1111 first or node 2222 first. With the same order precedes\prec, the DAG, however, may not be unique. For example, the order =(1,2,3,4)\prec=(1,2,3,4)≺ = ( 1 , 2 , 3 , 4 ) is valid for both DAGs in 1(a) and 1(b).

By using the standard Markov assumptions in the DAG \parencitepairwise_copula_constructions, the joint density of m𝑚mitalic_m risk factor returns can be decomposed into a product of univarate conditional densities

f[t](r1,t,,rm,t)=i=1mf[t](ri,t|𝐫pa(i),t),superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡superscriptsubscriptproduct𝑖1𝑚superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝐫pa𝑖𝑡f^{[t]}(r_{1,t},\ldots,r_{m,t})=\prod_{i=1}^{m}f^{[t]}(r_{i,t}|\mathbf{r}_{% \text{pa}(i),t}),italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) = ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( italic_i ) , italic_t end_POSTSUBSCRIPT ) , (2)

where 𝐫pa(i),tsubscript𝐫pa𝑖𝑡\mathbf{r}_{\text{pa}(i),t}bold_r start_POSTSUBSCRIPT pa ( italic_i ) , italic_t end_POSTSUBSCRIPT is the set of risk factor returns that are parents of node i𝑖iitalic_i. For example, we have f[t](r1,t,,r4,t)=f[t](r1,t)f[t](r2,t)f[t](r3,t|r1,t)f[t](r4,t|r1,t,r2,t,r3,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟4𝑡superscript𝑓delimited-[]𝑡subscript𝑟1𝑡superscript𝑓delimited-[]𝑡subscript𝑟2𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟1𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟1𝑡subscript𝑟2𝑡subscript𝑟3𝑡f^{[t]}(r_{1,t},\ldots,r_{4,t})=f^{[t]}(r_{1,t})f^{[t]}(r_{2,t})f^{[t]}(r_{3,t% }|r_{1,t})f^{[t]}(r_{4,t}|r_{1,t},r_{2,t},r_{3,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) = italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) for the DAG in 1(a), and f[t](r1,t,,r4,t)=f[t](r1,t)f[t](r2,t|r1,t)f[t](r3,t|r1,t,r2,t)f[t](r4,t|r3,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟4𝑡superscript𝑓delimited-[]𝑡subscript𝑟1𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟2𝑡subscript𝑟1𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟2𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡f^{[t]}(r_{1,t},\ldots,r_{4,t})=f^{[t]}(r_{1,t})f^{[t]}(r_{2,t}|r_{1,t})f^{[t]% }(r_{3,t}|r_{1,t},r_{2,t})f^{[t]}(r_{4,t}|r_{3,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) = italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) for the DAG in 1(b).

Instead of adopting standard multivariate distribution such as multivariate normal or t𝑡titalic_t distributions, the decomposition in (2) enables us to flexibly specify the joint distribution of the m𝑚mitalic_m risk factors through a graphical representation in the DAG.

r1,tsubscript𝑟1𝑡r_{1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPTr2,tsubscript𝑟2𝑡r_{2,t}italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPTr3,tsubscript𝑟3𝑡r_{3,t}italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPTr4,tsubscript𝑟4𝑡r_{4,t}italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT
(a) A DAG with order =(1,2,3,4)\prec=(1,2,3,4)≺ = ( 1 , 2 , 3 , 4 ). =(2,1,3,4)\prec=(2,1,3,4)≺ = ( 2 , 1 , 3 , 4 ) is another valid order.
r1,tsubscript𝑟1𝑡r_{1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPTr2,tsubscript𝑟2𝑡r_{2,t}italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPTr3,tsubscript𝑟3𝑡r_{3,t}italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPTr4,tsubscript𝑟4𝑡r_{4,t}italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT
(b) Another DAG with order =(1,2,3,4)\prec=(1,2,3,4)≺ = ( 1 , 2 , 3 , 4 )
Figure 1: Example of two DAGs.

2.3 Copulas and conditional copulas

By Sklar’s theorem \parencitesklar1959fonctions, F(x1,,xd)𝐹subscript𝑥1subscript𝑥𝑑F(x_{1},\ldots,x_{d})italic_F ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ), a d𝑑ditalic_d-dimensional (d{1,2,}𝑑12d\in\{1,2,\ldots\}italic_d ∈ { 1 , 2 , … }) cumulative distribution function (CDF) for the variables (x1,,xd)(,)dsubscript𝑥1subscript𝑥𝑑superscript𝑑(x_{1},\ldots,x_{d})\in(-\infty,\infty)^{d}( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) ∈ ( - ∞ , ∞ ) start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT can be written as \parencitecopula_book

F(x1,,xd)=C(F1(x1),,Fd(xd)),𝐹subscript𝑥1subscript𝑥𝑑𝐶subscript𝐹1subscript𝑥1subscript𝐹𝑑subscript𝑥𝑑F(x_{1},\ldots,x_{d})=C(F_{1}(x_{1}),\ldots,F_{d}(x_{d})),italic_F ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = italic_C ( italic_F start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) ) ,

for some d𝑑ditalic_d-dimensional copula C:[0,1]d[0,1]:𝐶maps-tosuperscript01𝑑01C:[0,1]^{d}\mapsto[0,1]italic_C : [ 0 , 1 ] start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT ↦ [ 0 , 1 ] and F1,,Fdsubscript𝐹1subscript𝐹𝑑F_{1},\ldots,F_{d}italic_F start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_F start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT are the marginal CDFs of x1,,xdsubscript𝑥1subscript𝑥𝑑x_{1},\ldots,x_{d}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT respectively. The joint density for x1,,xdsubscript𝑥1subscript𝑥𝑑x_{1},\ldots,x_{d}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT is

f(x1,,xd)=c(F1(x1),,Fd(xd))i=1dfi(xi),𝑓subscript𝑥1subscript𝑥𝑑𝑐subscript𝐹1subscript𝑥1subscript𝐹𝑑subscript𝑥𝑑superscriptsubscriptproduct𝑖1𝑑subscript𝑓𝑖subscript𝑥𝑖f(x_{1},\ldots,x_{d})=c(F_{1}(x_{1}),\ldots,F_{d}(x_{d}))\prod_{i=1}^{d}f_{i}(% x_{i}),italic_f ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = italic_c ( italic_F start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) ) ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) , (3)

where f1,,fdsubscript𝑓1subscript𝑓𝑑f_{1},\ldots,f_{d}italic_f start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_f start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT are the marginal density functions of x1,,xdsubscript𝑥1subscript𝑥𝑑x_{1},\ldots,x_{d}italic_x start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_x start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT respectively, and the copula density function c𝑐citalic_c is obtained by

c(u1,,ud)=dC(u1,,ud)u1ud,𝑐subscript𝑢1subscript𝑢𝑑superscript𝑑𝐶subscript𝑢1subscript𝑢𝑑subscript𝑢1subscript𝑢𝑑c(u_{1},\ldots,u_{d})=\frac{\partial^{d}C(u_{1},\ldots,u_{d})}{\partial u_{1}% \ldots\partial u_{d}},italic_c ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_u start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) = divide start_ARG ∂ start_POSTSUPERSCRIPT italic_d end_POSTSUPERSCRIPT italic_C ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_u start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ) end_ARG start_ARG ∂ italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT … ∂ italic_u start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT end_ARG ,

where ui=Fi(xi)subscript𝑢𝑖subscript𝐹𝑖subscript𝑥𝑖u_{i}=F_{i}(x_{i})italic_u start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = italic_F start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_x start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) for i=1,,d𝑖1𝑑i=1,\ldots,ditalic_i = 1 , … , italic_d.

The conditional distribution in (2) are often modeled using multivariate Gaussian distributions \parenciteGBN, which may performs poorly in extreme scenarios in financial applications. Instead, we factorize the conditional distributions in (2) using a similar logic of vine decomposition based on pair-copula construction (PCC) \parencitevine_copula. Using (3), we can express the conditional density of variables x𝑥xitalic_x and y𝑦yitalic_y given a random vector z𝑧zitalic_z by f(x,y|z)=cx,y|z(F(x|z),F(y|z))f(x|z)f(y|z)𝑓𝑥conditional𝑦𝑧subscript𝑐𝑥conditional𝑦𝑧𝐹conditional𝑥𝑧𝐹conditional𝑦𝑧𝑓conditional𝑥𝑧𝑓conditional𝑦𝑧f(x,y|z)=c_{x,y|z}(F(x|z),F(y|z))f(x|z)f(y|z)italic_f ( italic_x , italic_y | italic_z ) = italic_c start_POSTSUBSCRIPT italic_x , italic_y | italic_z end_POSTSUBSCRIPT ( italic_F ( italic_x | italic_z ) , italic_F ( italic_y | italic_z ) ) italic_f ( italic_x | italic_z ) italic_f ( italic_y | italic_z ), where cx,y|zsubscript𝑐𝑥conditional𝑦𝑧c_{x,y|z}italic_c start_POSTSUBSCRIPT italic_x , italic_y | italic_z end_POSTSUBSCRIPT is a conditional copula density function given z𝑧zitalic_z. Therefore, we can express f(x|y,z)𝑓conditional𝑥𝑦𝑧f(x|y,z)italic_f ( italic_x | italic_y , italic_z ) as

f(x|y,z)=f(x,y|z)f(y|z)=cx,y|z(F(x|z),F(y|z))f(x|z)f(y|z)f(y|z)=cx,y|z(F(x|z),F(y|z))f(x|z).𝑓conditional𝑥𝑦𝑧𝑓𝑥conditional𝑦𝑧𝑓conditional𝑦𝑧subscript𝑐𝑥conditional𝑦𝑧𝐹conditional𝑥𝑧𝐹conditional𝑦𝑧𝑓conditional𝑥𝑧𝑓conditional𝑦𝑧𝑓conditional𝑦𝑧subscript𝑐𝑥conditional𝑦𝑧𝐹conditional𝑥𝑧𝐹conditional𝑦𝑧𝑓conditional𝑥𝑧f(x|y,z)=\frac{f(x,y|z)}{f(y|z)}=\frac{c_{x,y|z}(F(x|z),F(y|z))f(x|z)f(y|z)}{f% (y|z)}=c_{x,y|z}(F(x|z),F(y|z))f(x|z).italic_f ( italic_x | italic_y , italic_z ) = divide start_ARG italic_f ( italic_x , italic_y | italic_z ) end_ARG start_ARG italic_f ( italic_y | italic_z ) end_ARG = divide start_ARG italic_c start_POSTSUBSCRIPT italic_x , italic_y | italic_z end_POSTSUBSCRIPT ( italic_F ( italic_x | italic_z ) , italic_F ( italic_y | italic_z ) ) italic_f ( italic_x | italic_z ) italic_f ( italic_y | italic_z ) end_ARG start_ARG italic_f ( italic_y | italic_z ) end_ARG = italic_c start_POSTSUBSCRIPT italic_x , italic_y | italic_z end_POSTSUBSCRIPT ( italic_F ( italic_x | italic_z ) , italic_F ( italic_y | italic_z ) ) italic_f ( italic_x | italic_z ) . (4)

Using (4) and taking x𝑥xitalic_x as rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT, y𝑦yitalic_y as rm,tsubscript𝑟𝑚𝑡r_{m,t}italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT, and z𝑧zitalic_z as r1,t,,rm1,tsubscript𝑟1𝑡subscript𝑟𝑚1𝑡r_{1,t},\ldots,r_{m-1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m - 1 , italic_t end_POSTSUBSCRIPT for j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p, the conditional density of return on the j𝑗jitalic_j-th stock can be expressed as

f[t](rj,t|r1,t,,rm,t)superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡\displaystyle f^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{m,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT )
=\displaystyle== cj,m|1,,m1[t](F[t](rj,t|r1,t,rm1,t),F[t](rm,t|r1,t,,rm1,t))f[t](rj,t|r1,t,,rm1,t),superscriptsubscript𝑐𝑗conditional𝑚1𝑚1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑚1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑚𝑡subscript𝑟1𝑡subscript𝑟𝑚1𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑚1𝑡\displaystyle c_{j,m|1,\ldots,m-1}^{[t]}(F^{[t]}(r_{j,t}|r_{1,t}\ldots,r_{m-1,% t}),F^{[t]}(r_{m,t}|r_{1,t},\ldots,r_{m-1,t}))f^{[t]}(r_{j,t}|r_{1,t},\ldots,r% _{m-1,t}),italic_c start_POSTSUBSCRIPT italic_j , italic_m | 1 , … , italic_m - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT … , italic_r start_POSTSUBSCRIPT italic_m - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m - 1 , italic_t end_POSTSUBSCRIPT ) ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m - 1 , italic_t end_POSTSUBSCRIPT ) ,

and recursively, for i>1𝑖1i>1italic_i > 1, we have

f[t](rj,t|r1,t,,rm,t)=[i=1mcj,i|1,,i1[t](F[t](rj,t|r1,t,,ri1,t),F[t](ri,t|r1,t,,ri1,t))]fj[t](rj,t),superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑡delimited-[]superscriptsubscriptproduct𝑖1𝑚superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡superscriptsubscript𝑓𝑗delimited-[]𝑡subscript𝑟𝑗𝑡f^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{m,t})=\left[\prod_{i=1}^{m}c_{j,i|1,\ldots,i% -1}^{[t]}(F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t}),F^{[t]}(r_{i,t}|r_{1,t},% \ldots,r_{i-1,t}))\right]\cdot f_{j}^{[t]}(r_{j,t}),italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT ) = [ ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) ) ] ⋅ italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT ) , (5)

where cj,i|1,,i1[t](,)superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,\ldots,i-1}^{[t]}(\cdot,\cdot)italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( ⋅ , ⋅ ) is the conditional bivariate copula density between the j𝑗jitalic_j-th stock return rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT and the i𝑖iitalic_i-th risk factor return ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT given the information on all the first i1𝑖1i-1italic_i - 1 risk factor returns r1,t,,ri1,tsubscript𝑟1𝑡subscript𝑟𝑖1𝑡r_{1,t},\ldots,r_{i-1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT and t1subscript𝑡1\mathcal{F}_{t-1}caligraphic_F start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT, and fj[t](rj,t)superscriptsubscript𝑓𝑗delimited-[]𝑡subscript𝑟𝑗𝑡f_{j}^{[t]}(r_{j,t})italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT ) is the conditional marginal distribution of rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT given t1subscript𝑡1\mathcal{F}_{t-1}caligraphic_F start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT, for i=2,,m𝑖2𝑚i=2,\ldots,mitalic_i = 2 , … , italic_m and j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p. For i=1𝑖1i=1italic_i = 1, we have

cj,i|1,,i1[t](F[t](rj,t|r1,t,,ri1,t),F[t](ri,t|r1,t,,ri1,t))cj,1(F[t](rj,t),F[t](r1,t)).superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡subscript𝑐𝑗1superscript𝐹delimited-[]𝑡subscript𝑟𝑗𝑡superscript𝐹delimited-[]𝑡subscript𝑟1𝑡c_{j,i|1,\ldots,i-1}^{[t]}(F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t}),F^{[t]}(r% _{i,t}|r_{1,t},\ldots,r_{i-1,t}))\equiv c_{j,1}(F^{[t]}(r_{j,t}),F^{[t]}(r_{1,% t})).italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) ) ≡ italic_c start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) .

In the same way, to express the conditional distributions in the DAG for the risk factor returns in (2) into a product of conditional bivariate copula density, we label the m𝑚mitalic_m risk factor returns to give the order =(1,2,,m)\prec=(1,2,\ldots,m)≺ = ( 1 , 2 , … , italic_m ). Then, denote the parent set of ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT as pa(i)={i[1],,i[n(i)]}pa𝑖𝑖delimited-[]1𝑖delimited-[]𝑛𝑖\text{pa}(i)=\{i[1],\ldots,i[n(i)]\}pa ( italic_i ) = { italic_i [ 1 ] , … , italic_i [ italic_n ( italic_i ) ] }, where i[1]<<i[n(i)]𝑖delimited-[]1𝑖delimited-[]𝑛𝑖i[1]<\ldots<i[n(i)]italic_i [ 1 ] < … < italic_i [ italic_n ( italic_i ) ], and n(i)𝑛𝑖n(i)italic_n ( italic_i ) is the number of parents of ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT. With the above setting, we can express the conditional density of the return of the i𝑖iitalic_i-th risk factor to

f[t](ri,t|𝐫pa(i),t)=[k=1n(i)ci,i[k]|i[1],,i[k1][t](F[t](ri,t|ri[1],t,,ri[k1],t),F[t](ri[k],t|ri[1],t,,ri[k1],t))]fi[t](ri,t).superscript𝑓delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝐫pa𝑖𝑡delimited-[]superscriptsubscriptproduct𝑘1𝑛𝑖superscriptsubscript𝑐𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡superscriptsubscript𝑓𝑖delimited-[]𝑡subscript𝑟𝑖𝑡f^{[t]}(r_{i,t}|\mathbf{r}_{\text{pa}(i),t})=\left[\prod_{k=1}^{n(i)}c_{i,i[k]% |i[1],\ldots,i[k-1]}^{[t]}(F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{i[k-1],t}),F^{% [t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t}))\right]\cdot f_{i}^{[t]}(r_{i,% t}).italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( italic_i ) , italic_t end_POSTSUBSCRIPT ) = [ ∏ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n ( italic_i ) end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) ) ] ⋅ italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) . (6)

For example, for the DAG in 1(a), we have the parent set pa(4)={1,2,3}pa4123\text{pa}(4)=\{1,2,3\}pa ( 4 ) = { 1 , 2 , 3 }, the number of parents n(4)=3𝑛43n(4)=3italic_n ( 4 ) = 3, 4[1]=14delimited-[]114[1]=14 [ 1 ] = 1, 4[2]=24delimited-[]224[2]=24 [ 2 ] = 2 and 4[3]=34delimited-[]334[3]=34 [ 3 ] = 3. Therefore, (6) implies

f[t](r4,t|𝐫pa(4),t)superscript𝑓delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝐫pa4𝑡\displaystyle f^{[t]}(r_{4,t}|\mathbf{r}_{\text{pa}(4),t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( 4 ) , italic_t end_POSTSUBSCRIPT ) =c4,3|1,2[t](F[t](r4,t|r1,t,r2,t),F[t](r3,t|r1,t,r2,t))c4,2|1[t](F[t](r4,t|r1,t),F[t](r2,t|r1,t))absentsuperscriptsubscript𝑐4conditional312delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟1𝑡subscript𝑟2𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟2𝑡superscriptsubscript𝑐4conditional21delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟2𝑡subscript𝑟1𝑡\displaystyle=c_{4,3|1,2}^{[t]}(F^{[t]}(r_{4,t}|r_{1,t},r_{2,t}),F^{[t]}(r_{3,% t}|r_{1,t},r_{2,t}))c_{4,2|1}^{[t]}(F^{[t]}(r_{4,t}|r_{1,t}),F^{[t]}(r_{2,t}|r% _{1,t}))= italic_c start_POSTSUBSCRIPT 4 , 3 | 1 , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) ) italic_c start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) )
c4,1[t](F[t](r4,t),F[t](r1,t))f4[t](r4,t).superscriptsubscript𝑐41delimited-[]𝑡superscript𝐹delimited-[]𝑡subscript𝑟4𝑡superscript𝐹delimited-[]𝑡subscript𝑟1𝑡subscriptsuperscript𝑓delimited-[]𝑡4subscript𝑟4𝑡\displaystyle c_{4,1}^{[t]}(F^{[t]}(r_{4,t}),F^{[t]}(r_{1,t}))\cdot f^{[t]}_{4% }(r_{4,t}).italic_c start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) ⋅ italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 4 end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) .

Similarly, we have pa(3)={1}pa31\text{pa}(3)=\{1\}pa ( 3 ) = { 1 }, n(3)=1𝑛31n(3)=1italic_n ( 3 ) = 1 and 3[1]=13delimited-[]113[1]=13 [ 1 ] = 1. Applying (6) again implies

f[t](r3,t|𝐫pa(3),t)=c3,1[t](F[t](r3,t),F[t](r1,t))f3[t](r3,t).superscript𝑓delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝐫pa3𝑡superscriptsubscript𝑐31delimited-[]𝑡superscript𝐹delimited-[]𝑡subscript𝑟3𝑡superscript𝐹delimited-[]𝑡subscript𝑟1𝑡subscriptsuperscript𝑓delimited-[]𝑡3subscript𝑟3𝑡f^{[t]}(r_{3,t}|\mathbf{r}_{\text{pa}(3),t})=c_{3,1}^{[t]}(F^{[t]}(r_{3,t}),F^% {[t]}(r_{1,t}))\cdot f^{[t]}_{3}(r_{3,t}).italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( 3 ) , italic_t end_POSTSUBSCRIPT ) = italic_c start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) ⋅ italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) .

Note that pa(r1,t)=pa(r2,t)=pasubscript𝑟1𝑡pasubscript𝑟2𝑡\text{pa}(r_{1,t})=\text{pa}(r_{2,t})=\varnothingpa ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) = pa ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) = ∅ and thus f[t](r2,t|𝐫pa(2),t)=f2[t](r2,t)superscript𝑓delimited-[]𝑡conditionalsubscript𝑟2𝑡subscript𝐫pa2𝑡subscriptsuperscript𝑓delimited-[]𝑡2subscript𝑟2𝑡f^{[t]}(r_{2,t}|\mathbf{r}_{\text{pa}(2),t})=f^{[t]}_{2}(r_{2,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( 2 ) , italic_t end_POSTSUBSCRIPT ) = italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) and f[t](r1,t|𝐫pa(1),t)=f1[t](r1,t)superscript𝑓delimited-[]𝑡conditionalsubscript𝑟1𝑡subscript𝐫pa1𝑡subscriptsuperscript𝑓delimited-[]𝑡1subscript𝑟1𝑡f^{[t]}(r_{1,t}|\mathbf{r}_{\text{pa}(1),t})=f^{[t]}_{1}(r_{1,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( 1 ) , italic_t end_POSTSUBSCRIPT ) = italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ). Combining these factorization results and (6), we can express the joint density of m𝑚mitalic_m risk factor returns as

f[t](r1,t,r2,t,r3,t,r4,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟2𝑡subscript𝑟3𝑡subscript𝑟4𝑡\displaystyle f^{[t]}(r_{1,t},r_{2,t},r_{3,t},r_{4,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) =[c4,3|1,2[t](F[t](r4,t|r1,t,r2,t),F[t](r3,t|r1,t,r2,t))c4,2|1[t](F[t](r4,t|r1,t),F[t](r2,t|r1,t))\displaystyle=\Bigg{[}c_{4,3|1,2}^{[t]}(F^{[t]}(r_{4,t}|r_{1,t},r_{2,t}),F^{[t% ]}(r_{3,t}|r_{1,t},r_{2,t}))c_{4,2|1}^{[t]}(F^{[t]}(r_{4,t}|r_{1,t}),F^{[t]}(r% _{2,t}|r_{1,t}))= [ italic_c start_POSTSUBSCRIPT 4 , 3 | 1 , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) ) italic_c start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) )
c4,1[t](F[t](r4,t),F[t](r1,t))]c3,1[t](F[t](r3,t),F[t](r1,t))i=14f[t]i(ri,t).\displaystyle c_{4,1}^{[t]}(F^{[t]}(r_{4,t}),F^{[t]}(r_{1,t}))\Bigg{]}\cdot c_% {3,1}^{[t]}(F^{[t]}(r_{3,t}),F^{[t]}(r_{1,t}))\cdot\prod_{i=1}^{4}f^{[t]}_{i}(% r_{i,t}).italic_c start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) ] ⋅ italic_c start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) ⋅ ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 4 end_POSTSUPERSCRIPT italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) .

In general, combining the DAG decomposition of the m𝑚mitalic_m risk factors in (2), the copula factorization of the stock returns in (5), and the copula factorization for the risk factor returns in (6), the joint density of all returns r1,trm+p,tsubscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡r_{1,t}\ldots r_{m+p,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT … italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT in (1) can be decomposed into a product of conditional bivariate copulas and marginal densities:

f[t](r1,t,,rm+p,t)superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡\displaystyle f^{[t]}(r_{1,t},\ldots,r_{m+p,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ) =[j=m+1m+pi=1mcj,i|1,,i1[t](F[t](rj,t|r1,t,,ri1,t),F[t](ri,t|r1,t,,ri1,t))]\displaystyle=\left[\prod_{j=m+1}^{m+p}\prod_{i=1}^{m}c_{j,i|1,\ldots,i-1}^{[t% ]}(F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t}),F^{[t]}(r_{i,t}|r_{1,t},\ldots,r_% {i-1,t}))\right]\cdot= [ ∏ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) ) ] ⋅ (7)
[i=1mk=1n(i)ci,i[k]|i[1],,i[k1][t](F[t](ri,t|ri[1],t,,ri[k1],t),F[t](ri[k],t|ri[1],t,,ri[k1],t))]\displaystyle\left[\prod_{i=1}^{m}\prod_{k=1}^{n(i)}c_{i,i[k]|i[1],\ldots,i[k-% 1]}^{[t]}(F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{i[k-1],t}),F^{[t]}(r_{i[k],t}|r% _{i[1],t},\ldots,r_{i[k-1],t}))\right]\cdot[ ∏ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ∏ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n ( italic_i ) end_POSTSUPERSCRIPT italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) ) ] ⋅
j=1m+pfj[t](rj,t).superscriptsubscriptproduct𝑗1𝑚𝑝superscriptsubscript𝑓𝑗delimited-[]𝑡subscript𝑟𝑗𝑡\displaystyle\prod_{j=1}^{m+p}f_{j}^{[t]}(r_{j,t}).∏ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT ) .

In financial econometrics studies, the number of stocks, p𝑝pitalic_p, is much larger than the number of risk factors, m𝑚mitalic_m. Therefore, from the joint density in (7), the number of bivariate copulas is at most mp+m(m1)/2𝑚𝑝𝑚𝑚12mp+m(m-1)/2italic_m italic_p + italic_m ( italic_m - 1 ) / 2, equality holds if all pairs of nodes in the DAG are connected, in which case the number of edges in the DAG is (m2)=m(m1)/2binomial𝑚2𝑚𝑚12\binom{m}{2}=m(m-1)/2( FRACOP start_ARG italic_m end_ARG start_ARG 2 end_ARG ) = italic_m ( italic_m - 1 ) / 2. The number of parameters is of O(p)𝑂𝑝O(p)italic_O ( italic_p ) instead of O(p2)𝑂superscript𝑝2O(p^{2})italic_O ( italic_p start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) in usual dynamic covariance modeling of p𝑝pitalic_p stocks.

2.4 Dynamic conditional dependence and tail dependence

The decomposition in (7) also provides flexibility in the choice of conditional dependence, including linear correlation and the tail dependence parameters through conditional bivariate copulas. To incorporate time-varying dependence features in the GC-GARCH model, we follow the idea in \textcitevine_copula, which inspired by the DCC-GARCH models of \textciteDCC_model and \textciteDCC_GARCH, to allow the correlation parameters in the conditional copulas cj,i|1,,i1[t]subscriptsuperscript𝑐delimited-[]𝑡𝑗conditional𝑖1𝑖1c^{[t]}_{j,i|1,\ldots,i-1}italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and ci,i[k]|i[1],,i[k1][t]subscriptsuperscript𝑐delimited-[]𝑡𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1c^{[t]}_{i,i[k]|i[1],\ldots,i[k-1]}italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT to be time-varying. In this paper, we focus on the use of bivariate t𝑡titalic_t-copulas with correlation parameters φj,i|1,,i1[t]superscriptsubscript𝜑𝑗conditional𝑖1𝑖1delimited-[]𝑡\varphi_{j,i|1,\ldots,i-1}^{[t]}italic_φ start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and φi,i[k]|i[1],,i[k1][t]subscriptsuperscript𝜑delimited-[]𝑡𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1\varphi^{[t]}_{i,i[k]|i[1],\ldots,i[k-1]}italic_φ start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT. In general, we denote the conditional copula and copula density at time t𝑡titalic_t for two arbitrary variables rx,tsubscript𝑟𝑥𝑡r_{x,t}italic_r start_POSTSUBSCRIPT italic_x , italic_t end_POSTSUBSCRIPT and ry,tsubscript𝑟𝑦𝑡r_{y,t}italic_r start_POSTSUBSCRIPT italic_y , italic_t end_POSTSUBSCRIPT conditional to the set z𝑧zitalic_z as Cxy|z[t]superscriptsubscript𝐶conditional𝑥𝑦𝑧delimited-[]𝑡C_{xy|z}^{[t]}italic_C start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and cxy|z[t]superscriptsubscript𝑐conditional𝑥𝑦𝑧delimited-[]𝑡c_{xy|z}^{[t]}italic_c start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT respectively. In the simulation study and empirical study, we use the t𝑡titalic_t-copula to illustrate the GC-GARCH model. The conditional t𝑡titalic_t-copula at time t𝑡titalic_t with correlation parameter φ=φxy|z[t]𝜑superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡\varphi=\varphi_{xy|z}^{[t]}italic_φ = italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and degrees of freedom v=vxy|z𝑣subscript𝑣conditional𝑥𝑦𝑧v=v_{xy|z}italic_v = italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT is given by \parencitedemarta2005t

Cxy|z[t](ux|z,t,uy|z,t)subscriptsuperscript𝐶delimited-[]𝑡conditional𝑥𝑦𝑧subscript𝑢conditional𝑥𝑧𝑡subscript𝑢conditional𝑦𝑧𝑡\displaystyle C^{[t]}_{xy|z}(u_{x|z,t},u_{y|z,t})italic_C start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT ) =tv1(ux|z,t)tv1(uy|z,t)f2;v,φ(x,y)𝑑y𝑑x,absentsuperscriptsubscriptsuperscriptsubscript𝑡𝑣1subscript𝑢conditional𝑥𝑧𝑡superscriptsubscriptsuperscriptsubscript𝑡𝑣1subscript𝑢conditional𝑦𝑧𝑡subscript𝑓2𝑣𝜑𝑥𝑦differential-d𝑦differential-d𝑥\displaystyle=\int_{-\infty}^{t_{v}^{-1}(u_{x|z,t})}\int_{-\infty}^{t_{v}^{-1}% (u_{y|z,t})}f_{2;v,\varphi}(x,y)dydx,= ∫ start_POSTSUBSCRIPT - ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT ∫ start_POSTSUBSCRIPT - ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT italic_f start_POSTSUBSCRIPT 2 ; italic_v , italic_φ end_POSTSUBSCRIPT ( italic_x , italic_y ) italic_d italic_y italic_d italic_x ,

where ux|z,t=F[t](rx,t|rz,t)subscript𝑢conditional𝑥𝑧𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑥𝑡subscript𝑟𝑧𝑡u_{x|z,t}=F^{[t]}(r_{x,t}|r_{z,t})italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_x , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT ), uy|z,t=F[t](ry,t|rz,t)subscript𝑢conditional𝑦𝑧𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑦𝑡subscript𝑟𝑧𝑡u_{y|z,t}=F^{[t]}(r_{y,t}|r_{z,t})italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_y , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT ), tv1()superscriptsubscript𝑡𝑣1t_{v}^{-1}(\cdot)italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( ⋅ ) is the inverse CDF of the univariate t𝑡titalic_t distribution with degrees of freedom v𝑣vitalic_v, f2;v,φ(,)subscript𝑓2𝑣𝜑f_{2;v,\varphi}(\cdot,\cdot)italic_f start_POSTSUBSCRIPT 2 ; italic_v , italic_φ end_POSTSUBSCRIPT ( ⋅ , ⋅ ) is the density function of the bivariate t𝑡titalic_t distribution with degrees of freedom v𝑣vitalic_v and correlation parameter 1<φ<11𝜑1-1<\varphi<1- 1 < italic_φ < 1, defined as

f2;v,φ(x,y)=12π1φ2(1+x2+y22φxyv(1φ2))v+22.subscript𝑓2𝑣𝜑𝑥𝑦12𝜋1superscript𝜑2superscript1superscript𝑥2superscript𝑦22𝜑𝑥𝑦𝑣1superscript𝜑2𝑣22f_{2;v,\varphi}(x,y)=\frac{1}{2\pi\sqrt{1-{\varphi}^{2}}}\left(1+\frac{x^{2}+y% ^{2}-2\varphi xy}{v(1-\varphi^{2})}\right)^{-\frac{v+2}{2}}.italic_f start_POSTSUBSCRIPT 2 ; italic_v , italic_φ end_POSTSUBSCRIPT ( italic_x , italic_y ) = divide start_ARG 1 end_ARG start_ARG 2 italic_π square-root start_ARG 1 - italic_φ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG end_ARG ( 1 + divide start_ARG italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_y start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT - 2 italic_φ italic_x italic_y end_ARG start_ARG italic_v ( 1 - italic_φ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) end_ARG ) start_POSTSUPERSCRIPT - divide start_ARG italic_v + 2 end_ARG start_ARG 2 end_ARG end_POSTSUPERSCRIPT .

We impose the finite covariance condition that v>2𝑣2v>2italic_v > 2 \parencitedemarta2005t. Using (3), the conditional t𝑡titalic_t-copula density at time t𝑡titalic_t with correlation parameter φ=φxy|z[t]𝜑superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡\varphi=\varphi_{xy|z}^{[t]}italic_φ = italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and degrees of freedom v=vxy|z𝑣subscript𝑣conditional𝑥𝑦𝑧v=v_{xy|z}italic_v = italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT is given by

cxy|z[t](ux|z,t,uy|z,t)superscriptsubscript𝑐conditional𝑥𝑦𝑧delimited-[]𝑡subscript𝑢conditional𝑥𝑧𝑡subscript𝑢conditional𝑦𝑧𝑡\displaystyle c_{xy|z}^{[t]}(u_{x|z,t},u_{y|z,t})italic_c start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT ) =f2;v,φ(tv1(ux|z,t),tv1(uy|z,t))f1;v(tv1(ux|z,t))f1;v(tv1(uy|z,t)),absentsubscript𝑓2𝑣𝜑subscriptsuperscript𝑡1𝑣subscript𝑢conditional𝑥𝑧𝑡subscriptsuperscript𝑡1𝑣subscript𝑢conditional𝑦𝑧𝑡subscript𝑓1𝑣subscriptsuperscript𝑡1𝑣subscript𝑢conditional𝑥𝑧𝑡subscript𝑓1𝑣subscriptsuperscript𝑡1𝑣subscript𝑢conditional𝑦𝑧𝑡\displaystyle=\frac{f_{2;v,\varphi}(t^{-1}_{v}(u_{x|z,t}),t^{-1}_{v}(u_{y|z,t}% ))}{f_{1;v}(t^{-1}_{v}(u_{x|z,t}))f_{1;v}(t^{-1}_{v}(u_{y|z,t}))},= divide start_ARG italic_f start_POSTSUBSCRIPT 2 ; italic_v , italic_φ end_POSTSUBSCRIPT ( italic_t start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT ) , italic_t start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT ) ) end_ARG start_ARG italic_f start_POSTSUBSCRIPT 1 ; italic_v end_POSTSUBSCRIPT ( italic_t start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT ) ) italic_f start_POSTSUBSCRIPT 1 ; italic_v end_POSTSUBSCRIPT ( italic_t start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT ) ) end_ARG ,

where f1;v()subscript𝑓1𝑣f_{1;v}(\cdot)italic_f start_POSTSUBSCRIPT 1 ; italic_v end_POSTSUBSCRIPT ( ⋅ ) is the density function of the univariate t𝑡titalic_t-distribution with degrees of freedom v𝑣vitalic_v, where

f1;v(x)=Γ(v+12)vπΓ(v2)(1+x2v)v+12.subscript𝑓1𝑣𝑥Γ𝑣12𝑣𝜋Γ𝑣2superscript1superscript𝑥2𝑣𝑣12f_{1;v}(x)=\frac{\Gamma\left(\frac{v+1}{2}\right)}{\sqrt{v\pi}\Gamma\left(% \frac{v}{2}\right)}\left(1+\frac{x^{2}}{v}\right)^{-\frac{v+1}{2}}.italic_f start_POSTSUBSCRIPT 1 ; italic_v end_POSTSUBSCRIPT ( italic_x ) = divide start_ARG roman_Γ ( divide start_ARG italic_v + 1 end_ARG start_ARG 2 end_ARG ) end_ARG start_ARG square-root start_ARG italic_v italic_π end_ARG roman_Γ ( divide start_ARG italic_v end_ARG start_ARG 2 end_ARG ) end_ARG ( 1 + divide start_ARG italic_x start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG italic_v end_ARG ) start_POSTSUPERSCRIPT - divide start_ARG italic_v + 1 end_ARG start_ARG 2 end_ARG end_POSTSUPERSCRIPT .

We assume that the conditional correlations change dynamically similar to the dynamics in \textcitevine_copula, inspired by the DCC-GARCH models of \textciteDCC_GARCH and \textciteDCC_model. The dynamic conditional correlation φxy|z[t]subscriptsuperscript𝜑delimited-[]𝑡conditional𝑥𝑦𝑧\varphi^{[t]}_{xy|z}italic_φ start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT between returns rx,tsubscript𝑟𝑥𝑡r_{x,t}italic_r start_POSTSUBSCRIPT italic_x , italic_t end_POSTSUBSCRIPT and ry,tsubscript𝑟𝑦𝑡r_{y,t}italic_r start_POSTSUBSCRIPT italic_y , italic_t end_POSTSUBSCRIPT given rz,tsubscript𝑟𝑧𝑡r_{z,t}italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT and t1subscript𝑡1\mathcal{F}_{t-1}caligraphic_F start_POSTSUBSCRIPT italic_t - 1 end_POSTSUBSCRIPT is given by

φxy|z[t]=(1axy|zbxy|z)φ¯xy|z+axy|zξxy|z,t1+bxy|zφxy|z[t1],subscriptsuperscript𝜑delimited-[]𝑡conditional𝑥𝑦𝑧1subscript𝑎conditional𝑥𝑦𝑧subscript𝑏conditional𝑥𝑦𝑧subscript¯𝜑conditional𝑥𝑦𝑧subscript𝑎conditional𝑥𝑦𝑧subscript𝜉conditional𝑥𝑦𝑧𝑡1subscript𝑏conditional𝑥𝑦𝑧subscriptsuperscript𝜑delimited-[]𝑡1conditional𝑥𝑦𝑧\varphi^{[t]}_{xy|z}=(1-a_{xy|z}-b_{xy|z})\bar{\varphi}_{xy|z}+a_{xy|z}\xi_{xy% |z,t-1}+b_{xy|z}\varphi^{[t-1]}_{xy|z},italic_φ start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT = ( 1 - italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT - italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ) over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT + italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT italic_ξ start_POSTSUBSCRIPT italic_x italic_y | italic_z , italic_t - 1 end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT italic_φ start_POSTSUPERSCRIPT [ italic_t - 1 ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT , (8)

where φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT is the long-run correlation and ξxy|z,t1subscript𝜉conditional𝑥𝑦𝑧𝑡1\xi_{xy|z,t-1}italic_ξ start_POSTSUBSCRIPT italic_x italic_y | italic_z , italic_t - 1 end_POSTSUBSCRIPT is the sample correlation at time t1𝑡1t-1italic_t - 1. The stationary conditions are 0axy|z,bxy|z<1formulae-sequence0subscript𝑎conditional𝑥𝑦𝑧subscript𝑏conditional𝑥𝑦𝑧10\leq a_{xy|z},b_{xy|z}<10 ≤ italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1, axy|z+bxy|z<1subscript𝑎conditional𝑥𝑦𝑧subscript𝑏conditional𝑥𝑦𝑧1a_{xy|z}+b_{xy|z}<1italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1 and 1<φ¯xy|z<11subscript¯𝜑conditional𝑥𝑦𝑧1-1<\bar{\varphi}_{xy|z}<1- 1 < over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1. The sample correlation is obtained given the past mscsubscript𝑚𝑠𝑐m_{sc}italic_m start_POSTSUBSCRIPT italic_s italic_c end_POSTSUBSCRIPT-period of data and rz,tsubscript𝑟𝑧𝑡r_{z,t}italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT, and is defined as

ξxy|z,t1=i=1mscr~x|z,tir~y|z,tii=1mscr~x|z,ti2j=1mscr~y|z,tj2,subscript𝜉conditional𝑥𝑦𝑧𝑡1superscriptsubscript𝑖1subscript𝑚𝑠𝑐subscript~𝑟conditional𝑥𝑧𝑡𝑖subscript~𝑟conditional𝑦𝑧𝑡𝑖superscriptsubscript𝑖1subscript𝑚𝑠𝑐superscriptsubscript~𝑟conditional𝑥𝑧𝑡𝑖2superscriptsubscript𝑗1subscript𝑚𝑠𝑐superscriptsubscript~𝑟conditional𝑦𝑧𝑡𝑗2\xi_{xy|z,t-1}=\frac{\sum_{i=1}^{m_{sc}}\tilde{r}_{x|z,t-i}\tilde{r}_{y|z,t-i}% }{\sqrt{\sum_{i=1}^{m_{sc}}\tilde{r}_{x|z,t-i}^{2}\sum_{j=1}^{m_{sc}}\tilde{r}% _{y|z,t-j}^{2}}},italic_ξ start_POSTSUBSCRIPT italic_x italic_y | italic_z , italic_t - 1 end_POSTSUBSCRIPT = divide start_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m start_POSTSUBSCRIPT italic_s italic_c end_POSTSUBSCRIPT end_POSTSUPERSCRIPT over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_x | italic_z , italic_t - italic_i end_POSTSUBSCRIPT over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_y | italic_z , italic_t - italic_i end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m start_POSTSUBSCRIPT italic_s italic_c end_POSTSUBSCRIPT end_POSTSUPERSCRIPT over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_x | italic_z , italic_t - italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m start_POSTSUBSCRIPT italic_s italic_c end_POSTSUBSCRIPT end_POSTSUPERSCRIPT over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_y | italic_z , italic_t - italic_j end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG end_ARG ,

where r~x|z,t=tvxy|z1(F[t](rx,t|rz,t))subscript~𝑟conditional𝑥𝑧𝑡superscriptsubscript𝑡subscript𝑣conditional𝑥𝑦𝑧1superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑥𝑡subscript𝑟𝑧𝑡\tilde{r}_{x|z,t}=t_{v_{xy|z}}^{-1}(F^{[t]}(r_{x,t}|r_{z,t}))over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_x | italic_z , italic_t end_POSTSUBSCRIPT = italic_t start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_x , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT ) ) and r~y|z,t=tvxy|z1(F[t](ry,t|rz,t))subscript~𝑟conditional𝑦𝑧𝑡superscriptsubscript𝑡subscript𝑣conditional𝑥𝑦𝑧1superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑦𝑡subscript𝑟𝑧𝑡\tilde{r}_{y|z,t}=t_{v_{xy|z}}^{-1}(F^{[t]}(r_{y,t}|r_{z,t}))over~ start_ARG italic_r end_ARG start_POSTSUBSCRIPT italic_y | italic_z , italic_t end_POSTSUBSCRIPT = italic_t start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_y , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_z , italic_t end_POSTSUBSCRIPT ) ). We pick msc=2subscript𝑚𝑠𝑐2{m_{sc}}=2italic_m start_POSTSUBSCRIPT italic_s italic_c end_POSTSUBSCRIPT = 2 in this paper for the simulation study and empirical study.

In financial application, we often want to estimate the unconditional correlations. In this case, computations are needed to convert the conditional correlation φxy|z[t]superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡\varphi_{xy|z}^{[t]}italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT in the GC-GARCH model into unconditional correlation as in \textcitevine_copula. The unconditional correlation can be obtained iteratively using the formula in \textciterummel1976understanding,

φxy|zj[t]=φx,y|z[t](1φxzj|zj[t]2)(1φyzj|zj[t]2)+φxzj|zj[t]φyzj|zj[t],superscriptsubscript𝜑conditional𝑥𝑦subscript𝑧𝑗delimited-[]𝑡superscriptsubscript𝜑𝑥conditional𝑦𝑧delimited-[]𝑡1superscriptsuperscriptsubscript𝜑conditional𝑥subscript𝑧𝑗subscript𝑧𝑗delimited-[]𝑡21superscriptsuperscriptsubscript𝜑conditional𝑦subscript𝑧𝑗subscript𝑧𝑗delimited-[]𝑡2superscriptsubscript𝜑conditional𝑥subscript𝑧𝑗subscript𝑧𝑗delimited-[]𝑡superscriptsubscript𝜑conditional𝑦subscript𝑧𝑗subscript𝑧𝑗delimited-[]𝑡\varphi_{xy|z_{-j}}^{[t]}=\varphi_{x,y|z}^{[t]}\sqrt{(1-{\varphi_{xz_{j}|z_{-j% }}^{[t]}}^{2})(1-{\varphi_{yz_{j}|z_{-j}}^{[t]}}^{2})}+\varphi_{xz_{j}|z_{-j}}% ^{[t]}\varphi_{yz_{j}|z_{-j}}^{[t]},italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT = italic_φ start_POSTSUBSCRIPT italic_x , italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT square-root start_ARG ( 1 - italic_φ start_POSTSUBSCRIPT italic_x italic_z start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) ( 1 - italic_φ start_POSTSUBSCRIPT italic_y italic_z start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) end_ARG + italic_φ start_POSTSUBSCRIPT italic_x italic_z start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT italic_φ start_POSTSUBSCRIPT italic_y italic_z start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ,

where zjsubscript𝑧𝑗z_{j}italic_z start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT is the j𝑗jitalic_jth component of the vector z𝑧zitalic_z, and zjsubscript𝑧𝑗z_{-j}italic_z start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT is the vector obtained by removing the j𝑗jitalic_jth component in z𝑧zitalic_z.

The t𝑡titalic_t-copula has often been used in financial return data modeling due to its ability to capture the phenomenon of dependent extreme values \parencitedemarta2005t,t_copula_rm_eg1,vine_copula. The tail dependence coefficient of the conditional t𝑡titalic_t-copula Cxy|z[t]superscriptsubscript𝐶conditional𝑥𝑦𝑧delimited-[]𝑡C_{xy|z}^{[t]}italic_C start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT with correlation parameter φxy|z[t]superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡\varphi_{xy|z}^{[t]}italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and degrees of freedom vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT is defined as

λxy|z[t]=2tv+1((vxy|z+1)(1φxy|z[t])(1+φxy|z[t])),superscriptsubscript𝜆conditional𝑥𝑦𝑧delimited-[]𝑡2subscript𝑡𝑣1subscript𝑣conditional𝑥𝑦𝑧11superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡1superscriptsubscript𝜑conditional𝑥𝑦𝑧delimited-[]𝑡\lambda_{xy|z}^{[t]}=2t_{v+1}\left(-\sqrt{\frac{(v_{xy|z}+1)(1-\varphi_{xy|z}^% {[t]})}{(1+\varphi_{xy|z}^{[t]})}}\right),italic_λ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT = 2 italic_t start_POSTSUBSCRIPT italic_v + 1 end_POSTSUBSCRIPT ( - square-root start_ARG divide start_ARG ( italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT + 1 ) ( 1 - italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ) end_ARG start_ARG ( 1 + italic_φ start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ) end_ARG end_ARG ) ,

where td()subscript𝑡𝑑t_{d}(\cdot)italic_t start_POSTSUBSCRIPT italic_d end_POSTSUBSCRIPT ( ⋅ ) is the CDF of the standard t𝑡titalic_t-distribution with degrees of freedom d>0𝑑0d>0italic_d > 0. The tail dependence depends on two parameters, the correlation and the degrees of freedom. Note that, even when the correlation is zero, the t𝑡titalic_t-copula still gives dependence in the tails. The t𝑡titalic_t-copula captures the dependence of extreme values which is often observed in financial modeling. We report the estimate of the degrees of freedom vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT for each copula as a measure of tail dependence.

3 Computational issues

3.1 Marginal distributions

Similar to the approach in \textcitevine_copula, we assume that the each of the returns r1,t,,rm+p,tsubscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡r_{1,t},\ldots,r_{m+p,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT follows a GARCH(1,1)-t𝑡titalic_t model, i.e., a GARCH(1,1) model with t𝑡titalic_t distributed innovations,

ri,tsubscript𝑟𝑖𝑡\displaystyle r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT =σi,tεi,t,absentsubscript𝜎𝑖𝑡subscript𝜀𝑖𝑡\displaystyle=\sigma_{i,t}\varepsilon_{i,t},= italic_σ start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT italic_ε start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT , (9)
σi,t2superscriptsubscript𝜎𝑖𝑡2\displaystyle\sigma_{i,t}^{2}italic_σ start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT =ωi+αiri,t12+βiσi,t12,absentsubscript𝜔𝑖subscript𝛼𝑖superscriptsubscript𝑟𝑖𝑡12subscript𝛽𝑖superscriptsubscript𝜎𝑖𝑡12\displaystyle=\omega_{i}+\alpha_{i}r_{i,t-1}^{2}+\beta_{i}\sigma_{i,t-1}^{2},= italic_ω start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_r start_POSTSUBSCRIPT italic_i , italic_t - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT + italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT italic_σ start_POSTSUBSCRIPT italic_i , italic_t - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ,

where εi,tsubscript𝜀𝑖𝑡\varepsilon_{i,t}italic_ε start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT’s are independently and identically distributed standardized t𝑡titalic_t innovations with degrees of freedom visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT, i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p. The constraints for positive variance and covariance stationary are ωi>0subscript𝜔𝑖0\omega_{i}>0italic_ω start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > 0, αi0subscript𝛼𝑖0\alpha_{i}\geq 0italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ 0, βi0subscript𝛽𝑖0\beta_{i}\geq 0italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ 0, and αi+βi<1subscript𝛼𝑖subscript𝛽𝑖1\alpha_{i}+\beta_{i}<1italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < 1 for i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p. The conditional density function of ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT under GARCH(1,1)-t𝑡titalic_t in (9) is given by

fi[t](ri,t)=Γ(vi+12)σi,t(vi2)πΓ(vi2)(1+ri,t2σi,t2(vi2))vi+12,superscriptsubscript𝑓𝑖delimited-[]𝑡subscript𝑟𝑖𝑡Γsubscript𝑣𝑖12subscript𝜎𝑖𝑡subscript𝑣𝑖2𝜋Γsubscript𝑣𝑖2superscript1superscriptsubscript𝑟𝑖𝑡2superscriptsubscript𝜎𝑖𝑡2subscript𝑣𝑖2subscript𝑣𝑖12f_{i}^{[t]}(r_{i,t})=\frac{\Gamma\left(\frac{v_{i}+1}{2}\right)}{\sigma_{i,t}% \sqrt{(v_{i}-2)\pi}\Gamma\left(\frac{v_{i}}{2}\right)}\left(1+\frac{r_{i,t}^{2% }}{\sigma_{i,t}^{2}(v_{i}-2)}\right)^{-\frac{v_{i}+1}{2}},italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) = divide start_ARG roman_Γ ( divide start_ARG italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + 1 end_ARG start_ARG 2 end_ARG ) end_ARG start_ARG italic_σ start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT square-root start_ARG ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - 2 ) italic_π end_ARG roman_Γ ( divide start_ARG italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG 2 end_ARG ) end_ARG ( 1 + divide start_ARG italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG start_ARG italic_σ start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - 2 ) end_ARG ) start_POSTSUPERSCRIPT - divide start_ARG italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + 1 end_ARG start_ARG 2 end_ARG end_POSTSUPERSCRIPT , (10)

for t=1,,T𝑡1𝑇t=1,\ldots,Titalic_t = 1 , … , italic_T. To ensure the variance is finite and (10) is well-defined, we require vi>2subscript𝑣𝑖2v_{i}>2italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > 2. (10) is derived using the transformation

ri,t=σi,tvivi2Tvi,subscript𝑟𝑖𝑡subscript𝜎𝑖𝑡subscript𝑣𝑖subscript𝑣𝑖2subscript𝑇subscript𝑣𝑖r_{i,t}=\frac{\sigma_{i,t}}{\sqrt{\frac{v_{i}}{v_{i}-2}}}T_{v_{i}},italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT = divide start_ARG italic_σ start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT end_ARG start_ARG square-root start_ARG divide start_ARG italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_ARG start_ARG italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT - 2 end_ARG end_ARG end_ARG italic_T start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT ,

where Tvisubscript𝑇subscript𝑣𝑖T_{v_{i}}italic_T start_POSTSUBSCRIPT italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUBSCRIPT follows a (unstandardized) t𝑡titalic_t-distribution with degrees of freedom visubscript𝑣𝑖v_{i}italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT.

3.2 Conditional distributions

Similar to \textcitevine_copula, the conditional distribution functions of the form F[t](xt|vt)superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑡F^{[t]}(x_{t}|v_{t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) in (7) have to be computed recursively using the hhitalic_h-function associated with the conditional copulas Cx,vj|vj[t]superscriptsubscript𝐶𝑥conditionalsubscript𝑣𝑗subscript𝑣𝑗delimited-[]𝑡C_{x,v_{j}|v_{-j}}^{[t]}italic_C start_POSTSUBSCRIPT italic_x , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT \parenciteJoe1996FamiliesO:

F[t](xt|vt)=Cx,vj|vj[t](F[t](xt|vj,t),F[t](vj,t|vj,t))F[t](vj,t|vj,t):=hx,vj|vj[t](F[t](xt|vj,t),F[t](vj,t|vj,t)),superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑡superscriptsubscript𝐶𝑥conditionalsubscript𝑣𝑗subscript𝑣𝑗delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑗𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑣𝑗𝑡subscript𝑣𝑗𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑣𝑗𝑡subscript𝑣𝑗𝑡assignsuperscriptsubscript𝑥conditionalsubscript𝑣𝑗subscript𝑣𝑗delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑗𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑣𝑗𝑡subscript𝑣𝑗𝑡F^{[t]}(x_{t}|v_{t})=\frac{\partial C_{x,v_{j}|v_{-j}}^{[t]}(F^{[t]}(x_{t}|v_{% -j,t}),F^{[t]}(v_{j,t}|v_{-j,t}))}{\partial F^{[t]}(v_{j,t}|v_{-j,t})}:=h_{x,v% _{j}|v_{-j}}^{[t]}(F^{[t]}(x_{t}|v_{-j,t}),F^{[t]}(v_{j,t}|v_{-j,t})),italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) = divide start_ARG ∂ italic_C start_POSTSUBSCRIPT italic_x , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) ) end_ARG start_ARG ∂ italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) end_ARG := italic_h start_POSTSUBSCRIPT italic_x , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) ) , (11)

where vtsubscript𝑣𝑡v_{t}italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT is a random vector at time t𝑡titalic_t, vj,tsubscript𝑣𝑗𝑡v_{j,t}italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT is the j𝑗jitalic_jth element of vtsubscript𝑣𝑡v_{t}italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT, and vj,tsubscript𝑣𝑗𝑡v_{-j,t}italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT is the vector obtained by removing vj,tsubscript𝑣𝑗𝑡v_{j,t}italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT from vtsubscript𝑣𝑡v_{t}italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT. Conversely, the inverse of the hhitalic_h-function at time t𝑡titalic_t in (11) is also useful if we want to reduce the dimension of the conditioning set of F[t](xt|vt)superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑡F^{[t]}(x_{t}|v_{t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ). If both F[t](xt|vt)superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑡F^{[t]}(x_{t}|v_{t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) and F[t](vj,t|vj,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑣𝑗𝑡subscript𝑣𝑗𝑡F^{[t]}(v_{j,t}|v_{-j,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) are available, then F[t](xt|vj,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑗𝑡F^{[t]}(x_{t}|v_{-j,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) can be evaluated using the inverse hhitalic_h-function

F[t](xt|vj,t)=h[t]x,vj|vj1(F[t](xt|vt),F[t](vj,t|vj,t)).superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑗𝑡subscriptsuperscriptsuperscriptdelimited-[]𝑡1𝑥conditionalsubscript𝑣𝑗subscript𝑣𝑗superscript𝐹delimited-[]𝑡conditionalsubscript𝑥𝑡subscript𝑣𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑣𝑗𝑡subscript𝑣𝑗𝑡F^{[t]}(x_{t}|v_{-j,t})={h^{[t]}}^{-1}_{x,v_{j}|v_{-j}}(F^{[t]}(x_{t}|v_{t}),F% ^{[t]}(v_{j,t}|v_{-j,t})).italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) = italic_h start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x , italic_v start_POSTSUBSCRIPT italic_j end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j end_POSTSUBSCRIPT end_POSTSUBSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_x start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_v start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_v start_POSTSUBSCRIPT - italic_j , italic_t end_POSTSUBSCRIPT ) ) . (12)

In the simulation study and empirical study, we use the t𝑡titalic_t-copulas in the GC-GARCH model. The hhitalic_h-function and inverse hhitalic_h-function of the t𝑡titalic_t-copula with correlation parameter φ=φxy|z[t]𝜑subscriptsuperscript𝜑delimited-[]𝑡conditional𝑥𝑦𝑧\varphi=\varphi^{[t]}_{xy|z}italic_φ = italic_φ start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and degrees of freedom v=vxy|z𝑣subscript𝑣conditional𝑥𝑦𝑧v=v_{xy|z}italic_v = italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are respectively given by

hxy|z[t](uxt,uyt)=tv+1(tv1(uxt)φtv1(uyt)(v+[tv1(uyt)]2)(1φ2)v+1)superscriptsubscriptconditional𝑥𝑦𝑧delimited-[]𝑡subscript𝑢𝑥𝑡subscript𝑢𝑦𝑡subscript𝑡𝑣1superscriptsubscript𝑡𝑣1subscript𝑢𝑥𝑡𝜑superscriptsubscript𝑡𝑣1subscript𝑢𝑦𝑡𝑣superscriptdelimited-[]superscriptsubscript𝑡𝑣1subscript𝑢𝑦𝑡21superscript𝜑2𝑣1h_{xy|z}^{[t]}(u_{xt},u_{yt})=t_{v+1}\left(\frac{t_{v}^{-1}(u_{xt})-\varphi t_% {v}^{-1}(u_{yt})}{\sqrt{\frac{({v}+[t_{v}^{-1}(u_{yt})]^{2})(1-\varphi^{2})}{{% v}+1}}}\right)italic_h start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) = italic_t start_POSTSUBSCRIPT italic_v + 1 end_POSTSUBSCRIPT ( divide start_ARG italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT ) - italic_φ italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) end_ARG start_ARG square-root start_ARG divide start_ARG ( italic_v + [ italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) ] start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) ( 1 - italic_φ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) end_ARG start_ARG italic_v + 1 end_ARG end_ARG end_ARG )

and

hxy|z[t]1(uxt,uyt)=tv(tv+11(uxt)(v+[tv1(uyt)]2)(1φ2)v+1+φtv1(uyt)),subscriptsuperscriptsuperscriptdelimited-[]𝑡1conditional𝑥𝑦𝑧subscript𝑢𝑥𝑡subscript𝑢𝑦𝑡subscript𝑡𝑣superscriptsubscript𝑡𝑣11subscript𝑢𝑥𝑡𝑣superscriptdelimited-[]superscriptsubscript𝑡𝑣1subscript𝑢𝑦𝑡21superscript𝜑2𝑣1𝜑superscriptsubscript𝑡𝑣1subscript𝑢𝑦𝑡h^{{[t]}^{-1}}_{xy|z}(u_{xt},u_{yt})=t_{v}\left(t_{{v}+1}^{-1}(u_{xt})\sqrt{% \frac{({v}+[t_{v}^{-1}(u_{yt})]^{2})(1-\varphi^{2})}{{v}+1}}+\varphi t_{v}^{-1% }(u_{yt})\right),italic_h start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) = italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT ( italic_t start_POSTSUBSCRIPT italic_v + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT ) square-root start_ARG divide start_ARG ( italic_v + [ italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) ] start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) ( 1 - italic_φ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT ) end_ARG start_ARG italic_v + 1 end_ARG end_ARG + italic_φ italic_t start_POSTSUBSCRIPT italic_v end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) ) ,

where uxt=Fx[t](rxt)subscript𝑢𝑥𝑡superscriptsubscript𝐹𝑥delimited-[]𝑡subscript𝑟𝑥𝑡u_{xt}=F_{x}^{[t]}(r_{xt})italic_u start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUBSCRIPT italic_x end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT ) and uyt=Fy[t](ryt)subscript𝑢𝑦𝑡superscriptsubscript𝐹𝑦delimited-[]𝑡subscript𝑟𝑦𝑡u_{yt}=F_{y}^{[t]}(r_{yt})italic_u start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUBSCRIPT italic_y end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT ) are the cumulative distributions of two return variables rxtsubscript𝑟𝑥𝑡r_{xt}italic_r start_POSTSUBSCRIPT italic_x italic_t end_POSTSUBSCRIPT and rytsubscript𝑟𝑦𝑡r_{yt}italic_r start_POSTSUBSCRIPT italic_y italic_t end_POSTSUBSCRIPT at time t𝑡titalic_t.

3.3 Computation of the likelihood function

The joint density in (7) contains three parts, which have to be computed sequentially: the marginal distributions, fi[t]superscriptsubscript𝑓𝑖delimited-[]𝑡f_{i}^{[t]}italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT, the conditional copulas among the risk factors, ci,i[k]|i[1],,i[k1][t]superscriptsubscript𝑐𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡c_{i,i[k]|i[1],...,i[k-1]}^{[t]}italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT, and the conditional copulas between the risk factors and stocks, cj,i|1,,i1[t]superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,...,i-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT. We define the following parameter sets:

  1. 1.

    Θ1i={ωi,αi,βi,vi}subscriptΘ1𝑖subscript𝜔𝑖subscript𝛼𝑖subscript𝛽𝑖subscript𝑣𝑖\Theta_{1i}=\{\omega_{i},\alpha_{i},\beta_{i},v_{i}\}roman_Θ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT = { italic_ω start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_α start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_β start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT } be the set of parameters in the marginal distribution of the i𝑖iitalic_ith stock, where i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p. We also denote Θ1={Θ1i}i=1m+psubscriptΘ1superscriptsubscriptsubscriptΘ1𝑖𝑖1𝑚𝑝\Theta_{1}=\{\Theta_{1i}\}_{i=1}^{m+p}roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = { roman_Θ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT.

  2. 2.

    Θ2={φ¯i,i[k]|zik,ai,i[k]|zik,bi,i[k]|zik,vi,i[k]|zik:k=1,,n(i) and i=2,,m}subscriptΘ2conditional-setsubscript¯𝜑𝑖conditional𝑖delimited-[]𝑘subscript𝑧𝑖𝑘subscript𝑎𝑖conditional𝑖delimited-[]𝑘subscript𝑧𝑖𝑘subscript𝑏𝑖conditional𝑖delimited-[]𝑘subscript𝑧𝑖𝑘subscript𝑣𝑖conditional𝑖delimited-[]𝑘subscript𝑧𝑖𝑘formulae-sequence𝑘1𝑛𝑖 and 𝑖2𝑚\Theta_{2}=\{\bar{\varphi}_{i,i[k]|z_{ik}},a_{i,i[k]|z_{ik}},b_{i,i[k]|z_{ik}}% ,v_{i,i[k]|z_{ik}}:k=1,\ldots,n(i)\text{ and }i=2,\ldots,m\}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = { over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_a start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT : italic_k = 1 , … , italic_n ( italic_i ) and italic_i = 2 , … , italic_m } be the set of parameters in the DAG copulas, where zik={i[1],,i[k1]}subscript𝑧𝑖𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1z_{ik}=\{i[1],\ldots,i[k-1]\}italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = { italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] }, and

  3. 3.

    Θ3j={φ¯j,i|1,,i1,aj,i|1,,i1,bj,i|1,,i1,vj,i|1,,i1:i=1,,m}subscriptΘ3𝑗conditional-setsubscript¯𝜑𝑗conditional𝑖1𝑖1subscript𝑎𝑗conditional𝑖1𝑖1subscript𝑏𝑗conditional𝑖1𝑖1subscript𝑣𝑗conditional𝑖1𝑖1𝑖1𝑚\Theta_{3j}=\{\bar{\varphi}_{j,i|1,\ldots,i-1},a_{j,i|1,\ldots,i-1},b_{j,i|1,% \ldots,i-1},v_{j,i|1,\ldots,i-1}:i=1,\ldots,m\}roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT = { over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT , italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT , italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT : italic_i = 1 , … , italic_m } be the set of parameters in the copulas of the stock j𝑗jitalic_j, where j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p. We also denote Θ3={Θ3j}j=m+1m+psubscriptΘ3superscriptsubscriptsubscriptΘ3𝑗𝑗𝑚1𝑚𝑝\Theta_{3}=\{\Theta_{3j}\}_{j=m+1}^{m+p}roman_Θ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT = { roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT.

The steps to compute of the joint density are depicted below. Starting at t=1𝑡1t=1italic_t = 1,

  1. 1.

    (Marginal distribution) We first compute the cumulative distribution of the marginal distributions F[t](r1,t),,F[t](rm+p,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡subscript𝑟𝑚𝑝𝑡F^{[t]}(r_{1,t}),\ldots,F^{[t]}(r_{m+p,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ) and the log density functions logf1[t](r1,t)subscriptsuperscript𝑓delimited-[]𝑡1subscript𝑟1𝑡\log f^{[t]}_{1}(r_{1,t})roman_log italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ), ,logfm+p[t](rm+p,t)subscriptsuperscript𝑓delimited-[]𝑡𝑚𝑝subscript𝑟𝑚𝑝𝑡\ldots,\log f^{[t]}_{m+p}(r_{m+p,t})… , roman_log italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_m + italic_p end_POSTSUBSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ).

  2. 2.

    (Conditional copulas of the DAG) For each i=2,,m𝑖2𝑚i=2,\ldots,mitalic_i = 2 , … , italic_m and if ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT has at least one parent (i.e., n(i)1𝑛𝑖1n(i)\geq 1italic_n ( italic_i ) ≥ 1), then for k=1,,n(i)𝑘1𝑛𝑖k=1,\ldots,n(i)italic_k = 1 , … , italic_n ( italic_i ),

    1. (i)

      if t=1𝑡1t=1italic_t = 1, initialize φi,i[k]|i[1],,i[k1][1]superscriptsubscript𝜑𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]1\varphi_{i,i[k]|i[1],\ldots,i[k-1]}^{[1]}italic_φ start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ 1 ] end_POSTSUPERSCRIPT as the long-run correlation φ¯i,i[k]|i[1],,i[k1]subscript¯𝜑𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1\bar{\varphi}_{i,i[k]|i[1],\ldots,i[k-1]}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT. Otherwise, φi,i[k]|i[1],,i[k1][t]superscriptsubscript𝜑𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡\varphi_{i,i[k]|i[1],\ldots,i[k-1]}^{[t]}italic_φ start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT is computed according to the dynamics in (8).

    2. (ii)

      Compute and store the log copula density with correlation parameter φi,i[k]|i[1],,i[k1][t]superscriptsubscript𝜑𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡\varphi_{i,i[k]|i[1],\ldots,i[k-1]}^{[t]}italic_φ start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and degrees of freedom vi,i[k]|i[1],,i[k1]subscript𝑣𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1v_{i,i[k]|i[1],\ldots,i[k-1]}italic_v start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT:

      logci,i[k]|i[1],,i[k1][t](F[t](ri,t|ri[1],t,,ri[k1],t),F[t](ri[k],t|ri[1],t,,ri[k1],t)).superscriptsubscript𝑐𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡\log c_{i,i[k]|i[1],\ldots,i[k-1]}^{[t]}(F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{% i[k-1],t}),F^{[t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t})).roman_log italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) ) .
    3. (iii)

      If k<n(i)𝑘𝑛𝑖k<n(i)italic_k < italic_n ( italic_i ), compute and store F[t](ri,t|ri[1],t,,ri[k],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘𝑡F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{i[k],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT ) and F[t](ri[k+1],t|ri[1],t,,ri[k],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘1𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘𝑡F^{[t]}(r_{i[k+1],t}|r_{i[1],t},\ldots,r_{i[k],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k + 1 ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT ) using the hhitalic_h-function in (11).

  3. 3.

    (Conditional copulas between the stocks and the risk factors) For each stock j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p, we compute as follows: For i=1,,m𝑖1𝑚i=1,\ldots,mitalic_i = 1 , … , italic_m,

    1. (i)

      if t=1𝑡1t=1italic_t = 1, initialize φj,i|1,,i1[1]superscriptsubscript𝜑𝑗conditional𝑖1𝑖1delimited-[]1\varphi_{j,i|1,\ldots,i-1}^{[1]}italic_φ start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ 1 ] end_POSTSUPERSCRIPT as the long-run correlation φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT. Otherwise, φj,i|1,,i1[t]superscriptsubscript𝜑𝑗conditional𝑖1𝑖1delimited-[]𝑡\varphi_{j,i|1,\ldots,i-1}^{[t]}italic_φ start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT is computed according to the dynamics in (8).

    2. (ii)

      Compute and store the log copula density with correlation parameter φj,i|1,,i1[t]superscriptsubscript𝜑𝑗conditional𝑖1𝑖1delimited-[]𝑡\varphi_{j,i|1,\ldots,i-1}^{[t]}italic_φ start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT and degrees of freedom vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT:

      logcj,i|1,,i1[t](F[t](rj,t|r1,t,,ri1,t),F[t](ri,t|r1,t,,ri1,t)).superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡\log c_{j,i|1,\ldots,i-1}^{[t]}(F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t}),F^{[% t]}(r_{i,t}|r_{1,t},\ldots,r_{i-1,t})).roman_log italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) ) .
    3. (iii)

      If i<m𝑖𝑚i<mitalic_i < italic_m, compute and store F[t](rj,t|r1,t,,ri,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖𝑡F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) and F[t](ri+1,t|r1,t,,ri,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖1𝑡subscript𝑟1𝑡subscript𝑟𝑖𝑡F^{[t]}(r_{i+1,t}|r_{1,t},\ldots,r_{i,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i + 1 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) using the hhitalic_h-function in (11).

  4. 4.

    Set t𝑡titalic_t to t+1𝑡1t+1italic_t + 1 and go back to step 1, until t=T𝑡𝑇t=Titalic_t = italic_T.

Finally, we can calculate the log likelihood function

(Θ|D)=t=1Tlogf[t](r1,t,,rm+p,t)conditionalΘ𝐷superscriptsubscript𝑡1𝑇superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡\displaystyle\ell(\Theta|D)=\sum_{t=1}^{T}\log f^{[t]}(r_{1,t},\ldots,r_{m+p,t})roman_ℓ ( roman_Θ | italic_D ) = ∑ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_log italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT )
=(i=1m+p1i(Θ1i|D))+2(Θ1,Θ2|D)+(j=m+1m+p3j(Θ1,Θ2,Θ3j|D)),absentsuperscriptsubscript𝑖1𝑚𝑝subscript1𝑖conditionalsubscriptΘ1𝑖𝐷subscript2subscriptΘ1conditionalsubscriptΘ2𝐷superscriptsubscript𝑗𝑚1𝑚𝑝subscript3𝑗subscriptΘ1subscriptΘ2conditionalsubscriptΘ3𝑗𝐷\displaystyle=\left(\sum_{i=1}^{m+p}\ell_{1i}(\Theta_{1i}|D)\right)+\ell_{2}(% \Theta_{1},\Theta_{2}|D)+\left(\sum_{j=m+1}^{m+p}\ell_{3j}(\Theta_{1},\Theta_{% 2},\Theta_{3j}|D)\right),= ( ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT roman_ℓ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT | italic_D ) ) + roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_D ) + ( ∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT roman_ℓ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT | italic_D ) ) ,

with

1i(Θ1i|D)subscript1𝑖conditionalsubscriptΘ1𝑖𝐷\displaystyle\ell_{1i}(\Theta_{1i}|D)roman_ℓ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT | italic_D ) =t=1Tlogfi[t](ri,t),for i=1,,m+p,formulae-sequenceabsentsuperscriptsubscript𝑡1𝑇superscriptsubscript𝑓𝑖delimited-[]𝑡subscript𝑟𝑖𝑡for 𝑖1𝑚𝑝\displaystyle=\sum_{t=1}^{T}\log f_{i}^{[t]}(r_{i,t}),\text{for }i=1,\ldots,m+p,= ∑ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_log italic_f start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT ) , for italic_i = 1 , … , italic_m + italic_p , (13)
2(Θ1,Θ2|D)subscript2subscriptΘ1conditionalsubscriptΘ2𝐷\displaystyle\ell_{2}(\Theta_{1},\Theta_{2}|D)roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_D ) =i=2mk=1n(i)t=1Tlogci,i[k]|i[1],,i[k1][t](F[t](ri,t|ri[1],t,,ri[k1],t),F[t](ri[k],t|ri[1],t,,ri[k1],t)),absentsuperscriptsubscript𝑖2𝑚superscriptsubscript𝑘1𝑛𝑖superscriptsubscript𝑡1𝑇superscriptsubscript𝑐𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡\displaystyle=\sum_{i=2}^{m}\sum_{k=1}^{n(i)}\sum_{t=1}^{T}\log c_{i,i[k]|i[1]% ,\ldots,i[k-1]}^{[t]}(F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{i[k-1],t}),F^{[t]}(% r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t})),= ∑ start_POSTSUBSCRIPT italic_i = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n ( italic_i ) end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_log italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) ) , (14)
3j(Θ1,Θ2,Θ3j|D)subscript3𝑗subscriptΘ1subscriptΘ2conditionalsubscriptΘ3𝑗𝐷\displaystyle\ell_{3j}(\Theta_{1},\Theta_{2},\Theta_{3j}|D)roman_ℓ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT ( roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT | italic_D ) =i=1mt=1Tlogcj,i|1,,i1[t](F[t](rj,t|r1,t,,ri1,t),F[t](ri,t|r1,t,,ri1,t)),absentsuperscriptsubscript𝑖1𝑚superscriptsubscript𝑡1𝑇superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡\displaystyle=\sum_{i=1}^{m}\sum_{t=1}^{T}\log c_{j,i|1,\ldots,i-1}^{[t]}(F^{[% t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t}),F^{[t]}(r_{i,t}|r_{1,t},\ldots,r_{i-1,t}% )),= ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_t = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_log italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ) ) , (15)
for j=m+1,,m+p,for 𝑗𝑚1𝑚𝑝\displaystyle\text{for }j=m+1,\ldots,m+p,for italic_j = italic_m + 1 , … , italic_m + italic_p ,

and Θ={Θ1,Θ2,Θ3}ΘsubscriptΘ1subscriptΘ2subscriptΘ3\Theta=\{\Theta_{1},\Theta_{2},\Theta_{3}\}roman_Θ = { roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 3 end_POSTSUBSCRIPT }. In the estimation of parameters in DAG copulas, we need to compute starting from i=2𝑖2i=2italic_i = 2 to m𝑚mitalic_m sequentially since the conditional distributions depend on the parents. However, the parameters in each of the marginal distribution can be estimated separately. For the stock copulas, rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT only depend on the risk factor returns r1,t,,rm,tsubscript𝑟1𝑡subscript𝑟𝑚𝑡r_{1,t},\ldots,r_{m,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m , italic_t end_POSTSUBSCRIPT but not other stock returns rj,tsubscript𝑟superscript𝑗𝑡r_{j^{\prime},t}italic_r start_POSTSUBSCRIPT italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT , italic_t end_POSTSUBSCRIPT, for all j{m+1,,m+p}{j}superscript𝑗𝑚1𝑚𝑝𝑗j^{\prime}\in\{m+1,\ldots,m+p\}\setminus\{j\}italic_j start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ∈ { italic_m + 1 , … , italic_m + italic_p } ∖ { italic_j }. This implies that we can estimate the parameters in the stock copulas separately for each stock. Thus, we express the log likelihood function as a sum of marginal likelihood functions and a sum of stock copula likelihood functions because the parameters can be estimated separately for each term in the two summations. We discuss the detailed procedures for the estimation in Section 4.

3.4 The reduced DAG space

The conditional density of the i𝑖iitalic_ith risk factor return, i=1,,m𝑖1𝑚i=1,\ldots,mitalic_i = 1 , … , italic_m, in (6) is dependent on the conditional distribution functions F[t](ri,t|ri[1],t,,ri[k1],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡F^{[t]}(r_{i,t}|r_{i[1],t},\ldots,r_{i[k-1],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) and F[t](ri[k],t|ri[1],t,,ri[k1],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡F^{[t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ), which are computed recursively using the hhitalic_h-function in (11). However, the computation of the second conditional distribution function F[t](ri[k],t|ri[1],t,,ri[k1],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡F^{[t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) may be complicated for some DAGs. To illustrate this, Figure 2 contains a DAG with five variables as an example. Using the DAG factorization in (2), the joint density function of r1,t,r2,t,r3,t,r4,t,r5,tsubscript𝑟1𝑡subscript𝑟2𝑡subscript𝑟3𝑡subscript𝑟4𝑡subscript𝑟5𝑡r_{1,t},r_{2,t},r_{3,t},r_{4,t},r_{5,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT can be expressed as

f[t](r1,t,r2,t,r3,t,r4,t,r5,t)=f[t](r1,t)f[t](r2,t)f[t](r3,t)f[t](r4,t|r2,t,r3,t)f[t](r5,t|r1,t,r3,t,r4,t).superscript𝑓delimited-[]𝑡subscript𝑟1𝑡subscript𝑟2𝑡subscript𝑟3𝑡subscript𝑟4𝑡subscript𝑟5𝑡superscript𝑓delimited-[]𝑡subscript𝑟1𝑡superscript𝑓delimited-[]𝑡subscript𝑟2𝑡superscript𝑓delimited-[]𝑡subscript𝑟3𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟2𝑡subscript𝑟3𝑡superscript𝑓delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡f^{[t]}(r_{1,t},r_{2,t},r_{3,t},r_{4,t},r_{5,t})=f^{[t]}(r_{1,t})f^{[t]}(r_{2,% t})f^{[t]}(r_{3,t})f^{[t]}(r_{4,t}|r_{2,t},r_{3,t})f^{[t]}(r_{5,t}|r_{1,t},r_{% 3,t},r_{4,t}).italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT ) = italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) . (16)

Choosing the topological order =(1,2,3,4,5)\prec=(1,2,3,4,5)≺ = ( 1 , 2 , 3 , 4 , 5 ) (as there are multiple orders that are compatible to the DAG in Figure 2), we further consider the pair-copula construction for the term f[t](r5,t|r1,t,r3,t,r4,t)superscript𝑓delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡f^{[t]}(r_{5,t}|r_{1,t},r_{3,t},r_{4,t})italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) in (16) using (6) :

f[t](r5,t|r1,t,r3,t,r4,t)=superscript𝑓delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡absent\displaystyle f^{[t]}(r_{5,t}|r_{1,t},r_{3,t},r_{4,t})=italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) = c5,1[t](F[t](r5,t),F[t](r1,t))c5,3|1[t](F[t](r5,t|r1,t),F[t](r3,t|r1,t))\displaystyle c_{5,1}^{[t]}(F^{[t]}(r_{5,t}),F^{[t]}(r_{1,t}))c_{5,3|1}^{[t]}(% F^{[t]}(r_{5,t}|r_{1,t}),F^{[t]}(r_{3,t}|r_{1,t}))\cdotitalic_c start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) italic_c start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) ⋅ (17)
c5,4|3,1[t](F[t](r5,t|r3,t,r1,t),F[t](r4,t|r3,t,r1,t)).superscriptsubscript𝑐5conditional431delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟3𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡\displaystyle c_{5,4|3,1}^{[t]}(F^{[t]}(r_{5,t}|r_{3,t},r_{1,t}),F^{[t]}(r_{4,% t}|r_{3,t},r_{1,t})).italic_c start_POSTSUBSCRIPT 5 , 4 | 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) .

On the other hand, the conditional density for r4,tsubscript𝑟4𝑡r_{4,t}italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT in (16) is factorized as

f[t](r4t|r2t,r3t)=c4,2[t](F[t](r4t),F[t](r2t))c4,3|2[t](F[t](r4t|r2t),F[t](r3t|r2t)),superscript𝑓delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟2𝑡subscript𝑟3𝑡superscriptsubscript𝑐42delimited-[]𝑡superscript𝐹delimited-[]𝑡subscript𝑟4𝑡superscript𝐹delimited-[]𝑡subscript𝑟2𝑡superscriptsubscript𝑐4conditional32delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟2𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟2𝑡f^{[t]}(r_{4t}|r_{2t},r_{3t})=c_{4,2}^{[t]}(F^{[t]}(r_{4t}),F^{[t]}(r_{2t}))c_% {4,3|2}^{[t]}(F^{[t]}(r_{4t}|r_{2t}),F^{[t]}(r_{3t}|r_{2t})),italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ) = italic_c start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) ) italic_c start_POSTSUBSCRIPT 4 , 3 | 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) ) , (18)

which depends only on two copulas c4,2(,)subscript𝑐42c_{4,2}(\cdot,\cdot)italic_c start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) and c4,3|2(,)subscript𝑐4conditional32c_{4,3|2}(\cdot,\cdot)italic_c start_POSTSUBSCRIPT 4 , 3 | 2 end_POSTSUBSCRIPT ( ⋅ , ⋅ ). When we compute the conditional distribution function F[t](r4t|r3t,r1t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡F^{[t]}(r_{4t}|r_{3t},r_{1t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT ) in the last term in (17), we apply the hhitalic_h function in (11):

F[t](r4t|r3t,r1t)=F[t](r4t|r3t)=h4,3[t](F[t](r4t),F[t](r3t)),superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡superscriptsubscript43delimited-[]𝑡superscript𝐹delimited-[]𝑡subscript𝑟4𝑡superscript𝐹delimited-[]𝑡subscript𝑟3𝑡\displaystyle F^{[t]}(r_{4t}|r_{3t},r_{1t})=F^{[t]}(r_{4t}|r_{3t})=h_{4,3}^{[t% ]}(F^{[t]}(r_{4t}),F^{[t]}(r_{3t})),italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT ) = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ) = italic_h start_POSTSUBSCRIPT 4 , 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ) ) , (19)

where the first equality in (19) is due to the fact that r4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT and r1tsubscript𝑟1𝑡r_{1t}italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT are independent in the Bayesian network in Figure 2 (r4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT and r1tsubscript𝑟1𝑡r_{1t}italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT are independent when r5tsubscript𝑟5𝑡r_{5t}italic_r start_POSTSUBSCRIPT 5 italic_t end_POSTSUBSCRIPT is not given). The second equality in (19) requires the hhitalic_h function h4,3[t](u,v)=C4,3[t](u,v)/vsuperscriptsubscript43delimited-[]𝑡𝑢𝑣superscriptsubscript𝐶43delimited-[]𝑡𝑢𝑣𝑣h_{4,3}^{[t]}(u,v)=\partial C_{4,3}^{[t]}(u,v)/\partial vitalic_h start_POSTSUBSCRIPT 4 , 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_u , italic_v ) = ∂ italic_C start_POSTSUBSCRIPT 4 , 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_u , italic_v ) / ∂ italic_v, where u=F[t](r4t)𝑢superscript𝐹delimited-[]𝑡subscript𝑟4𝑡u=F^{[t]}(r_{4t})italic_u = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT ) and v=F[t](r3t)𝑣superscript𝐹delimited-[]𝑡subscript𝑟3𝑡v=F^{[t]}(r_{3t})italic_v = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ), but the copula C4,3[t](,)superscriptsubscript𝐶43delimited-[]𝑡C_{4,3}^{[t]}(\cdot,\cdot)italic_C start_POSTSUBSCRIPT 4 , 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( ⋅ , ⋅ ) is not defined in (18) under the DAG in Figure 2. Therefore, we cannot use the hhitalic_h function to calculate F[t](r4t|r3t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡F^{[t]}(r_{4t}|r_{3t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ). Alternatively, we can compute this conditional distribution function using the formula

F[t](r4t|r3t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡\displaystyle F^{[t]}(r_{4t}|r_{3t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ) =F[t](r4t|r3t,r2t)f[t](r2t)𝑑r2tabsentsuperscriptsubscriptsuperscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟2𝑡superscript𝑓delimited-[]𝑡subscript𝑟2𝑡differential-dsubscript𝑟2𝑡\displaystyle=\int_{-\infty}^{\infty}F^{[t]}(r_{4t}|r_{3t},r_{2t})f^{[t]}(r_{2% t})dr_{2t}= ∫ start_POSTSUBSCRIPT - ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) italic_d italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT (20)
h4,3|2[t](F[t](r4t|r2t),F[t](r3t|r2t))f[t](r2t)𝑑r2t,absentsuperscriptsubscriptsuperscriptsubscript4conditional32delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟2𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟2𝑡superscript𝑓delimited-[]𝑡subscript𝑟2𝑡differential-dsubscript𝑟2𝑡\displaystyle\equiv\int_{-\infty}^{\infty}h_{4,3|2}^{[t]}(F^{[t]}(r_{4t}|r_{2t% }),F^{[t]}(r_{3t}|r_{2t}))f^{[t]}(r_{2t})dr_{2t},≡ ∫ start_POSTSUBSCRIPT - ∞ end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∞ end_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT 4 , 3 | 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) ) italic_f start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ) italic_d italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT ,

where the hhitalic_h function h4,3|2[t](,)superscriptsubscript4conditional32delimited-[]𝑡h_{4,3|2}^{[t]}(\cdot,\cdot)italic_h start_POSTSUBSCRIPT 4 , 3 | 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( ⋅ , ⋅ ) is directly computable from the copula C4,3|2[t](,)superscriptsubscript𝐶4conditional32delimited-[]𝑡C_{4,3|2}^{[t]}(\cdot,\cdot)italic_C start_POSTSUBSCRIPT 4 , 3 | 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( ⋅ , ⋅ ). However, the integration in (20) may not be easily computable and the use of numerical integration is required. To conclude, (19) is not easily computable because the condition in the conditional probability in (19) does not include the first parent of r4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT, i.e., r2tsubscript𝑟2𝑡r_{2t}italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT. We need to marginalize r2tsubscript𝑟2𝑡r_{2t}italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT from the copula as in (20) to compute the conditional distribution F[t](r4t|r3t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡F^{[t]}(r_{4t}|r_{3t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ).

To reduce computation burden, we consider the DAGs in the reduced space, such that each of the conditional probabilities in the equation

ci,i[k]|i[1],,i[k1][t](F[t](ri,t|ri[1],t,,ri[k1],t),F[t](ri[k],t|ri[1],t,,ri[k1],t))superscriptsubscript𝑐𝑖conditional𝑖delimited-[]𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡\displaystyle c_{i,i[k]|i[1],\ldots,i[k-1]}^{[t]}(F^{[t]}(r_{i,t}|r_{i[1],t},% \ldots,r_{i[k-1],t}),F^{[t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t}))italic_c start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) ) (21)

contains a “cummulative” parent set. Appendix A contains an algorithm to subset the DAG space to reduce computation burden.

r1tsubscript𝑟1𝑡r_{1t}italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPTr2tsubscript𝑟2𝑡r_{2t}italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPTr3tsubscript𝑟3𝑡r_{3t}italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPTr4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPTr5tsubscript𝑟5𝑡r_{5t}italic_r start_POSTSUBSCRIPT 5 italic_t end_POSTSUBSCRIPT
Figure 2: An example to illustrate the difficulty of calculating the conditional distributions.

3.5 Generating returns from the GC-GARCH model

In the simulation study, we simulate a hypothetical data set to evaluate the performance of the estimation procedures. To simulate (m+p)𝑚𝑝(m+p)( italic_m + italic_p )-dimensional time series from the joint density function in (7), we use a method similar to the one in \textcitevine_copula. For each variable in the DAG, we generate a value from U(0,1)𝑈01U(0,1)italic_U ( 0 , 1 ), the uniform distribution over the interval (0,1)01(0,1)( 0 , 1 ), to represent a realization of the conditional CDF of ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT given its parent set, i.e., ui|𝐫pa(i),t=F[t](ri,t|𝐫pa(i))subscript𝑢conditional𝑖subscript𝐫pa𝑖𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖𝑡subscript𝐫pa𝑖u_{i|\mathbf{r}_{\text{pa}(i)},t}=F^{[t]}(r_{i,t}|\mathbf{r}_{\text{pa}(i)})italic_u start_POSTSUBSCRIPT italic_i | bold_r start_POSTSUBSCRIPT pa ( italic_i ) end_POSTSUBSCRIPT , italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT | bold_r start_POSTSUBSCRIPT pa ( italic_i ) end_POSTSUBSCRIPT ), for i=1,,m𝑖1𝑚i=1,\ldots,mitalic_i = 1 , … , italic_m. For each stock variable, we similarly generate a value from U(0,1)𝑈01U(0,1)italic_U ( 0 , 1 ) to represent a realization of the conditional CDF of rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT given the risk factor returns r1,t,ri1,tsubscript𝑟1𝑡subscript𝑟𝑖1𝑡r_{1,t}\ldots,r_{i-1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT, notated by uj|1,,i1,t=F[t](rj,t|r1,t,,ri1,t)subscript𝑢conditional𝑗1𝑖1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟𝑖1𝑡u_{j|1,\ldots,i-1,t}=F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{i-1,t})italic_u start_POSTSUBSCRIPT italic_j | 1 , … , italic_i - 1 , italic_t end_POSTSUBSCRIPT = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i - 1 , italic_t end_POSTSUBSCRIPT ). We then obtain F[t](r1,t),,F[t](rm+p,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡subscript𝑟𝑚𝑝𝑡F^{[t]}(r_{1,t}),\ldots,F^{[t]}(r_{m+p,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ) by applying the inverse hhitalic_h-function in (12) to reduce the conditioning set by 1 each time until it is empty.

For example, suppose that we want to simulate returns from a GC-GARCH model with m=4𝑚4m=4italic_m = 4 risk factors with the DAG structure in 1(a) and p𝑝pitalic_p stocks. For t=1,,T𝑡1𝑇t=1,\ldots,Titalic_t = 1 , … , italic_T, we first generate u1,t,u2,t,u3|1,t,u4|123,tsubscript𝑢1𝑡subscript𝑢2𝑡subscript𝑢conditional31𝑡subscript𝑢conditional4123𝑡u_{1,t},u_{2,t},u_{3|1,t},u_{4|123,t}italic_u start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 | 1 , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 | 123 , italic_t end_POSTSUBSCRIPT independently from Uniform[0,1]Uniform01\text{Uniform}[0,1]Uniform [ 0 , 1 ] for the risk factor returns. We then determine the unconditional cumulative distribution functions of the risk factor returns F[t](r1,t),,F[t](r4,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡subscript𝑟4𝑡F^{[t]}(r_{1,t}),\ldots,F^{[t]}(r_{4,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ):

F[t](r1,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡\displaystyle F^{[t]}(r_{1,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) =u1,t,absentsubscript𝑢1𝑡\displaystyle=u_{1,t},= italic_u start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ,
F[t](r2,t)superscript𝐹delimited-[]𝑡subscript𝑟2𝑡\displaystyle F^{[t]}(r_{2,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) =u2,t,absentsubscript𝑢2𝑡\displaystyle=u_{2,t},= italic_u start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ,
F[t](r3,t)superscript𝐹delimited-[]𝑡subscript𝑟3𝑡\displaystyle F^{[t]}(r_{3,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) =h3,1[t]1(u3|1,t,u1,t),absentsuperscriptsubscript31superscriptdelimited-[]𝑡1subscript𝑢conditional31𝑡subscript𝑢1𝑡\displaystyle=h_{3,1}^{{[t]}^{-1}}(u_{3|1,t},u_{1,t}),= italic_h start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT 3 | 1 , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ,
F[t](r4,t)superscript𝐹delimited-[]𝑡subscript𝑟4𝑡\displaystyle F^{[t]}(r_{4,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) =h4,1[t]1(h4,2|1[t]1(h4,3|1,2[t]1(u4|1,2,3,t,u3|1,t),u2,t),u1,t).absentsuperscriptsubscript41superscriptdelimited-[]𝑡1superscriptsubscript4conditional21superscriptdelimited-[]𝑡1superscriptsubscript4conditional312superscriptdelimited-[]𝑡1subscript𝑢conditional4123𝑡subscript𝑢conditional31𝑡subscript𝑢2𝑡subscript𝑢1𝑡\displaystyle=h_{4,1}^{{[t]}^{-1}}(h_{4,2|1}^{{[t]}^{-1}}(h_{4,3|1,2}^{{[t]}^{% -1}}(u_{4|1,2,3,t},u_{3|1,t}),u_{2,t}),u_{1,t}).= italic_h start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_h start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_h start_POSTSUBSCRIPT 4 , 3 | 1 , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT 4 | 1 , 2 , 3 , italic_t end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 3 | 1 , italic_t end_POSTSUBSCRIPT ) , italic_u start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) , italic_u start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) .

For j=m+1,,p𝑗𝑚1𝑝j=m+1,\ldots,pitalic_j = italic_m + 1 , … , italic_p, we generate uj|1,2,3,4subscript𝑢conditional𝑗1234u_{j|1,2,3,4}italic_u start_POSTSUBSCRIPT italic_j | 1 , 2 , 3 , 4 end_POSTSUBSCRIPT from Uniform[0,1]Uniform01\text{Uniform}[0,1]Uniform [ 0 , 1 ], which represents a realization of F[t](rj,t|r1,t,,r4,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑗𝑡subscript𝑟1𝑡subscript𝑟4𝑡F^{[t]}(r_{j,t}|r_{1,t},\ldots,r_{4,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ), the conditional distribution of the stock returns rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT given the risk factor returns. Then, we apply the inverse hhitalic_h-function in (12) recursively to obtain the unconditional cumulative distribution functions of the stock return rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT:

F[t](rj,t)=hj,1[t]1hj,2[t]1(hj,3|1,2[t]1(hj,4|1,2,3[t]1(uj|1,2,3,4,u4|1,2,3),u3|1,t),u2,t),u1,t).F^{[t]}(r_{j,t})=h_{j,1}^{{[t]}^{-1}}h_{j,2}^{{[t]}^{-1}}(h_{j,3|1,2}^{{[t]}^{% -1}}(h_{j,4|1,2,3}^{{[t]}^{-1}}(u_{j|1,2,3,4},u_{4|1,2,3}),u_{3|1,t}),u_{2,t})% ,u_{1,t}).italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT ) = italic_h start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT italic_h start_POSTSUBSCRIPT italic_j , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_h start_POSTSUBSCRIPT italic_j , 3 | 1 , 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_h start_POSTSUBSCRIPT italic_j , 4 | 1 , 2 , 3 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT end_POSTSUPERSCRIPT ( italic_u start_POSTSUBSCRIPT italic_j | 1 , 2 , 3 , 4 end_POSTSUBSCRIPT , italic_u start_POSTSUBSCRIPT 4 | 1 , 2 , 3 end_POSTSUBSCRIPT ) , italic_u start_POSTSUBSCRIPT 3 | 1 , italic_t end_POSTSUBSCRIPT ) , italic_u start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT ) , italic_u start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) .

Finally, as we assume the returns follow GARCH(1,1) models with t𝑡titalic_t distributed innovations as described in (9), by applying the inverse of the t𝑡titalic_t distribution for each F[t](r1,t),,F[t](rm+p,t)superscript𝐹delimited-[]𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡subscript𝑟𝑚𝑝𝑡F^{[t]}(r_{1,t}),\ldots,F^{[t]}(r_{m+p,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , … , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ), we obtain a vector of simulated returns r1t,,rm+p,tsubscript𝑟1𝑡subscript𝑟𝑚𝑝𝑡r_{1t},\ldots,r_{m+p,t}italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT.

4 Estimation

4.1 Parameter estimation

Recall that we divide the parameters in the GC-GARCH model into three groups in Section 3.3. In the literature, the estimation of the pair copulas is conducted individually for each copula \parencitebrechmann2013risk, referred to as sequential estimation. The sequential estimates can be obtained quickly due to the reduction in dimension. The sequential estimates are shown to be consistent and often perform well \parenciteHOBAEKHAFF201291,Haff2013ParameterEF.

For Θ1isubscriptΘ1𝑖\Theta_{1i}roman_Θ start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT’s, the parameters in the marginal distributions are first estimated using a numerical solver in R. This is the method of inference functions for margins (IFM) introduced by \textcitejoe1997multivariate,joe2005asymptotic. For Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, the parameters in the DAG copulas, we use the sequential estimates of the parameters as starting values for a full estimation procedure using Markov chain Monte Carlo (MCMC) sampling \parenciteHaff2013ParameterEF. For Θ3jsubscriptΘ3𝑗\Theta_{3j}roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT’s, the parameters in the stock copulas, however, we do not conduct MCMC sampling as the number of stocks in the portfolio, p𝑝pitalic_p, is large in the simulation study and empirical study, therefore conducting MCMC sampling for each of the stocks is not feasible in practice.

Similar to the IFM, we first estimate Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, the parameters in the DAG copulas. Then, we insert the estimates of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT back into the likelihood function and estimate Θ3jsubscriptΘ3𝑗\Theta_{3j}roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT’s, the parameters of the stock copulas. The rationale behind this is that the risk factors are used to explain the co-movements of the stock returns. Thus, the parameters in the DAG copulas should be estimated alone without including the stocks. For example, the parameters of the copulas in the DAG should be the same no matter whether we include p=50𝑝50p=50italic_p = 50 or p=100𝑝100p=100italic_p = 100 stocks in the GC-GARCH model.

We have already derived the likelihood functions in Section 3.3. We further derive the posterior distributions of the DAG copulas for MCMC sampling. The procedures of the parameter estimation in the GC-GARCH model are as follows.

  1. 1.

    Each return series follows a GARCH(1,1) models with t𝑡titalic_t distributed innovations in (9). For i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p, we obtain the maximum likelihood estimates Θ^1isubscript^Θ1𝑖\hat{\Theta}_{1i}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 italic_i end_POSTSUBSCRIPT from the log likelihood function of the i𝑖iitalic_i-th return series in (13) using a numerical optimizer in R, with positive variances and stationary covariance constraints in (9).

  2. 2.

    Using the sequential estimates of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT as starting values, we conduct MCMC sampling for the parameters Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, whose posterior distribution is

    logf(Θ2|Θ^1,D)𝑓conditionalsubscriptΘ2subscript^Θ1𝐷\displaystyle\log f(\Theta_{2}|\hat{\Theta}_{1},D)roman_log italic_f ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) (22)
    =\displaystyle== 2(Θ^1,Θ2|D)+logπ(Θ2)+constant,subscript2subscript^Θ1conditionalsubscriptΘ2𝐷𝜋subscriptΘ2constant\displaystyle\ell_{2}(\hat{\Theta}_{1},\Theta_{2}|D)+\log\pi(\Theta_{2})+\text% {constant},roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_D ) + roman_log italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) + constant ,

    where 2(Θ^1,Θ2|D)subscript2subscript^Θ1conditionalsubscriptΘ2𝐷\ell_{2}(\hat{\Theta}_{1},\Theta_{2}|D)roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_D ) is given by (14) in regard to the DAG copulas, and π(Θ2)𝜋subscriptΘ2\pi(\Theta_{2})italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) is the prior distribution for Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We choose a uniform prior for Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, which is proportional to 1 if the parameters satisfy the stationary conditions and the finite covariance condition, i.e.,

    π(Θ2)𝜋subscriptΘ2\displaystyle\pi(\Theta_{2})italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) (23)
    proportional-to\displaystyle\propto i=2mk=1n(i)𝟏(0ai,i[k]|zik,bi,i[k]|zik<1,ai,i[k]|zik+bi,i[k]|zik<1,1<φ¯i,i[k]|zik<1,vi,i[k]|zik>2),\displaystyle\prod_{i=2}^{m}\prod_{k=1}^{n(i)}\mathbf{1}(0\leq a_{i,i[k]|z_{ik% }},b_{i,i[k]|z_{ik}}<1,a_{i,i[k]|z_{ik}}+b_{i,i[k]|z_{ik}}<1,-1<\bar{\varphi}_% {i,i[k]|z_{ik}}<1,v_{i,i[k]|z_{ik}}>2),∏ start_POSTSUBSCRIPT italic_i = 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ∏ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_n ( italic_i ) end_POSTSUPERSCRIPT bold_1 ( 0 ≤ italic_a start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT < 1 , italic_a start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT < 1 , - 1 < over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT < 1 , italic_v start_POSTSUBSCRIPT italic_i , italic_i [ italic_k ] | italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT end_POSTSUBSCRIPT > 2 ) ,

    where zik={i[1],,i[k1]}subscript𝑧𝑖𝑘𝑖delimited-[]1𝑖delimited-[]𝑘1z_{ik}=\{i[1],\ldots,i[k-1]\}italic_z start_POSTSUBSCRIPT italic_i italic_k end_POSTSUBSCRIPT = { italic_i [ 1 ] , … , italic_i [ italic_k - 1 ] } and 𝟏()1\mathbf{1}(\cdot)bold_1 ( ⋅ ) is an indicator function that takes 1 if the condition inside the indicator function is satisfied, and 0 otherwise. Note that we use the IFM method so that we insert Θ^1subscript^Θ1\hat{\Theta}_{1}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, the maximum likelihood estimates of the parameters in the marginal distributions into logf(Θ2|Θ^1,D)𝑓conditionalsubscriptΘ2subscript^Θ1𝐷\log f(\Theta_{2}|\hat{\Theta}_{1},D)roman_log italic_f ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ). We use Θ¯2subscript¯Θ2\overline{\Theta}_{2}over¯ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, the medians of the samples drawn from the posterior distribution as the Bayes estimates of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT.

  3. 3.

    For each stock j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p, we conduct sequential estimation for Θ3jsubscriptΘ3𝑗\Theta_{3j}roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT by optimizing the function 3j(Θ^1,Θ¯2,Θ3j)subscript3𝑗subscript^Θ1subscript¯Θ2subscriptΘ3𝑗\ell_{3j}(\hat{\Theta}_{1},\overline{\Theta}_{2},\Theta_{3j})roman_ℓ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT ( over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , over¯ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT ) in (15), with stationary condition constraints in (8). Note that we substitute Θ^1subscript^Θ1\hat{\Theta}_{1}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT into (15) due to the method of IFM, and Θ¯2subscript¯Θ2\overline{\Theta}_{2}over¯ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT into (15) as we estimate the DAG parameters separately.

4.2 MCMC sampling for parameters in DAG copulas

MCMC sampling is used for the estimation of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We first obtain the sequential estimates of the parameters as the initial values for the MCMC sampling, denoted by Θ2(0)subscriptsuperscriptΘ02\Theta^{(0)}_{2}roman_Θ start_POSTSUPERSCRIPT ( 0 ) end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. We adopt the Robust adaptive Metropolis (RAM) algorithm \parenciteRAM for the MCMC sampling. Starting from n=1𝑛1n=1italic_n = 1, we do the following steps:

  1. 1.

    We set a proposal

    Θ2=Θ2(n1)+Sn1Un,superscriptsubscriptΘ2superscriptsubscriptΘ2𝑛1subscript𝑆𝑛1subscript𝑈𝑛\Theta_{2}^{*}=\Theta_{2}^{(n-1)}+S_{n-1}U_{n},roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT = roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_n - 1 ) end_POSTSUPERSCRIPT + italic_S start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ,

    where Unsubscript𝑈𝑛U_{n}italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is a d𝑑ditalic_d-dimension vector drawn from the proposal distribution q()𝑞q(\cdot)italic_q ( ⋅ ), d=|Θ2|𝑑subscriptΘ2d=\absolutevalue{\Theta_{2}}italic_d = | start_ARG roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG | is the number of parameters in Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, and Sn1subscript𝑆𝑛1S_{n-1}italic_S start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT is a matrix that captures the correlation between the parameters. We use the multivariate normal distribution with mean equals a d𝑑ditalic_d-dimensional vector of zeros and covariance matrix equals the d𝑑ditalic_d-dimensional identity matrix as the proposal distribution. However, changing all parameters at once may lead to poor mixing in the MCMC sampling. We instead change a subset of parameters in Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT in each step. This can be done by setting the entries in Unsubscript𝑈𝑛U_{n}italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT corresponding to the variables that are not in the subset to 0.

  2. 2.

    With a probability of αn=min{1,f(Θ2|Θ^1,D)/f(Θ2(n1)|Θ^1,D)}subscript𝛼𝑛1𝑓conditionalsuperscriptsubscriptΘ2subscript^Θ1𝐷𝑓conditionalsuperscriptsubscriptΘ2𝑛1subscript^Θ1𝐷\alpha_{n}=\min\{1,f(\Theta_{2}^{*}|\hat{\Theta}_{1},D)/f(\Theta_{2}^{(n-1)}|% \hat{\Theta}_{1},D)\}italic_α start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = roman_min { 1 , italic_f ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) / italic_f ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_n - 1 ) end_POSTSUPERSCRIPT | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) }, the proposal is accepted and we set Θ2(n)=Θ2superscriptsubscriptΘ2𝑛superscriptsubscriptΘ2\Theta_{2}^{(n)}=\Theta_{2}^{*}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_n ) end_POSTSUPERSCRIPT = roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT. Otherwise, we set Θ2(n)=Θ2(n1)superscriptsubscriptΘ2𝑛superscriptsubscriptΘ2𝑛1\Theta_{2}^{(n)}=\Theta_{2}^{(n-1)}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_n ) end_POSTSUPERSCRIPT = roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_n - 1 ) end_POSTSUPERSCRIPT.

  3. 3.

    Update the lower-diagonal matrix with positive diagonal elements Snsubscript𝑆𝑛S_{n}italic_S start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT satisfying the equation

    SnSnT=Sn1(I+ηn(αnα)UnUnTUn2)Sn1T,subscript𝑆𝑛superscriptsubscript𝑆𝑛𝑇subscript𝑆𝑛1𝐼subscript𝜂𝑛subscript𝛼𝑛subscript𝛼subscript𝑈𝑛superscriptsubscript𝑈𝑛𝑇superscriptnormsubscript𝑈𝑛2superscriptsubscript𝑆𝑛1𝑇S_{n}S_{n}^{T}=S_{n-1}\left(I+\eta_{n}(\alpha_{n}-\alpha_{*})\frac{U_{n}U_{n}^% {T}}{\norm{U_{n}}^{2}}\right)S_{n-1}^{T},italic_S start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT italic_S start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT = italic_S start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT ( italic_I + italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ( italic_α start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT - italic_α start_POSTSUBSCRIPT ∗ end_POSTSUBSCRIPT ) divide start_ARG italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT end_ARG start_ARG ∥ start_ARG italic_U start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT end_ARG ∥ start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT end_ARG ) italic_S start_POSTSUBSCRIPT italic_n - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT ,

    where I𝐼Iitalic_I is the d𝑑ditalic_d by d𝑑ditalic_d identity matrix, α(0,1)subscript𝛼01\alpha_{*}\in(0,1)italic_α start_POSTSUBSCRIPT ∗ end_POSTSUBSCRIPT ∈ ( 0 , 1 ) is the target mean acceptance probability of the algorithm, and {ηn}n1subscriptsubscript𝜂𝑛𝑛1\{\eta_{n}\}_{n\geq 1}{ italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_n ≥ 1 end_POSTSUBSCRIPT is a step size sequence decaying to zero, where ηn(0,1]subscript𝜂𝑛01\eta_{n}\in(0,1]italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT ∈ ( 0 , 1 ]. It can be done using Cholesky decomposition.

  4. 4.

    Set nn+1𝑛𝑛1n\leftarrow n+1italic_n ← italic_n + 1 and go back to step 1.

The advantage of the RAM algorithm is that the matrix Snsubscript𝑆𝑛S_{n}italic_S start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT captures the correlation between parameters and allows the algorithm to attain a given mean acceptance rate αsubscript𝛼\alpha_{*}italic_α start_POSTSUBSCRIPT ∗ end_POSTSUBSCRIPT, which helps improve the convergence compared to the traditional MCMC sampling algorithms. S0subscript𝑆0S_{0}italic_S start_POSTSUBSCRIPT 0 end_POSTSUBSCRIPT is initialized with the d𝑑ditalic_d by d𝑑ditalic_d diagonal matrix. αsubscript𝛼\alpha_{*}italic_α start_POSTSUBSCRIPT ∗ end_POSTSUBSCRIPT is set to 23.4%, which is a typical choice in literature \parencite10.2307/2245134. The step size sequence ηnsubscript𝜂𝑛\eta_{n}italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT is often defined as ηn=nγsubscript𝜂𝑛superscript𝑛𝛾\eta_{n}=n^{-\gamma}italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT = italic_n start_POSTSUPERSCRIPT - italic_γ end_POSTSUPERSCRIPT, where γ(1/2,1]𝛾121\gamma\in(1/2,1]italic_γ ∈ ( 1 / 2 , 1 ] \parenciteRAM. In the simulation study and empirical study, we choose γ=2/3𝛾23\gamma=2/3italic_γ = 2 / 3. The sequence ηnsubscript𝜂𝑛\eta_{n}italic_η start_POSTSUBSCRIPT italic_n end_POSTSUBSCRIPT plays an important role to ensure the ergodicity of the MCMC algorithm.

4.3 Structural learning of the DAG

In practice, the underlying DAG of the risk factor returns is often unknown, and we need to estimate the DAG from the data. Score-based learning using MCMC sampling is adopted, which searches for DAGs that are around the posterior modes. In practice, there could be multiple DAGs that have similar scores. Specifically, to construct a score function, consider the term 2(Θ^1,Θ2|D)subscript2subscript^Θ1conditionalsubscriptΘ2𝐷\ell_{2}(\hat{\Theta}_{1},\Theta_{2}|D)roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_D ) in (14) with regard to the DAG parameters, in which we insert Θ^1subscript^Θ1\hat{\Theta}_{1}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, the maximum likelihood estimates of the parameters in the marginal distribution due to the IFM method. Note that we do not include the likelihood function for stock copulas because we do not estimate the structure of the risk factors using the stock returns. To emphasize that the likelihood function is a function of a network G𝐺Gitalic_G, we rewrite the likelihood function as exp(2(Θ^1,Θ2,G|D))P(D|Θ^1,Θ2,G)subscript2subscript^Θ1subscriptΘ2conditional𝐺𝐷𝑃conditional𝐷subscript^Θ1subscriptΘ2𝐺\exp(\ell_{2}(\hat{\Theta}_{1},\Theta_{2},G|D))\equiv P(D|\hat{\Theta}_{1},% \Theta_{2},G)roman_exp ( start_ARG roman_ℓ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ( over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G | italic_D ) end_ARG ) ≡ italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ). In DAG structural learning, we need to calculate the marginal likelihood that marginalizes out the parameters:

P(D|Θ^1,G)=P(D|Θ^1,Θ2,G)π(Θ2|G)𝑑Θ2,𝑃conditional𝐷subscript^Θ1𝐺𝑃conditional𝐷subscript^Θ1subscriptΘ2𝐺𝜋conditionalsubscriptΘ2𝐺differential-dsubscriptΘ2P(D|\hat{\Theta}_{1},G)=\int P(D|\hat{\Theta}_{1},\Theta_{2},G)\pi(\Theta_{2}|% G)d\Theta_{2},italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_G ) = ∫ italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_G ) italic_d roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , (24)

where π(Θ2|G)𝜋conditionalsubscriptΘ2𝐺\pi(\Theta_{2}|G)italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_G ) is the prior of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT given G𝐺Gitalic_G. Note that the prior distribution of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT in (23) is dependent on the DAG G𝐺Gitalic_G as G𝐺Gitalic_G can be varying. Under this case, we rewrite the prior for Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT in (23) as π(Θ2|G)𝜋conditionalsubscriptΘ2𝐺\pi(\Theta_{2}|G)italic_π ( roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT | italic_G ) in (24).

The integration in the marginal likelihood in (24) is, however, difficult to calculate in practice since the integrand involves a product of t𝑡titalic_t-copulas. An approximation is to use the Bayesian information criterion (BIC) derived by \textciteBIC:

logP(D|Θ^1,G)logP(D|Θ^1,Θ^2,G)|Θ2|2logT,𝑃conditional𝐷subscript^Θ1𝐺𝑃conditional𝐷subscript^Θ1subscript^Θ2𝐺subscriptΘ22𝑇\log P(D|\hat{\Theta}_{1},G)\approx\log P(D|\hat{\Theta}_{1},\hat{\Theta}_{2},% G)-\frac{\absolutevalue{\Theta_{2}}}{2}\log T,roman_log italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_G ) ≈ roman_log italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) - divide start_ARG | start_ARG roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG | end_ARG start_ARG 2 end_ARG roman_log italic_T ,

where |Θ2|subscriptΘ2\absolutevalue{\Theta_{2}}| start_ARG roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG | is the number of parameters in Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, Θ^2subscript^Θ2\hat{\Theta}_{2}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is the maximum likelihood estimates of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, and T𝑇Titalic_T is the number of days of observations in the data set D𝐷Ditalic_D. However, calculating the maximum likelihood of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT of the function P(D|Θ^1,Θ2,G)𝑃conditional𝐷subscript^Θ1subscriptΘ2𝐺P(D|\hat{\Theta}_{1},\Theta_{2},G)italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) is in general time consuming, since the dimension of Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT is moderately large. It is not feasible since it often involves at least thousands of iterations in the MCMC sampling. Thus, we can further approximate the BIC using the sequential estimates, which perform well in the literature \parenciteHOBAEKHAFF201291,Haff2013ParameterEF. Denote Θ~2subscript~Θ2\tilde{\Theta}_{2}over~ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT to be the sequential estimates obtained by optimizing each copula in P(D|Θ^1,Θ2,G)𝑃conditional𝐷subscript^Θ1subscriptΘ2𝐺P(D|\hat{\Theta}_{1},\Theta_{2},G)italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) separately. The score function used in the DAG structural learning is

logP(D|Θ^1,G)logP(D|Θ^1,Θ~2,G)|Θ2|2logT.𝑃conditional𝐷subscript^Θ1𝐺𝑃conditional𝐷subscript^Θ1subscript~Θ2𝐺subscriptΘ22𝑇\log P(D|\hat{\Theta}_{1},G)\approx\log P(D|\hat{\Theta}_{1},\tilde{\Theta}_{2% },G)-\frac{\absolutevalue{\Theta_{2}}}{2}\log T.roman_log italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_G ) ≈ roman_log italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , over~ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) - divide start_ARG | start_ARG roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG | end_ARG start_ARG 2 end_ARG roman_log italic_T . (25)

Now we discuss the MCMC scheme for the DAG structural learning. We use the Structure MCMC proposed by \textcitestructure_mcmc. It samples graphs by conducting local edge movements. Let nbd(G)nbd𝐺\text{nbd}(G)nbd ( italic_G ) be the set of neighborhood of the graph G𝐺Gitalic_G, defined as the set containing the graphs that are equal to G𝐺Gitalic_G except with a one-edge difference, and in the reduced DAG space introduced in Section 3.4. A neighbor graph Gsuperscript𝐺G^{\prime}italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is sampled randomly, and thus the transition kernel is given by

q(G|G)=1|nbd(G)|,𝑞conditionalsuperscript𝐺𝐺1nbd𝐺q(G^{\prime}|G)=\frac{1}{\absolutevalue{\text{nbd}(G)}},italic_q ( italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT | italic_G ) = divide start_ARG 1 end_ARG start_ARG | start_ARG nbd ( italic_G ) end_ARG | end_ARG ,

where |nbd(G)|nbd𝐺\absolutevalue{\text{nbd}(G)}| start_ARG nbd ( italic_G ) end_ARG | is the number of graphs in nbd(G)nbd𝐺\text{nbd}(G)nbd ( italic_G ). Under the Bayesian framework, we also need to derive the posterior distribution P(G|Θ^1,D)𝑃conditional𝐺subscript^Θ1𝐷P(G|\hat{\Theta}_{1},D)italic_P ( italic_G | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ), which is given by

P(G|Θ^1,D)P(D|Θ^1,G)π(G)exp(logP(D|Θ^1,Θ~2,G)|Θ2|2logT)π(G),proportional-to𝑃conditional𝐺subscript^Θ1𝐷𝑃conditional𝐷subscript^Θ1𝐺𝜋𝐺𝑃conditional𝐷subscript^Θ1subscript~Θ2𝐺subscriptΘ22𝑇𝜋𝐺P(G|\hat{\Theta}_{1},D)\propto P(D|\hat{\Theta}_{1},G)\pi(G)\approx\exp(\log P% (D|\hat{\Theta}_{1},\tilde{\Theta}_{2},G)-\frac{\absolutevalue{\Theta_{2}}}{2}% \log T)\pi(G),italic_P ( italic_G | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) ∝ italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_G ) italic_π ( italic_G ) ≈ roman_exp ( start_ARG roman_log italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , over~ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , italic_G ) - divide start_ARG | start_ARG roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT end_ARG | end_ARG start_ARG 2 end_ARG roman_log italic_T end_ARG ) italic_π ( italic_G ) ,

where we approximate the likelihood using (25) and π(G)𝜋𝐺\pi(G)italic_π ( italic_G ) is the prior distribution of the graph G𝐺Gitalic_G. We set a flat prior π(G)1proportional-to𝜋𝐺1\pi(G)\propto 1italic_π ( italic_G ) ∝ 1 if G𝐺Gitalic_G is a DAG and inside the reduced DAG space since we do not have any prior information with regard to the structure of the risk factor returns. We then apply the Metropolis-Hasting algorithm to sample graphs from the posterior distribution P(G|Θ^1,D)𝑃conditional𝐺subscript^Θ1𝐷P(G|\hat{\Theta}_{1},D)italic_P ( italic_G | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ). We sample a graph Gsuperscript𝐺G^{\prime}italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT from nbd(G)nbd𝐺\text{nbd}(G)nbd ( italic_G ). The graph Gsuperscript𝐺G^{\prime}italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT is accepted with the probability

α(G,G)=min{1,P(G|Θ^1,D)q(G|G)P(G|Θ^1,D)q(G|G)}.𝛼𝐺superscript𝐺1𝑃conditionalsuperscript𝐺subscript^Θ1𝐷𝑞conditional𝐺superscript𝐺𝑃conditional𝐺subscript^Θ1𝐷𝑞conditionalsuperscript𝐺𝐺\alpha(G,G^{\prime})=\min\left\{1,\frac{P(G^{\prime}|\hat{\Theta}_{1},D)q(G|G^% {\prime})}{P(G|\hat{\Theta}_{1},D)q(G^{\prime}|G)}\right\}.italic_α ( italic_G , italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) = roman_min { 1 , divide start_ARG italic_P ( italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) italic_q ( italic_G | italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT ) end_ARG start_ARG italic_P ( italic_G | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_D ) italic_q ( italic_G start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT | italic_G ) end_ARG } .

5 Portfolio selection

5.1 Minimum variance (MV) portfolio and minimum conditional value-at-risk (MCVaR) portfolio

The GC-GARCH model can be used for portfolio selection. Suppose that we take Gsuperscript𝐺G^{*}italic_G start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT, the maximum a posteriori (MAP) network in the structural learning as the underlying network in the GC-GARCH model. Consider a portfolio of p𝑝pitalic_p assets and m𝑚mitalic_m risk factors. Suppose that we invest in a portfolio assigning weight wj,tsubscript𝑤𝑗𝑡w_{j,t}italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT to stock j𝑗jitalic_j at the end of day t𝑡titalic_t, where j=m+1,,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots,m+pitalic_j = italic_m + 1 , … , italic_m + italic_p and j=m+1m+pwj,t=1superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑗𝑡1\sum_{j=m+1}^{m+p}w_{j,t}=1∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT = 1. The portfolio return on day t+1𝑡1t+1italic_t + 1 (tomorrow) is given by

rPF,t+1=j=m+1m+pwj,trj,t+1𝐰tT𝐫t+1,subscript𝑟𝑃𝐹𝑡1superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑗𝑡subscript𝑟𝑗𝑡1superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1r_{PF,t+1}=\sum_{j=m+1}^{m+p}w_{j,t}r_{j,t+1}\equiv\mathbf{w}_{t}^{T}\mathbf{r% }_{t+1},italic_r start_POSTSUBSCRIPT italic_P italic_F , italic_t + 1 end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT italic_r start_POSTSUBSCRIPT italic_j , italic_t + 1 end_POSTSUBSCRIPT ≡ bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ,

where 𝐰t=(wm+1,t,,wm+p,t)Tsubscript𝐰𝑡superscriptsubscript𝑤𝑚1𝑡subscript𝑤𝑚𝑝𝑡𝑇\mathbf{w}_{t}=(w_{m+1,t},\ldots,w_{m+p,t})^{T}bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT = ( italic_w start_POSTSUBSCRIPT italic_m + 1 , italic_t end_POSTSUBSCRIPT , … , italic_w start_POSTSUBSCRIPT italic_m + italic_p , italic_t end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT is a vector of portfolio weights and 𝐫t+1=(rm+1,t+1,,rm+p,t+1)Tsubscript𝐫𝑡1superscriptsubscript𝑟𝑚1𝑡1subscript𝑟𝑚𝑝𝑡1𝑇\mathbf{r}_{t+1}=(r_{m+1,t+1},\ldots,r_{m+p,t+1})^{T}bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT = ( italic_r start_POSTSUBSCRIPT italic_m + 1 , italic_t + 1 end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_m + italic_p , italic_t + 1 end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT is a vector of stock returns on date t+1𝑡1t+1italic_t + 1. Note that the returns are indexed by t+1𝑡1t+1italic_t + 1 but the portfolio weights are indexed by t𝑡titalic_t, because the portfolio weight is determined before we observe 𝐫t+1subscript𝐫𝑡1\mathbf{r}_{t+1}bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT. We assume that the portfolio weights are determined 1 day before. The variance of the portfolio return on date t+1𝑡1t+1italic_t + 1 is

σPF,t2=i=m+1m+pj=m+1m+pwi,twj,tσij,t+1𝐰tTΣt+1𝐰t,superscriptsubscript𝜎𝑃𝐹𝑡2superscriptsubscript𝑖𝑚1𝑚𝑝superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑖𝑡subscript𝑤𝑗𝑡subscript𝜎𝑖𝑗𝑡1superscriptsubscript𝐰𝑡𝑇subscriptΣ𝑡1subscript𝐰𝑡\sigma_{PF,t}^{2}=\sum_{i=m+1}^{m+p}\sum_{j=m+1}^{m+p}w_{i,t}w_{j,t}\sigma_{ij% ,t+1}\equiv\mathbf{w}_{t}^{T}\Sigma_{t+1}\mathbf{w}_{t},italic_σ start_POSTSUBSCRIPT italic_P italic_F , italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 2 end_POSTSUPERSCRIPT = ∑ start_POSTSUBSCRIPT italic_i = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT italic_σ start_POSTSUBSCRIPT italic_i italic_j , italic_t + 1 end_POSTSUBSCRIPT ≡ bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT roman_Σ start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT ,

where σij,t+1subscript𝜎𝑖𝑗𝑡1\sigma_{ij,t+1}italic_σ start_POSTSUBSCRIPT italic_i italic_j , italic_t + 1 end_POSTSUBSCRIPT is the conditional covariance between stocks i𝑖iitalic_i and j𝑗jitalic_j on date t+1𝑡1t+1italic_t + 1 given tsubscript𝑡\mathcal{F}_{t}caligraphic_F start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT, and Σt+1=[σij,t+1]i,j=m+1m+psubscriptΣ𝑡1superscriptsubscriptdelimited-[]subscript𝜎𝑖𝑗𝑡1𝑖𝑗𝑚1𝑚𝑝\Sigma_{t+1}=[\sigma_{ij,t+1}]_{i,j=m+1}^{m+p}roman_Σ start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT = [ italic_σ start_POSTSUBSCRIPT italic_i italic_j , italic_t + 1 end_POSTSUBSCRIPT ] start_POSTSUBSCRIPT italic_i , italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT is the covariance matrix of the stock returns. We estimate Σt+1subscriptΣ𝑡1\Sigma_{t+1}roman_Σ start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT by simulating returns from the fitted GC-GARCH model.

Using the minimum variance optimization proposed by \textcitemarkowitz, we determine the optimal portfolio weights 𝐰𝐭subscript𝐰𝐭\mathbf{w_{t}}bold_w start_POSTSUBSCRIPT bold_t end_POSTSUBSCRIPT that minimize the 1-day ahead predicted variance of the portfolio return given tsubscript𝑡\mathcal{F}_{t}caligraphic_F start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT. Mathematically, we determine 𝐰tsubscript𝐰𝑡\mathbf{w}_{t}bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT for the problem

min𝐰𝐭𝐰tTΣ^t+1𝐰t such that j=m+1m+pwj,t=1,subscriptsubscript𝐰𝐭superscriptsubscript𝐰𝑡𝑇subscript^Σ𝑡1subscript𝐰𝑡 such that superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑗𝑡1\min_{\mathbf{w_{t}}}\mathbf{w}_{t}^{T}\hat{\Sigma}_{t+1}\mathbf{w}_{t}~{}~{}% \text{ such that }\sum_{j=m+1}^{m+p}w_{j,t}=1,roman_min start_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT bold_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT over^ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT such that ∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT = 1 , (26)

where Σ^t+1subscript^Σ𝑡1\hat{\Sigma}_{t+1}over^ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT is the 1-day ahead prediction of the conditional covariance of 𝐫t+1subscript𝐫𝑡1\mathbf{r}_{t+1}bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT matrix given tsubscript𝑡\mathcal{F}_{t}caligraphic_F start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT from the GC-GARCH model.

To estimate Σ^t+1subscript^Σ𝑡1\hat{\Sigma}_{t+1}over^ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT for the problem (26), we simulate K=20,000𝐾20000K=20,000italic_K = 20 , 000 vectors of stock returns on day t+1𝑡1t+1italic_t + 1 from the GC-GARCH model, 𝐫1,t+1,,𝐫K,t+1subscript𝐫1𝑡1subscript𝐫𝐾𝑡1\mathbf{r}_{1,t+1},\ldots,\mathbf{r}_{K,t+1}bold_r start_POSTSUBSCRIPT 1 , italic_t + 1 end_POSTSUBSCRIPT , … , bold_r start_POSTSUBSCRIPT italic_K , italic_t + 1 end_POSTSUBSCRIPT, using the methodology in Section 3.5. We first estimated the 1-day ahead prediction of the conditional correlation matrix of 𝐫t+1subscript𝐫𝑡1\mathbf{r}_{t+1}bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT:

Υ^t+1=diag(Σ~t+1)1/2Σ~t+1diag(Σ~t+1)1/2,subscript^Υ𝑡1diagsuperscriptsubscript~Σ𝑡112subscript~Σ𝑡1diagsuperscriptsubscript~Σ𝑡112\hat{\Upsilon}_{t+1}=\text{diag}(\tilde{\Sigma}_{t+1})^{-1/2}\tilde{\Sigma}_{t% +1}\text{diag}(\tilde{\Sigma}_{t+1})^{-1/2},over^ start_ARG roman_Υ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT = diag ( over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 / 2 end_POSTSUPERSCRIPT over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT diag ( over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) start_POSTSUPERSCRIPT - 1 / 2 end_POSTSUPERSCRIPT ,

where

Σ~t+1=1Kk=1K𝐫k,t+1𝐫k,t+1T,subscript~Σ𝑡11𝐾superscriptsubscript𝑘1𝐾subscript𝐫𝑘𝑡1superscriptsubscript𝐫𝑘𝑡1𝑇\tilde{\Sigma}_{t+1}=\frac{1}{K}{\sum_{k=1}^{K}\mathbf{r}_{k,t+1}\mathbf{r}_{k% ,t+1}^{T}},over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG italic_K end_ARG ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_K end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT , (27)

and diag(Σ~t+1)diagsubscript~Σ𝑡1\text{diag}(\tilde{\Sigma}_{t+1})diag ( over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) is the diagonal matrix containing the diagonal elements in Σ~t+1subscript~Σ𝑡1\tilde{\Sigma}_{t+1}over~ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT. Then, we estimate the 1-day ahead conditional covariance matrix of 𝐫t+1subscript𝐫𝑡1\mathbf{r}_{t+1}bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT by

Σ^t+1=Λt1/2Υ^t+1Λt1/2,subscript^Σ𝑡1superscriptsubscriptΛ𝑡12subscript^Υ𝑡1superscriptsubscriptΛ𝑡12\hat{\Sigma}_{t+1}=\Lambda_{t}^{1/2}\hat{\Upsilon}_{t+1}\Lambda_{t}^{1/2},over^ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT = roman_Λ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 / 2 end_POSTSUPERSCRIPT over^ start_ARG roman_Υ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT roman_Λ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 1 / 2 end_POSTSUPERSCRIPT , (28)

where ΛtsubscriptΛ𝑡\Lambda_{t}roman_Λ start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT is the diagonal matrix, whose diagonals are the exact 1-day ahead predictions of the variances obtained from the marginal GARCH(1,1) models. Note that both (27) and (28) are estimators of the 1-day ahead covariance matrix, whereas (28) matches the variances to the exact 1-day ahead predictions of the variances. We prefer to use (28).

As discussed in \textcitebrechmann2013risk, since only the second moment is taken into account in the minimum variance portfolio problem, the information regarding to the tails is not considered. To also include the information in the tails, we solve the minimum conditional value-at-risk (MCVaR) portfolio problem:

min𝐰𝐭CVaRt+1α(𝐰tT𝐫t+1) such that j=m+1m+pwj,t=1,subscriptsubscript𝐰𝐭𝐶𝑉𝑎superscriptsubscript𝑅𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1 such that superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑗𝑡1\min_{\mathbf{w_{t}}}CVaR_{t+1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})~{% }~{}\text{ such that }\sum_{j=m+1}^{m+p}w_{j,t}=1,roman_min start_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT bold_t end_POSTSUBSCRIPT end_POSTSUBSCRIPT italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) such that ∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT = 1 , (29)

where

CVaRt+1α(𝐰tT𝐫t+1)=E(𝐰tT𝐫t+1|𝐰tT𝐫t+1<qt+1α(𝐰tT𝐫t+1),t)𝐶𝑉𝑎superscriptsubscript𝑅𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1𝐸conditionalsuperscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1superscriptsubscript𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1subscript𝑡CVaR_{t+1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})=-E(\mathbf{w}_{t}^{T}% \mathbf{r}_{t+1}|\mathbf{w}_{t}^{T}\mathbf{r}_{t+1}<q_{t+1}^{\alpha}(\mathbf{w% }_{t}^{T}\mathbf{r}_{t+1}),\mathcal{F}_{t})italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) = - italic_E ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT | bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT < italic_q start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) , caligraphic_F start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT )

and qt+1α(𝐰tT𝐫t+1)superscriptsubscript𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1q_{t+1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})italic_q start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) is the α𝛼\alphaitalic_αth quantile of the 1-day ahead portfolio return 𝐰tT𝐫t+1superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1\mathbf{w}_{t}^{T}\mathbf{r}_{t+1}bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT. \textciterockafellar2000optimization and \textciteVaR_optim_comp discuss an alternative method to approximate the MCVaR portfolio problem by generating returns from the model. We approximate the solution in (29) by sampling K=20,000𝐾20000K=20,000italic_K = 20 , 000 vectors of 1-day ahead stock returns from the GC-GARCH model, and solve

min𝐰𝐭,𝐮,a(a+1Kαk=1Kuk)subscriptsubscript𝐰𝐭𝐮𝑎𝑎1𝐾𝛼superscriptsubscript𝑘1𝐾subscript𝑢𝑘\min_{\mathbf{w_{t}},\mathbf{u},a}\left(-a+\frac{1}{K\alpha}\sum_{k=1}^{K}u_{k% }\right)roman_min start_POSTSUBSCRIPT bold_w start_POSTSUBSCRIPT bold_t end_POSTSUBSCRIPT , bold_u , italic_a end_POSTSUBSCRIPT ( - italic_a + divide start_ARG 1 end_ARG start_ARG italic_K italic_α end_ARG ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_K end_POSTSUPERSCRIPT italic_u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) (30)

subject to the linear constraints

j=m+1m+pwj,t=1,superscriptsubscript𝑗𝑚1𝑚𝑝subscript𝑤𝑗𝑡1\displaystyle\sum_{j=m+1}^{m+p}w_{j,t}=1,∑ start_POSTSUBSCRIPT italic_j = italic_m + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m + italic_p end_POSTSUPERSCRIPT italic_w start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT = 1 ,
uk0, for k=1,,K,andformulae-sequencesubscript𝑢𝑘0 for 𝑘1𝐾and\displaystyle u_{k}\geq 0,\text{ for }k=1,\ldots,K,\text{and}italic_u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ≥ 0 , for italic_k = 1 , … , italic_K , and
𝐰tT𝐫k,t+1a+uk0, for k=1,,K,formulae-sequencesuperscriptsubscript𝐰𝑡𝑇subscript𝐫𝑘𝑡1𝑎subscript𝑢𝑘0 for 𝑘1𝐾\displaystyle\mathbf{w}_{t}^{T}\mathbf{r}_{k,t+1}-a+u_{k}\geq 0,\text{ for }k=% 1,\ldots,K,bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT - italic_a + italic_u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ≥ 0 , for italic_k = 1 , … , italic_K ,

where 𝐮=(u1,,uK)𝐮subscript𝑢1subscript𝑢𝐾\mathbf{u}=(u_{1},\ldots,u_{K})bold_u = ( italic_u start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_u start_POSTSUBSCRIPT italic_K end_POSTSUBSCRIPT ) are auxiliary variables, a𝑎aitalic_a is the VaR level, and 𝐫k,t+1subscript𝐫𝑘𝑡1\mathbf{r}_{k,t+1}bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT is the k𝑘kitalic_kth sampled vector of 1-day ahead stock returns, k=1,,K𝑘1𝐾k=1,\ldots,Kitalic_k = 1 , … , italic_K.

If we estimate the portfolio weights by solving the MCVaR portfolio problem (30), the minimized objective function (a+(Kα)1k=1Kuk)𝑎superscript𝐾𝛼1superscriptsubscript𝑘1𝐾subscript𝑢𝑘\left(-a+{(K\alpha)^{-1}}\sum_{k=1}^{K}u_{k}\right)( - italic_a + ( italic_K italic_α ) start_POSTSUPERSCRIPT - 1 end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_K end_POSTSUPERSCRIPT italic_u start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) is exactly the 1-day ahead prediction of CVaR. If we want to predict the 1-day ahead CVaR from the portfolio weights obtained in the MV portfolio problem in (26), this can be done by generating K=20,000𝐾20000K=20,000italic_K = 20 , 000 portfolio returns and estimate the 1-day ahead CVaR by

CVaRt+1α=1gtk=1K𝐰tT𝐫k,t+1𝟏(𝐰tT𝐫k,t+1<q^t+1α(𝐰tT𝐫t+1)),𝐶𝑉𝑎superscriptsubscript𝑅𝑡1𝛼1subscript𝑔𝑡superscriptsubscript𝑘1𝐾superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑘𝑡11superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑘𝑡1superscriptsubscript^𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1CVaR_{t+1}^{\alpha}=-\frac{1}{g_{t}}\sum_{k=1}^{K}\mathbf{w}_{t}^{T}\mathbf{r}% _{k,t+1}\mathbf{1}(\mathbf{w}_{t}^{T}\mathbf{r}_{k,t+1}<\hat{q}_{t+1}^{\alpha}% (\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})),italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT = - divide start_ARG 1 end_ARG start_ARG italic_g start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT end_ARG ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_K end_POSTSUPERSCRIPT bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT bold_1 ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT < over^ start_ARG italic_q end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) ) , (31)

where q^t+1α(𝐰tT𝐫t+1)superscriptsubscript^𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1\hat{q}_{t+1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})over^ start_ARG italic_q end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) is the α𝛼\alphaitalic_αth sample quantile of the generated K=20,000𝐾20000K=20,000italic_K = 20 , 000 portfolio returns and gt=k=1K𝟏(𝐰tT𝐫k,t+1<q^t+1α(𝐰tT𝐫t+1))subscript𝑔𝑡superscriptsubscript𝑘1𝐾1superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑘𝑡1superscriptsubscript^𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1g_{t}=\sum_{k=1}^{K}\mathbf{1}(\mathbf{w}_{t}^{T}\mathbf{r}_{k,t+1}<\hat{q}_{t% +1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1}))italic_g start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT = ∑ start_POSTSUBSCRIPT italic_k = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_K end_POSTSUPERSCRIPT bold_1 ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT < over^ start_ARG italic_q end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ) ) is the number of generated portfolio returns that are smaller than q^t+1α(𝐰tT𝐫t+1)superscriptsubscript^𝑞𝑡1𝛼superscriptsubscript𝐰𝑡𝑇subscript𝐫𝑡1\hat{q}_{t+1}^{\alpha}(\mathbf{w}_{t}^{T}\mathbf{r}_{t+1})over^ start_ARG italic_q end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT ( bold_w start_POSTSUBSCRIPT italic_t end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_T end_POSTSUPERSCRIPT bold_r start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT ).

5.2 MV and MCVaR portfolios with model averaging

In Section 5.1, we solve the MV portfolio problem in (26) and the MCVaR portfolio problem in (30) using the MAP graph Gsuperscript𝐺G^{*}italic_G start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT. However, in the structural learning, there could be multiple graphs that have similar network scores as Gsuperscript𝐺G^{*}italic_G start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT. Then, we can conduct model averaging over the highest scoring Ngsubscript𝑁𝑔N_{g}italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT networks for the portfolio selection instead of using only the MAP network. Model averaging methods are shown to outperform the model selection method in the literature \parencite10.5555/3023549.3023619,dash2004model. We denote G(j)superscript𝐺𝑗G^{(j)}italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT to be the j𝑗jitalic_jth highest scoring network (then, G(1)=Gsuperscript𝐺1superscript𝐺G^{(1)}=G^{*}italic_G start_POSTSUPERSCRIPT ( 1 ) end_POSTSUPERSCRIPT = italic_G start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT). To estimate the 1-day ahead conditional covariance matrix by modeling averaging, we simulate K=20,000𝐾20000K=20,000italic_K = 20 , 000 vectors of stock returns from each estimated GC-GARCH model with network G(j)superscript𝐺𝑗G^{(j)}italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT (we denote such estimated model as (j)superscript𝑗\mathcal{M}^{(j)}caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT), j=1,,Ng𝑗1subscript𝑁𝑔j=1,\ldots,N_{g}italic_j = 1 , … , italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT. We denote rk,t+1(j)superscriptsubscript𝑟𝑘𝑡1𝑗r_{k,t+1}^{(j)}italic_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT to be the k𝑘kitalic_kth vector of stock returns generated from (j)superscript𝑗\mathcal{M}^{(j)}caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT. The 1-day ahead conditional covariance matrix under (j)superscript𝑗\mathcal{M}^{(j)}caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT, Σt+1(j)superscriptsubscriptΣ𝑡1𝑗\Sigma_{t+1}^{(j)}roman_Σ start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT, is estimated similarly with the formula (28) using the vectors rk,t+1(j)superscriptsubscript𝑟𝑘𝑡1𝑗r_{k,t+1}^{(j)}italic_r start_POSTSUBSCRIPT italic_k , italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT, k=1,,K𝑘1𝐾k=1,\ldots,Kitalic_k = 1 , … , italic_K. The model-averaged 1-day ahead conditional covariance matrix is given by

Σ¯t+1subscript¯Σ𝑡1\displaystyle\overline{\Sigma}_{t+1}over¯ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT =j=1NgΣt+1(j)P((j))absentsuperscriptsubscript𝑗1subscript𝑁𝑔superscriptsubscriptΣ𝑡1𝑗𝑃superscript𝑗\displaystyle=\sum_{j=1}^{N_{g}}\Sigma_{t+1}^{(j)}P(\mathcal{M}^{(j)})= ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT end_POSTSUPERSCRIPT roman_Σ start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT )

where

P((j))𝑃superscript𝑗\displaystyle P(\mathcal{M}^{(j)})italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT ) =P(G(j)|D,Θ^1)j=1NgP(G(j)|D,Θ^1)absent𝑃conditionalsuperscript𝐺𝑗𝐷subscript^Θ1superscriptsubscript𝑗1subscript𝑁𝑔𝑃conditionalsuperscript𝐺𝑗𝐷subscript^Θ1\displaystyle=\frac{P(G^{(j)}|D,\hat{\Theta}_{1})}{\sum_{j=1}^{N_{g}}P(G^{(j)}% |D,\hat{\Theta}_{1})}= divide start_ARG italic_P ( italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT | italic_D , over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_P ( italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT | italic_D , over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) end_ARG
\displaystyle\approx exp(BIC(j))j=1Ngexp(BIC(j)).𝐵𝐼superscript𝐶𝑗superscriptsubscript𝑗1subscript𝑁𝑔𝐵𝐼superscript𝐶𝑗\displaystyle\frac{\exp(BIC^{(j)})}{\sum_{j=1}^{N_{g}}\exp(BIC^{(j)})}.divide start_ARG roman_exp ( start_ARG italic_B italic_I italic_C start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT end_ARG ) end_ARG start_ARG ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT end_POSTSUPERSCRIPT roman_exp ( start_ARG italic_B italic_I italic_C start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT end_ARG ) end_ARG .

Note that Θ^1subscript^Θ1\hat{\Theta}_{1}over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is the set of estimated parameters in the marginal distributions that we estimate separately due to the IFM method. As in the structural learning, the marginalized posterior probabilities are difficult to calculate, and we use the BICs in (25) to approximate them. BIC(j)𝐵𝐼superscript𝐶𝑗BIC^{(j)}italic_B italic_I italic_C start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT is the score of G(j)superscript𝐺𝑗G^{(j)}italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT in the structural learning in (25). The probability P((j))𝑃superscript𝑗P(\mathcal{M}^{(j)})italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT ) is the marginalized posterior probability of G(j)superscript𝐺𝑗G^{(j)}italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT normalized by the sum of the marginalized posterior probabilities of all candidates G(1),,G(Ng)superscript𝐺1superscript𝐺subscript𝑁𝑔G^{(1)},\ldots,G^{(N_{g})}italic_G start_POSTSUPERSCRIPT ( 1 ) end_POSTSUPERSCRIPT , … , italic_G start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT (to ensure that j=1NgP((j))=1superscriptsubscript𝑗1subscript𝑁𝑔𝑃superscript𝑗1\sum_{j=1}^{N_{g}}P(\mathcal{M}^{(j)})=1∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT end_POSTSUPERSCRIPT italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT ) = 1). We also assume a uniform prior for G(j)superscript𝐺𝑗G^{(j)}italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT so that

P(G(j)|D,Θ^1)P(D|Θ^1,G(j))exp(BIC(j)).proportional-to𝑃conditionalsuperscript𝐺𝑗𝐷subscript^Θ1𝑃conditional𝐷subscript^Θ1superscript𝐺𝑗𝐵𝐼superscript𝐶𝑗P(G^{(j)}|D,\hat{\Theta}_{1})\propto P(D|\hat{\Theta}_{1},G^{(j)})\approx\exp(% BIC^{(j)}).italic_P ( italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT | italic_D , over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT ) ∝ italic_P ( italic_D | over^ start_ARG roman_Θ end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_G start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT ) ≈ roman_exp ( start_ARG italic_B italic_I italic_C start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT end_ARG ) .

Then, we solve the MV problem in (26) using the covariance matrix Σ¯t+1subscript¯Σ𝑡1\overline{\Sigma}_{t+1}over¯ start_ARG roman_Σ end_ARG start_POSTSUBSCRIPT italic_t + 1 end_POSTSUBSCRIPT.

To solve the MCVaR problem, we draw K=20,000𝐾20000K=20,000italic_K = 20 , 000 vectors of returns from the GC-GARCH models (1),,(Ng)superscript1superscriptsubscript𝑁𝑔\mathcal{M}^{(1)},\ldots,\mathcal{M}^{(N_{g})}caligraphic_M start_POSTSUPERSCRIPT ( 1 ) end_POSTSUPERSCRIPT , … , caligraphic_M start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT, where the probability of sampling from the model (j)superscript𝑗\mathcal{M}^{(j)}caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT is P((j))𝑃superscript𝑗P(\mathcal{M}^{(j)})italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_j ) end_POSTSUPERSCRIPT ). Then, we use the sampled K𝐾Kitalic_K vectors to solve the MCVaR portfolio problem in (30). The estimation methods of CVaR of the portfolio returns are discussed in Section 5.1. The sampled K𝐾Kitalic_K vectors can be viewed as the realizations from the mixture distribution of (1),,(Ng)superscript1superscriptsubscript𝑁𝑔\mathcal{M}^{(1)},\ldots,\mathcal{M}^{(N_{g})}caligraphic_M start_POSTSUPERSCRIPT ( 1 ) end_POSTSUPERSCRIPT , … , caligraphic_M start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT with weights P((1)),,P((Ng))𝑃superscript1𝑃superscriptsubscript𝑁𝑔P(\mathcal{M}^{(1)}),\ldots,P(\mathcal{M}^{(N_{g})})italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( 1 ) end_POSTSUPERSCRIPT ) , … , italic_P ( caligraphic_M start_POSTSUPERSCRIPT ( italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT ) end_POSTSUPERSCRIPT ).

6 Simulation study

6.1 Simulation settings

In this simulation study, we aim to test our estimation method in Section 4. We conduct the following:

  1. 1.

    When the underlying DAG is known, we show that the parameters in the copulas can be accurately estimated using the method in Section 4.1.

  2. 2.

    We show that the structural learning algorithm in Section 4.3 can search for structures that are close to the underlying DAG.

We conduct the following two sets of simulation studies:

  1. (S1)

    m=8𝑚8m=8italic_m = 8 risk factors, p=100𝑝100p=100italic_p = 100 stocks and T=1000𝑇1000T=1000italic_T = 1000 days of observations. We pick a relative simple network.

  2. (S2)

    m=10𝑚10m=10italic_m = 10 risk factors, p=100𝑝100p=100italic_p = 100 stocks and T=1000𝑇1000T=1000italic_T = 1000 days of observations. We pick a more complicated graph in this case.

We repeat each experiment for 200 replications using the same DAG and the same set of parameters. We first simulated the common set of parameters:

  1. (i)

    The parameters in the marginal distributions in (9) are generated from the following distributions: wiU(0.01,0.2)similar-tosubscript𝑤𝑖𝑈0.010.2w_{i}\sim U(0.01,0.2)italic_w start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∼ italic_U ( 0.01 , 0.2 ), biU(0.8,0.96)similar-tosubscript𝑏𝑖𝑈0.80.96b_{i}\sim U(0.8,0.96)italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∼ italic_U ( 0.8 , 0.96 ), ai(1bi)×U(0.3,0.7)similar-tosubscript𝑎𝑖1subscript𝑏𝑖𝑈0.30.7a_{i}\sim(1-b_{i})\times U(0.3,0.7)italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∼ ( 1 - italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ) × italic_U ( 0.3 , 0.7 ), and viU(5,10)similar-tosubscript𝑣𝑖𝑈510v_{i}\sim U(5,10)italic_v start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ∼ italic_U ( 5 , 10 ). U(k1,k2)𝑈subscript𝑘1subscript𝑘2U(k_{1},k_{2})italic_U ( italic_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_k start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) denotes a uniform distribution over the interval (k1,k2)subscript𝑘1subscript𝑘2(k_{1},k_{2})( italic_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_k start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT ) for k1<k2subscript𝑘1subscript𝑘2k_{1}<k_{2}italic_k start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT < italic_k start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT. The method ensures that ωi>0subscript𝜔𝑖0\omega_{i}>0italic_ω start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT > 0, ai,bi0subscript𝑎𝑖subscript𝑏𝑖0a_{i},b_{i}\geq 0italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT ≥ 0 and ai+bi<1subscript𝑎𝑖subscript𝑏𝑖1a_{i}+b_{i}<1italic_a start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT < 1 for all i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p.

  2. (ii)

    The parameters in the DAG copulas and the stock copulas in (8) are generated from the following distributions: φ¯xy|zU(1,1)similar-tosubscript¯𝜑conditional𝑥𝑦𝑧𝑈11\bar{\varphi}_{xy|z}\sim U(-1,1)over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ∼ italic_U ( - 1 , 1 ), bxy|zU(0.8,0.96)similar-tosubscript𝑏conditional𝑥𝑦𝑧𝑈0.80.96b_{xy|z}\sim U(0.8,0.96)italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ∼ italic_U ( 0.8 , 0.96 ), axy|z(1bxy|z)×U(0.3,0.7)similar-tosubscript𝑎conditional𝑥𝑦𝑧1subscript𝑏conditional𝑥𝑦𝑧𝑈0.30.7a_{xy|z}\sim(1-b_{xy|z})\times U(0.3,0.7)italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ∼ ( 1 - italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ) × italic_U ( 0.3 , 0.7 ), and vxy|zU(5,10)similar-tosubscript𝑣conditional𝑥𝑦𝑧𝑈510v_{xy|z}\sim U(5,10)italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT ∼ italic_U ( 5 , 10 ). The method ensures that 0axy|z,bxy|z<1formulae-sequence0subscript𝑎conditional𝑥𝑦𝑧subscript𝑏conditional𝑥𝑦𝑧10\leq a_{xy|z},b_{xy|z}<10 ≤ italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT , italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1, axy|z+bxy|z<1subscript𝑎conditional𝑥𝑦𝑧subscript𝑏conditional𝑥𝑦𝑧1a_{xy|z}+b_{xy|z}<1italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1, and 1<φ¯xy|z<11subscript¯𝜑conditional𝑥𝑦𝑧1-1<\bar{\varphi}_{xy|z}<1- 1 < over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT < 1.

In each replication, the data set is generated using the method in Section 3.5. We use a simpler setting under (S1) to illustrate the ideas in the proposed GC-GARCH model, whereas (S2) is a more complicated case that is closer to the cases in the empirical study. We present the simulation results for (S1) and (S2) below. We first present the performances of the structural learning. Then, we present the performances of the estimation of the parameters in the DAG copulas and stock copulas.

6.2 Structural learning evaluation

MCMC sampling is used to sample graphs from the posterior modes using the methods in Section 4.3. For each replication, we conduct the MCMC sampling for 200200200200 iterations. Let G1,,G200subscript𝐺1subscript𝐺200G_{1},\ldots,G_{200}italic_G start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , … , italic_G start_POSTSUBSCRIPT 200 end_POSTSUBSCRIPT be the sampled graphs. We discard the first B𝐵Bitalic_B sampled graphs in the burn-in step, where B𝐵Bitalic_B is selected using the Geweke’s statistic (to be introduced later in this section). Using the graphs after burn-in, GB+1,,G200subscript𝐺𝐵1subscript𝐺200G_{B+1},\ldots,G_{200}italic_G start_POSTSUBSCRIPT italic_B + 1 end_POSTSUBSCRIPT , … , italic_G start_POSTSUBSCRIPT 200 end_POSTSUBSCRIPT, we estimate the probability of the existence of an edge from ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT to rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT by

P(aij=1|D)=1200Bk=B+1200𝟏(aij(Gk)=1),𝑃subscript𝑎𝑖𝑗conditional1𝐷1200𝐵superscriptsubscript𝑘𝐵12001subscript𝑎𝑖𝑗subscript𝐺𝑘1P(a_{ij}=1|D)=\frac{1}{200-B}\sum_{k=B+1}^{200}\mathbf{1}(a_{ij}(G_{k})=1),italic_P ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = 1 | italic_D ) = divide start_ARG 1 end_ARG start_ARG 200 - italic_B end_ARG ∑ start_POSTSUBSCRIPT italic_k = italic_B + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 200 end_POSTSUPERSCRIPT bold_1 ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = 1 ) , (32)

where aijsubscript𝑎𝑖𝑗a_{ij}italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT denotes the (i,j)𝑖𝑗(i,j)( italic_i , italic_j )th entry of the adjacency matrix of the true graph (which is assumed to be random in Bayesian analysis), and 𝟏(aij(Gk)=1)1subscript𝑎𝑖𝑗subscript𝐺𝑘1\mathbf{1}(a_{ij}(G_{k})=1)bold_1 ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = 1 ) equals 1 if the edge from ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT to rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT exists in the graph Gksubscript𝐺𝑘G_{k}italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, and equals 0 otherwise. (32) counts the proportion of graphs that contain the edge from ri,tsubscript𝑟𝑖𝑡r_{i,t}italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT to rj,tsubscript𝑟𝑗𝑡r_{j,t}italic_r start_POSTSUBSCRIPT italic_j , italic_t end_POSTSUBSCRIPT, and is called an edge feature in the literature \parenciteorder_mcmc.

The edges features are used to predict the existences of edges. We predict the edge from ritsubscript𝑟𝑖𝑡r_{it}italic_r start_POSTSUBSCRIPT italic_i italic_t end_POSTSUBSCRIPT to rjtsubscript𝑟𝑗𝑡r_{jt}italic_r start_POSTSUBSCRIPT italic_j italic_t end_POSTSUBSCRIPT to exist if P(aij=1|D)>c𝑃subscript𝑎𝑖𝑗conditional1𝐷𝑐P(a_{ij}=1|D)>citalic_P ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT = 1 | italic_D ) > italic_c for some threshold c[0,1]𝑐01c\in[0,1]italic_c ∈ [ 0 , 1 ]. By altering the values of c𝑐citalic_c, we trace a receiver operating characteristic (ROC) curve. We use the completed partially directed acyclic graph (CPDAG) \parenciteCPDAG of the underlying network to evaluate the accuracy of the prediction, as the CPDAG represents an equivalence class of a set of graphs, where the graphs in the equivalence class have the same set of conditional independence. The CPDAG contains two types of edges. The first type is a directed edge, indicating that all graphs in the class agree with the direction. The second type is a bi-directed edge, indicating that some of the graphs disagree with the direction of an edge. The area under the ROC curve (AUROC) is used to measure the performance of the graph prediction.

On top of the AUROC, we also use the following metrics. Let TP(c)𝑇𝑃𝑐TP(c)italic_T italic_P ( italic_c ), TN(c)𝑇𝑁𝑐TN(c)italic_T italic_N ( italic_c ), FP(c)𝐹𝑃𝑐FP(c)italic_F italic_P ( italic_c ) and FN(c)𝐹𝑁𝑐FN(c)italic_F italic_N ( italic_c ) be respectively the numbers of true positive, true negative, false positive and false negative predictions when we use the threshold c𝑐citalic_c. We have the following five metrics

  1. (1)

    The accuracy

    ACC(c)=TP(c)+TN(c)TP(c)+FN(c)+FP(c)+TN(c),𝐴𝐶𝐶𝑐𝑇𝑃𝑐𝑇𝑁𝑐𝑇𝑃𝑐𝐹𝑁𝑐𝐹𝑃𝑐𝑇𝑁𝑐ACC(c)=\frac{TP(c)+TN(c)}{TP(c)+FN(c)+FP(c)+TN(c)},italic_A italic_C italic_C ( italic_c ) = divide start_ARG italic_T italic_P ( italic_c ) + italic_T italic_N ( italic_c ) end_ARG start_ARG italic_T italic_P ( italic_c ) + italic_F italic_N ( italic_c ) + italic_F italic_P ( italic_c ) + italic_T italic_N ( italic_c ) end_ARG ,
  2. (2)

    the false discovery rate

    FDR(c)=FP(c)TP(c)+FP(c),𝐹𝐷𝑅𝑐𝐹𝑃𝑐𝑇𝑃𝑐𝐹𝑃𝑐FDR(c)=\frac{FP(c)}{TP(c)+FP(c)},italic_F italic_D italic_R ( italic_c ) = divide start_ARG italic_F italic_P ( italic_c ) end_ARG start_ARG italic_T italic_P ( italic_c ) + italic_F italic_P ( italic_c ) end_ARG ,
  3. (3)

    the false omission rate

    FOR(c)=FN(c)FN(c)+TN(c),𝐹𝑂𝑅𝑐𝐹𝑁𝑐𝐹𝑁𝑐𝑇𝑁𝑐FOR(c)=\frac{FN(c)}{FN(c)+TN(c)},italic_F italic_O italic_R ( italic_c ) = divide start_ARG italic_F italic_N ( italic_c ) end_ARG start_ARG italic_F italic_N ( italic_c ) + italic_T italic_N ( italic_c ) end_ARG ,
  4. (4)

    the sensitivity

    SEN(c)=TP(c)TP(c)+FN(c), and𝑆𝐸𝑁𝑐𝑇𝑃𝑐𝑇𝑃𝑐𝐹𝑁𝑐 andSEN(c)=\frac{TP(c)}{TP(c)+FN(c)},\text{ and}italic_S italic_E italic_N ( italic_c ) = divide start_ARG italic_T italic_P ( italic_c ) end_ARG start_ARG italic_T italic_P ( italic_c ) + italic_F italic_N ( italic_c ) end_ARG , and
  5. (5)

    the specificity

    SPE(c)=TN(c)TN(c)+FP(c).𝑆𝑃𝐸𝑐𝑇𝑁𝑐𝑇𝑁𝑐𝐹𝑃𝑐SPE(c)=\frac{TN(c)}{TN(c)+FP(c)}.italic_S italic_P italic_E ( italic_c ) = divide start_ARG italic_T italic_N ( italic_c ) end_ARG start_ARG italic_T italic_N ( italic_c ) + italic_F italic_P ( italic_c ) end_ARG .

The accuracy (ACC) measures the proportion of correct prediction, which gives an overall performance of the prediction. The false discovery rate (FDR) measures the proportion of incorrectly predicted edges out of all predicted edges. The false omission rate (FOR) measures the proportion of incorrectly omitted edges out of all omitted edges. The sensitivity (SEN) measures the accuracy of detecting edges that exist in the underlying network, and the specificity (SPE) measures the accuracy of omitting edges that do not exist in the underlying network. Yet the SEN and SPE have been used to calculate the AUROC by changing the threshold c𝑐citalic_c, and we also include the numerical results for reference.

To evaluate the convergence of {Gk}k=B+1200superscriptsubscriptsubscript𝐺𝑘𝑘𝐵1200\{G_{k}\}_{k=B+1}^{200}{ italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT } start_POSTSUBSCRIPT italic_k = italic_B + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 200 end_POSTSUPERSCRIPT, we calculate the Geweke’s statistic \parencitegeweke of a characteristic of the graph. We need to transform the network into a univariate time series {d(Gk)}k=B+1200superscriptsubscript𝑑subscript𝐺𝑘𝑘𝐵1200\{d(G_{k})\}_{k=B+1}^{200}{ italic_d ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT italic_k = italic_B + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 200 end_POSTSUPERSCRIPT, for some function d:{0,1}m×m:𝑑maps-tosuperscript01𝑚𝑚d:\{0,1\}^{m\times m}\mapsto\mathbb{R}italic_d : { 0 , 1 } start_POSTSUPERSCRIPT italic_m × italic_m end_POSTSUPERSCRIPT ↦ blackboard_R, to calculate the Geweke’s statistic. We pick

d(Gk)=i=1mj=1m𝟏(aij(Gk)aij),𝑑subscript𝐺𝑘superscriptsubscript𝑖1𝑚superscriptsubscript𝑗1𝑚1subscript𝑎𝑖𝑗subscript𝐺𝑘subscript𝑎𝑖𝑗d(G_{k})=\sum_{i=1}^{m}\sum_{j=1}^{m}\mathbf{1}(a_{ij}(G_{k})\neq a_{ij}),italic_d ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) = ∑ start_POSTSUBSCRIPT italic_i = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT ∑ start_POSTSUBSCRIPT italic_j = 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_m end_POSTSUPERSCRIPT bold_1 ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ≠ italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ) ,

where aij(Gk)subscript𝑎𝑖𝑗subscript𝐺𝑘a_{ij}(G_{k})italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) is the (i,j)𝑖𝑗(i,j)( italic_i , italic_j )th entry of the adjacency matrix of Gksubscript𝐺𝑘G_{k}italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT, and aijsubscript𝑎𝑖𝑗a_{ij}italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT is the (i,j)𝑖𝑗(i,j)( italic_i , italic_j )th entry of the adjacency matrix of the true network, which is known in the simulation study. 𝟏(aij(Gk)aij)1subscript𝑎𝑖𝑗subscript𝐺𝑘subscript𝑎𝑖𝑗\mathbf{1}(a_{ij}(G_{k})\neq a_{ij})bold_1 ( italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) ≠ italic_a start_POSTSUBSCRIPT italic_i italic_j end_POSTSUBSCRIPT ) equals 1 if the (i,j)𝑖𝑗(i,j)( italic_i , italic_j )th entries in the adjacency matrices of Gksubscript𝐺𝑘G_{k}italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT and the true network, respectively, disagree with each other, and 0 zero otherwise. d(G)𝑑𝐺d(G)italic_d ( italic_G ) is to keep track if the differences between the sampled graphs and the true graph are stabilized. The Geweke’s statistic tests if the average in the first 10% of {d(Gk)}k=B+1200superscriptsubscript𝑑subscript𝐺𝑘𝑘𝐵1200\{d(G_{k})\}_{k=B+1}^{200}{ italic_d ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT italic_k = italic_B + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 200 end_POSTSUPERSCRIPT is significantly different from the average in the last 50% of {d(Gk)}k=B+1200superscriptsubscript𝑑subscript𝐺𝑘𝑘𝐵1200\{d(G_{k})\}_{k=B+1}^{200}{ italic_d ( italic_G start_POSTSUBSCRIPT italic_k end_POSTSUBSCRIPT ) } start_POSTSUBSCRIPT italic_k = italic_B + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 200 end_POSTSUPERSCRIPT. If the p-value is greater than 0.01, this indicates that the difference of the two averages is not significant, and thus we can conclude that the samples are converged.

The underlying network in simulation (S1) is shown in Figure 3. We conduct 200 replications, where we generate different data sets from the same DAG and the same set of parameters. The burn-in B𝐵Bitalic_B in each replication is selected to minimize the Geweke’s statistic. The average AUROC out of 200 replications is 75.4%, showing that the structural learning performs well. The ACC, FDR, FOR, SEN and SPE in simulation (S1) using different thresholds (c=0.01,0.10,0.50,0.90,0.99𝑐0.010.100.500.900.99c=0.01,0.10,0.50,0.90,0.99italic_c = 0.01 , 0.10 , 0.50 , 0.90 , 0.99) is shown in Table 1. The ACC, SEN and SPE are moderatly high and the FDR and FOR are small, together with a good AUROC, indicating that many of the existing edges in the underlying graph are detected. The p-values of the Geweke’s statistics in 187 out of 200 replications are greater than 0.01, supporting that the burn-in sample is converged.

We do the same for the simulation (S2). The underlying network in simulation (S2) is shown in Figure 4. It contains more nodes and edges than the graph in simulation (S1), and we expect that the structural learning in simulation (S2) will be more challenging. The average AUROC out of 200 replications is 70.1%. The ACC, FDR, FOR, SEN and SPE in simulation (S1) is shown in Table 2. We observe that the false discovery rate becomes higher than the case in simulation (S1). This indicates that the structural learning algorithms tend to include more edges, especially in higher dimensions. Nevertheless, the algorithm has a sensitivity up to 0.642. The p-values of the Geweke’s statistics in 184 out of 200 replications are greater than 0.01. We still get a moderately good AUROC and convergence for a more challenging case.

However, we do not know the underlying network of a real data set. These two simulation results give some clues of the performance of the structural learning algorithm. The algorithm is able to cover a moderately high portion of existing edges in the underlying network. Then, in the empirical study, we also conduct 200 iterations for the structural learning.

r1,tsubscript𝑟1𝑡r_{1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPTr2,tsubscript𝑟2𝑡r_{2,t}italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPTr3,tsubscript𝑟3𝑡r_{3,t}italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPTr4,tsubscript𝑟4𝑡r_{4,t}italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPTr5,tsubscript𝑟5𝑡r_{5,t}italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPTr6,tsubscript𝑟6𝑡r_{6,t}italic_r start_POSTSUBSCRIPT 6 , italic_t end_POSTSUBSCRIPTr7,tsubscript𝑟7𝑡r_{7,t}italic_r start_POSTSUBSCRIPT 7 , italic_t end_POSTSUBSCRIPTr8,tsubscript𝑟8𝑡r_{8,t}italic_r start_POSTSUBSCRIPT 8 , italic_t end_POSTSUBSCRIPT
Figure 3: The underlying network in the simulation (S1).
Threshold c𝑐citalic_c ACC FDR FOR SEN SPE
0.01 0.810 0.347 0.111 0.723 0.845
0.10 0.818 0.315 0.125 0.676 0.874
0.50 0.819 0.238 0.163 0.537 0.932
0.90 0.781 0.204 0.218 0.323 0.965
0.99 0.766 0.202 0.234 0.254 0.971
Table 1: The average ACC, FDR, FOR, SEN and SPE of the structural learning in simulation (S1) out of 200 replications at different thresholds.
r1,tsubscript𝑟1𝑡r_{1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPTr2,tsubscript𝑟2𝑡r_{2,t}italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPTr3,tsubscript𝑟3𝑡r_{3,t}italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPTr4,tsubscript𝑟4𝑡r_{4,t}italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPTr5,tsubscript𝑟5𝑡r_{5,t}italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPTr6,tsubscript𝑟6𝑡r_{6,t}italic_r start_POSTSUBSCRIPT 6 , italic_t end_POSTSUBSCRIPTr7,tsubscript𝑟7𝑡r_{7,t}italic_r start_POSTSUBSCRIPT 7 , italic_t end_POSTSUBSCRIPTr8,tsubscript𝑟8𝑡r_{8,t}italic_r start_POSTSUBSCRIPT 8 , italic_t end_POSTSUBSCRIPTr9,tsubscript𝑟9𝑡r_{9,t}italic_r start_POSTSUBSCRIPT 9 , italic_t end_POSTSUBSCRIPTr10,tsubscript𝑟10𝑡r_{10,t}italic_r start_POSTSUBSCRIPT 10 , italic_t end_POSTSUBSCRIPT
Figure 4: The underlying network in the simulation (S2).
Threshold c𝑐citalic_c Accuracy FDR FOR SEN SPE
0.01 0.744 0.447 0.153 0.642 0.786
0.10 0.748 0.440 0.163 0.609 0.804
0.50 0.750 0.420 0.192 0.500 0.852
0.90 0.755 0.397 0.204 0.440 0.883
0.99 0.752 0.397 0.211 0.409 0.891
Table 2: The average ACC, FDR, FOR, SEN and SPE of the structural learning in simulation (S2) out of 200 replications at different thresholds.

6.3 Parameter estimation evaluation

The parameter estimations are separated into three phases: We first estimate Θ1subscriptΘ1\Theta_{1}roman_Θ start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT, the parameters in the marginal distributions. We then estimate Θ2subscriptΘ2\Theta_{2}roman_Θ start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT, the parameters in the DAG copulas using MCMC sampling. Finally, for each stock j𝑗jitalic_j, we estimate Θ3jsubscriptΘ3𝑗\Theta_{3j}roman_Θ start_POSTSUBSCRIPT 3 italic_j end_POSTSUBSCRIPT, the parameters in the stock copulas cj,i|1,,i1[t]superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,\ldots,i-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT using sequential estimation starting from i=1𝑖1i=1italic_i = 1 to i=m𝑖𝑚i=mitalic_i = italic_m. We do not report the estimation results for the parameters in the marginal distributions as our interest is the copula parameters.

6.3.1 Parameters in the DAG copulas

We conduct 20,000 iterations for learning the parameters in the MCMC sampling for the DAG copulas in each replication. The burn-in is chosen automatically by minimizing the average Geweke’s statistics of the chains of the parameters. We first present the estimation results for simulation (S1). We present the true values, the mean, the mean absolute error (MAE) of the mean, the median, the MAE of the median, the 5th quantile (q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT), and the 95th quantile (q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT) of the posterior median estimates out of the 200 replications in Table 3. A true value marked with an asterisk indicates that (q0.05,q0.95)subscript𝑞0.05subscript𝑞0.95(q_{0.05},q_{0.95})( italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT , italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT ), the 90% credible interval contains the true value. All the true values are contained in the 95% credible intervals except for the parameter φ¯8,5subscript¯𝜑85\bar{\varphi}_{8,5}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 8 , 5 end_POSTSUBSCRIPT. The MAEs of the mean and median of φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are very small, indicating that the estimation is precise. The MAEs for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are, however, larger relative to the magnitudes of the parameters. This can be explained as follows. 5(b) shows the distributions of the posterior median estimates of (a) a2,1subscript𝑎21a_{2,1}italic_a start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, (b) b2,1subscript𝑏21b_{2,1}italic_b start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, (c) φ¯2,1subscript¯𝜑21\bar{\varphi}_{2,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT and (d) v2,1subscript𝑣21v_{2,1}italic_v start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, across 200 replications, for the copula c2,1[t]superscriptsubscript𝑐21delimited-[]𝑡c_{2,1}^{[t]}italic_c start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT in simulation (S1) as an example. We observe that some of the estimates of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to zero. This is because the data sets contain noises, and the algorithm may not be able to detect the dynamic dependencies of some copulas from the data sets in a few replications. Nevertheless, the median of the estimates of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to the true values as seen in Table 3. The estimation results for simulation (S2) is in Appendix B.1 as the tables are too long to be included in the paper. The results are similar to those of simulation (S1), supporting that the MCMC estimation method in Section 4.2 is reliable.

Parameter True value Mean of estimates Mean MAE Median of estimates Median MAE q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT
a2,1subscript𝑎21a_{2,1}italic_a start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.04superscript0.04\mathbf{0.04^{*}}bold_0.04 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0298 0.0277 0.0269 0.0247 0 0.0829
a3,2subscript𝑎32a_{3,2}italic_a start_POSTSUBSCRIPT 3 , 2 end_POSTSUBSCRIPT 0.04superscript0.04\mathbf{0.04^{*}}bold_0.04 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0331 0.025 0.0323 0.0198 0 0.0708
a4,2subscript𝑎42a_{4,2}italic_a start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT 0.04superscript0.04\mathbf{0.04^{*}}bold_0.04 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0395 0.0214 0.0379 0.0168 0.0015 0.0745
a5,2subscript𝑎52a_{5,2}italic_a start_POSTSUBSCRIPT 5 , 2 end_POSTSUBSCRIPT 0.05superscript0.05\mathbf{0.05^{*}}bold_0.05 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0466 0.0294 0.0458 0.0228 0.0004 0.0942
a6,2subscript𝑎62a_{6,2}italic_a start_POSTSUBSCRIPT 6 , 2 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{0.02^{*}}bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.017 0.0191 0.0111 0.0159 0 0.0581
a7,2subscript𝑎72a_{7,2}italic_a start_POSTSUBSCRIPT 7 , 2 end_POSTSUBSCRIPT 0.06superscript0.06\mathbf{0.06^{*}}bold_0.06 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.051 0.0361 0.0515 0.0301 0 0.1129
a7,3|2subscript𝑎7conditional32a_{7,3|2}italic_a start_POSTSUBSCRIPT 7 , 3 | 2 end_POSTSUBSCRIPT 0.09superscript0.09\mathbf{0.09^{*}}bold_0.09 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0898 0.0221 0.0896 0.0171 0.0577 0.1246
a8,5subscript𝑎85a_{8,5}italic_a start_POSTSUBSCRIPT 8 , 5 end_POSTSUBSCRIPT 0.12superscript0.12\mathbf{0.12^{*}}bold_0.12 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0977 0.0307 0.096 0.0315 0.0497 0.1478
b2,1subscript𝑏21b_{2,1}italic_b start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.89superscript0.89\mathbf{0.89^{*}}bold_0.89 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.6826 0.3549 0.8675 0.2568 0.0003 0.9947
b3,2subscript𝑏32b_{3,2}italic_b start_POSTSUBSCRIPT 3 , 2 end_POSTSUBSCRIPT 0.91superscript0.91\mathbf{0.91^{*}}bold_0.91 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7973 0.2811 0.9066 0.1516 0.0165 0.9895
b4,2subscript𝑏42b_{4,2}italic_b start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT 0.88superscript0.88\mathbf{0.88^{*}}bold_0.88 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7956 0.222 0.8664 0.1169 0.1002 0.9475
b5,2subscript𝑏52b_{5,2}italic_b start_POSTSUBSCRIPT 5 , 2 end_POSTSUBSCRIPT 0.84superscript0.84\mathbf{0.84^{*}}bold_0.84 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.6854 0.3141 0.8219 0.2102 0.0044 0.967
b6,2subscript𝑏62b_{6,2}italic_b start_POSTSUBSCRIPT 6 , 2 end_POSTSUBSCRIPT 0.96superscript0.96\mathbf{0.96^{*}}bold_0.96 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.6985 0.3853 0.9211 0.2747 0.0001 0.9962
b7,2subscript𝑏72b_{7,2}italic_b start_POSTSUBSCRIPT 7 , 2 end_POSTSUBSCRIPT 0.81superscript0.81\mathbf{0.81^{*}}bold_0.81 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.6308 0.3239 0.7719 0.2463 0.0002 0.9878
b7,3|2subscript𝑏7conditional32b_{7,3|2}italic_b start_POSTSUBSCRIPT 7 , 3 | 2 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8412 0.0756 0.8495 0.0423 0.7593 0.9124
b8,5subscript𝑏85b_{8,5}italic_b start_POSTSUBSCRIPT 8 , 5 end_POSTSUBSCRIPT 0.8superscript0.8\mathbf{0.8^{*}}bold_0.8 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7747 0.0851 0.7897 0.0661 0.6134 0.8878
φ¯2,1subscript¯𝜑21\bar{\varphi}_{2,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.1superscript0.1\mathbf{-0.1^{*}}- bold_0.1 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.0945 0.0545 -0.0936 0.045 -0.1897 -0.009
φ¯3,2subscript¯𝜑32\bar{\varphi}_{3,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 3 , 2 end_POSTSUBSCRIPT 0.4superscript0.4\mathbf{0.4^{*}}bold_0.4 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.3774 0.0609 0.3758 0.0508 0.2867 0.481
φ¯4,2subscript¯𝜑42\bar{\varphi}_{4,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT 0.76superscript0.76\mathbf{0.76^{*}}bold_0.76 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7346 0.0331 0.7365 0.0331 0.6806 0.7868
φ¯5,2subscript¯𝜑52\bar{\varphi}_{5,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 5 , 2 end_POSTSUBSCRIPT 0.59superscript0.59\mathbf{0.59^{*}}bold_0.59 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.5651 0.0462 0.562 0.0422 0.4874 0.6411
φ¯6,2subscript¯𝜑62\bar{\varphi}_{6,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 6 , 2 end_POSTSUBSCRIPT 0.34superscript0.34\mathbf{0.34^{*}}bold_0.34 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.3073 0.0657 0.3045 0.0572 0.2089 0.4085
φ¯7,2subscript¯𝜑72\bar{\varphi}_{7,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 7 , 2 end_POSTSUBSCRIPT 0.27superscript0.27\mathbf{0.27^{*}}bold_0.27 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.2496 0.0471 0.2497 0.041 0.171 0.3346
φ¯7,3|2subscript¯𝜑7conditional32\bar{\varphi}_{7,3|2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 7 , 3 | 2 end_POSTSUBSCRIPT 0.41superscript0.41\mathbf{0.41^{*}}bold_0.41 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.4011 0.0853 0.4042 0.0653 0.2541 0.5323
φ¯8,5subscript¯𝜑85\bar{\varphi}_{8,5}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 8 , 5 end_POSTSUBSCRIPT 0.490.49-0.49- 0.49 --0.3225 0.0624 -0.3229 0.1678 -0.428 -0.2258
v2,1subscript𝑣21v_{2,1}italic_v start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 5.29superscript5.29\mathbf{5.29^{*}}bold_5.29 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 5.5084 1.212 5.2921 0.8857 3.8757 7.7017
v3,2subscript𝑣32v_{3,2}italic_v start_POSTSUBSCRIPT 3 , 2 end_POSTSUBSCRIPT 5.22superscript5.22\mathbf{5.22^{*}}bold_5.22 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 5.765 1.1881 5.615 0.9539 4.1212 8.0312
v4,2subscript𝑣42v_{4,2}italic_v start_POSTSUBSCRIPT 4 , 2 end_POSTSUBSCRIPT 7.26superscript7.26\mathbf{7.26^{*}}bold_7.26 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.3123 2.359 7.6156 1.8309 5.568 12.7916
v5,2subscript𝑣52v_{5,2}italic_v start_POSTSUBSCRIPT 5 , 2 end_POSTSUBSCRIPT 9.71superscript9.71\mathbf{9.71^{*}}bold_9.71 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 10.3178 3.1879 9.7887 2.4571 6.3559 16.1122
v6,2subscript𝑣62v_{6,2}italic_v start_POSTSUBSCRIPT 6 , 2 end_POSTSUBSCRIPT 5.18superscript5.18\mathbf{5.18^{*}}bold_5.18 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 5.7413 1.5622 5.4904 1.1309 3.8794 8.7478
v7,2subscript𝑣72v_{7,2}italic_v start_POSTSUBSCRIPT 7 , 2 end_POSTSUBSCRIPT 7.07superscript7.07\mathbf{7.07^{*}}bold_7.07 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.9327 2.4533 7.3082 1.6834 5.3139 12.8052
v7,3|2subscript𝑣7conditional32v_{7,3|2}italic_v start_POSTSUBSCRIPT 7 , 3 | 2 end_POSTSUBSCRIPT 6.59superscript6.59\mathbf{6.59^{*}}bold_6.59 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.342 2.3234 6.8102 1.7867 4.5986 11.9898
v8,5subscript𝑣85v_{8,5}italic_v start_POSTSUBSCRIPT 8 , 5 end_POSTSUBSCRIPT 7.27superscript7.27\mathbf{7.27^{*}}bold_7.27 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 10.6446 3.1184 10.0816 3.613 6.1601 16.0641
Table 3: The true values, the mean, mean absolute error (MAE) of the mean, the median, the MAE of the median, the 5th quantile (q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT), and the 95th quantile (q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT) of the posterior median estimates out of the 200 replications for simulation (S1).
Refer to caption
(a)
Refer to caption
(b)
Refer to caption
(d)
Figure 5: The distributions of the posterior median estimates of (a) a2,1subscript𝑎21a_{2,1}italic_a start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, (b) b2,1subscript𝑏21b_{2,1}italic_b start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, (c) φ¯2,1subscript¯𝜑21\bar{\varphi}_{2,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT and (d) v2,1subscript𝑣21v_{2,1}italic_v start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT, across 200 replications, for the copula c2,1[t]superscriptsubscript𝑐21delimited-[]𝑡c_{2,1}^{[t]}italic_c start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT in simulation (S1).


Refer to caption
(c)

6.3.2 Parameters in the stock copulas

The parameters in the stock copulas are estimated using sequential estimation as discussed in Section 4.1. C contains a comparison with the sequential estimates and the MCMC estimates of the parameters in the stock copulas, and the results suggest that the sequential estimates work as well as the MCMC estimates. Since there are m×p𝑚𝑝m\times pitalic_m × italic_p estimates for, respectively, aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, and vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, it is more efficient to present the results using graphs. We also partition the parameters into m𝑚mitalic_m levels, where the first level contains the parameters aj,1subscript𝑎𝑗1a_{j,1}italic_a start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT, bj,1subscript𝑏𝑗1b_{j,1}italic_b start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT φ¯j,1subscript¯𝜑𝑗1\bar{\varphi}_{j,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT and vj,1subscript𝑣𝑗1v_{j,1}italic_v start_POSTSUBSCRIPT italic_j , 1 end_POSTSUBSCRIPT, and the i𝑖iitalic_ith level contains aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, for i=2,,m𝑖2𝑚i=2,\ldots,mitalic_i = 2 , … , italic_m. We first present the sequential estimation results for the stock parameters in Simulation (S1). Figure 6, Figure 7, Figure 8, and Figure 9 show the graphs summarizing the parameter estimates for respectively axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level. The green curves indicate true values, the blue and orange curves indicate respectively the means and medians of the sequential estimates out of 200 replications, and the pair of dashed curves represent the 90% credible interval out of 200 replications. The x-axes are in ascending order according to the true values of the parameters in each level for a better visualization.

Both the means and medians of the sequential estimates of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to the true values for the first three levels as observed from Figure 6. The 90% credible intervals are also narrow, indicating that the estimates are precise. The estimates tend to be slightly smaller than the true values in deeper levels. This happens because the estimates in the deeper levels rely on the estimates in previous levels, which may lead to larger errors. We expect the errors in deeper levels would have mild effects on the model. This is because, as we will see later in the empirical study, usually the long-run correlations are small (and thus not useful to capture the linear dependence among stocks) and the degrees of freedom are large (and thus not useful to capture the tail dependence) in deeper levels. Then, as long as the estimates of the first several levels are accurate, the model can already capture the linear and non-linear dependencies among stocks accurately.

Both the means and medians of the estimates of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to the true values, even in the deeper levels as observed from Figure 7. However, the 90% credible intervals are wild, especially in deeper levels. This could be due to the “information” stored in the data set. Different data sets may contain different noises so that the estimation algorithm may not detect the temporal dependence for the correlation, and thus the algorithm may give a small value of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT. Nevertheless, the algorithm can recover the true values of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT on average as the means and medians of the sequential estimates out of 200 replications are close to their true values.

The means and medians of the estimates of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to the true values in all levels as observed in Figure 8. The 90% credible intervals are also narrow whenever the true degrees of freedom are small. This shows that the algorithm is able to detect strong tail dependence precisely, which is crucial in practice. However, the 90% credible intervals are wilder when the degrees of freedom are larger and in deeper levels. This is again due to the “information” stored in the data set. For larger degrees of freedom (and thus weaker tail dependence), the data may not contain much information about the co-moving tail cases, and thus the estimates will be less precise. But it is not an issue in practice, since we are able to capture the strong dependence from the data set precisely, which is more important in application.

The means and medians of the sequential estimates of φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are close to their true values and the 90% credible intervals are very narrow as observed in Figure 9. This shows that the sequential estimation performs very well in estimating long-run correlations.

The sequential estimation results for the stock copulas in Simulation (S2) are contained in Appendix B.2. The estimation results are similar to those in this section, and the comments in this section are also applicable to the results in Appendix B.2. This shows that the algorithm also works well for a more complicated network with m=10𝑚10m=10italic_m = 10 variables.

Refer to caption
Figure 6: A graph summarizing the parameter estimates for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S1). The copulas are in ascending order based on the true values of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 7: A graph summarizing the parameter estimates for bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S1). The copulas in ascending order based on the true values of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 8: A graph summarizing the parameter estimates for vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S1). The copulas are in ascending order based on the true values of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 9: A graph summarizing the parameter estimates for φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S1). The copulas are in ascending order based on the true values of φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.

7 Empirical study

7.1 Data

In this section, we consider a portfolio of p=92𝑝92p=92italic_p = 92 stocks in Table 1 in Appendix D and m=10𝑚10m=10italic_m = 10 market indexes in Table 4. We conduct a full GC-GARCH estimation and also conduct an investment experiment using a moving-window approach, in which we determine the portfolio weights for rebalancing by refitting the GC-GARCH model weekly.

The daily closing prices of m+p=102𝑚𝑝102m+p=102italic_m + italic_p = 102 stocks/market indexes are available from 4 January 2017 to 5 May 2023 (T+1=1,561𝑇11561T+1=1,561italic_T + 1 = 1 , 561 trading days of closing prices and T=1,560𝑇1560T=1,560italic_T = 1 , 560 returns can be calculated from the closing prices). Let Si,tsubscript𝑆𝑖𝑡S_{i,t}italic_S start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT be the closing price of the i𝑖iitalic_ith stocks/market indexes on day t𝑡titalic_t for i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p, t=0,,T𝑡0𝑇t=0,\ldots,Titalic_t = 0 , … , italic_T. t=0𝑡0t=0italic_t = 0 corresponds to 4 Jan 2017. The log returns on T𝑇Titalic_T trading days of the stocks/market indexes, ri,t=100×[log(Si,t)log(Si,t1)]subscript𝑟𝑖𝑡100delimited-[]subscript𝑆𝑖𝑡subscript𝑆𝑖𝑡1r_{i,t}=100\times\left[\log(S_{i,t})-\log(S_{i,t-1})\right]italic_r start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT = 100 × [ roman_log ( start_ARG italic_S start_POSTSUBSCRIPT italic_i , italic_t end_POSTSUBSCRIPT end_ARG ) - roman_log ( start_ARG italic_S start_POSTSUBSCRIPT italic_i , italic_t - 1 end_POSTSUBSCRIPT end_ARG ) ] for i=1,,m+p𝑖1𝑚𝑝i=1,\ldots,m+pitalic_i = 1 , … , italic_m + italic_p and t=1,,T𝑡1𝑇t=1,\ldots,Titalic_t = 1 , … , italic_T, are used to fit the GC-GARCH model. Similar to the simulation study, we say that a copula is in level k𝑘kitalic_k if the copula has k𝑘kitalic_k conditioning variables.

Refer to caption
Figure 10: The time series of the BIC in the structural learning of the full estimation in the empirical study.
Name Symbol Order Number of constituents Portfolio included
Hang Seng Composite LargeCap Index HSLI 1 122 67
Hang Seng China Enterprises Index HSCEI 2 50 33
HK-Listed Biotech Index HSHKBIO 3 73 3
Hang Seng Index HSI 4 76 58
Hang Seng ESG 50 Index HSESG50 5 50 33
China H-Financials Index H.FIN 6 30 20
Hang Seng Climate Change 1.5degdegree\degroman_degC Target Index HSC15TI 7 212 21
Hang Seng TECH Index HSTECH 8 30 4
Hang Seng Composite MidCap Index HSMI 9 52 4
Growth Enterprise Market Index HKSPGEM 10 49 0
Table 4: The name, symbol, topological order, number of constituent and the number of stocks included in the portfolio of the p=92𝑝92p=92italic_p = 92 stocks for each risk factor. The topological orders of the stocks are based on the MAP network in Figure 11.

7.2 Full estimation

We first estimate the GC-GARCH model using all T=1560𝑇1560T=1560italic_T = 1560 trading days of returns. We conduct a structural learning with 200 iterations using the method in Section 4.3. Figure 10 shows the time series of the BIC in the structural learning of the full estimation. The burn-in is chosen automatically by minimizing the Geweke’s statistic of the BIC. The structure with the highest score is shown in Figure 11. The topological orders of the risk factors are shown in Table 4. The parameter estimates of the DAG copulas are shown in Table 5.

The Hang Seng Composite LargeCap index (HSLI) is at the top of the order in the network in Figure 11, and connected to seven risk factors, showing that HSLI can be regarded as the “source” of the market movements. The HSLI also contains 67 stocks in our portfolio as shown in Table 4. We expect that the HSLI can explain a high portion of the co-movements of the stocks. The HSCEI, HSI and HSHKBIO are also ranked in top orders in the network. Moreover, the risk factors in the network are highly interconnected, indicating that these risk factors are closely dependent.

The parameter estimates in the DAG copulas are shown in Table 5. Most of aj,i|1,,i1+bj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1subscript𝑏𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}+b_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT + italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT are close to 1 (as most of bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT themselves are close to 1), indicating that the correlations are highly persistent. The long-run correlations tend to be smaller in magnitude in deeper levels; for example, the long-run correlations of (HSMI,HSLI), (HSMI,HSCEI||||HSLI), (HSMI,HSHKBIO||||HSLI,HSCEI), and (HSMI,HSI||||HSLI,HSCEI,HSHKBIO) are respectively 0.9350, 0.0554, 0.4562, and --0.1924. This means that high portions of the correlations among risk factors are explained by the first level.

Some degrees of freedom of the risk factor pairs are small, indicating that the dependence in the tails for some pairs of risk factor are strong, captured by the GC-GARCH model. For example, the degrees of freedom of (HSCEI,HSLI), (HSI,HSCEI), (HSESG50,HSCEI) and (HSESG50,HSI||||HSCEI) are respectively 5.59, 3.81, 4.51 and 5.53. It indicates that there are high levels of tail dependence among the risk factors.

As there are m×p=920𝑚𝑝920m\times p=920italic_m × italic_p = 920 parameters for each aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT in the stock copulas, we use scatter plots in Figure 12, Figure 13 and Figure 14 to report the parameter estimates of aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT. φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT’s are used as the x-axes. We report the estimates by level, where level i𝑖iitalic_i contains the parameters in the copulas of the form Cj,i|1,,i1[t]subscriptsuperscript𝐶delimited-[]𝑡𝑗conditional𝑖1𝑖1C^{[t]}_{j,i|1,\ldots,i-1}italic_C start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT. By reporting by different levels, we can observe the effects of the risk factors to the stocks clearly. The y-axes correspond to the estimates of the above three parameters, and the x-axes correspond to the estimates of φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT. The reason for putting φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT in the x-axes is that we observe that the estimates of aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT are associated with the values of the long-run correlations φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT. aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT tend to be smaller, and vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT tends to be large whenever the long-run correlation φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT is close to zero. This could be due to the “information” contained in the data set; when the long-run correlation φ¯j,i|1,,i1subscript¯𝜑𝑗conditional𝑖1𝑖1\bar{\varphi}_{j,i|1,\ldots,i-1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT is close to zero, the “information” stored in the data set would be relatively weak, and thus the algorithm may not be able to detect the temporal dependence, captured by aj,i|1,,i1subscript𝑎𝑗conditional𝑖1𝑖1a_{j,i|1,\ldots,i-1}italic_a start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT and bj,i|1,,i1subscript𝑏𝑗conditional𝑖1𝑖1b_{j,i|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT, and the tail dependence, captured by vj,i|1,,i1subscript𝑣𝑗conditional𝑖1𝑖1v_{j,i|1,\ldots,i-1}italic_v start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT (as a larger degrees of freedom indicates weaker tail dependence). From Figure 13, we observe that most of the estimates of bj1subscript𝑏𝑗1b_{j1}italic_b start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT in level 1 (correspond to the risk factor HSLI) are close to 1, and most of the long-run correlations φ¯j1subscript¯𝜑𝑗1\bar{\varphi}_{j1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_j 1 end_POSTSUBSCRIPT are larger than 0.5, showing that the correlations of these stocks between HSLI are dynamic and most of these stocks are strongly correlated with HSLI. The estimates of bji|1,,i1subscript𝑏conditional𝑗𝑖1𝑖1b_{ji|1,\ldots,i-1}italic_b start_POSTSUBSCRIPT italic_j italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT tend to be smaller in deeper levels, and the long-run correlations in deeper levels also tend to move towards 0, showing that high portions of the correlations are explained by the risk factors in the first several levels. Figure 14 shows that the degrees of freedom in the first level are small, and tend to be larger in deeper levels, indicating that the tail dependence between the stocks and respectively the first several risk factors are stronger. High portions of tail dependence are explained by the first several levels. Recall we have mentioned, in Section 6.3.2, that the estimates could become slightly imprecise (i.e., the credible intervals are wider) in deeper levels. We claim that the effects would be mild as the correlations are getting smaller and the degrees of freedom are getting larger in deeper levels as observed in Figure 14. Nevertheless, we have shown that the estimates are accurate on average even in deeper levels in the simulation study.

Refer to caption
Figure 11: The MAP network.
Copula φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT
HSCEI,HSLI 0.9911 0.0102 0.9776 5.59
HSHKBIO,HSLI 0.7601 0.0275 0.9347 12.65
HSI,HSCEI 0.9910 0.0122 0.9734 3.81
HSI,HSHKBIO||||HSCEI 0.0560 0.0000 0.9996 24.34
HSESG50,HSCEI 0.9783 0.0132 0.9731 4.51
HSESG50,HSI||||HSCEI 0.9361 0.0143 0.9732 5.53
H.FIN,HSLI 0.9666 0.0135 0.9847 9.90
H.FIN,HSCEI||||HSLI 0.9114 0.0020 0.9975 17.72
H.FIN,HSHKBIO||||HSLI,HSCEI -0.0724 0.0022 0.9936 19.53
H.FIN,HSESG50||||HSLI,HSCEI,HSHKBIO 0.5499 0.0247 0.9643 18.36
HSC15TI,HSLI 0.9929 0.0062 0.9758 6.16
HSC15TI,HSCEI||||HSLI 0.4995 0.0108 0.9679 9.57
HSC15TI,HSHKBIO||||HSLI,HSCEI 0.5294 0.0149 0.9568 13.22
HSC15TI,HSESG50||||HSLI,HSCEI,HSHKBIO 0.4742 0.0191 0.9646 27.08
HSC15TI,H.FIN||||HSLI,HSCEI,HSHKBIO,HSESG50 0.0680 0.0128 0.9624 18.11
HSMI,HSLI 0.9350 0.0153 0.9537 13.18
HSMI,HSCEI||||HSLI 0.0554 0.0055 0.9818 19.91
HSMI,HSHKBIO||||HSLI,HSCEI 0.4562 0.0243 0.8494 15.61
HSMI,HSI||||HSLI,HSCEI,HSHKBIO -0.1924 0.0264 0.9003 20.49
HSMI,HSESG50||||HSLI,HSCEI,HSHKBIO,HSI 0.0285 0.0112 0.9880 18.61
HSMI,H.FIN||||HSLI,HSCEI,HSHKBIO,HSI,HSESG50 -0.2130 0.0087 0.9910 15.87
HSMI,HSC15TI||||HSLI,HSCEI,HSHKBIO,HSI,HSESG50,H.FIN 0.7572 0.0016 0.9979 18.08
HSTECH,HSLI 0.9680 0.0226 0.9605 12.91
HSTECH,HSCEI||||HSLI -0.3211 0.0106 0.9783 19.93
HSTECH,HSHKBIO||||HSLI,HSCEI 0.3041 0.0029 0.9960 23.84
HSTECH,HSESG50||||HSLI,HSCEI,HSHKBIO -0.4858 0.0246 0.9692 15.94
HSTECH,HSC15TI||||HSLI,HSCEI,HSHKBIO,HSESG50 0.3677 0.0078 0.9905 19.65
HKSPGEM,HSLI 0.5129 0.0810 0.5853 9.56
HKSPGEM,HSCEI||||HSLI -0.0213 0.0000 0.5636 21.31
HKSPGEM,HSMI||||HSLI,HSCEI 0.1800 0.0667 0.0000 31.26
HKSPGEM,HSTECH||||HSLI,HSCEI,HSMI 0.0563 0.0023 0.9968 26.78
Table 5: The parameter estimates of the DAG copulas in the MAP network in Figure 11.
Refer to caption
Figure 12: The scatterplots of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT versus φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level. A point corresponds to a stock copulas cj,i|1,,i1[t]superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,\ldots,i-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT. The k𝑘kitalic_k-th level contains the copulas cj,k|1,,k1[t]superscriptsubscript𝑐𝑗conditional𝑘1𝑘1delimited-[]𝑡c_{j,k|1,\ldots,k-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_k | 1 , … , italic_k - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT for j=m+1,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots m+pitalic_j = italic_m + 1 , … italic_m + italic_p.
Refer to caption
Figure 13: The scatterplots of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT versus φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level. A point corresponds to a stock copulas cj,i|1,,i1[t]superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,\ldots,i-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT. The k𝑘kitalic_k-th level contains the copulas cj,k|1,,k1[t]superscriptsubscript𝑐𝑗conditional𝑘1𝑘1delimited-[]𝑡c_{j,k|1,\ldots,k-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_k | 1 , … , italic_k - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT for j=m+1,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots m+pitalic_j = italic_m + 1 , … italic_m + italic_p.
Refer to caption
Figure 14: The scatterplots of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT versus φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level. A point corresponds to a stock copulas cj,i|1,,i1[t]superscriptsubscript𝑐𝑗conditional𝑖1𝑖1delimited-[]𝑡c_{j,i|1,\ldots,i-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_i | 1 , … , italic_i - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT. The k𝑘kitalic_k-th level contains the copulas cj,k|1,,k1[t]superscriptsubscript𝑐𝑗conditional𝑘1𝑘1delimited-[]𝑡c_{j,k|1,\ldots,k-1}^{[t]}italic_c start_POSTSUBSCRIPT italic_j , italic_k | 1 , … , italic_k - 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT for j=m+1,m+p𝑗𝑚1𝑚𝑝j=m+1,\ldots m+pitalic_j = italic_m + 1 , … italic_m + italic_p.

7.3 Moving-window investment experiment

We conduct an investment experiment where we rebalance the portfolio on the first trading day of each week using the methodology in Section 5. We aim to compare the investment performances between the models (1) GC-GARCH model using the MAP network, (2) GC-GARCH model with model averaging using the Ng=3subscript𝑁𝑔3N_{g}=3italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT = 3 highest scoring networks, and (3) DCC-GARCH model proposed by \textciteDCC_model and \textciteDCC_GARCH.

The experiment is conducted with a moving-window size of w=750𝑤750w=750italic_w = 750 days. We rebalance the portfolio weights on the first trading day of a week. To determine the portfolio weights, we use the data on the previous w=750𝑤750w=750italic_w = 750 trading days (up to the last trading days of the week, which is typically a Friday) to fit the model, and solve the MV and MCVaR problems in (26) and (30).

Suppose that t1,t2,,tL{1,,T}subscript𝑡1subscript𝑡2subscript𝑡𝐿1𝑇t_{1},t_{2},\ldots,t_{L}\in\{1,\ldots,T\}italic_t start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT italic_L end_POSTSUBSCRIPT ∈ { 1 , … , italic_T } are the last trading days of all weeks in the data set, where L=331𝐿331L=331italic_L = 331 is the number of weeks in the data set. The first model can be fitted using the first 749 trading days (in the week 159). The reason for using 749 and not 750 for the first window is that, the 749th trading day in the data set is a Friday, which fits the setting that we fit a model at the end of a week. We further reserve the first 32 weeks of model fits for the sake of an investment strategy, to be introduced later. Then, the first investment can be done on 31 August 2020, which is the first day in week 192, where the portfolio weights is determined at the end of week 159+32=19115932191159+32=191159 + 32 = 191. Let RPF,t=exp(rPF,t)1subscript𝑅𝑃𝐹𝑡subscript𝑟𝑃𝐹𝑡1R_{PF,t}=\exp(r_{PF,t})-1italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_t end_POSTSUBSCRIPT = roman_exp ( start_ARG italic_r start_POSTSUBSCRIPT italic_P italic_F , italic_t end_POSTSUBSCRIPT end_ARG ) - 1 be the simple rate of return of the portfolio on day t𝑡titalic_t. Note that the portfolio weights are determined on last days of each of week t191,t192,,t330subscript𝑡191subscript𝑡192subscript𝑡330t_{191},t_{192},\ldots,t_{330}italic_t start_POSTSUBSCRIPT 191 end_POSTSUBSCRIPT , italic_t start_POSTSUBSCRIPT 192 end_POSTSUBSCRIPT , … , italic_t start_POSTSUBSCRIPT 330 end_POSTSUBSCRIPT, and we make investment on the first trading days of each week t191+1,t192+1,,t330+1subscript𝑡1911subscript𝑡1921subscript𝑡3301t_{191}+1,t_{192}+1,\ldots,t_{330}+1italic_t start_POSTSUBSCRIPT 191 end_POSTSUBSCRIPT + 1 , italic_t start_POSTSUBSCRIPT 192 end_POSTSUBSCRIPT + 1 , … , italic_t start_POSTSUBSCRIPT 330 end_POSTSUBSCRIPT + 1. The simple rate of return of the portfolio in week i𝑖iitalic_i (i=192,,331𝑖192331i=192,\ldots,331italic_i = 192 , … , 331) is given by RPF,week i=τ=ti1+1ti(1+RPF,τ)subscript𝑅𝑃𝐹week 𝑖superscriptsubscriptproduct𝜏subscript𝑡𝑖11subscript𝑡𝑖1subscript𝑅𝑃𝐹𝜏R_{PF,\text{week }i}=\prod_{\tau=t_{i-1}+1}^{t_{i}}(1+R_{PF,\tau})italic_R start_POSTSUBSCRIPT italic_P italic_F , week italic_i end_POSTSUBSCRIPT = ∏ start_POSTSUBSCRIPT italic_τ = italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( 1 + italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_τ end_POSTSUBSCRIPT ). Suppose that we invest 10,0001000010,00010 , 000 dollars on day t191+1subscript𝑡1911t_{191}+1italic_t start_POSTSUBSCRIPT 191 end_POSTSUBSCRIPT + 1 in week 192 (the first week we invest), the cumulative value of the portfolio as of week i𝑖iitalic_i (i=192,,331𝑖192331i=192,\ldots,331italic_i = 192 , … , 331) is given by

Pi=10,000τ=t191+1ti(1+RPF,τ).subscript𝑃𝑖10000superscriptsubscriptproduct𝜏subscript𝑡1911subscript𝑡𝑖1subscript𝑅𝑃𝐹𝜏P_{i}=10,000\prod_{\tau=t_{191}+1}^{t_{i}}(1+R_{PF,\tau}).italic_P start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT = 10 , 000 ∏ start_POSTSUBSCRIPT italic_τ = italic_t start_POSTSUBSCRIPT 191 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT end_POSTSUPERSCRIPT ( 1 + italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_τ end_POSTSUBSCRIPT ) . (33)

We also evaluate the quality of prediction, following \textciteES_estimation, we compute the cost function with coverage level α𝛼\alphaitalic_α,

C(α)=1g(α)i=192331|RPF,ti1+1CVaRti1+1α|𝟏(RPF,ti1+1CVaRti1+1α),𝐶𝛼1𝑔𝛼superscriptsubscript𝑖192331subscript𝑅𝑃𝐹subscript𝑡𝑖11𝐶𝑉𝑎subscriptsuperscript𝑅𝛼subscript𝑡𝑖111subscript𝑅𝑃𝐹subscript𝑡𝑖11𝐶𝑉𝑎subscriptsuperscript𝑅𝛼subscript𝑡𝑖11C(\alpha)=\frac{1}{g(\alpha)}\sum_{i=192}^{331}\absolutevalue{-R_{PF,t_{i-1}+1% }-CVaR^{\alpha}_{t_{i-1}+1}}\mathbf{1}(-R_{PF,t_{i-1}+1}\geq CVaR^{\alpha}_{t_% {i-1}+1}),italic_C ( italic_α ) = divide start_ARG 1 end_ARG start_ARG italic_g ( italic_α ) end_ARG ∑ start_POSTSUBSCRIPT italic_i = 192 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 331 end_POSTSUPERSCRIPT | start_ARG - italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT - italic_C italic_V italic_a italic_R start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT end_ARG | bold_1 ( - italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT ≥ italic_C italic_V italic_a italic_R start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT ) , (34)

for α=0.0005,0.001,0.005,0.01,0.05𝛼0.00050.0010.0050.010.05\alpha=0.0005,0.001,0.005,0.01,0.05italic_α = 0.0005 , 0.001 , 0.005 , 0.01 , 0.05, where CVaRti1+1α𝐶𝑉𝑎subscriptsuperscript𝑅𝛼subscript𝑡𝑖11CVaR^{\alpha}_{t_{i-1}+1}italic_C italic_V italic_a italic_R start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT is the predicted conditional value-at-risk with coverage level α𝛼\alphaitalic_α on day ti1+1subscript𝑡𝑖11t_{i-1}+1italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1, estimated using the methods of the portfolio returns introduced in Section 5.1, and g(α)=i=192331𝟏(RPF,ti1+1CVaRti1+1α)𝑔𝛼superscriptsubscript𝑖1923311subscript𝑅𝑃𝐹subscript𝑡𝑖11𝐶𝑉𝑎subscriptsuperscript𝑅𝛼subscript𝑡𝑖11g(\alpha)=\sum_{i=192}^{331}\mathbf{1}(-R_{PF,t_{i-1}+1}\geq CVaR^{\alpha}_{t_% {i-1}+1})italic_g ( italic_α ) = ∑ start_POSTSUBSCRIPT italic_i = 192 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT 331 end_POSTSUPERSCRIPT bold_1 ( - italic_R start_POSTSUBSCRIPT italic_P italic_F , italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT ≥ italic_C italic_V italic_a italic_R start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i - 1 end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT ) is the number of days that losses exceed the predicted CVaRs from weeks 192192192192 to 331331331331.

There are two investment strategies:

  • (Strategy 1) We rebalance the portfolio on the first day of every week. We determine the portfolio weights by solving (i) the MV portfolio problem in (26), and (ii) the MCVaR portfolio problems with α=0.0005,0.001,0.005,0.01,0.05𝛼0.00050.0010.0050.010.05\alpha=0.0005,0.001,0.005,0.01,0.05italic_α = 0.0005 , 0.001 , 0.005 , 0.01 , 0.05.

  • (Strategy 2) We avoid investing in the stock market whenever we predict a high level of 1-day ahead portfolio CVaR. Mathematically, at the end of week i𝑖iitalic_i, we first calculate the average 1-day ahead predicted CVaR with coverage level α𝛼\alphaitalic_α in the past wSsubscript𝑤𝑆w_{S}italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT weeks (excluding week i𝑖iitalic_i):

    CVaR¯(iwS):(i1)α=1wSi=iwSi1CVaRti+1α.subscriptsuperscript¯𝐶𝑉𝑎𝑅𝛼:𝑖subscript𝑤𝑆𝑖11subscript𝑤𝑆superscriptsubscriptsuperscript𝑖𝑖subscript𝑤𝑆𝑖1𝐶𝑉𝑎superscriptsubscript𝑅subscript𝑡superscript𝑖1𝛼\overline{CVaR}^{\alpha}_{(i-w_{S}):(i-1)}=\frac{1}{w_{S}}\sum_{i^{\prime}=i-w% _{S}}^{i-1}CVaR_{t_{i^{\prime}}+1}^{\alpha}.over¯ start_ARG italic_C italic_V italic_a italic_R end_ARG start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT ( italic_i - italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT ) : ( italic_i - 1 ) end_POSTSUBSCRIPT = divide start_ARG 1 end_ARG start_ARG italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT end_ARG ∑ start_POSTSUBSCRIPT italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT = italic_i - italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_i - 1 end_POSTSUPERSCRIPT italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i start_POSTSUPERSCRIPT ′ end_POSTSUPERSCRIPT end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT . (35)

    We then predict CVaRti+1α𝐶𝑉𝑎superscriptsubscript𝑅subscript𝑡𝑖1𝛼CVaR_{t_{i}+1}^{\alpha}italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT. We decide to invest in the stock market only when CVaRti+1α𝐶𝑉𝑎superscriptsubscript𝑅subscript𝑡𝑖1𝛼CVaR_{t_{i}+1}^{\alpha}italic_C italic_V italic_a italic_R start_POSTSUBSCRIPT italic_t start_POSTSUBSCRIPT italic_i end_POSTSUBSCRIPT + 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT \leq CVaR¯(iwS):(i1)αsubscriptsuperscript¯𝐶𝑉𝑎𝑅𝛼:𝑖subscript𝑤𝑆𝑖1\overline{CVaR}^{\alpha}_{(i-w_{S}):(i-1)}over¯ start_ARG italic_C italic_V italic_a italic_R end_ARG start_POSTSUPERSCRIPT italic_α end_POSTSUPERSCRIPT start_POSTSUBSCRIPT ( italic_i - italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT ) : ( italic_i - 1 ) end_POSTSUBSCRIPT, i.e., the potential loss is predicted to be lower than or equal to the wSsubscript𝑤𝑆w_{S}italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT-week average. We take wS=8,16,32subscript𝑤𝑆81632w_{S}=8,16,32italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8 , 16 , 32 to test if the strategy performs uniformly well with different choice of wSsubscript𝑤𝑆w_{S}italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT. We only solve the MCVaR portfolio problems for this strategy as this strategy is designed using CVaR.

To ensure that we are comparing the performance of strategies 1 and 2 on the same trading days, we reserve the first 32 weeks of model fits as we need 32323232 weeks to calculate (35) when wS=32subscript𝑤𝑆32w_{S}=32italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 32. The first investment is done on 31 August 2020, which is the first day in week 192, for both strategies 1 and 2 with wS=8,16,32subscript𝑤𝑆81632w_{S}=8,16,32italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8 , 16 , 32 and α=0.0005,0.001,0.005,0.01,0.05𝛼0.00050.0010.0050.010.05\alpha=0.0005,0.001,0.005,0.01,0.05italic_α = 0.0005 , 0.001 , 0.005 , 0.01 , 0.05.

We compare the investment performances of between the models (1) GC-GARCH model using the MAP network, (2) GC-GARCH model with model averaging using the Ng=3subscript𝑁𝑔3N_{g}=3italic_N start_POSTSUBSCRIPT italic_g end_POSTSUBSCRIPT = 3 highest scoring networks (we call it MA for simplicity), and (3) DCC-GARCH model. We determine the portfolio weights using (i) MCVaR portfolio with different α𝛼\alphaitalic_α values and (ii) MV portfolio for strategy 1. We also estimate the CVaR from the MV portfolios using (31) because we want to compare the performance of the MCVaR portfolio to the traditional MV portfolio. We expect the MV portfolio to work poorly as the MV portfolio problem did not consider the tail behavior. We only consider the MCVaR portfolio with different α𝛼\alphaitalic_α values for strategy 2. We first compare the cost function and the number of days that losses exceed the CVaR. We then compare the investment performances by plotting the time series of the cumulative values of the portfolios in (33).

Table 6 shows the cost function in (34) and the number of days that the losses exceed the CVaR (or the number of exceedance) for models (1) to (3) where the portfolio weights are obtained by respectively solving the MCVaR portfolio and MV portfolio problems. First note that the cost function and the number of exceedance for the MV portfolios are all smaller than those for the MCVaR portfolios. This is not because the MV portfolios perform better, but rather due to the fact that the CVaRs are not minimized in the MV problem, and thus larger CVaRs give smaller cost function and number of exceedance. We should only compare the cost function and the number of exceedance between the GC-GARCH, MA and DCC for the same MCVaR or MV portfolios with the same α𝛼\alphaitalic_α. We note that the cost functions of the portfolios with GC-GARCH and MA are all smaller than those of the DCC-GARCH model. The number of exceedance in the portfolios with GC-GARCH and MA are all smaller than those in DCC except for α=0.05𝛼0.05\alpha=0.05italic_α = 0.05. Furthermore, the MA has fewer days of exceedance than the GC-GARCH for MCVaR portfolio at α=0.01𝛼0.01\alpha=0.01italic_α = 0.01 and MV at α=0.005,0.01𝛼0.0050.01\alpha=0.005,0.01italic_α = 0.005 , 0.01. This suggests that the GC-GARCH model and MA work much better than the DCC-GARCH model in covering the losses using CVaR, and the model averaging using GC-GARCH can further improve the performance over the GC-GARCH using the MAP network.

We now compare the investment performance of strategy 1, where we rebalance the portfolio on the first day of every week. Figure 15 shows the time series of the cumulative values of the weekly rebalanced portfolios according to (33). The blue curves indicate the portfolios with the GC-GARCH model using the MAP network, the orange curves indicate the portfolios with the GC-GARCH model using model averaging, and the black curves indicate the portfolios obtained from the DCC-GARCH model. Figure 15 (a) shows the cumulative values of the minimum variance portfolios. The performances of GC-GARCH, MA and DCC are similar in this case. Figures 15 (b) to (f) show the minimum CVaR portfolios with α=0.0005,0.001,0.005,0.01,𝛼0.00050.0010.0050.01\alpha=0.0005,0.001,0.005,0.01,italic_α = 0.0005 , 0.001 , 0.005 , 0.01 , and 0.050.050.050.05. The values of the portfolios using GC-GARCH and MA are on average higher than those using DCC. The portfolios generate higher profits for smaller α𝛼\alphaitalic_α. This supports that the GC-GARCH model outperforms the DCC-GARCH model when we take the tails into account. However, we observe that the cumulative values of the portfolios are falling from 2021 to 2022 in all portfolios in Figure 15. Even though the CVaRs have been minimized in the experiment, some of the losses could still be significant, and we need to modify the strategy to avoid huge potential losses.

Strategy 2 tries to avoid investing in the stock market whenever the predicted 1-day ahead CVaR is higher than the previous wSsubscript𝑤𝑆w_{S}italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT weeks average CVaR in (35). Figure 16, Figure 17, and Figure 18 show the cumulative values of the minimum CVaR portfolios with respectively wS=8,16,subscript𝑤𝑆816w_{S}=8,16,italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8 , 16 , and 32323232. The cumulative values of the portfolios with GC-GARCH with the MAP network (blue curves) and GC-GARCH with model averaging (orange curves) are on average growing from 2020 to 2023, whereas the cumulative values of the DCC-GARCH portfolios (black curves) tend to be falling. To investigate in more detail, Table 7 shows the numbers of weeks invested in the stock market and the average returns on the weeks excluded from investing in the stock market for the investment experiment using strategy 2. The number of weeks is similar across different α𝛼\alphaitalic_α and wSsubscript𝑤𝑆w_{S}italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT using different models. The average returns on the weeks excluded are all negative for GC-GARCH and MA, and are much smaller than those in DCC-GARCH. This suggests that the strategy with the GC-GARCH model successfully avoids days with high losses, and the portfolios are able to grow when we take the tails into account. The GC-GARCH model has good ability to capture the extreme scenarios from the tails. Strategy 2 performs well for different wS=8,16,subscript𝑤𝑆816w_{S}=8,16,italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8 , 16 , and 32323232, especially when we take a small wS=8subscript𝑤𝑆8w_{S}=8italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8, in which case the average returns on the weeks excluded from investing in the stock markets are ranged from 0.210.21-0.21- 0.21% to 0.160.16-0.16- 0.16%, as shown in Table 7.

Cost function Number of CVaR exceedance
α𝛼\alphaitalic_α GC-GARCH MA DCC GC-GARCH MA DCC
MCVaR portfolio 0.0005 0.0445 0.0454 0.0582 10 10 13
0.001 0.0464 0.0451 0.0589 9 9 13
0.005 0.0449 0.0502 0.0535 11 11 15
0.01 0.0532 0.0533 0.0545 15 12 15
0.05 0.0883 0.0765 0.0929 26 26 22
MV portfolio 0.0005 0.0026 0.0094 0.0158 2 2 6
0.001 0.0109 0.0172 0.0273 3 3 10
0.005 0.0319 0.0412 0.0434 9 8 14
0.01 0.0450 0.0487 0.0493 13 11 14
0.05 0.0864 0.0740 0.0913 26 25 22
Table 6: The cost function and the number of days that the losses exceed the CVaR for (1) GC-GARCH model using the MAP network, (2) GC-GARCH model with model averaging (marked MA in the table), and (3) DCC-GARCH model. The portfolio weights are obtained by respectively solving the MCVaR and MV problem.
Refer to caption
Figure 15: The time series of the cumulative values of the weekly rebalanced portfolios according to (33). The blue curves indicate the portfolios with the GC-GARCH model using the MAP network, the orange curves indicate the portfolios with the GC-GARCH model using model averaging, and the black curves indicate the portfolios obtained from the DCC-GARCH model.
Refer to caption
Figure 16: The time series of the cumulative values of the MCVaR portfolios using strategy 2 with wS=8subscript𝑤𝑆8w_{S}=8italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8. The blue curves indicate the portfolios with the GC-GARCH model using the MAP network, the orange curves indicate the portfolios with the GC-GARCH model using model averaging, and the black curves indicate the portfolios obtained from the DCC-GARCH model.
Refer to caption
Figure 17: The time series of the cumulative values of the MCVaR portfolios using strategy 2 with wS=16subscript𝑤𝑆16w_{S}=16italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 16. The blue curves indicate the portfolios with the GC-GARCH model using the MAP network, the orange curves indicate the portfolios with the GC-GARCH model using model averaging, and the black curves indicate the portfolios obtained from the DCC-GARCH model.
Refer to caption
Figure 18: The time series of the cumulative values of the MCVaR portfolios using strategy 2 with wS=32subscript𝑤𝑆32w_{S}=32italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 32. The blue curves indicate the portfolios with the GC-GARCH model using the MAP network, the orange curves indicate the portfolios with the GC-GARCH model using model averaging, and the black curves indicate the portfolios obtained from the DCC-GARCH model.
Number of weeks invested in the stock market Average return excluded from investment (%)
α𝛼\alphaitalic_α GC-GARCH MA DCC GC-GARCH MA DCC
wS=8subscript𝑤𝑆8w_{S}=8italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 8 0.0005 79 79 78 -0.21 -0.16 0.05
0.001 79 79 78 -0.21 -0.15 0.05
0.005 78 78 74 -0.16 -0.12 0.00
0.01 79 79 74 -0.16 -0.12 0.02
0.05 80 80 75 -0.17 -0.14 0.03
wS=16subscript𝑤𝑆16w_{S}=16italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 16 0.0005 80 80 72 -0.15 -0.14 0.00
0.001 80 80 73 -0.14 -0.14 -0.02
0.005 82 82 75 -0.12 -0.10 -0.05
0.01 85 85 72 -0.11 -0.10 -0.01
0.05 79 79 73 -0.12 -0.11 0.00
wS=32subscript𝑤𝑆32w_{S}=32italic_w start_POSTSUBSCRIPT italic_S end_POSTSUBSCRIPT = 32 0.0005 89 89 76 -0.10 -0.09 0.08
0.001 89 89 77 -0.09 -0.09 0.08
0.005 87 87 78 -0.13 -0.08 0.05
0.01 90 90 75 -0.10 -0.08 0.06
0.05 87 87 74 -0.09 -0.07 0.07
Table 7: The number of weeks invested in the stock market and the average returns on the weeks excluded from investing in the stock market for the investment experiment using strategy 2.

8 Discussion and conclusion

We propose the GC-GARCH model to reduce the number of correlation parameters using the idea motivated from the CAPM theory, which uses the risk factors (market indexes) to explain the co-movements among a portfolio of stocks. The GC-GARCH model also captures the co-movements in the tails among risk factor and stock returns through the use of pair-copula construction. The risk factors are factorized using the Bayesian network, which allows us to “rank” the stocks from topological orders in BN. The edges in the BN indicate the flow of information. The time-varying specification of the parameters further flexibilizes the modeling. We adopt the three-stage estimation procedure, where we first estimate the parameters in the marginal distribution, then in the DAG copulas and finally the stock copulas. We have shown that the estimation procedures provide accurate estimates in Section 6. The moving-window investment experiment in Section 7 show that the GC-GARCH models using the highest scoring network and model averaging give better performances than the traditional DCC-GARCH model. The GC-GARCH has better ability to cover extreme losses, to avoid risk and to make profits from investing in the market.

There are several things we have not addressed in this paper. We assume that the underlying network in the GC-GARCH model is fixed. However, the underlying networks in financial markets are likely to be changing dynamically. We use the t𝑡titalic_t-copula, which is an elliptical copula, in the GC-GARCH model. However, the tail dependence of the returns could be asymmetric. We could employ the GC-GARCH model using other families of copulas, such as the Gumbel copula and the Clayton copula. We can address these points in future work.

Acknowledgement

This work was supported by the Hong Kong RGC General Research Fund (grant number 16507322).

\printbibliography

Appendix A An algorithm for subsetting the DAG space

We provide an algorithm to subset the DAG space to reduce computation burden. Let π1={ri[1]t,,ri[k]t}subscript𝜋1subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘𝑡\pi_{1}=\{r_{i[1]t},\ldots,r_{i[k]t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT italic_i [ 1 ] italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] italic_t end_POSTSUBSCRIPT }. We define πs+superscriptsubscript𝜋𝑠\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT (s=1,2,𝑠12s=1,2,\ldotsitalic_s = 1 , 2 , …) to be the last element in πssubscript𝜋𝑠\pi_{s}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT, and πssuperscriptsubscript𝜋𝑠\pi_{s}^{-}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT to be the set obtained by removing the last element in πssubscript𝜋𝑠\pi_{s}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT. Then, we have πs=πsπs+subscript𝜋𝑠superscriptsubscript𝜋𝑠superscriptsubscript𝜋𝑠\pi_{s}=\pi_{s}^{-}\cup\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT ∪ italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT. We define a set of cumulative parents of a variable ritsubscript𝑟𝑖𝑡r_{it}italic_r start_POSTSUBSCRIPT italic_i italic_t end_POSTSUBSCRIPT to be a set containing {ri[1],t,,ri[k],t}subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘𝑡\{r_{i[1],t},\ldots,r_{i[k],t}\}{ italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT } for some k𝑘kitalic_k. For example, consider the variable r5tsubscript𝑟5𝑡r_{5t}italic_r start_POSTSUBSCRIPT 5 italic_t end_POSTSUBSCRIPT in the network in Figure 19, when we use the topological order (1,2,3,4,5)12345(1,2,3,4,5)( 1 , 2 , 3 , 4 , 5 ) for pair-copula construction, the sets {r1,t}subscript𝑟1𝑡\{r_{1,t}\}{ italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT }, {r1,t,r3,t}subscript𝑟1𝑡subscript𝑟3𝑡\{r_{1,t},r_{3,t}\}{ italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } and {r1,t,r3,t,r4,t}subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡\{r_{1,t},r_{3,t},r_{4,t}\}{ italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT } are considered as sets of cumulative parents, whereas the sets {r3,t}subscript𝑟3𝑡\{r_{3,t}\}{ italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT }, {r1,t,r4,t}subscript𝑟1𝑡subscript𝑟4𝑡\{r_{1,t},r_{4,t}\}{ italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT }, {r3,t,r4,t}subscript𝑟3𝑡subscript𝑟4𝑡\{r_{3,t},r_{4,t}\}{ italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT } are examples that are not sets of cumulative parents.

To check whether the term πssuperscriptsubscript𝜋𝑠\pi_{s}^{-}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT contains a cumulative set of parents of πs+superscriptsubscript𝜋𝑠\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, we do the following test, and we include the DAG in the reduced space when all conditional distributions in the network pass the test.

  1. Step 1.

    Take π~s=𝐫pa(πs+)πssubscript~𝜋𝑠subscript𝐫pasuperscriptsubscript𝜋𝑠superscriptsubscript𝜋𝑠\tilde{\pi}_{s}=\mathbf{r}_{\text{pa}(\pi_{s}^{+})}\cap\pi_{s}^{-}over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = bold_r start_POSTSUBSCRIPT pa ( italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT ∩ italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT, where 𝐫pa(πs+)subscript𝐫pasuperscriptsubscript𝜋𝑠\mathbf{r}_{\text{pa}(\pi_{s}^{+})}bold_r start_POSTSUBSCRIPT pa ( italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT is the set containing the variables that are parents of πs+superscriptsubscript𝜋𝑠\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT.

  2. Step 2.
    • If π~s=subscript~𝜋𝑠\tilde{\pi}_{s}=\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT = ∅, the test is passed.

    • If π~ssubscript~𝜋𝑠\tilde{\pi}_{s}\neq\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ≠ ∅, and if π~ssubscript~𝜋𝑠\tilde{\pi}_{s}over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT contains a set of cumulative parents of πs+superscriptsubscript𝜋𝑠\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, then we take πs+1=π~ssubscript𝜋𝑠1subscript~𝜋𝑠\pi_{s+1}=\tilde{\pi}_{s}italic_π start_POSTSUBSCRIPT italic_s + 1 end_POSTSUBSCRIPT = over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT and update s𝑠sitalic_s to s+1𝑠1s+1italic_s + 1. Go back to Step 1.

    • If π~ssubscript~𝜋𝑠\tilde{\pi}_{s}\neq\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT ≠ ∅, and π~ssubscript~𝜋𝑠\tilde{\pi}_{s}over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT does not contain a set of cumulative parents of πs+superscriptsubscript𝜋𝑠\pi_{s}^{+}italic_π start_POSTSUBSCRIPT italic_s end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, then we conclude that the calculation of F[t](ri[k],t|ri[1],t,,ri[k1],t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟𝑖delimited-[]𝑘𝑡subscript𝑟𝑖delimited-[]1𝑡subscript𝑟𝑖delimited-[]𝑘1𝑡F^{[t]}(r_{i[k],t}|r_{i[1],t},\ldots,r_{i[k-1],t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT italic_i [ italic_k ] , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT italic_i [ 1 ] , italic_t end_POSTSUBSCRIPT , … , italic_r start_POSTSUBSCRIPT italic_i [ italic_k - 1 ] , italic_t end_POSTSUBSCRIPT ) requires numerical integration and the test is failed.

We reduce the DAG space by considering only those networks passing the above test. Even though there exist some cases where we still need to calculate conditional distributions using numerical integration, the possibility of involving numerical integration in the likelihood calculation has been greatly reduced.

For example, consider the DAG in Figure 19, which involves the copulas

c2,1[t](,),c4,1[t](,),c4,3|1[t](,),c5,1[t](,),c5,3|1[t](,),c5,4|3,1[t](,),subscriptsuperscript𝑐delimited-[]𝑡21subscriptsuperscript𝑐delimited-[]𝑡41subscriptsuperscript𝑐delimited-[]𝑡4conditional31subscriptsuperscript𝑐delimited-[]𝑡51subscriptsuperscript𝑐delimited-[]𝑡5conditional31subscriptsuperscript𝑐delimited-[]𝑡5conditional431c^{[t]}_{2,1}(\cdot,\cdot),c^{[t]}_{4,1}(\cdot,\cdot),c^{[t]}_{4,3|1}(\cdot,% \cdot),c^{[t]}_{5,1}(\cdot,\cdot),c^{[t]}_{5,3|1}(\cdot,\cdot),c^{[t]}_{5,4|3,% 1}(\cdot,\cdot),italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) , italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) , italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 4 , 3 | 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) , italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) , italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) , italic_c start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT start_POSTSUBSCRIPT 5 , 4 | 3 , 1 end_POSTSUBSCRIPT ( ⋅ , ⋅ ) ,

we first try to check, directly without using the above algorithm, if we can compute a copula density directly without using integration. We consider the second conditional distribution in
c5,4|3,1[t](F[t](r5,t|r3,t,r1,t),F[t](r4,t|r3,t,r1,t))superscriptsubscript𝑐5conditional431delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟3𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡c_{5,4|3,1}^{[t]}(F^{[t]}(r_{5,t}|r_{3,t},r_{1,t}),F^{[t]}(r_{4,t}|r_{3,t},r_{% 1,t}))italic_c start_POSTSUBSCRIPT 5 , 4 | 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ):

F[t](r4t|r3,t,r1,t)=h4,3|1[t](F[t](r4,t|r1,t),F[t](r3,t|r1,t)).superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡superscriptsubscript4conditional31delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟1𝑡F^{[t]}(r_{4t}|r_{3,t},r_{1,t})=h_{4,3|1}^{[t]}(F^{[t]}(r_{4,t}|r_{1,t}),F^{[t% ]}(r_{3,t}|r_{1,t})).italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) = italic_h start_POSTSUBSCRIPT 4 , 3 | 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) .

Note that F[t](r4,t|r1,t)=h4,1[t](F[t](r4,t),F[t](r1,t))superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟1𝑡superscriptsubscript41delimited-[]𝑡superscript𝐹delimited-[]𝑡subscript𝑟4𝑡superscript𝐹delimited-[]𝑡subscript𝑟1𝑡F^{[t]}(r_{4,t}|r_{1,t})=h_{4,1}^{[t]}(F^{[t]}(r_{4,t}),F^{[t]}(r_{1,t}))italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) = italic_h start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) can be directly computed using the hhitalic_h function, and F[t](r3,t|r1,t)=F[t](r3,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟3𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡subscript𝑟3𝑡F^{[t]}(r_{3,t}|r_{1,t})=F^{[t]}(r_{3,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) = italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT ) can be directly computed from the marginal distribution as r3,tsubscript𝑟3𝑡r_{3,t}italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT and r1,tsubscript𝑟1𝑡r_{1,t}italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT are independent.

If we use the algorithm above, the copula c5,4|3,1[t](F[t](r5,t|r3,t,r1,t),F[t](r4,t|r3,t,r1,t))superscriptsubscript𝑐5conditional431delimited-[]𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟5𝑡subscript𝑟3𝑡subscript𝑟1𝑡superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡c_{5,4|3,1}^{[t]}(F^{[t]}(r_{5,t}|r_{3,t},r_{1,t}),F^{[t]}(r_{4,t}|r_{3,t},r_{% 1,t}))italic_c start_POSTSUBSCRIPT 5 , 4 | 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) , italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) ) corresponds to i=5𝑖5i=5italic_i = 5 and k=3𝑘3k=3italic_k = 3. Then, π1={r5[1],t,r5[2],t,r5[3],t}={r1,t,r3,t,r4,t}subscript𝜋1subscript𝑟5delimited-[]1𝑡subscript𝑟5delimited-[]2𝑡subscript𝑟5delimited-[]3𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡\pi_{1}=\{r_{5[1],t},r_{5[2],t},r_{5[3],t}\}=\{r_{1,t},r_{3,t},r_{4,t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT 5 [ 1 ] , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 [ 2 ] , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 [ 3 ] , italic_t end_POSTSUBSCRIPT } = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT }, π1+={r4,t}superscriptsubscript𝜋1subscript𝑟4𝑡\pi_{1}^{+}=\{r_{4,t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT }, and π1={r1,t,r3,t}superscriptsubscript𝜋1subscript𝑟1𝑡subscript𝑟3𝑡\pi_{1}^{-}=\{r_{1,t},r_{3,t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT }. The second conditional distribution in the copula can be written as F[t](π1+|π1)superscript𝐹delimited-[]𝑡conditionalsuperscriptsubscript𝜋1superscriptsubscript𝜋1F^{[t]}(\pi_{1}^{+}|\pi_{1}^{-})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT | italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT ).

  1. 1.

    For s=1𝑠1s=1italic_s = 1, we take π~1=𝐫pa(π1+)π1=𝐫pa(r4,t){r1,t,r3,t}={r1,t,r3,t}{r1,t,r3,t}={r1,t,r3,t}subscript~𝜋1subscript𝐫pasuperscriptsubscript𝜋1superscriptsubscript𝜋1subscript𝐫pasubscript𝑟4𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟3𝑡\tilde{\pi}_{1}=\mathbf{r}_{\text{pa}(\pi_{1}^{+})}\cap\pi_{1}^{-}=\mathbf{r}_% {\text{pa}(r_{4,t})}\cap\{r_{1,t},r_{3,t}\}=\{r_{1,t},r_{3,t}\}\cap\{r_{1,t},r% _{3,t}\}=\{r_{1,t},r_{3,t}\}\neq\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = bold_r start_POSTSUBSCRIPT pa ( italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT ∩ italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT = bold_r start_POSTSUBSCRIPT pa ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT ) end_POSTSUBSCRIPT ∩ { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } ∩ { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } ≠ ∅. Since π~1subscript~𝜋1\tilde{\pi}_{1}over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is cumulative parents of π1+=r4,tsuperscriptsubscript𝜋1subscript𝑟4𝑡\pi_{1}^{+}=r_{4,t}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT = italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT, we take π2=π~1subscript𝜋2subscript~𝜋1\pi_{2}=\tilde{\pi}_{1}italic_π start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT and update s=2𝑠2s=2italic_s = 2.

  2. 2.

    Now, π2={r1,t,r3,t}subscript𝜋2subscript𝑟1𝑡subscript𝑟3𝑡\pi_{2}=\{r_{1,t},r_{3,t}\}italic_π start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT }, π2+={r3,t}superscriptsubscript𝜋2subscript𝑟3𝑡\pi_{2}^{+}=\{r_{3,t}\}italic_π start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } and π2={r1,t}superscriptsubscript𝜋2subscript𝑟1𝑡\pi_{2}^{-}=\{r_{1,t}\}italic_π start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT }. Then, π~2=𝐫pa(r3t){r1,t}={r1,t}=subscript~𝜋2subscript𝐫pasubscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟1𝑡\tilde{\pi}_{2}=\mathbf{r}_{\text{pa}(r_{3t})}\cap\{r_{1,t}\}=\varnothing\cap% \{r_{1,t}\}=\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 2 end_POSTSUBSCRIPT = bold_r start_POSTSUBSCRIPT pa ( italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT ) end_POSTSUBSCRIPT ∩ { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT } = ∅ ∩ { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT } = ∅. Then, F[t](r4,t|r3,t,r1,t)superscript𝐹delimited-[]𝑡conditionalsubscript𝑟4𝑡subscript𝑟3𝑡subscript𝑟1𝑡F^{[t]}(r_{4,t}|r_{3,t},r_{1,t})italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT ) passes the test.

We also give a counterexample. Consider the network in Figure 2. Consider the copula c5,4|3,1[t](F[t](r5t|r3t,r1t),c_{5,4|3,1}^{[t]}(F^{[t]}(r_{5t}|r_{3t},r_{1t}),italic_c start_POSTSUBSCRIPT 5 , 4 | 3 , 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 5 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT ) , F[t](r4t|r3t,r1t))F^{[t]}(r_{4t}|r_{3t},r_{1t}))italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT ) ). We focus on the second argument F[t](r4t|r3t,r1t))F^{[t]}(r_{4t}|r_{3t},r_{1t}))italic_F start_POSTSUPERSCRIPT [ italic_t ] end_POSTSUPERSCRIPT ( italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT | italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT ) ). Using the algorithm, the copula corresponds to i=5𝑖5i=5italic_i = 5 and k=3𝑘3k=3italic_k = 3. Then, π1={r5[1],t,r5[2],t,r5[3],t}={r1,t,r3,t,r4,t}subscript𝜋1subscript𝑟5delimited-[]1𝑡subscript𝑟5delimited-[]2𝑡subscript𝑟5delimited-[]3𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟4𝑡\pi_{1}=\{r_{5[1],t},r_{5[2],t},r_{5[3],t}\}=\{r_{1,t},r_{3,t},r_{4,t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = { italic_r start_POSTSUBSCRIPT 5 [ 1 ] , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 [ 2 ] , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 5 [ 3 ] , italic_t end_POSTSUBSCRIPT } = { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT }, π1+={r4,t}superscriptsubscript𝜋1subscript𝑟4𝑡\pi_{1}^{+}=\{r_{4,t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 4 , italic_t end_POSTSUBSCRIPT }, and π1={r1t,r3t}superscriptsubscript𝜋1subscript𝑟1𝑡subscript𝑟3𝑡\pi_{1}^{-}=\{r_{1t},r_{3t}\}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPT }. For s=1𝑠1s=1italic_s = 1, we take π~1=𝐫pa(π1+)π1={r2,t,r3,t}{r1,t,r3,t}={r3,t}subscript~𝜋1subscript𝐫pasuperscriptsubscript𝜋1superscriptsubscript𝜋1subscript𝑟2𝑡subscript𝑟3𝑡subscript𝑟1𝑡subscript𝑟3𝑡subscript𝑟3𝑡\tilde{\pi}_{1}=\mathbf{r}_{\text{pa}(\pi_{1}^{+})}\cap\pi_{1}^{-}=\{r_{2,t},r% _{3,t}\}\cap\{r_{1,t},r_{3,t}\}=\{r_{3,t}\}\neq\varnothingover~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT = bold_r start_POSTSUBSCRIPT pa ( italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT ) end_POSTSUBSCRIPT ∩ italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT - end_POSTSUPERSCRIPT = { italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } ∩ { italic_r start_POSTSUBSCRIPT 1 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } = { italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT } ≠ ∅. However, the parents of r4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPT are {r2,t,r3,t}subscript𝑟2𝑡subscript𝑟3𝑡\{r_{2,t},r_{3,t}\}{ italic_r start_POSTSUBSCRIPT 2 , italic_t end_POSTSUBSCRIPT , italic_r start_POSTSUBSCRIPT 3 , italic_t end_POSTSUBSCRIPT }. Then, π~1subscript~𝜋1\tilde{\pi}_{1}over~ start_ARG italic_π end_ARG start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT is not a set of cumulative parents of π1+superscriptsubscript𝜋1\pi_{1}^{+}italic_π start_POSTSUBSCRIPT 1 end_POSTSUBSCRIPT start_POSTSUPERSCRIPT + end_POSTSUPERSCRIPT, and thus we exclude the DAG in the reduced space. This part corresponds to (20), where we need to compute the integration to marginalize out r2tsubscript𝑟2𝑡r_{2t}italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPT. Without a set of cumulative parents, the computation must require the use of integration.

r1tsubscript𝑟1𝑡r_{1t}italic_r start_POSTSUBSCRIPT 1 italic_t end_POSTSUBSCRIPTr2tsubscript𝑟2𝑡r_{2t}italic_r start_POSTSUBSCRIPT 2 italic_t end_POSTSUBSCRIPTr3tsubscript𝑟3𝑡r_{3t}italic_r start_POSTSUBSCRIPT 3 italic_t end_POSTSUBSCRIPTr4tsubscript𝑟4𝑡r_{4t}italic_r start_POSTSUBSCRIPT 4 italic_t end_POSTSUBSCRIPTr5tsubscript𝑟5𝑡r_{5t}italic_r start_POSTSUBSCRIPT 5 italic_t end_POSTSUBSCRIPT
Figure 19: An example DAG that passes the test.

Appendix B Parameter estimation results in simulation (S2)

B.1 Parameters in the DAG copulas

The estimation results for simulation (S2) are presented in Table 1 for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, and Table 2 for φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT. Most of the true values are contained in the 95% credible intervals. The estimates are also close to the true values for most of the parameters. The performances are similar to the case in simulation (S1). It can be concluded that the MCMC estimation method in Section 4.2 is reliable.

Parameter True value Mean of estimates Mean MAE Median of estimate Median MAE q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT
a10,3subscript𝑎103a_{10,3}italic_a start_POSTSUBSCRIPT 10 , 3 end_POSTSUBSCRIPT 0.05superscript0.05\mathbf{0.05^{*}}bold_0.05 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0439 0.0221 0.043 0.018 0.0004 0.0797
a10,9|3subscript𝑎10conditional93a_{10,9|3}italic_a start_POSTSUBSCRIPT 10 , 9 | 3 end_POSTSUBSCRIPT 0.03superscript0.03\mathbf{0.03^{*}}bold_0.03 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0123 0.0244 0.0011 0.0276 0 0.0743
a2,1subscript𝑎21a_{2,1}italic_a start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.04superscript0.04\mathbf{0.04^{*}}bold_0.04 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0417 0.0217 0.0406 0.017 0.0052 0.0791
a3,1subscript𝑎31a_{3,1}italic_a start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT 0.06superscript0.06\mathbf{0.06^{*}}bold_0.06 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0609 0.0202 0.0587 0.0154 0.0295 0.0933
a3,2|1subscript𝑎3conditional21a_{3,2|1}italic_a start_POSTSUBSCRIPT 3 , 2 | 1 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{0.02^{*}}bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0245 0.029 0.0161 0.0215 0 0.0805
a4,1subscript𝑎41a_{4,1}italic_a start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT 0.03superscript0.03\mathbf{0.03^{*}}bold_0.03 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0275 0.0283 0.0207 0.0227 0 0.0732
a4,2|1subscript𝑎4conditional21a_{4,2|1}italic_a start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT 0.03superscript0.03\mathbf{0.03^{*}}bold_0.03 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.032 0.0343 0.0265 0.0229 0 0.1115
a5,1subscript𝑎51a_{5,1}italic_a start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT 0.06superscript0.06\mathbf{0.06^{*}}bold_0.06 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0573 0.0284 0.0567 0.0222 0.0123 0.1043
a5,3|1subscript𝑎5conditional31a_{5,3|1}italic_a start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT 0.03superscript0.03\mathbf{0.03^{*}}bold_0.03 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.026 0.028 0.0185 0.0224 0.0001 0.0827
a5,4|1,3subscript𝑎5conditional413a_{5,4|1,3}italic_a start_POSTSUBSCRIPT 5 , 4 | 1 , 3 end_POSTSUBSCRIPT 0.09superscript0.09\mathbf{0.09^{*}}bold_0.09 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0817 0.0432 0.0826 0.0344 0.0138 0.1538
a6,5subscript𝑎65a_{6,5}italic_a start_POSTSUBSCRIPT 6 , 5 end_POSTSUBSCRIPT 0.08superscript0.08\mathbf{0.08^{*}}bold_0.08 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0596 0.0466 0.0541 0.0415 0.0002 0.1512
a7,1subscript𝑎71a_{7,1}italic_a start_POSTSUBSCRIPT 7 , 1 end_POSTSUBSCRIPT 0.09superscript0.09\mathbf{0.09^{*}}bold_0.09 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0845 0.0209 0.0831 0.0169 0.0538 0.1188
a7,2|1subscript𝑎7conditional21a_{7,2|1}italic_a start_POSTSUBSCRIPT 7 , 2 | 1 end_POSTSUBSCRIPT 0.05superscript0.05\mathbf{0.05^{*}}bold_0.05 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.051 0.0382 0.0461 0.0282 0.0007 0.1096
a7,5|1,2subscript𝑎7conditional512a_{7,5|1,2}italic_a start_POSTSUBSCRIPT 7 , 5 | 1 , 2 end_POSTSUBSCRIPT 0.09superscript0.09\mathbf{0.09^{*}}bold_0.09 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0845 0.0376 0.0836 0.0278 0.0314 0.1393
a8,1subscript𝑎81a_{8,1}italic_a start_POSTSUBSCRIPT 8 , 1 end_POSTSUBSCRIPT 0.07superscript0.07\mathbf{0.07^{*}}bold_0.07 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.072 0.0297 0.069 0.0223 0.0345 0.1177
a8,3|1subscript𝑎8conditional31a_{8,3|1}italic_a start_POSTSUBSCRIPT 8 , 3 | 1 end_POSTSUBSCRIPT 0.06superscript0.06\mathbf{0.06^{*}}bold_0.06 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0582 0.0338 0.0577 0.0253 0.0015 0.1178
a9,1subscript𝑎91a_{9,1}italic_a start_POSTSUBSCRIPT 9 , 1 end_POSTSUBSCRIPT 0.07superscript0.07\mathbf{0.07^{*}}bold_0.07 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0685 0.0225 0.0686 0.0173 0.0339 0.1062
a9,4|1subscript𝑎9conditional41a_{9,4|1}italic_a start_POSTSUBSCRIPT 9 , 4 | 1 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{0.02^{*}}bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0143 0.018 0.0086 0.0155 0 0.0465
a9,7|1,4subscript𝑎9conditional714a_{9,7|1,4}italic_a start_POSTSUBSCRIPT 9 , 7 | 1 , 4 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{0.02^{*}}bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0199 0.025 0.0128 0.0172 0 0.074
b10,3subscript𝑏103b_{10,3}italic_b start_POSTSUBSCRIPT 10 , 3 end_POSTSUBSCRIPT 0.92superscript0.92\mathbf{0.92^{*}}bold_0.92 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8629 0.1962 0.9196 0.0812 0.4181 0.9614
b10,9|3subscript𝑏10conditional93b_{10,9|3}italic_b start_POSTSUBSCRIPT 10 , 9 | 3 end_POSTSUBSCRIPT 0.9superscript0.9\mathbf{0.9^{*}}bold_0.9 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.5729 0.4059 0.7276 0.3801 0.0001 0.9993
b2,1subscript𝑏21b_{2,1}italic_b start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7981 0.185 0.842 0.1066 0.3114 0.9503
b3,1subscript𝑏31b_{3,1}italic_b start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT 0.91superscript0.91\mathbf{0.91^{*}}bold_0.91 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8974 0.0681 0.9123 0.0339 0.8237 0.9508
b3,2|1subscript𝑏3conditional21b_{3,2|1}italic_b start_POSTSUBSCRIPT 3 , 2 | 1 end_POSTSUBSCRIPT 0.95superscript0.95\mathbf{0.95^{*}}bold_0.95 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7064 0.3385 0.8519 0.2598 0.001 0.9946
b4,1subscript𝑏41b_{4,1}italic_b start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT 0.92superscript0.92\mathbf{0.92^{*}}bold_0.92 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7247 0.3232 0.8879 0.2292 0.0243 0.9953
b4,2|1subscript𝑏4conditional21b_{4,2|1}italic_b start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT 0.95superscript0.95\mathbf{0.95^{*}}bold_0.95 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7817 0.3202 0.9366 0.1857 0.0208 0.9933
b5,1subscript𝑏51b_{5,1}italic_b start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7725 0.2147 0.8378 0.1238 0.1073 0.9369
b5,3|1subscript𝑏5conditional31b_{5,3|1}italic_b start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT 0.94superscript0.94\mathbf{0.94^{*}}bold_0.94 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7385 0.324 0.9026 0.224 0.0028 0.9947
b5,4|1,3subscript𝑏5conditional413b_{5,4|1,3}italic_b start_POSTSUBSCRIPT 5 , 4 | 1 , 3 end_POSTSUBSCRIPT 0.81superscript0.81\mathbf{0.81^{*}}bold_0.81 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7245 0.2275 0.7883 0.1429 0.0438 0.9443
b6,5subscript𝑏65b_{6,5}italic_b start_POSTSUBSCRIPT 6 , 5 end_POSTSUBSCRIPT 0.84superscript0.84\mathbf{0.84^{*}}bold_0.84 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.6638 0.3074 0.7869 0.2269 0.004 0.9621
b7,1subscript𝑏71b_{7,1}italic_b start_POSTSUBSCRIPT 7 , 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8457 0.0742 0.8549 0.0376 0.7567 0.9115
b7,2|1subscript𝑏7conditional21b_{7,2|1}italic_b start_POSTSUBSCRIPT 7 , 2 | 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7247 0.2877 0.8401 0.1923 0.0195 0.9834
b7,5|1,2subscript𝑏7conditional512b_{7,5|1,2}italic_b start_POSTSUBSCRIPT 7 , 5 | 1 , 2 end_POSTSUBSCRIPT 0.84superscript0.84\mathbf{0.84^{*}}bold_0.84 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.786 0.1899 0.8399 0.1043 0.3452 0.9407
b8,1subscript𝑏81b_{8,1}italic_b start_POSTSUBSCRIPT 8 , 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8085 0.175 0.857 0.0863 0.4541 0.9301
b8,3|1subscript𝑏8conditional31b_{8,3|1}italic_b start_POSTSUBSCRIPT 8 , 3 | 1 end_POSTSUBSCRIPT 0.86superscript0.86\mathbf{0.86^{*}}bold_0.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7497 0.2502 0.8415 0.1544 0.0419 0.9521
b9,1subscript𝑏91b_{9,1}italic_b start_POSTSUBSCRIPT 9 , 1 end_POSTSUBSCRIPT 0.84superscript0.84\mathbf{0.84^{*}}bold_0.84 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.8152 0.1225 0.8359 0.0649 0.679 0.924
b9,4|1subscript𝑏9conditional41b_{9,4|1}italic_b start_POSTSUBSCRIPT 9 , 4 | 1 end_POSTSUBSCRIPT 0.93superscript0.93\mathbf{0.93^{*}}bold_0.93 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7019 0.3498 0.8918 0.2601 0.0124 0.9952
b9,7|1,4subscript𝑏9conditional714b_{9,7|1,4}italic_b start_POSTSUBSCRIPT 9 , 7 | 1 , 4 end_POSTSUBSCRIPT 0.96superscript0.96\mathbf{0.96^{*}}bold_0.96 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.7551 0.3261 0.9283 0.2201 0.0124 0.996
Table 1: The true values, the mean, mean absolute error (MAE) of the mean, the median, the MAE of the median, the 5th quantile (q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT), and the 95th quantile (q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT) of the posterior median estimates of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT out of the 200 replications for simulation (S2).
Parameter True value Mean of estimates Mean MAE Median of estimate Median MAE q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT
φ¯10,3subscript¯𝜑103\bar{\varphi}_{10,3}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 10 , 3 end_POSTSUBSCRIPT 0.24superscript0.24\mathbf{0.24^{*}}bold_0.24 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.2831 0.1249 0.2781 0.0965 0.0987 0.4595
φ¯10,9|3subscript¯𝜑10conditional93\bar{\varphi}_{10,9|3}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 10 , 9 | 3 end_POSTSUBSCRIPT 0.410.41-0.41- 0.41 --0.2534 0.0469 --0.256 0.1573 --0.327 --0.186
φ¯2,1subscript¯𝜑21\bar{\varphi}_{2,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 0.78superscript0.78\mathbf{-0.78^{*}}- bold_0.78 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.7702 0.0283 --0.7711 0.0232 --0.8198 --0.7228
φ¯3,1subscript¯𝜑31\bar{\varphi}_{3,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT 0.36superscript0.36\mathbf{-0.36^{*}}- bold_0.36 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.355 0.1126 --0.3551 0.0847 --0.5275 --0.1755
φ¯3,2|1subscript¯𝜑3conditional21\bar{\varphi}_{3,2|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 3 , 2 | 1 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{-0.02^{*}}- bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.0202 0.0807 --0.0187 0.06 --0.1422 0.0986
φ¯4,1subscript¯𝜑41\bar{\varphi}_{4,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT 0.26superscript0.26\mathbf{0.26^{*}}bold_0.26 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.2593 0.0645 0.2602 0.0495 0.1531 0.3621
φ¯4,2|1subscript¯𝜑4conditional21\bar{\varphi}_{4,2|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT 0.02superscript0.02\mathbf{0.02^{*}}bold_0.02 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0185 0.1042 0.0203 0.074 --0.1257 0.1474
φ¯5,1subscript¯𝜑51\bar{\varphi}_{5,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT 0.54superscript0.54\mathbf{0.54^{*}}bold_0.54 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.5194 0.0548 0.5168 0.0473 0.4325 0.6079
φ¯5,3|1subscript¯𝜑5conditional31\bar{\varphi}_{5,3|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT 0.12superscript0.12\mathbf{0.12^{*}}bold_0.12 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.1144 0.0722 0.1122 0.0559 0.0094 0.2255
φ¯5,4|1,3subscript¯𝜑5conditional413\bar{\varphi}_{5,4|1,3}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 5 , 4 | 1 , 3 end_POSTSUBSCRIPT 0.26superscript0.26\mathbf{-0.26^{*}}- bold_0.26 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.2428 0.0687 --0.2419 0.0558 --0.3642 --0.1406
φ¯6,5subscript¯𝜑65\bar{\varphi}_{6,5}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 6 , 5 end_POSTSUBSCRIPT 0.29superscript0.29\mathbf{0.29^{*}}bold_0.29 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.195 0.0811 0.1994 0.1055 0.0771 0.3028
φ¯7,1subscript¯𝜑71\bar{\varphi}_{7,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 7 , 1 end_POSTSUBSCRIPT 0.47superscript0.47\mathbf{-0.47^{*}}- bold_0.47 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.4649 0.0742 --0.468 0.0598 --0.5728 --0.3435
φ¯7,2|1subscript¯𝜑7conditional21\bar{\varphi}_{7,2|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 7 , 2 | 1 end_POSTSUBSCRIPT 0.42superscript0.42\mathbf{-0.42^{*}}- bold_0.42 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.4121 0.0632 --0.4126 0.0489 --0.5067 --0.3083
φ¯7,5|1,2subscript¯𝜑7conditional512\bar{\varphi}_{7,5|1,2}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 7 , 5 | 1 , 2 end_POSTSUBSCRIPT 0.03superscript0.03\mathbf{0.03^{*}}bold_0.03 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.0127 0.1103 0.0185 0.0777 --0.1545 0.1786
φ¯8,1subscript¯𝜑81\bar{\varphi}_{8,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 8 , 1 end_POSTSUBSCRIPT 0.43superscript0.43\mathbf{0.43^{*}}bold_0.43 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.4018 0.0776 0.4074 0.0638 0.2633 0.532
φ¯8,3|1subscript¯𝜑8conditional31\bar{\varphi}_{8,3|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 8 , 3 | 1 end_POSTSUBSCRIPT 0.5superscript0.5\mathbf{0.5^{*}}bold_0.5 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.489 0.0651 0.4921 0.0527 0.3823 0.6006
φ¯9,1subscript¯𝜑91\bar{\varphi}_{9,1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 9 , 1 end_POSTSUBSCRIPT 0.69superscript0.69\mathbf{-0.69^{*}}- bold_0.69 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT --0.6862 0.0413 --0.6894 0.0327 --0.7534 --0.6112
φ¯9,4|1subscript¯𝜑9conditional41\bar{\varphi}_{9,4|1}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 9 , 4 | 1 end_POSTSUBSCRIPT 0.2superscript0.2\mathbf{0.2^{*}}bold_0.2 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 0.1871 0.0506 0.1869 0.04 0.1082 0.2713
φ¯9,7|1,4subscript¯𝜑9conditional714\bar{\varphi}_{9,7|1,4}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT 9 , 7 | 1 , 4 end_POSTSUBSCRIPT 0.740.740.740.74 0.5693 0.0704 0.5564 0.1725 0.4759 0.7001
v10,3subscript𝑣103v_{10,3}italic_v start_POSTSUBSCRIPT 10 , 3 end_POSTSUBSCRIPT 7.9superscript7.9\mathbf{7.9^{*}}bold_7.9 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 9.9883 3.1891 9.6558 2.8627 5.7493 15.934
v10,9|3subscript𝑣10conditional93v_{10,9|3}italic_v start_POSTSUBSCRIPT 10 , 9 | 3 end_POSTSUBSCRIPT 6.676.676.676.67 14.649 3.764 14.3274 8.0097 8.9711 21.157
v2,1subscript𝑣21v_{2,1}italic_v start_POSTSUBSCRIPT 2 , 1 end_POSTSUBSCRIPT 7.97superscript7.97\mathbf{7.97^{*}}bold_7.97 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.9942 2.2888 7.7657 1.8153 4.9135 12.4083
v3,1subscript𝑣31v_{3,1}italic_v start_POSTSUBSCRIPT 3 , 1 end_POSTSUBSCRIPT 7.91superscript7.91\mathbf{7.91^{*}}bold_7.91 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.6289 2.7028 8.0335 1.9919 5.6216 14.5503
v3,2|1subscript𝑣3conditional21v_{3,2|1}italic_v start_POSTSUBSCRIPT 3 , 2 | 1 end_POSTSUBSCRIPT 6.19superscript6.19\mathbf{6.19^{*}}bold_6.19 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 6.6826 2.0876 6.2403 1.5549 4.1974 10.8303
v4,1subscript𝑣41v_{4,1}italic_v start_POSTSUBSCRIPT 4 , 1 end_POSTSUBSCRIPT 7.27superscript7.27\mathbf{7.27^{*}}bold_7.27 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.0482 2.4939 7.5606 1.8723 5.0499 12.1542
v4,2|1subscript𝑣4conditional21v_{4,2|1}italic_v start_POSTSUBSCRIPT 4 , 2 | 1 end_POSTSUBSCRIPT 9.98superscript9.98\mathbf{9.98^{*}}bold_9.98 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 9.9089 3.3581 9.082 2.6316 5.7849 16.4214
v5,1subscript𝑣51v_{5,1}italic_v start_POSTSUBSCRIPT 5 , 1 end_POSTSUBSCRIPT 5.41superscript5.41\mathbf{5.41^{*}}bold_5.41 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 5.8013 1.5465 5.4467 1.1149 3.8427 8.8646
v5,3|1subscript𝑣5conditional31v_{5,3|1}italic_v start_POSTSUBSCRIPT 5 , 3 | 1 end_POSTSUBSCRIPT 5.26superscript5.26\mathbf{5.26^{*}}bold_5.26 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 6.0324 1.6404 5.6626 1.3035 4.0945 8.8652
v5,4|1,3subscript𝑣5conditional413v_{5,4|1,3}italic_v start_POSTSUBSCRIPT 5 , 4 | 1 , 3 end_POSTSUBSCRIPT 7.47superscript7.47\mathbf{7.47^{*}}bold_7.47 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.14 2.2743 7.8704 1.7779 5.0633 13.045
v6,5subscript𝑣65v_{6,5}italic_v start_POSTSUBSCRIPT 6 , 5 end_POSTSUBSCRIPT 5.27superscript5.27\mathbf{5.27^{*}}bold_5.27 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.34 2.4175 7.6211 3.1237 5.2655 12.8108
v7,1subscript𝑣71v_{7,1}italic_v start_POSTSUBSCRIPT 7 , 1 end_POSTSUBSCRIPT 9.75superscript9.75\mathbf{9.75^{*}}bold_9.75 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 10.0117 3.058 9.1846 2.4324 6.2343 15.6522
v7,2|1subscript𝑣7conditional21v_{7,2|1}italic_v start_POSTSUBSCRIPT 7 , 2 | 1 end_POSTSUBSCRIPT 8.17superscript8.17\mathbf{8.17^{*}}bold_8.17 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.7747 2.8075 8.2079 2.0742 5.1824 13.6875
v7,5|1,2subscript𝑣7conditional512v_{7,5|1,2}italic_v start_POSTSUBSCRIPT 7 , 5 | 1 , 2 end_POSTSUBSCRIPT 6.35superscript6.35\mathbf{6.35^{*}}bold_6.35 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.0564 2.6115 7.6028 2.271 4.7868 12.7598
v8,1subscript𝑣81v_{8,1}italic_v start_POSTSUBSCRIPT 8 , 1 end_POSTSUBSCRIPT 9.98superscript9.98\mathbf{9.98^{*}}bold_9.98 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 10.0132 3.3093 9.4096 2.5236 6.014 16.2632
v8,3|1subscript𝑣8conditional31v_{8,3|1}italic_v start_POSTSUBSCRIPT 8 , 3 | 1 end_POSTSUBSCRIPT 6.79superscript6.79\mathbf{6.79^{*}}bold_6.79 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.6349 2.6396 7.0186 1.9867 4.4484 12.7467
v9,1subscript𝑣91v_{9,1}italic_v start_POSTSUBSCRIPT 9 , 1 end_POSTSUBSCRIPT 6.86superscript6.86\mathbf{6.86^{*}}bold_6.86 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.1971 1.9426 6.7725 1.5081 4.8446 10.8707
v9,4|1subscript𝑣9conditional41v_{9,4|1}italic_v start_POSTSUBSCRIPT 9 , 4 | 1 end_POSTSUBSCRIPT 6.65superscript6.65\mathbf{6.65^{*}}bold_6.65 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 7.7157 2.4767 7.2372 1.9109 4.5809 12.0884
v9,7|1,4subscript𝑣9conditional714v_{9,7|1,4}italic_v start_POSTSUBSCRIPT 9 , 7 | 1 , 4 end_POSTSUBSCRIPT 5.52superscript5.52\mathbf{5.52^{*}}bold_5.52 start_POSTSUPERSCRIPT ∗ end_POSTSUPERSCRIPT 8.6611 2.6835 8.2426 3.2541 4.9682 13.7083
Table 2: The true values, the mean, mean absolute error (MAE) of the mean, the median, the MAE of the median, the 5th quantile (q0.05subscript𝑞0.05q_{0.05}italic_q start_POSTSUBSCRIPT 0.05 end_POSTSUBSCRIPT), and the 95th quantile (q0.95subscript𝑞0.95q_{0.95}italic_q start_POSTSUBSCRIPT 0.95 end_POSTSUBSCRIPT) of the posterior median estimates of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT and φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT out of the 200 replications for simulation (S2).

B.2 Parameters in the stock copula

This section gives the sequential estimation results for simulation (S2). Figure 1, Figure 2, Figure 3 and Figure 4 are four graphs summarizing the parameter estimation for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, vxy|zv_{xy|}zitalic_v start_POSTSUBSCRIPT italic_x italic_y | end_POSTSUBSCRIPT italic_z, and φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT. These graphs are similar to the graphs in Figure 6, Figure 7, Figure 8 and Figure 9 presented in Section 6.3.2, and the observations regarding the estimation results are similar to those in Section 6.3.2.

Refer to caption
Figure 1: A graph summarizing the parameter estimates for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S2). The copulas are in ascending order based on the true values of axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 2: A graph summarizing the parameter estimates for bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S2). The copulas are in ascending order based on the true values of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 3: A graph summarizing the parameter estimates for vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S2). The copulas are in ascending order based on the true values of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.
Refer to caption
Figure 4: A graph summarizing the parameter estimates for φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT by level in simulation (S2). The copulas are in ascending order based on the true values of φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT in each level for a better visualization. The green curves indicate true values, the blue curves indicate mean estimates, the orange curves indicate the median estimates, and the pair of dashed curves represent the 90% credible intervals of the sequential estimates out of the 200 replications.

Appendix C Comparing the sequential estimator and the posterior mean/median estimators

In our empirical study, we conduct a moving-window study with a total of 173 windows, in each of which we include 92 stocks. Estimating stock copulas using MCMC sampling is infeasible in this case. For m=10𝑚10m=10italic_m = 10, p=92𝑝92p=92italic_p = 92 and T=750𝑇750T=750italic_T = 750, for each stock, it took 6 hours to run 20,000 iterations in the MCMC sampling. The sequential estimation, however, only takes 30 seconds.

In this section, we compare the sequential estimates to the posterior mean/median estimates. We conduct 20 replications with different data sets generated from the GC-GARCH model with the same underlying network in Figure 4 as in simulation (S2). The true parameters are also fixed across replications. We calculate the MAEs of the estimates of all 100 stocks, by level. Figure 1 shows the time series plots of the average MAE, within the same level, of the sequential estimates and the posterior mean/mode/median estimates of (a) φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, (b) axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, (c) bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, and (d) vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT. The x-axes are the levels.

  • In (a), we observe that the MAEs of the sequential estimates of φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT (dashed blue line) are similar to the MAEs of the mean and median MCMC estimates (respectively the solid red and dotted green lines).

  • In (b), the MAEs for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT using sequential estimation are smaller than the MAEs of the MCMC estimates in most of the levels.

  • In (c), we observe that the sequential estimates of bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT have slightly larger MAEs for the first four levels, and the sequential estimates actually work better for the subsequent levels.

  • In (d), the MAEs of the sequential estimates and the MCMC median estimates of vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT are similar.

Summarizing the above four points, we observe that sequential estimates work as well as the MCMC estimates.

Refer to caption
(a) The average MAEs for φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\bar{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT.
Refer to caption
(b) The average MAEs for axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT.
Refer to caption
(c) The average MAEs for bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT.
Refer to caption
(d) The average MAEs for vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT.
Figure 1: The time series plots of the average MAEs of the sequential estimates, the posterior mean and posterior median estimates of (a) φ¯xy|zsubscript¯𝜑conditional𝑥𝑦𝑧\overline{\varphi}_{xy|z}over¯ start_ARG italic_φ end_ARG start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, (b) axy|zsubscript𝑎conditional𝑥𝑦𝑧a_{xy|z}italic_a start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, (c) bxy|zsubscript𝑏conditional𝑥𝑦𝑧b_{xy|z}italic_b start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, and (d) vxy|zsubscript𝑣conditional𝑥𝑦𝑧v_{xy|z}italic_v start_POSTSUBSCRIPT italic_x italic_y | italic_z end_POSTSUBSCRIPT, plotted by level.

Appendix D List of stocks

Name Stock symbol Name Stock symbol
CKH HOLDINGS 0001.HK CSPC PHARMA 1093.HK
CLP HOLDINGS 0002.HK CHINA RES LAND 1109.HK
HK & CHINA GAS 0003.HK CK ASSET 1113.HK
HSBC HOLDINGS 0005.HK YANKUANG ENERGY 1171.HK
POWER ASSETS 0006.HK SINO BIOPHARM 1177.HK
HANG SENG BANK 0011.HK CHINA RAIL CONS 1186.HK
HENDERSON LAND 0012.HK BYD COMPANY 1211.HK
SHK PPT 0016.HK ABC 1288.HK
NEW WORLD DEV 0017.HK AIA 1299.HK
GALAXY ENT 0027.HK PICC GROUP 1339.HK
MTR CORPORATION 0066.HK ICBC 1398.HK
HANG LUNG PPT 0101.HK PSBC 1658.HK
TSINGTAO BREW 0168.HK CRRC 1766.HK
GEELY AUTO 0175.HK GF SEC 1776.HK
ALI HEALTH 0241.HK CHINA COMM CONS 1800.HK
CITIC 0267.HK PRADA 1913.HK
WH GROUP 0288.HK COSCO SHIP HOLD 1919.HK
CHINA RES BEER 0291.HK SANDS CHINA LTD 1928.HK
TINGYI 0322.HK CHOW TAI FOOK 1929.HK
SINOPEC CORP 0386.HK MINSHENG BANK 1988.HK
HKEX 0388.HK COUNTRY GARDEN 2007.HK
CHINA RAILWAY 0390.HK ANTA SPORTS 2020.HK
TECHTRONIC IND 0669.HK CHINA VANKE 2202.HK
CHINA OVERSEAS 0688.HK SHENZHOU INTL 2313.HK
TENCENT 0700.HK PING AN 2318.HK
CHINA TELECOM 0728.HK MENGNIU DAIRY 2319.HK
AIR CHINA 0753.HK PICC P&C 2328.HK
CHINA UNICOM 0762.HK LI NING 2331.HK
LINK REIT 0823.HK GREATWALL MOTOR 2333.HK
PETROCHINA 0857.HK PRU 2378.HK
XINYI GLASS 0868.HK SUNNY OPTICAL 2382.HK
ZHONGSHENG HLDG 0881.HK BOC HONG KONG 2388.HK
CNOOC 0883.HK CPIC 2601.HK
HUANENG POWER 0902.HK CHINA LIFE 2628.HK
CONCH CEMENT 0914.HK ENN ENERGY 2688.HK
CHINA LONGYUAN 0916.HK STANCHART 2888.HK
CCB 0939.HK ZIJIN MINING 2899.HK
CHINA MOBILE 0941.HK BANKCOMM 3328.HK
LONGFOR GROUP 0960.HK CICC 3908.HK
XINYI SOLAR 0968.HK CM BANK 3968.HK
SMIC 0981.HK BANK OF CHINA 3988.HK
CITIC BANK 0998.HK CMOC 3993.HK
CKI HOLDINGS 1038.HK CITIC SEC 6030.HK
HENGAN INT’L 1044.HK CMSC 6099.HK
CHINA SOUTH AIR 1055.HK CEB BANK 6818.HK
CHINA SHENHUA 1088.HK HTSC 6886.HK
Table 1: The p=92𝑝92p=92italic_p = 92 stocks included in the portfolio.