我想用matlab中的优化工具来校准利率树。需要一些指导来做到这一点。在matlab中计算利率树
利率树是这个样子:
它是如何工作的:
3.73%= 2.5%* EXP(2 * 0.2)
96.40453 =(0.5 * 100 + 0.5 * 100)/(1+ 3.73%)
94.15801 =(0.5 * 96.40453 + 0.5 * 97.56098)/(1 + 2.50%)
2.5%的值是任意的,并且上部节点通过乘以2 *波动率(这里是20%)的指数来获得。
我需要通过改变较低节点的不同值来优化问题。
如何在Matlab中做这种优化?
我到目前为止试过的是什么?
InterestTree{1}(1,1) = 0.03;
InterestTree{3-1}(1,3-1)= 2.5/100;
InterestTree{3}(2,:) = 100;
InterestTree{3-1}(1,3-2)= (2.5*exp(2*0.2))/100;
InterestTree{3-1}(2,3-1)=(0.5*InterestTree{3}(2,3)+0.5*InterestTree{3}(2,3-1))/(1+InterestTree{3-1}(1,3-1));
j = 3-2;
InterestTree{3-1}(2,3-2)=(0.5*InterestTree{3}(2,j+1)+0.5*InterestTree{3}(2,j))/(1+InterestTree{3-1}(1,j));
InterestTree{3-2}(2,3-2)=(0.5*InterestTree{3-1}(2,j+1)+0.5*InterestTree{3-1}(2,j))/(1+InterestTree{3-2}(1,j));
但我不知道如何去优化。任何建议,以改善代码,告诉我..需要一些指导在这..
但这不是有效的权利?我的意思是,它浪费了大量时间搜索不需要的值。想到在matlab中使用优化工具 – lakesh
我期望树会生长......编辑示例使其与图相同。 – lakesh
是的,效率不高,但对代码和运行速度都非常快。树如何增长?如果更多的节点,然后哪个方向?您可能需要递归执行此操作,或者根据求和推导封闭表单解决方案。 – Lazarus