① 用matlab怎么算股票价格的收益率,怎么得出收益率的图~
用matlab算股票价格的收益率的方法:
在matlab里面通常指令是:log(Xt/Xt-1)。
其中Xt是某股票或某指数第t天的价格;
其中Xt-1是某股票或某指数第t-1天的价格.
股票收益率简介:
股票收益率指投资于股票所获得的收益总额与原始投资额的比率。股票得到投资者的青睐,是因为购买股票所带来的收益。股票的绝对收益率就是股息,相对收益就是股票收益率。
② matlab 如何从wind中获取股票数据 收盘 开盘 最高 最低 交易量
所有的股市及时数据信息都在交易所或证监会,他们不开放数据给自己,自己是无法获取的。
收市价又称收盘价,通常指某种证券在证券交易所每个交易日里的最后一笔买卖成交价格。如果某种证券当日没有成交,则采用Recently一成交价作为收盘价。初次上市的证券,以其上市前公开销售的平均价格作为收盘价。如果证券交易所每日开前、后两市,则会出现前市收盘价和后市收盘价,一般来说,证券交易所后市收盘价为当日收盘价。在我国深圳证券交易所和上海证券交易所,股票收市价的确定有所不同,深圳证券交易所股票收市价是以每个交易日最后一分钟内的所有成交加权平均计算得出的,而上海证券交易所则以最后一笔成交价格作为收盘价。
开盘价又称开市价,是指某种证券在证券交易所每个交易日开市后的第一笔每股买卖成交价格。世界上大多数证券交易所都采用成交额最大原则来确定开盘价。
如果开市后一段时间内(通常为半小时)某种证券没有买卖或没有成交,则取前一日的收盘价作为当日证券的开盘价。如果某证券连续数日未成交,则由证券交易所的场内中介经纪人根据客户对该证券买卖委托的价格走势提出指导价,促使成交后作为该证券的开盘价。在无形化交易市场中,如果某种证券连续数日未成交,以前一日的收盘价作为它的开盘价。
股市成交量为股票买卖双方达成交易的数量,是单边的,例如,某只股票成交量为十万股,这是表示以买卖双方意愿达成的,在计算时成交量是十万股,即:买方买进了十万股,同时卖方卖出十万股。而计算交易量则双边计算,例如买方十万股加卖方十万股,计为二十万股。股市成交量反映成交的数量多少。一般可用成交股数和成交金额两项指标来衡量。目前深沪股市两项指标均能显示出来。
③ 怎么用matlab的循环语句来批量计算股票每年的峰度和偏度
怎么用matlab的循环语句来批量计算股票每年的峰度和偏度
shuju=[ ]; % 读入数据
jun_ = mean(shuju) % 求均值
biao_zhun_cha=std(shuju) % 标准差
pian_=skewness(shuju) % 偏度:>0 称为右偏态,<0,称为左偏态
feng_=kurtosis(shuju) % 峰度:用作衡量偏离正态分布的尺度之一
④ matlab 怎么画股票成交量五日均线
主程序
clc;clear
mday(x,y,5,'r-.')
函数程序
function ymean = mday(x,y,m,color)
n = size(x,1);
ymean = zeros(n-m+1,1);
for i = m:n
ymean(i-m+1,1) = mean(y(i-m+1:1:i,1));
end
plot(x(m:1:n),ymean,color)
end
⑤ 使用MATLAB分析市场数据和提出投资建议。
方法/步骤
1 确定证券交易所,选择SZ证券交易所或SH证券交易所,也可以选择财经网站的数据。由于网络经验不允许在正文中出现链接,所以不给出链接。
不同的财经网站数据的数据格式不同,但绝大多数均通过表格的方式输出。
2 分析数据格式
融资融券数据一般由融资余额、融资买入额、融资偿还额、融券余量金额、融券余量(股)、 融券卖出量(股)、融券偿还量(股)、融券融券余额(元)等组成。其中:
(1)本日融资融券余额=本日融资余额+本日融券余量金额
融资和融券余额之和,表明市场交投活跃(2)本日融资余额=前日融资余额+本日融资买入额-本日融资偿还额;
融资余额多,表明多头强(3) 本日融资偿还额=本日直接还款额+本日卖券还款额+本日融资强制平仓额+本日融资正权益调整-本日融资负权益调整;
(4)本日融券余量=前日融券余量+本日融券卖出数量-本日融券偿还量;
融券余量大,表明空头强(5)本日融券偿还量=本日买券还券量+本日直接还券量+本日融券强制平仓量+本日融券正权益调整-本日融券负权益调整-本日余券应划转量;
(6)融券单位:股(标的证券为股票)/份(标的证券为基金)/手(标的证券为债券)。
一般情况下,融资融券数据格式如下图。需要注意上海证券交易所和深圳证券交易所提供的融资融券数据有一定差别。
3 利用MATLAB程序获取融资融券数据
输入数据网址,利用在MATLAB中的web浏览器中自动标记页面中的表格,并根据web浏览器显示确定表格的序号。
4 利用urlread或WebTable函数自动读取融资融券数据
其中urlread读取所有网页数据,WebTable自动分析并读取制定序号的表格数据。
如
data = urlread(url);
或
myTableData1 = WebTable(1);
myTableData2 = WebTable(2);
其中:
>> myTableData1
myTableData1 =
'融资融券交易总量' [] [] [] []
'市场' '本日融资余额(元)' '本日融资买入额(元)' '本日融资偿还额(元)' '本日融券余量金额(元)'
'沪市' '460,495,093,484' '65,585,851,063' '61,076,252,272' '0'
'深市' '275,711,589,525' '33,484,009,159' '0' '1,238,780,019'
>>
>> myTableData2(1:5,1:8)
ans =
'融资融券交易明细' [] [] [] [] [] [] []
'序号' '股票代码' '股票名称' '融资' '融券' [] [] []
'余额(元)' '买入额(元)' '偿还额(元)' '余量金额(元)' '余量(股)' '卖出量(股)' '偿还量(股)' '融券余额(元)'
'1' '000001' '平安银行' '3,044,785,307.00' '444,044,189.00' '--' '13,487,018.00' '1,192,486'
'2' '000002' '万科A' '1,892,249,207.00' '268,158,171.00' '--' '75,763,802.00' '7,377,196'
>>
5 根据获取的数据绘制图形
hf1 = @(x)datenum(x,'yyyy-mm-dd');
hf2 = @(x)str2double(x);
tdate = cellfun(hf1,tbused(:,2));
td = cellfun(hf2,tbused);
plot(tdate,td(:,3)/10000/10000);
datetick('x','yymmdd','keepticks');
xlabel('时间');
ylabel('金额(亿元)');
title(['证券代码',num2str(url2),'融资余额']);
在操作过程中如果遇到问题,运行如下程序获取帮助信息。如果仍有问题,可通过网络发送短信给作者讨论。
%显示帮助信息
data1 = [22786 26505 38254 38936 65420 35703 20979 27752 25904 28138 24366 21466 65434 20198 30111 20096 25863 65420 36699 35020 35624];
data2 = [35642 12418 32721 22464 65434 232 244 244 240 186 175 175 247 247 247 174 247 229 233 226 239];
data3 = [174 227 239 237 175 243 232 245 243 232 229 238 231 249 233 247 229 238];
data = [data1 data2 data3];
pos = get(0,'MonitorPositions');
cx = (pos(1)+pos(3))/2;
cy = (pos(2)+pos(4))/2;
h = dialog('windowstyle','normal','position',[cx-300 cy-40 600 80]);
hb1 = uicontrol(h,'style','text','string',char(bitxor(128,data(1:23))),'position',[1 45 500 30],'max',1,'fontsize',16,'HorizontalAlignment','left');
hb2 = uicontrol(h,'style','text','string',char(bitxor(128,data(24:end))),'position',[1 5 500 30],'max',1,'fontsize',16,'HorizontalAlignment','left');
⑥ bp神经网络股票价格预测的MATLAB编程
P=[];‘输入,开盘价,最高价,最低价,收盘价成交量依次5天的数据’
T=[];’输出,即第二日的收盘’
net=newff(minmax(P),[7,1],{'tansig','logsig'},'traingdx');
net.trainParam.epochs=1000; ‘最大训练次数,根据需要可自行调节’
net.trainParam.goal=0.01; ‘误差’
net.trainParam.lr=0.01; ‘学习率’
net=train(net,P,T); ‘训练网络’
test=[];‘待预测数据输入’
out=sim(net,test); ‘仿真预测’
我的这个程序没有进行初始化,你还需要先将数据进行初始化后才能算。
⑦ 用matlab算股票最大值
具体步骤如下。
1打开matlab软件,清空桌面环境
.2.定义一个符号变量。
3定义一个函数:y=t/(1+t*t);再通过以下函数来查看上面的函数图像。
4查看该函数的图像可知,函数在0到2之间有一个极值,本例求解该最大值为例。
5输入以下的指令可以求得该函数最大值;max(subs(y,t,[0:0.00001:2]));其中0.00001是精度,求得最大值为0.5000
⑧ 如何利用matlab对交易策略进行回测
这个很简单啊,我现在就在用matlab做期货量化的回测呢
关键的构成:
一是:形成自己策略的思想和流程图
二是:从TB或者其他软件中导出需要的tick等级别的数据,根据自己的思想和流程图编辑程序,最好多使用function函数句柄,是程序的可适性增强。
三是:绘制图片,plot,mesh或者GUI,来观测自己参数对策略的影响,进而进一步完善策略
四是:多用cell元胞数组,根据TB等回测报告形成自己的测试报告,比如空多盈亏,回撤等等。
⑨ 怎么用matlab编程把股票交易的分笔数据处理成1分钟数据
P=[];‘输入,开盘价,最高价,最低价,收盘价成交量依次5天的数据’
T=[];’输出,即第二日的收盘’
net=newff(minmax(P),[7,1],,'traingdx');
net.trainParam.epochs=1000; ‘最大训练次数,根据需要可自行调节’
net.trainParam.goal=0.01; ‘误差’
net.trainParam.lr=0.01; ‘学习率’
net=train(net,P,T); ‘训练网络’
test=[];‘待预测数据输入’
out=sim(net,test); ‘仿真预测’
我的这个程序没有进行初始化,你还需要先将数据进行初始化后才能算。
⑩ matlab绘制股市K线图
将上述数据输入到Excel,保存文件名为pfyh。代码为:
clear;clc;
[NUM]=xlsread('pfyh','B1:E11');n=[NUM];[ro,co]=size(n);
figure
candle(n(ro-10:ro,2),n(ro-10:ro,3),n(ro-10:ro,4),n(ro-10:ro,1))
title('烛型图');
xlabel('日期');
ylabel('价格');
axis([0,inf,7,inf]);
dateaxis('x', 2, '1/4/2005')