遗传算法在股票中的运用_第1页
遗传算法在股票中的运用_第2页
遗传算法在股票中的运用_第3页
遗传算法在股票中的运用_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于浮点数编码的遗传算法来实现股票趋势的预测程强1+, 张永昌2+, 李冰季+31(华中师范大学 计算机科学与技术系,武汉 430079)2(华中师范大学 计算机科学与技术系,武汉 430079)3(华中师范大学 计算机科学与技术系,武汉 430079)Technical Indicators Optimization in Stock Trend Following Using Float-encoding Genetic Algorithm* Chengqiang1, Zhang Yongchang2, Li Binji31(Department of Computer Science and Technology, Centre china normal University, Wuhan 430079,China)2(Department of Computer Science and Technology, Centre china normal University, Wuhan 430079,China)3(Department of Computer Science and Technology, Centre china normal University, Wuhan 430079,China)Abstract:Stock trend following plays an important role in algorithmic trading . In this paper, we establish a model employing Float-encoding Genetic Algorithm (FGA) to determine when to buy and sell calledfollowing the amount of an uptrend and downtrend respectively. In our model, we firstly smooth the closing price by Exponential Moving Average (EMA) and partition the sample data into two parts respectively for training and testing. Then in the training section, the values are optimized with the objective of gaining highest profits by FGA within the given scopes based on the risky that users can take. Finally we examine the performance of the model by trading on the testing data. The experiment conducted on Hang Sang Index (HSI), Hong Kong shows that the model is very promising. Keywords: Stock trend following, Float-encoding Genetic Algorithm, Exponential Moving Average摘 要:股票趋势预测在遗传算法交易中起到了重要作用,在这篇文章里,我们建立一个根据相对的上升量和下降量来决定什么时候买和什么时候卖的所谓P&Q点的基于遗传算法的模型。在我们的模型里,我们首先利用指数平均来平滑我们的股票数值而且我们把样本数据化为两部分,一部分用来训练模型,另一部分用来测试模型。在训练阶段,这个P和Q值根据我们获得的股票收益的最大值而用遗传算法来优化的,当然这也与我们设计的能够承受的最大风险率相关。最后我们利用测试数据来交易,通过这我们可以检验这个模型的表现怎么样。这个实验是基于恒生指数的,通过实验,反应这个模型非常有前途。Keywords:股票趋势预测,p&q,遗传算法的浮点数编码,指数平均平滑1 引言股票趋势的跟踪和趋势的预测变比而言是一种不同的交易技巧。它根据市场的趋势和基于已经规定的原则做交易。这个原则就是什么时候买和什么时候这个核心问题。因此在这篇论文里我们建议一个P和Q的技术指标来指明上升的或者下降的量,这个量用来激发买或者卖的信号,这个信号是由基于浮点数的遗传算法决定的。一旦用户根据他们所能承受的风险而给定P和Q值,我们就会根据p和Q的范围以及过去十年使这个收益达到最大值的原则来精确计算出P和Q的值。然后用户就可以根据这两个值来做交易。不仅如此,这两个值会根据最新的股票数据来定期更新。这篇文章提供遗传算法来优化P和Q的值。遗传算法的能力是基于自然和人类基因的机制。它能根据以前的解决方案来改进未来的解决方案的变现。遗传算法的第一个优势是它针对搜索空间利用随机操作来代替确定的准则。例外它的一个优势是并行搜索更多的优化解。传统的基于二进制表示的遗传算法面对多维或者大取值范围的数据有很多缺点。举一个例子,在我们的模型中,如果用户提供P和Q值范围比较大得话。对应的用二进制表示的染色体就会非常长,这对于我们的计算会浪费很长的时间。然而对于我们在浮点数编码用到的浮点数编码的基因就可以避免上面提到的问题,因而它能为我们的模型提供一个令人满意的结果。在这篇文章里,我们首先介绍趋势跟踪的概念,然后我们是用来平滑我们股票市场的股票价格的指数平均平滑方法的介绍,接着是在我们模型中用到的用来优化P和Q值的浮点数表示的遗传算法。最后是我们在恒生股票的实验和我们最终的结论。2 股票趋势跟踪的交易模型2.1 取票趋势跟踪趋势跟踪即指跟趋势一起走,或者就是努力跟踪方向。如果市场在上升,那么一个人有理由相信它会继续上升一段时间,如果市场在下降,他们就会相信市场还会持续下降一段时间,因此他们开始卖出或卖空。趋势跟踪来源于股票市场交易的“势头理论”,这个理论指出,只要上升,就会上升一段时间,只要下降,就会继续下降一段时间,因此我们可以利用这种趋势跟踪来获益。2.2 指数平均平滑在真实的市场中,股票价格波动不是线性的,相反它非常不稳定,即价格会重复的上升或者下降。因此我们不可能(不现实)在这种趋势下来应用P和Q值。因此,我们需要通过技术指标来平滑这种波动的指数价格。公式如下: 其中:t是交易的那一天,n是平滑之后的那一天,n的值越小,那么EMA数值就能更好的跟踪股票价格。Price(t)就是t这一天股票的价格。2.3 遗传算法模型中的浮点数编码同遗传算法中的二进制编码不同,浮点数编码在染色体中应用真实的数值和一些特殊的操作。这样它避免了二进制编码中编码和解码需要耗费大量计算时间和存储空间。在二进制遗传算法中,有三个基本的操作:选择,交叉,变异。每一代中,每一个个体的适应值被计算出来。适应值更大的个体在进化中可以更好的生存,同时,适应度更差的个体会更容易被清除出来。2.3.1 遗传算法染色体的编码正如上面所说,我们在遗传算法中迭代的目的就是要找出P和Q的两个值,这个值会使我们的收益值达到最大,当然P和Q的范围是根据用户所能承受风险确定的。染色体如下:在遗传算法的迭代中,P和Q值会变化,使适应值最大,一旦它满足最终的条件,迭代就会结束。2.3.2 遗传算法的适应度函数适应度函数是用来衡量个体的生存能力的。这意味着适应度更大的个体在竞争中就可以更好的生存下来,在这篇论文里,适应度函数就是在训练模型阶段股票获得的最大总收益。在我们的实验中我们仅仅应用卖出价格和买进价格之间的差值。公式如下:其中:和 指的是在第i次中卖出价格和买进价格。t,t是对应的时间。N是在训练数据中交易的次数。2.3.3 选择选择的目的就是要在进化中选取适应环境最好的个体,这些被选中的个体会根据他们适应值被存进交配库里。在这篇论文里,我们采取轮盘赌选择算法来执行这个操作,描述如下:(1) 计算每个个体的适应值。(2) 计算每个个体的比例:(3) 计算每个个体的选择概率:(4) 然后在(0-1)之间任意选取一个R。选择满足条件的第(i+1)th个体,重复这个步骤直至制定的个体被选择到。2.3.4 交叉 在遗传算法中交叉是一个特别重要的操作。在指定的P概率下,这是一个基因的结合并产生新个体的过程,交叉的过程如下:其中:P1,P2是父代的基因,P1,P2是交叉后对应的后代的基因,是在(0-r),r=1。L,R是P的取值范围。Q的情况和P类似。2.3.5 变异变异是一种使染色体中一个或多个基因从当前的状态中变化出来,这样就扩大了搜索空间,这样有助于减小操作陷入局部优化最优解的概率,过程如下:其中:k是恒定的学习参数。Q的情况类似。3 实验和结果3.1 训练阶段:实验是基于恒生指数的从2001.1.1-2009.9.1的股票数据。其中:前面2000个记录用来训练最好的P和Q值,剩下的从2009.1.20-2011.9.14的记录用来测试。数据如下:2010年的恒生指数:经过EMA(25)处理之后的数据说明:对应短期,中期,长期有三种不同的参数10,25,50用来对数据进行平滑处理。经过了160代,P和Q值相对稳定在421.330815和684.627900.3.2 测试阶段,变异率:0.02,交叉率:0.98,种群大小:50,代数:1000代。对应每个P和Q值的收益是:说明:P和Q范围太小以及EMA值比较小时会使交易的频率太高,这样就会包括一些错误的交易信号的产生。但是P和Q值范围太大以及EMA值太高时,会错过一些交易信号,这取决于用户所能承受的风率。4 References:1.Smith, T.F., Waterman, M.S.: Identification of Common Molecular Subsequences. J. Mol. Biol. 147, 195-197 (1981) 2.May, P., Ehrlich, H.C., Steinke, T.: ZIB Structure Prediction Pipeline: Composing a Complex Biological Workflow through Web Services. In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 1148-1158. Springer, Heidelberg (2006)3.Foster, I., Kesselman, C.: The Grid: Blueprint for a New Computing Infrastructure. Morgan Kaufmann, San Francisco (1999)4.Czajkowski, K., Fitzgerald, S., Foster, I., Kesselman, C.: Grid Information Services for Distributed Resource Sharing. In: 10th IEEE International Symposium on High Performance Distributed Computing, pp. 181-184. IEEE Press, New York (2001)5.Foster, I., K

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论