❶ 如何用matlab計算期權價格
參考論文
期權定價理論是現代金融學中最為重要的理論之一,也是衍生金融工具定價中最復雜的。本文給出了歐式期權定價過程的一個簡單推導,並利用Matlab對定價公式給出了數值算例及比較靜態分析,以使讀者能更直觀地理解期權定價理論。
關鍵詞:Matlab;教學實踐
基金項目:國家自然科學基金項目(70971037);教育部人文社科青年項目(12YJCZH128)
中圖分類號:F83文獻標識碼:A
收錄日期:2012年4月17日
現代金融學與傳統金融學最主要的區別在於其研究由定性分析向定量分析的轉變。數理金融學即可認為是現代金融學定量分析分支中最具代表性的一門學科。定量分析必然離不開相應計算軟體的應用,Matlab就是一款最為流行的數值計算軟體,它將高性能的數值計算和數據圖形可視化集成在一起,並提供了大量內置函數,近年來得到了廣泛的應用,也為金融定量分析提供了強有力的數學工具。
一、Black-Scholes-Merton期權定價模型
本節先給出B-S-M期權定價模型的簡單推導,下節給出B-S-M期權定價模型的Matlab的實現。設股票在時刻t的價格過程S(t)遵循如下的幾何Brown運動:
dS(t)=mS(t)dt+sS(t)dW(t)(1)
無風險資產價格R(t)服從如下方程:
dR(t)=rR(t)dt(2)
其中,r,m,s>0為常量,m為股票的期望回報率,s為股票價格波動率,r為無風險資產收益率且有0<r<m;dW(t)是標准Brown運動。由式(1)可得:
lnS(T):F[lnS(t)+(m-s2/2)(T-t),s■](3)
歐式看漲期權是一種合約,它給予合約持有者以預定的價格(敲定價格)在未來某個確定的時間T(到期日)購買一種資產(標的資產)的權力。在風險中性世界裡,標的資產為由式(1)所刻畫股票,不付紅利的歐式看漲期權到期日的期望價值為:■[max(S(T)-X,0)],其中■表示風險中性條件下的期望值。根據風險中性定價原理,不付紅利歐式看漲期權價格c等於將此期望值按無風險利率進行貼現後的現值,即:
c=e-r(T-1)■[max{S(T)-X,0}](4)
在風險中性世界裡,任何資產將只能獲得無風險收益率。因此,lnS(T)的分布只要將m換成r即可:
lnS(T):F[lnS(t)+(r-s2/2)(T-t),s■](5)
由式(3)-(4)可得歐式看漲期權價格:
c=S(t)N(d1)-Xe-r(T-1)N(d2)(6)
這里:
d1=■(7)
d2=■=d1-s■(8)
N(x)為均值為0標准差為1的標准正態分布變數的累積概率分布函數。S(t)為t時刻股票的價格,X為敲定價格,r為無風險利率,T為到期時間。歐式看跌期權也是一種合約,它給予期權持有者以敲定價格X,在到期日賣出標的股票的權力。
下面推導歐式看漲期權c與歐式看跌期權p的聯系。考慮兩個組合,組合1包括一個看漲期權加上Xe-r(T-1)資金,組合2包含一個看跌期權加上一股股票。於是,在到期時兩個組合的價值必然都是:
max{X,S(T)}(9)
歐式期權在到期日之前是不允許提前執行的,所以當前兩個組合的價值也必相等,於是可得歐式看漲期權與看跌期權之間的平價關系(put-call parity):
c+Xe-r(T-t)=p+S(t)(10)
由式(10)可得,不付紅利歐式看跌期權的價格為:
p=Xe-r(T-t)N(-d2)-S(t)N(-d1)(11)
二、Black-Scholes-Merton模型的Matlab實現
1、歐式期權價格的計算。由式(6)可知,若各參數具體數值都已知,計算不付紅利的歐式看漲期權的價格一般可以分為三個步驟:先算出d1,d2,涉及對數函數;其次計算N(d1),N(d2),需要查正態分布表;最後再代入式(6)及式(11)即可得歐式期權價格,涉及指數函數。不過,歐式期權價格的計算可利用Matlab中專有blsprice函數實現,顯然更為簡單:
[call,put]=blsprice(Price,Strike,Rate,Time,Volatility)(12)
只需要將各參數值直接輸入即可,下面給出一個算例:設股票t時刻的價格S(t)=20元,敲定價格X=25,無風險利率r=3%,股票的波動率s=10%,到期期限為T-t=1年,則不付紅利的歐式看漲及看跌期權價格計算的Matlab實現過程為:
輸入命令為:[call,put]= blsprice(20,25,0.03,0.1,1)
輸出結果為:call=1.0083put=5.9334
即購買一份標的股票價格過程滿足式(1)的不付紅利的歐式看漲和看跌期權價格分別為1.0083元和5.9334元。
2、歐式期權價格的比較靜態分析。也許純粹計算歐式期權價格還可以不利用Matlab軟體,不過在授課中,教師要講解期權價格隨個參數的變化規律,只看定價公式無法給學生一個直觀的感受,此時可利用Matlab數值計算功能及作圖功能就能很方便地展示出期權價格的變動規律。下面筆者基於Matlab展示歐式看漲期權價格隨各參數變動規律:
(1)看漲期權價格股票價格變化規律
輸入命令:s=(10∶1∶40);x=25;r=0.03;t=1;v=0.1;
c=blsprice(s,x,r,t,v);
plot(s,c,'r-.')
title('圖1看漲期權價格股票價格變化規律');
xlabel('股票價格');ylabel('期權價值');grid on
(2)看漲期權價格隨時間變化規律
輸入命令:s=20;x=25;r=0.03;t=(0.1∶0.1∶2);v=0.1;c=blsprice(s,x,r,t,v);
plot(t,c,'r-.')
title('圖2看漲期權價格隨時間變化規律');
xlabel('到期時間');ylabel('期權價值');grid on
(3)看漲期權價格隨無風險利率變化規律
s=20;x=25;r=(0.01∶0.01∶0.5);t=1;v=0.1;c=blsprice(s,x,r,t,v);
plot(r,c,'r-.')
title('圖3看漲期權價格隨無風險利率變化規律');
xlabel('無風險利率');ylabel('期權價值');grid on
(4)看漲期權價格隨波動率變化規律
s=20;x=25;r=0.03;t=1;v=(0.1∶0.1∶1);c=blsprice(s,x,r,t,v);
plot(v,c,'r-.')
title('圖4看漲期權價格隨波動率變化規律');
xlabel('波動率');ylabel('期權價值');grid on
(作者單位:南京審計學院數學與統計學院)
主要參考文獻:
[1]羅琰,楊招軍,張維.非完備市場歐式期權無差別定價研究[J].湖南大學學報(自科版),2011.9.
[2]羅琰,覃展輝.隨機收益流的效用無差別定價[J].重慶工商大學學報(自科版),2011.
[3]鄧留寶,李柏年,楊桂元.Matlab與金融模型分析[M].合肥工業大學出版社,2007.
❷ 如何用matlab模擬帶跳躍的股票價格 dp(t)=μ(t)dt+σ(t)dWt+k(t)dq(t),Wt為維納過程,跳躍服從泊松分布
額,應該沒人去試。
❸ 股票問題 用MATLAB做數學建模
%文件vol.m
function f=vol(x);
A = [2.10 2.20 2.30 2.35 2.40];;
Ap = [200 400 500 600 100];
B = [2.00 2.10 2.20 2.30 2.40];
Bp = [800 600 300 300 100];
f = -min(sum(Ap(A <= x)), sum(Bp(B >= x)));
%------------------------------------------
>> [x fval] = fminsearch('vol',2.3)
x =
2.3000
fval =
-400
你說的低於和高於我理解成小於等於與大於等於了,不對的話在函數最後一行自己改
❹ 如何用matlab畫出股票的價格曲線
xlsread 可以導入數據 比如data=xlsread('dd.xls','Sheet1','B1:G2')就是讀取dd.xls文件裡面b1到g2之間的數據
❺ 用matlab什麼程序可以預測股價走勢
這個可以用matlab的時間序列工具試一下,不過感覺沒有spss的時間序列工具好用,因為很多人裝matlab不裝時間序列工具包的。
用spss更好,把數據粘貼進去,就點分析-時間序列-自動時間序列就行,很傻瓜的,等1min,會出來一個走勢圖(輸出結果里下翻才找得到),說是AR多少模型的,後面會有一小段紅線的,那個就是預測。
❻ 怎麼用matlab模擬股票的走勢啊
哥們我想說股票不是數學,這條路走不通
❼ MATLAB中怎麼畫一萬條路徑。 我在MATLAB中用了for循環,生成股票價格的一
同學,你一看就是金融工程的,可以直接用Assetpath()函數,不過百分之99你的matlab會報錯,祝你好運!
答案連接:http://www.iqiyi.com/v_19rrmucyoc.html
純手打,求樓主給分
❽ 如何用matlab做1000次的門特卡羅模擬股票價格
用matlab算股票價格的收益率的方法:
在matlab裡面通常指令是:log(Xt/Xt-1)。
其中Xt是某股票或某指數第t天的價格;
其中Xt-1是某股票或某指數第t-1天的價格.
股票收益率簡介:
股票收益率指投資於股票所獲得的收益總額與原始投資額的比率。股票得到投資者的青睞,是因為購買股票所帶來的收益。股票的絕對收益率就是股息,相對收益就是股票收益率。
❾ 用matlab怎麼算股票價格的收益率,怎麼得出收益率的圖~
1、用matlab算股票價格的收益率的方法,比如(以聯想V14十代酷睿筆記本電腦,Windows10為例):
在matlab裡面通常指令是:log(Xt/Xt-1)。
其中Xt是某股票或某指數第t天的價格;
其中Xt-1是某股票或某指數第t-1天的價格.
2、製作收益率曲線圖的步驟如下,比如(以聯想V14十代酷睿筆記本電腦,Windows10為例):
1.在A1中輸入公式=(行(A1)-1) * 0.25-3。
2.在B1中輸入公式=NORMDIST(A1,0,1,0)。
3.下拉並分別將以上兩個公式復制到A25和B25。
4.插入「XY _⒌閫",A列為X軸,B列為Y軸,選擇散點圖類型為帶平滑線的散點圖。
(9)用MATLAB模擬股票價格途徑擴展閱讀:
一、如果用matlab驗證股票的收盤價符合對數正態分布:
比如(以聯想V14十代酷睿筆記本電腦,Windows10為例)先導入數據,然後取收盤價的對數值即y=ln(y)
clc;clear
y=ln(y)
Std=std(y) %標准差
[F,XI]=ksdensity(y)
figure(1)
plot(XI,F,'o-')
x =randn(300000,1);
figure(2)
[f,xi] = ksdensity(x);
plot(xi,f);
畫出概率分布圖
ksdensity -------------------- Kernel smoothing density estimation.
表示核平滑密度估計。
二、股票收益率是反映股票收益水平的指標
1、是反映投資者以現行價格購買股票的預期收益水平。它是年現金股利與現行市價之比率。
本期股利收益率=(年現金股利/本期股票價格)*100%
2、股票投資者持有股票的時間有長有短,股票在持有期間獲得的收益率為持有期收益率。
持有期收益率=[(出售價格-購買價格)/持有年限+現金股利]/購買價格*100%
3、公司進行拆股必然導致股份增加和股價下降,正是由於拆股後股票價格要進行調整,因而拆股後的持有期收益率也隨之發生變化。
拆股後持有期收益率=(調整後的資本所得/持有期限+調整後的現金股利)/調整後的購買價格*100% 對於長期投資形式的股票投資,其投資收益的確認有兩種方法:
一種是成本法,即按被投資企業發放的股利確定為投資企業的投資收益。
另一種方法是權益法,指投資企業所投股份在被投資企業中佔到一定比例,可以對它具有控制、共同控制或重大影響時,應採用權益法進行核算。
❿ 如何使用matlab建立股票交易模型
您好,針對您的問題,國泰君安上海分公司給予如下解答
能否麻煩您把問題再詳細點敘述,或者直接與我們聯系,人工解答。
歡迎您登錄國泰君安證券上海分公司網站人工咨詢。
回答人:國泰君安證券上海分公司理財顧問曾經理
工號:011891
國泰君安證券——網路知道企業平台樂意為您服務!
如仍有疑問,歡迎向國泰君安證券上海分公司官網或企業知道平台提問。