portfolio.optim | R Documentation |

Computes an efficient portfolio from the given return series `x`

in the mean-variance sense.

## Default S3 method: portfolio.optim(x, pm = mean(x), riskless = FALSE, shorts = FALSE, rf = 0.0, reslow = NULL, reshigh = NULL, covmat = cov(x), ...)

`x` |
a numeric matrix or multivariate time series consisting of a series of returns. |

`pm` |
the desired mean portfolio return. |

`riskless` |
a logical indicating whether there is a riskless lending and borrowing rate. |

`shorts` |
a logical indicating whether shortsales on the risky securities are allowed. |

`rf` |
the riskfree interest rate. |

`reslow` |
a vector specifying the (optional) lower bound on allowed portfolio weights. |

`reshigh` |
a vector specifying the (optional) upper bound on allowed portfolio weights. |

`covmat` |
the covariance matrix of asset returns. |

`...` |
further arguments to be passed from or to methods. |

The computed portfolio has the desired expected return `pm`

and
no other portfolio exists, which has the same mean return, but a
smaller variance. Inequality restrictions of the form *w_l <= w <= w_h* can be imposed using the `reslow`

and
`reshigh`

vectors. An alternative covariance matrix estimate can
be supplied via the `covmat`

argument. To solve the quadratic
program, `solve.QP`

is used.

`portfolio.optim`

is a generic function with methods for
multivariate `"ts"`

and `default`

for matrix.

Missing values are not allowed.

A list containing the following components:

`pw` |
the portfolio weights. |

`px` |
the returns of the overall portfolio. |

`pm` |
the expected portfolio return. |

`ps` |
the standard deviation of the portfolio returns. |

A. Trapletti

E. J. Elton and M. J. Gruber (1991): *Modern Portfolio Theory and
Investment Analysis*, 4th Edition, Wiley, NY, pp. 65-93.

C. Huang and R. H. Litzenberger (1988): *Foundations for
Financial Economics*, Elsevier, NY, pp. 59-82.

`solve.QP`

x <- rnorm(1000) dim(x) <- c(500,2) res <- portfolio.optim(x) res$pw require("zoo") # For diff() method. X <- diff(log(as.zoo(EuStockMarkets))) res <- portfolio.optim(X) ## Long only res$pw res <- portfolio.optim(X, shorts=TRUE) ## Long/Short res$pw

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.