# Compute the posterior distribution of the market according the the Black-Litterman model

### Description

BLPosterior is a wrapper function that makes it easy to compute
the posterior mean and covariance of the returns of an asset set (specified as a matrix ) in one go. It computes
the market parameters automatically and then calls `posteriorEst`

. `posteriorEst`

is the "core" function of the model.

### Usage

1 2 | ```
BLPosterior(returns, views, tau = 1, marketIndex, riskFree = NULL, kappa = 0, covEstimator = "cov")
posteriorEst(views, mu, tau = 0.5, sigma, kappa = 0)
``` |

### Arguments

`returns` |
A matrix of time series of returns. The columns should correspond to individual assets. |

`views` |
An object of class BLViews |

`tau` |
The "tau" parameter in the Black-Litterman model. |

`marketIndex` |
A set of returns of a market index. |

`riskFree` |
A time series of risk-free rates of return. Defaults to 0 |

`mu` |
A vector of mean equilibrium returns |

`sigma` |
The variance-covariance matrix of the returns of the assets |

`kappa` |
If greater than 0, the confidences in each view are replaced. See the details section for more information |

`covEstimator` |
A string holding the name of the function that should be used to estimate the variance-covariance matrix. This function should simply return a matrix. |

### Details

Some authors have suggested that the confidences should not be set by the analyst but rather should just be equal
to kappa * t(P) %*% Sigma %*% P. Setting kappa > 0 will cause this to happen. In BLPosterior, the equilibrium return
means are computed with `CAPMList`

.

### Value

An object of class BLResult

### Author(s)

Francisco Gochez <fgochez@mango-solutions.com>

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | ```
## example from Thomas M. Idzorek's paper "A STEP-BY-STEP GUIDE TO THE BLACK-LITTERMAN MODEL"
x <- c(0.001005,0.001328,-0.000579,-0.000675,0.000121,0.000128,-0.000445,-0.000437 ,
0.001328,0.007277,-0.001307,-0.000610,-0.002237,-0.000989,0.001442,-0.001535 ,
-0.000579,-0.001307,0.059852,0.027588,0.063497,0.023036,0.032967,0.048039 ,
-0.000675,-0.000610,0.027588,0.029609,0.026572,0.021465,0.020697,0.029854 ,
0.000121,-0.002237,0.063497,0.026572,0.102488,0.042744,0.039943,0.065994 ,
0.000128,-0.000989,0.023036,0.021465,0.042744,0.032056,0.019881,0.032235 ,
-0.000445,0.001442,0.032967,0.020697,0.039943,0.019881,0.028355,0.035064 ,
-0.000437,-0.001535,0.048039,0.029854,0.065994,0.032235,0.035064,0.079958 )
varCov <- matrix(x, ncol = 8, nrow = 8)
mu <- c(0.08, 0.67,6.41, 4.08, 7.43, 3.70, 4.80, 6.60) / 100
pick <- matrix(0, ncol = 8, nrow = 3, dimnames = list(NULL, letters[1:8]))
pick[1,7] <- 1
pick[2,1] <- -1; pick[2,2] <- 1
pick[3, 3:6] <- c(0.9, -0.9, .1, -.1)
confidences <- 1 / c(0.000709, 0.000141, 0.000866)
myViews <- BLViews(pick, c(0.0525, 0.0025, 0.02), confidences, letters[1:8])
myPosterior <- posteriorEst(myViews, tau = 0.025, mu, varCov )
myPosterior
``` |