4.1 K线图的MATLAB实现
4.1.1 MATLAB内置函数candle实现
在MATLAB的金融工具箱中(Financial Toolbox)有一个内置函数candle可以进行K线图的绘制,使用语法如下:


上面前两个语法是输入开盘价、收盘价、最高价、最低价后进行K线图的绘制,后5个语法是专门针对MATLAB的金融时序数据(Financial Time Series,FTS)格式设计的形式。
如下是candle函数的使用例子,使用的测试数据是MATLAB内置的测试数据。


关于candle函数的更多用法这里不详细介绍,因为实际使用中在进行大数据量化绘图时,candle函数运行速度较慢,且无法灵活地设置阴线和阳线的颜色,这里推荐自己编写相关函数进行K线图的绘制,详细操作见4.1.2节。
4.1.2 自己编写函数实现
【例4-1】下面给出一个实现函数Kplot函数。



Kplot函数实现的核心是使用line函数进行上下影线的绘制,使用自fill函数进行K线实体的绘制,只需给出开盘价、收盘价、最高价和最低价就可以快速进行K线图的绘制,且可以指定阴线和阳线的颜色,如将阴线实体设为蓝色,阳线实体设为红色,上下影线设为黑色。
【例4-2】使用股指期货IF在某日的主力数据的1分钟线(存储在IF-20120104.mat文件中)进行Kplot函数的测试,数据的形式如图4-2所示。

该图中的数据共有8列,分别表示日期、时间、开盘价、最高价、最低价、收盘价、成交量和持仓量。使用Kplot函数绘制K线图,测试代码如下:




上述代码还进行了X轴的label调整,在横轴上显示相应的日期和时间,运行结果如图4-3所示。
