Author Archives: laofish

金融仿真笔记(7)

1.fixedbyzero 用零息债券的即期利率给固定票据定价,Price = fixedbyzero(RateSpec, CouponRate, Settle, Maturity)。相应的也有floatbyzero,浮动利率票据 。但是这里的参数就不同了,  Price = floatbyzero(RateSpec, Spread, Settle, Maturity),spread表示在零息债券年化收益上方多少个基点。 2.swapbyzero 给互换定价,[Price, SwapRate] = swapbyzero(RateSpec, LegRate, Settle, Maturity),LegRate是一个N*2的矩阵,形式是[CouponRate Spread] or [Spread CouponRate],第一列表示收入,第二列表示支出,swapRate当互换价格为零时,需要设定的固定的利率。 3.以上的所有函数有一个通式:intenvprice和intenvsens.Computes prices for instruments against a set of zero coupon bond rate curve(s). INTENVPRICE … Continue reading

Posted in 读书笔记 | Tagged | Leave a comment

最近脑袋锈掉,编程能力大幅下滑

最早接触编程已经是遥远的高二,但是同学的文曲星支持一个简陋的GVbasic,自己拿了同学的东西,在上面玩的不亦乐乎,也没有接触什么算法,所有计算步骤全是自己凭空摸索,当时最喜欢的语句是goto,基本上是用这个实现if,while之类的循环判断,也导致了自己现在编程总有这种坏思想。所以这东西是不能自己瞎来的。 上了大学,课上学的是C++,编程课学得一般,不好不坏,给的任务也都能完成,但也没有什么出彩的地方,毕竟和计算机专业相关度不高,对这个能力也没有更高要求,不过自己对语言的兴趣一直没减,自己也看了一些书,不过貌似现在也忘了差不多了。后来的数据结构,学得应该还算不错,编的程序自己也还挺满意,只是学了之后没有什么用途,也就忘得快了。 然后开始接触matlab,因为科学计算和画图功能很强大,一直不停用,不停学,感觉学得挺慢,主要也是钻的不够,不够重视,以为这东西就是自己的兴趣,没有当正事搞,现在觉得自己该重视起来之后,发现自己现在也就是处在运用函数的阶段,编个求质数的函数都到处出毛病,该死,当年还曾用汇编语言求质数,貌似也就是两节课上自己也就解决了,现在脑袋真的锈掉了。 %求质数 function [Primelist]=prime(n) k=0; for ii=5:n for jj=3:ii-1 if (ii/jj)==floor(ii/jj) break; end end if jj==ii-1 k=k+1; Primelist(k)=ii; end end

Posted in 读书笔记 | Tagged | Leave a comment

用matlab写单纯形表

今天在做最优化的题目的时候,遇到了些麻烦,单纯形表怎么写都会留下点问题,却找不出哪里出现了毛病,于是想用matlab将每一个单纯形表都画出来,但是程序写了会就写不下去了,主要是其中的逻辑判断,数字选择,让我有种无从下手的感觉,我把一些代码和注意点先贴到这里,等以后再试试,看看自己进步了没有。 Matlab语言 %purpose 验算手工单纯形 %写不下去了,还是等对于编程这些玩意更熟悉一些再弄,完全现在是不能转化成程序语言了 %define variables%C 目标函数变量系数 行向量%CB 辨识初始基 行向量%b 约束条件 列向量%A 约束系数矩阵 矩阵%delta 检验数 行向量%X 列向量 function [JI opt]=simplex(C,CB,b,A) theta=C-CB*A;if max(delta)<=0if all(CB<inf)if %存在非基变量的检验数为0%无穷多最优解 else %唯一最优解end elsedisp('无可行解')end elsethetaj=find(delta>0);%找出检验数为正的项temp1=A(:,deltaj);%找出检验数为正项对应的向量temp2=max(temp1);%找出检验数为正项对应的向量的每一列当中最大项if any(temp2<0) disp('无界解')else %单纯形变化[deltak,k]=max(delta);aik1=A(:,k)>0;baik=b./A() endend     下面就是搞的时候的一些注意点,自己查一下也很容易查到的地方。 matlab和excel差异:log含义不同,前者就是ln后者是以10为底 用最优化工具箱,没有x非负的设定,x的范围是自己写进去的.当然b也没有非零的设定 cat合并矩阵 逻辑数组逻辑数组有一个重要的属性它在算术运算中能提供一个屏蔽(mask). … Continue reading

Posted in 技术相关 | Tagged , , | Leave a comment