Re: SAS新手的問題

看板Statistics作者 (狗民黨廣告費哪來)時間18年前 (2007/12/22 02:29), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/4 (看更多)
不用巨集的寫法 data king; b=1/exp(0.075*0.25); d1=(LOG(100/(95*b))+0.313*0.313*0.25/2)/(0.313*SQRT(0.25)); d2=d1-0.313*sqrt(0.25); value=100*probnorm(d1)-95*b*probnorm(d2); proc print; run; ※ 引述《kingbee (狗民黨廣告費哪來)》之銘言: : ※ 引述《piao07 ()》之銘言: : : 對不起我繼續發問^^" : : 實際上我是要寫一個計算選擇權價格的MARCO : : 下面是目前的情形 : %macro number(s,r,t,x,v); : data king; : b=1/exp(&r*&t); : d1=(LOG(&s/(&x*b))+&v*&v*&t/2)/(&v*SQRT(&t)); : d2=d1-&v*sqrt(&t); : value=&s*probnorm(d1)-&x*b*probnorm(d2); : proc print; : run; : %mend; : %number(100,0.075,0.25,95,0.313); : : %MACRO number(S,r,T,X,V); : : data b; : : data d1; : : data d2; : : data Value; : : b=1/EXP(&r*&T); : : d1=(LOG(&S/(&X*b))+&V*&V*&T/2)/(&V*SQRT(&T)); : : d2=d1-&V*SQRT(&T); : : Value=&S*NORMAL(d1)-&X*b*NORMAL(d2); : : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ : : %MEND number; : : %number(100,0.075,0.25,95,0.313); : : proc print data=Value; : : RUN; : : 我知道問題出現在我畫線的那行 : : 不知道SAS有沒有內建的常態分配累積分布函數 ?? : : 如果沒有可能比較麻煩了 : : 麻煩各位解答 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.209.186.212
文章代碼(AID): #17R0NlVm (Statistics)
文章代碼(AID): #17R0NlVm (Statistics)