Re: random financial portfolios
- To: mathgroup at smc.vnet.net
- Subject: [mg119779] Re: random financial portfolios
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Tue, 21 Jun 2011 08:36:09 -0400 (EDT)
- Reply-to: hanlonr at cox.net
returns = {0.05, -0.2, 0.15, 0.3};
covariance = {
{0.08, -0.05, -0.05, -0.05},
{-0.05, 0.16, -0.02, -0.02},
{-0.05, -0.02, 0.35, 0.06},
{-0.05, -0.02, 0.06, 0.35}};
data = Table[
weights = RandomReal[{0, 1}, 4];
weights = weights/Total[weights];
{weights.covariance.weights, weights.returns},
{100}];
ListPlot[data, Frame -> True, Axes -> False]
Bob Hanlon
---- Priyan Fernando <priyan.fernando at gmail.com> wrote:
=============
Hi,
Wonder if someone can help me pls; I'm new to mathematica. I want to
generate "random" financial portfolios using the following parameters.
returns = {0.05, -0.2, 0.15, 0.3}
covariance = {{0.08, -0.05, -0.05, -0.05}, {-0.05,
0.16, -0.02, -0.02}, {-0.05, -0.02, 0.35, 0.06}, {-0.05, -0.02,
0.06, 0.35}}
So we need
*weights={w1,w2,w3,w4}*
where each term is a random numbers representing asset the asset weigth
[assume that these must sum to 1 - a long only portfolio]
I want to randomly change the weights and then calculate porfolio return:
*weights.returns*
and portfolio variance:
*weights.covariance.weights*
Then want to plot the return against risk, for say around 100 simulations.
Your help is much appreciated.
Thanks!