# setup
ret <- diff(log(EuStockMarkets))
n <- nrow(ret)
# View on expected returns (here is 2% for each asset)
mean <- rep(0.02, 4)
# Prior probabilities (usually equal weight scheme)
prior <- rep(1 / n, n)
# View
views <- view_on_mean(x = ret, mean = mean)
# Optimization
ep <- entropy_pooling(
p = prior,
Aeq = views$Aeq,
beq = views$beq,
solver = "nlminb"
)
ep
### Using the ... argument to control the optimization parameters
# nlminb
ep <- entropy_pooling(
p = prior,
Aeq = views$Aeq,
beq = views$beq,
solver = "nlminb",
control = list(
eval.max = 1000,
iter.max = 1000,
trace = TRUE
)
)
ep
# nloptr
ep <- entropy_pooling(
p = prior,
Aeq = views$Aeq,
beq = views$beq,
solver = "nloptr",
control = list(
xtol_rel = 1e-10,
maxeval = 1000,
check_derivatives = TRUE
)
)
ep
Run the code above in your browser using DataLab