主权项 |
一种基于K线图表示的金融时间序列相似性查询方法,其特征在于,包括以下步骤:(1)特征提取,具体包括以下子步骤:(1.1)依次读取金融时间序列数据库中的每条时间序列;(1.2)对时间序列做z‑规范化处理;(1.3)设定K线表示粒度l,采用该粒度的窗口对步骤1.2处理得到的时间序列平均切分为w条子序列;依次提取每条子序列的初始值v<sub>first</sub>,最大值v<sub>max</sub>,最小值v<sub>min</sub>,最终值v<sub>last</sub>,构造K线图,并表示为特征向量K=[v<sub>first</sub>,v<sub>max</sub>,v<sub>min</sub>,v<sub>last</sub>],将金融时间序列转化为K线序列К={K<sub>1</sub>,K<sub>2</sub>,...,K<sub>i</sub>,…,K<sub>w</sub>};(1.4)分别提取K线序列的基本模式P<sub>basic</sub>与典型模式P<sub>typical</sub>,将其转化为基本字符串Str<sub>basic</sub>与典型字符串Str<sub>typical</sub>,具体为:(1.4.1)将金融时间序列在金融交易市场中单位时间段的最大升降幅度范围平均划分为n个区间,并从0开始依次递增编号;(1.4.2)依次扫描每对相邻的K线组合<K<sub>i</sub>,K<sub>i+1</sub>>,计算K<sub>i+1</sub>的四个特征相对于K<sub>i</sub>的最终值K<sub>i</sub>(v<sub>last</sub>)的升降幅度,并分别映射到步骤1.4.1划分的相应区间,以区间编号表示各特征,得到离散化特征向量D<sub>i+1</sub>;将<D<sub>i</sub>,D<sub>i+1</sub>>的各元素依次分配到连续存储单元,组合为基本模式P<sub>basic</sub>,由此将K线序列转化为基本字符串Str<sub>basic</sub>;(1.4.3)采用金融技术分析领域的Ω种多K线组合模式作为典型模式库P<sub>typical</sub>_base,并将每个典型模式P<sub>typical</sub>以离散化特征向量的形式存储;依次扫描K线序列,若以K<sub>i</sub>起始的多K线组合<K<sub>i</sub>,K<sub>i+1</sub>,...,K<sub>i+η</sub>>与P<sub>typical</sub>_base中的典型模式相匹配,则进行提取并根据1.4.2的方式编码存储,由此将K线序列转化为典型字符串Str<sub>typical</sub>;(2)索引构建,具体包括以下子步骤:(2.1)基于Lucene全文检索开源框架,以P<sub>basic</sub>作为索引项,对所有基本字符串Str<sub>basic</sub>构建基本模式倒排索引P<sub>basic</sub>_index;(2.2)基于Lucene全文检索开源框架,以P<sub>typical</sub>作为索引项,对所有典型字符串Str<sub>typical</sub>构建典型模式倒排索引P<sub>typical</sub>_index;(3)查询处理,具体包括以下子步骤:(3.1)将查询时间序列Q进行与步骤1相同的特征提取,得到基本字符串Str<sub>basic</sub>(Q)与典型字符串Str<sub>typical</sub>(Q);(3.2)对Str<sub>basic</sub>(Q)查询步骤2.1得到的基本模式倒排索引P<sub>basic</sub>_index,获取包含M个候选对象的候选集C<sub>1</sub>;(3.3)对Str<sub>typical</sub>(Q)查询步骤2.2得到的典型模式倒排索引P<sub>typical</sub>_index,获取包含N个候选对象的候选集C<sub>2</sub>;(3.4)对C<sub>1</sub>与C<sub>2</sub>求交集,得到包含Γ个候选对象的最终候选集C<sub>3</sub>;(3.5)对C<sub>3</sub>中的每个候选对象,通过磁盘I/O读取原始序列,并与查询时间序列Q的原始值进行相似性度量,根据相似性度量值,对C<sub>3</sub>的所有候选对象进行排序,保留k个最相似的候选序列作为最终的查询结果并返回。 |