股票形态识别一代

形态识别一代

一、功能简介

二、交互式界面

1、界面介绍
2、具体功能

三、识别算法

1、平滑
2、线性分段
3、计算距离

四、改进

1、提高计算速度

一、功能简介

形态识别一代。主要功能包括:
a、 绘制指定日期下某品种的分时图,该分时图基本与文化财经一致。
b、通过鼠标操作,可以截取任意时间段下的形态。
c、根据截取的形态,自动从历史数据中识别出相似的形态。

二、交互式界面
1、界面介绍

2、具体功能
1 、左边为绘图区:绘制日内分时图,白线指价格,黄色柱线指成交量,通过鼠标操作可以移动绘图区中的蓝线,两蓝线之间代表需要截取的形态。
2 、在右边功能区,各按钮功能。
       输入日期:指定日期
       绘图:绘制分时图
       截取:确定截取两蓝线之间的形态
       保存:保存所截取的形态
       识别:识别所选取的形态,并保存
三、识别算法
1、平滑
目的是过滤掉时间序列中一些细小的波动,程序中有两种方法供选择,一是加权线性回归,而是多项式拟合。可直接调用,并生成平滑后的曲线,可根据效果修改参数。
a、加权线性回归

2、多项式拟合

2、线性分段
特征提取,提取原序列的特点,并用关键点表示。对需要比对的序列使用相同的方法进行特征提取,比较两个序列的特征是否一致,作为初步筛选条件。
如图:

得到数据:

Index:索引
value: 关键点的值
hl: 高点表示为1,低点表示为2
3、计算距离
计算两个序列间的距离,程序提供了两种方法
a、欧式距离。计算点距离,具体方法不再叙述
b、模式距离。根据线性分段得到的数据,按权重计算两序列的分段斜率差。具体内容请参考资料:<<基于斜率表示的时间序列相似性度量方法>>,<<时间序列的模式距离>>

分段后的两序列,t为索引,k为斜率

进行时间对等处理:

斜率距离:

四、改进
1、提高计算速度
历史数据包含了最近四年的分钟数据,又要在每天循环遍历.双重for循环,计算量大.尤其是用到加权线性回归算法时,复杂度又提升了.考虑使用多线程.
 

发布了14 篇原创文章 · 获赞 10 · 访问量 8221

猜你喜欢

转载自blog.csdn.net/qq_38870388/article/details/104039497