# combination.rule: Function for estimating portfolio weights by the 8fund rule In CombinePortfolio: Estimation of Optimal Portfolio Weights by Combining Simple Portfolio Strategies

## Description

This function computes optimal portfolio weights based on an 8-fund rule.

## Usage

 ```1 2``` ```combination.rule(ret, gamma=1, superset=1:7, subset=NULL, detailed.output=FALSE, RHO.grid.size= 100, Kmax.init= 500, tail.cut.exp= 20) ```

## Arguments

 `ret` Matrix or data.frame of excess returns `gamma` Relative risk aversion parameter `superset` Vector of integers from 1,2,...,7. It gives the possible included target rules, `1:7` provides all full 8-fund rule solutions. `subset` Vector of integers of subset. It gives the target rules that must be included in the model, `NULL` provides all possible solutions. `detailed.output` If `FALSE` only the estimated portfolio weight vectors of the models are returned. If `TRUE` a list of the portfolio weight vectors, the combination weights, and the target rules is provided. `RHO.grid.size` Just for convergence issues, the larger the more time-consuming, but the higher the precision of the results, only relevant if one of 5, 6 or 7 rule is included. `Kmax.init` See description of `RHO.grid.size` `tail.cut.exp` See description of `RHO.grid.size`

## Details

The target vectors are scaled so that their weights sum up to 1. Thus target rules are interpretable, i.e. 1 = tancency, 2 = GMV and 4 = naive (1/N). The function computes optimal portfolio weights given any combination rule of the riskfree asset and several target rule. These rules are called (and ordered) by and proportional to

'1' = Sigma^(-1) mu

'2' = Sigma^(-1) 1

'3' = mu

'4' = 1

'5' = S^(-2) mu

'6' = S^(-2) 1

'7' = S^(-1) 1

where mu and Sigma are the Gaussian ML-estimators of the asset mean vector mu and the covariance matrix Sigma. Moreover, we use the decomposition Sigma = SRS with R as sample correlation matrix and S as diagonal matrix with the sample standard deviations on the diagonal.

## Value

Returns matrix of estimated weights for possible combination rules. If `detailed.output` is `TRUE` `TRUE` a list of the portfolio weight vectors, the combination weights, and the target rules is provided. The names of the combination rule are coded by their portfolio that is incorporated. If "'" is contained is the name theta^2-adjusted estimation is used, if "”" is contained is the name theta^2-adjusted estimation is used. Hence e.g. "1'" represents the theta^2-adjusted 2-fund rule of Kan-Zhou(2007) and "1”2" represents the psi^2-adjusted 3-fund rule of Kan-Zhou(2007).

## Author(s)

Florian Ziel
florian.ziel@uni-due.de

`combination.rule`
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20``` ``` ret<- diff(log(EuStockMarkets)) combination.rule(ret) ## all 8-fund rule estimates crule<- combination.rule(ret,gamma=5,detailed.output=TRUE) crule\$w["1'",] ## Adjusted Kan-Zhou(2007) 2-fund rule crule\$w["1''2",] ## Adjusted Kan-Zhou(2007) 3-fund rule crule\$w["124",] ## Combination rule: Tangency+GMV+naive 4-fund rule, plug-in estimator crule\$delta["124",] ## Combination weights crule\$V[,c(1,2,4)] ## Combination targets: Tangency, GMV and naive ## only models that can contain Tangency, GMV and naive, but must contain GMV crule2<- combination.rule(ret, superset=c(1,2,4), subset=2, detailed.output=TRUE) crule2\$w # weights crule2\$delta # combination weights crule2\$V # target vectors ## case where T <= N - 4 ret2<- cbind(ret[1:10,], ret[11:20,], ret[21:30,]) ## (TxN) 10x12-matrix combination.rule(ret2) ## only accessible solutions ```