matlab无疑是科学计算的强大工具,很少的代码就可以完成非常复杂的功能。这些功能如果用c++实现是难以想象的。
如何利用matlab来进行股票数据分析呢?在前面的文章中,我分析了如何通过股票行情软件下载行情数据来读取。但是这个方法不是很方便,需要人工工作太多,我在海洋部落里看到很多人都在通过计算方式来进行买卖决策,让我又有了进一步工作下去的信心。
kline.c 文件是一个mex c文件,编译出来一个接口,通过该接口 得到日行情数据。详情请参见源代码。如何使用这个编译出来的接口文件呢?请查看stock.m文件。
这个接口文件直接从行情服务器下载数据,非常方便了,可以在matlab中使用很少的代码实现根据决策筛选股票。 由于数据格式是逆向得到的,不便公开,所以网络接口代码就不公开源代码了。
stock.m文件如下:
function ay=stock(code , lday , windowSize)
%clc; windowSize均值窗口长度
%close all;
[kp,hp,lp,sp,vol,tm]=kline(code,lday);%调用mex 接口文件获得日K线行情数据。%其中code问股票代码,lday为取得的数据天数。
% [kp,hp,lp,sp,vol,tm] 为行情数据,最高价,最低价,开盘价,收盘价,量,价
xx=1:lday;
hold off;
subplot(2,2,1); candle(hp',lp',sp',kp');
hold on;
a = filter(ones(1