randomReturns(na, ns, sd, mean =0, rho =0, exact =FALSE)
Arguments
na: number of assets
ns: number of return scenarios
sd: the standard deviation: either a single number or a vector of length na
mean: the mean return: either a single number or a vector of length na
rho: correlation: either a scalar (i.e. a constant pairwise correlation) or a correlation matrix
exact: logical: if TRUE, return a random matrix whose column means, standard deviations and correlations match the specified values exactly (up to numerical precision)
Details
The function corresponds to the function random_returns, described in the second edition of NMOF (the book).
Returns
a numericmatrix of size na times ns
References
Gilli, M., Maringer, D. and Schumann, E. (2019) Numerical Methods and Optimization in Finance. 2nd edition. Elsevier. tools:::Rd_expr_doi("10.1016/C2017-0-01621-X")
The function corresponds to the function random_returns, described in the second edition of NMOF (the book).
See Also
mc
Examples
if(requireNamespace("quadprog")){## a small experiment: when computing minimum-variance portfolios## for correlated assets, how many large positions are in the portfolio? na <-100## number of assets inc <-5## minimum of assets to include n <- numeric(10)for(i in seq_along(n)){ R <- randomReturns(na = na, ns =500, sd = seq(.2/.16,.5/.16, length.out =100), rho =0.5) n[i]<- sum(minvar(cov(R), wmax =1/inc)>0.01)} summary(n)}