Optimization Problem: Max Sharpe Ratio
Show older comments
How do I resolve this issue:
Here's my code:
prob2 = optimproblem('ObjectiveSense','max');
weights2 = optimvar('weights2',10)
%SR = (weights2*ER-rfmean)/(weights2'*cov1*weights2)^(1/2);
prob2.Objective = (weights2*ER-rfmean)/sqrt(weights2'*cov1*weights2);
prob2.Constraints.cons1 = sum(weights2)== 1;
showproblem(prob2)
sol2 = solve(prob2);
Matlab Returns:
Undefined function 'sqrt' for input arguments of type 'optim.problemdef.OptimizationExpression'.
Error in project_2_part1 (line 99)
prob2.Objective = (weights2*ER-rfmean)/sqrt(weights2'*cov1*weights2);
Answers (1)
Alan Weiss
on 26 Feb 2019
0 votes
Currently, as the documentation clearly states, the problem-based approach does not apply to general nonlinear problems. You must formulate your problem using the solver-based approach.
Alan Weiss
MATLAB mathematical toolbox documentation
Categories
Find more on Surrogate Optimization in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!