看板 MATLAB 關於我們 聯絡資訊
如題,因在自學matlab 我自訂了一個函數想自己計算看看 然後我就上網找了一個好像很夯(?)的東西(B-S model) 參考了wiki上的公式之後 function c = BSM(S,L,T,sigma,r) D1 = ( log(S/L)+(r+0.5*(sigma^2))*T ) / (sigma*(T^0.5)) D2 = D1-sigma*sqrt(T) c = S * normcdf(D1) * ( exp^(-r*T) * L * normcdf(D2) ) end 這樣 然後儲存起來 回到command window 輸入了>> BSM=( 100 , 95 , 1 , 2 , 0.02 ) 然後就換來了 BSM=( 100 , 95 , 1 , 2 , 0.02 ) ↑ Error: Expression or statement is incorrect--possibly unbalanced (, {, or [. 的結果..........可是我看了幾次之後覺得自己括號應該沒弄錯 想問我是不是其他地方弄錯了? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.162.125 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1491967957.A.26B.html
ntumath: 你的function end呢? 04/12 11:50
yuseke: !!!!!!!!!!!! 04/12 11:53
歹勢 只是複製貼上沒複製到而已Orz ※ 編輯: yuseke (36.226.162.125), 04/12/2017 11:55:08
ntumath: 你應該這樣呼叫函數-->BSM(100,95,1,2,0.02) 04/12 11:58
ntumath: 不用加等於 04/12 11:58
謝謝!! ※ 編輯: yuseke (36.226.162.125), 04/12/2017 12:05:05
yuseke: 我的exp還多加一個"^".....我真的是ORZ 04/12 12:29