Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

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!




  • Prev by Date: pairing values from a list
  • Next by Date: Re: implicit surfaces from older version of Mathematica
  • Previous by thread: Re: random financial portfolios
  • Next by thread: Re: random financial portfolios