一种股票买卖点计算方法及其在买卖时机上的判断策略与流程

文档序号:11178235阅读:1793来源:国知局
一种股票买卖点计算方法及其在买卖时机上的判断策略与流程

本发明涉及股票数据挖掘技术领域,尤其是涉及一种股票买卖点计算方法及其在股票买卖时机上的判断策略。



背景技术:

目前中国的上市股票多达数千只,而且还在不断增多。如何判断当前是否是适宜的入市时机,如何在纷繁浩瀚的股市中筛选出符合我们预期的股票,如何在自己的股票走势中判断未来的发展方向和最佳买卖时机,本发明方法将尝试解决这些问题。

本发明方法是一种技术分析方法。技术分析只关心股票市场、股价走向等市场行为本身的变化,而不考虑影响个股实际价值的各种要素,如行业发展前景、企业经营情况等。技术分析所依据的原理是:“价格的走势会通过实际发生的市场交易行为本身表现出来”,为了更好解读市场行为,技术分析法要借助很多分析工具、技术分析方法来预测价格的未来走势并确定入市、出市的时机等。

“市场行为涵盖一切”、“价格依趋势运行”、“历史往往会重演”是技术分析的三大假设公理。常用的技术分析可分为如下几种类型:

(1)经典技术理论分析法。如波浪理论、江恩理论、道氏理论、箱体理论、缺口理论等;

(2)k线形态析法。如单根k线形态、双根k线形态、三根k线形态、三角形、楔形、箱形等;

(3)技术指标分析法。如趋势类指标、能量类指标、成交量类指标、大盘类指标等;

(4)量价结合分析法。如四种量价组合形态:价升量增、价升量缩、价跌量缩、价跌量增;

(5)主力动向分析法。如吸筹阶段、拉升阶段、洗盘阶段、出货阶段。

由于股票市场无论是成熟的还是新兴的,都是不断博弈的,波涛汹涌的;社会经济政策环境和投资者的素质等都是千变万化的,因此股票技术分析的理论和方法也是不断更新、不断进步的。



技术实现要素:

本发明公开了一种股票买卖点计算方法及其在买卖时机上的判断策略。方法首先设计了一种股票买卖点计算的框架;在此基础上,根据股票的历史走势,总结经验,设计相应的计算策略并将其添加到框架中。方法根据所依据计算数据的范围,将输出结果分为两种典型的操作类型:积极方式和稳健方式。对两种方式分别进行训练获得最佳参数后,对每只股票在每天收盘后计算该股票当日是否出现买点或卖点。对所有的股票当日的买点和卖点进行统计分析,同时以二分查找法迅速预估明日出现买点或卖点的条件,最后根据分析结果形成股票买卖的操作策略。

本发明方法在每日收盘后进行计算分析,无未来函数,后续买卖点的生成不会影响前面生成的结果。对股票买卖点的结果可视化后,用户使用上直观、方便。

假设股票列表为s,s=[s1,s2,…,si,…,sn],n为股票池中股票的数量,如中国上市股票的数量或美国上市股票的数量。

本发明方法的具体步骤如下:

(1)基于长短期线设计买卖点计算框架;

(2)基于斜率组合、基于上下影线等方式对长期线的生成进行参数调整;

(3)根据短期线所依据计算数据的范围,将输出结果分为积极和稳健两种典型的操作方式;

(4)结合历史数据,根据买卖点生成真实的买卖记录,并计算获利,以进行参数调优;

(5)对每只股票在每天收盘后,以收盘价或结合交易量等方式,计算该股票当日是否出现买点或卖点;

(6)对所有股票的当日买卖点进行统计分析,同时以二分查找法预估明日出现买卖点的条件;

(7)根据分析结果形成股票买卖时机及操作策略。

其中,步骤(1)中基于长短期线设计买卖点计算框架,具体为:基于当前及历史数据计算两条走势曲线:长期线和短期线。长期线也可以称为卖线;短期线也可以称为买线。当短期线从下往上穿过长期线时,记录该交点为买点;反之,当短期线从上往下穿过长期线时,记录该交点为卖点。长短期线以统一的形式定义为:line=ema(slope(d,k)*t+d,l)。根据参数变量k、t、l取值的不同,基于统一形式进一步具体定义长短线或买卖线。如典型定义:

买线:buyline=ema(slope(d,kb)*tb+d,lb)=ema(slope(d,8)*4+d,14),即以近8天的拟合斜率作为走势惯性往前走4步后,进行参数为14的指数加权移动平均,式中kb=8,tb=4,lb=14;

卖线:sellline=ema(slope(d,ks)*ts+d,ls)=ema(slope(d,20)*10+d,35),即以近20天的拟合斜率作为走势惯性往前走10步后,进行参数为35的指数加权移动平均,式中ks=20,ts=10,ls=35。

其中,步骤(2)中基于斜率组合、基于上下影线等方式对长期线的生成进行参数调整,具体为:主要调整卖线sellline的slope(d,ks)*ts部分。有如下两种调整方式。

基于斜率组合对长期线的调整:主要目标是调整ts的大小,即往前走的步数的大小。记近期斜率slp1=slope(d,20);短期斜率slp2=slope(d,4),根据slp1和slp2是否大于0,则有四种组合。对不同组合条件下,增大或减小ts的值。其他情况ts保持不变。

基于上下影线对长期线的调整:主要目标也是调整ts的大小。上影线定义为:(high-max(close,open))/high>thresholdup;下影线定义为:(min(close,open)-low)/low>thresholddown;式中high为最高价,close为收盘价,open为开盘价,low为收盘价。thresholdup为上影线影子长度的最小阈值。thresholddown为下影线影子长度的最小阈值。记近期斜率slp1=slope(d,20),则根据斜率的正负和上下影线,有四种组合。对不同组合条件下,增大或减小ts的值。其他情况ts保持不变。

其中,步骤(3)中根据短期线所依据计算数据的范围,将输出结果分为积极和稳健两种典型的操作方式,具体为:短期线或买线buyline=ema(slope(d,kb)*tb+d,lb),根据短期线所依据计算数据的范围,定义两组相关参数:超短期和短期。超短期线:buylinea=ema(slope(d,4)*2+d,7),此时kb=4,tb=2,lb=7,即依据近4天数据的斜率惯性往前走2步。短期线:buylineb=ema(slope(d,8)*4+d,14),此时kb=8,tb=4,lb=14,即依据近8天数据的斜率惯性往前走4步。将超短期线和短期线结合前述的卖线sellline,计算交点得到买卖点后,组合形成两种操作方式:积极操作方式和稳健操作方式。积极操作方式:买线=buylinea;卖线=sellline;稳健操作方式:买线=buylineb;卖线=sellline。

其中,步骤(4)中结合历史数据,根据买卖点生成真实的买卖记录,并计算获利,以进行参数调优,具体为:买线buyline和卖线sellline的定义涉及一些参数,包括kb,tb,lb,ks,ts,ls等,实际应用时,结合每只股票的历史数据进行参数调优。具体步骤为:1、以某只股票,取一段时间的数据;2、仅调整一个参数,固定其他参数,生成买卖点;3、根据买卖点,生成真实的买卖记录;4、计算买卖的次数和总获利情况;5、与上次的获利结果进行比较,保留获利大的结果和参数;6、重复执行2~5步骤,获得当前调整参数的最优值;7、固定该调整参数的值,以类似步骤换调另一参数的值。所有参数都经过调整后,这样算做一轮。根据以上步骤进行几轮的参数调整,最终获得的参数即为调优后的参数。

其中,步骤(5)中对每只股票在每天收盘后,以收盘价或结合交易量等方式,计算该股票当日是否出现买点或卖点,具体为:根据调优参数,每天生成2种类型的买卖点图:积极操作方式下的买卖点图和稳健操作方式下的买卖点图,如图2所示。对于某只股票某天来说,不一定有买点或卖点,大部分时候是持股或持币不动的阶段。

其中,步骤(6)中对所有股票的当日买卖点进行统计分析,同时以二分查找法预估明日出现买卖点的条件,具体为:对所有股票统计出现买点股票的数量和出现卖点股票的数量。同时输出出现买点的股票。在输出买点股票时,可结合其他一些规则进行排序。对每只股票预估明日出现买卖点的条件:如果当前状态是买点买入后的持续阶段,则预估明日出现卖点的条件;反之如果当前状态是卖点卖出之后的持续阶段,则预估明日出现买点的条件。在预估明日可能出现买点或卖点时,以二分查找法方式进行获取。以获取买点条件为例,具体为:1、在股票数据序列的最后添加一新数据d0,初始值为当前收盘价的涨停价;计算新数据是否是买点,若不是,则为持币观望状态;若是,则进入下一步。2、对半缩小上涨幅度的值区间,以区间的中位值计算新数据d0。以该新序列计算买点,根据最后一位是否是买点标志计算新的上涨幅度区间,计算新数据d0,直到计算出来的新数据d0价格保持不变。此时价格d0即为出现买点的条件。

其中,步骤(7)中根据分析结果形成股票买卖时机及操作策略,具体为:股票入市操作的时机综合考虑大环境和小环境。大环境是指当日出现买点股票的数量显著大于出现卖点股票的数量。如2017年6月15日,积极操作方法出现卖点股票的数量有34只,而出现买点的股票有407只,此时即为较好的大环境入市时机。而小环境则是指当日股票是否出现买点,当日的交易量相对前一日的变化,买点与最后一个卖点的距离等因素的综合考虑。小环境考虑因素涉及的变量在步骤(6)中都已经统计得到,此时根据排序数据结果即可方便进行选择操作,选择靠前的股票一般具有出现了买点,交易量较前一日有较大增长变化,且该买点距离上个卖点尽可能的远等特征。在实际操作时,先判断大环境,再考虑小环境。

附图说明

图1是本发明股票买卖点计算方法及其在股票买卖时机上的判断策略流程图。分为两部分,上面部分为计算模型方法的设计和参数训练过程。下面部分为方法的应用和实际操作策略。

图2为某只股票某天生成的2种类型的买卖点图。上半部分为积极操作方式下的买卖点图,下半部分为稳健操作方式下的买卖点图。

具体实施方式

下面结合附图和实例,对本发明进行详细的描述。

本发明公开了一种股票买卖点计算方法及其在股票买卖时机上的判断策略。这是一种技术分析的方法,方法在每日收盘后进行计算分析,后续买卖点的生成不会影响前面生成的结果。技术分析和基本面分析并不是抵触的,很多成熟的投资者都会同时使用这两种工具来进行投资。一般来说,通过基本面分析能够甄别出真正的有投资价值的个股,而技术分析在实战中更能体现出其威力,特别是其客观的判断,能让投资者在操作股票的每个阶段都能非常清楚当下应该做出怎样的操作决策。

假设股票列表为s,s=[s1,s2,…,si,…,sn],n为股票池中股票的数量,如中国上市股票的数量或美国上市股票的数量。对于某只股票sm,m=1,…,n,基于其当前及历史数据进行买卖点计算的具体步骤如下。

一、基于长短期线设计买卖点计算框架。

基本的计算框架是:基于当前及历史数据计算两条走势曲线:长期线和短期线。长期线也可以称为卖线;短期线也可以称为买线。当短期线从下往上穿过长期线时,记录该交点为买点;反之,当短期线从上往下穿过长期线时,记录该交点为卖点。

长短期线以统一的形式定义为:line=ema(slope(d,k)*t+d,l)

式中变量解释如下:

-d:代表输入的股票数据,可以为截至到当日的收盘价序列close,成交量序列vol等,或者序列数据之间的某种变换组合,如close*log(vol,100)等;

-k:为参数变量,代表以近k个交易日的股票数据作为计算基础;

-slope(d,k):代表以近k交易日的股票数据d,计算线性回归后直线的斜率;

-t:代表往前走t步;

-slope(d,k)*t+d:代表以近k日回归直线的斜率走势惯性往前走t步后的新股票数据;

-ema(p,l):指数平均数指标,即对待加权序列p,进行以指数形式递减加权的移动平均。具体为:ematoday=α*ptoday+(1-α)*emayesterday;

其中,α为平滑指数,取作2/(l+1)。当公式不断递归,直至ema1出现,ema1是没有定义的,这时ema1直接取值为p1。

根据参数变量k、t、l取值的不同,以上述统一形式进一步具体定义长短线或买卖线,如以下典型定义。

买线:buyline=ema(slope(d,kb)*tb+d,lb)=ema(slope(d,8)*4+d,14),即以近8天的拟合斜率作为走势惯性往前走4步后,进行参数为14的指数加权移动平均。式中kb=8,tb=4,lb=14。

卖线:sellline=ema(slope(d,ks)*ts+d,ls)=ema(slope(d,20)*10+d,35),即以近20天的拟合斜率作为走势惯性往前走10步后,进行参数为35的指数加权移动平均。式中ks=20,ts=10,ls=35。

二、基于斜率组合、基于上下影线等方式对长期线的生成进行参数调整。

基于以上买卖线的框架及定义,对卖线进行深度细节调整。主要调整卖线sellline的slope(d,ks)*ts部分。具体调整方式包括但不限制于如下两种。

2.1基于斜率组合对长期线的调整。

主要目标是调整ts的大小,即往前走的步数的大小。记近期斜率slp1=slope(d,20);短期斜率slp2=slope(d,4),abs代表取绝对值,则有如下四种斜率组合的计算:

(1)slp1>0且slp2>0。此时若slp2>=slp1,则减小ts的值;

(2)slp1>0且slp2<0。此时若abs(slp2)>=slp1,则增大ts的值;

(3)slp1<0且slp2>0。此时若slp2>=abs(slp1),则增大ts的值;

(4)slp1<0且slp2<0。此时若abs(slp2)>abs(slp1),则减小ts的值;

其他情况ts保持不变。

2.2基于上下影线对长期线的调整。

主要目标也是调整ts的大小。先进行一些定义如下:

上影线定义为:(high-max(close,open))/high>thresholdup;

下影线定义为:(min(close,open)-low)/low>thresholddown;

式中high为最高价,close为收盘价,open为开盘价,low为收盘价。thresholdup为上影线影子长度的最小阈值。thresholddown为下影线影子长度的最小阈值。

记近期斜率slp1=slope(d,20),则根据斜率的正负和上下影线,有如下四种计算组合:

(1)slp1>0且有上影线。此时增大ts的值;

(2)slp1>0且有下影线。此时减小ts的值;

(3)slp1<0且有上影线。此时减小ts的值;

(4)slp1<0且有下影线。此时增大ts的值;

其他情况ts保持不变。

三、根据短期线所依据计算数据的范围,将输出结果分为积极和稳健两种典型的操作方式。

在长期线(卖线)确定后,接下来对短期线(买线)进行处理。

根据前述定义,买线为:buyline=ema(slope(d,kb)*tb+d,lb),进一步的根据短期线所依据计算数据的范围,定义两组相关参数:超短期和短期。

超短期线:buylinea=ema(slope(d,4)*2+d,7),此时kb=4,tb=2,lb=7,即依据近4天数据的斜率惯性往前走2步。

短期线:buylineb=ema(slope(d,8)*4+d,14),此时kb=8,tb=4,lb=14,即依据近8天数据的斜率惯性往前走4步。

将超短期线和短期线结合前述的卖线sellline,计算交点得到买卖点后,组合形成两种操作方式:积极操作方式和稳健操作方式。

积极操作方式:买线=buylinea;卖线=sellline。

稳健操作方式:买线=buylineb;卖线=sellline。

四、结合历史数据,根据买卖点生成真实的买卖记录,并计算获利,以进行参数调优。

上述买线buyline=ema(slope(d,kb)*tb+d,lb)和卖线sellline=ema(slope(d,ks)*ts+d,ls),这些定义涉及一些参数,包括kb,tb,lb,ks,ts,ls等,在以上的说明中为了说明方便,给出了一些示例参数的取值。实际应用时,结合每只股票的历史数据进行参数调优。具体步骤如下。

4.1以某只股票,取一段时间的数据。一般只取近一年或半年的数据作为训练数据。所获取的股票数据作为参数d的输入。上述参数d为一个序列数据,因此,如果买卖点的生成仅考虑价格的因素,则只需拿收盘价close数据序列进行训练;如果考虑量的因素,则将收盘价close和成交量vol进行运算组合,如close*log(vol,100)或close*pow(vol,0.1),上式中log为对数函数,pow为幂函数。

4.2仅调整一个参数,固定其他参数,生成买卖点。由于包含多个参数,无法同时进行调整,因此先固定其他参数,仅留一个参数进行调整。参数的取值为整数值,且仅有可数的几个可取值。参数取值后,生成买线和卖线,并计算他们的交点,根据买线上穿卖线还是下穿卖线进一步确定买点和卖点。

4.3根据买卖点,生成真实的买卖记录。在买点的收盘价买入,在卖点的收盘价卖出。当买入和卖出成一对时,记录买入、卖出的价格。

4.4计算买卖的次数和总获利情况。统计每次买卖的收益情况,同时对买卖次数折算成获利成本后,与获利情况求和,获得最终的获利结果。

4.5与上次的获利结果进行比较,保留获利大的结果和参数。

4.6重复执行4.2-4.5步骤,获得当前调整参数的最优值。

4.7固定该调整参数的值,以类似步骤换调另一参数的值。所有参数都经过调整后,这样算做一轮。根据以上步骤进行几轮的参数调整,最终获得的参数即为调优后的参数。

五、对每只股票在每天收盘后,以收盘价或结合交易量等方式,计算该股票当日是否出现买点或卖点。

股票买卖点的判断是在每日收盘后进行的。每只股票单独计算。基于上一步骤获得的调优参数,每天生成2种类型的买卖点图:积极操作方式下的买卖点图和稳健操作方式下的买卖点图,如图2所示。对于某只股票某天来说,不一定有买点或卖点,大部分时候是持股或持币不动的阶段。

六、对所有股票的当日买卖点进行统计分析,同时以二分查找法预估明日出现买卖点的条件。

6.1对所有股票的买卖点数量进行统计。进行每只股票的买卖点生成后,有些股票会出现买点,有些会出现卖点。对所有股票统计出现买点股票的数量和出现卖点股票的数量。同时输出出现买点的股票。在输出买点股票时,可结合其他一些规则进行排序。

6.2对每只股票预估明日出现买卖点的条件。如果当前状态是买点买入后的持续阶段,则预估明日出现卖点的条件;反之如果当前状态是卖点卖出之后的持续阶段,则预估明日出现买点的条件。由于中国股票是有涨跌幅限制的,因此在预估明日可能出现买点或卖点时,以二分查找法方式进行获取。以获取买点条件为例,具体如下。

(1)在股票数据序列的最后添加一新数据d0,初始值为当前收盘价的涨停价;计算新数据是否是买点,若不是,则为持币观望状态;若是,则进入下一步。

(2)对半缩小上涨幅度的值区间,以区间的中位值计算新数据d0。以该新序列计算买点,根据最后一位是否是买点标志计算新的上涨幅度区间,计算新数据d0,直到计算出来的新数据d0价格保持不变。此时价格d0即为出现买点的条件。

七、根据分析结果形成股票买卖时机及操作策略。

本发明方法股票入市操作的时机综合考虑大环境和小环境。这里大环境是指当日出现买点股票的数量显著大于出现卖点股票的数量。如2017年6月15日,积极操作方法,出现卖点股票的数量有34只,而出现买点的股票有407只,此时即为较好的大环境入市时机。而小环境则是指当日股票是否出现买点,当日的交易量相对前一日的变化,买点与最后一个卖点的距离等因素的综合考虑。小环境考虑因素涉及的变量在步骤六中都已经统计得到,此时根据排序数据结果即可方便进行选择操作,选择靠前的股票一般具有出现了买点,交易量较前一日有较大增长变化,且该买点距离上个卖点尽可能的远等特征。在实际操作时,先判断大环境,再考虑小环境。

综上所述,本发明公开了一种股票买卖点计算方法及其在买卖时机上的判断策略。方法设计了一种股票买卖点计算的框架,可在此框架下,根据股票历史走势、总结经验调整相关参数。方法将输出结果分为两种典型的操作类型:积极方式和稳健方式。对两种方式分别以历史数据进行训练获得最佳参数。对所有的股票当日的买点和卖点进行统计分析,同时以二分查找法迅速预估明日出现买点或卖点的条件,最后根据分析结果形成股票买卖的操作策略。

本发明方法同样可应用于证券类具有时间序列特征的数据,如基金、期货等。因此,尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是不可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容。当前公开的实施例在所有方面应被理解为说明性的而非对其请求保护的范围的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1