8月24日个股挖掘(数据挖掘中易犯的几大错误)
来自:MACD论坛(bbs.shudaoyoufang.com)
作者:logicstorm
浏览:27731
回复:4
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
今天看到一篇好文章《数据挖掘中易犯的几大错误》,对于想了解数据挖掘的朋友可能会有帮助,见后面的附录。
昨天大市开始好转,算法经过四天的"休息"后,又再开始挖出涨停。
从理论上说,以下每天挖掘出的个股,排列靠上的适合牛市,靠下的适合熊市。
8月24日 | SH600493 | 凤竹纺织
8月24日 | SH600545 | 新疆城建
8月24日 | SH600696 | 多伦股份
8月24日 | SZ000970 | 中科三环
8月24日 | SH600606 | 金丰投资
如需了解算法的更多信息,请访问我的博客(逻辑风暴)。
附录:
非常感谢"MACD看盘"网友转发给我的这篇文章,我以前没有看过这篇文章,今天第一次看到,发现这篇文章和我的思路竟然惊人的吻合。如果大家有兴趣,可以搜索这篇文章的完整版。下面是这篇文章提出的问题,这些问题正好是我在写算法时碰到过的实际问题,我在这里写出我的解决方法,如果大家有更好的方法,欢迎和我继续讨论。
数据挖掘是一种技术,它将传统的数据分析方法与处理大量数据的复杂算法相结合。那么这些易犯的错误,你犯过吗?按照Elder博士的总结,这几大易犯错误包括:
1. 缺乏数据(Lack Data)
对于股票而言,不存在这个问题,因为股票有大量的历史数据,就拿中国股市来说,已经有10几年的历史了。
2. 太关注训练(Focus on Training)
我的确用了很多时间在trainning上,用于trainning的数据从最初的120日,增加到600日,最近又增加到960日。经过验证,Training数据的增加对于算法准确率的提高的确有帮助,但缺点就是计算量成几何级的增加。作者在这里的意思是,以几何级增加运算量来换取准确率微弱的提高不是很划算,但我认为,对于股市预算算法,每提高1%的准确率,就是一个很大的进步,在机器性能允许的情况下,增加training是有必要的。
3. 只依赖一项技术(Rely on One Technique)
我目前使用了三种数据挖掘算法(神经网络,决策树,最近邻居),在选择这三种算法之前,我其实尝试了另外10几种数据挖掘算法,经过验证对比之后才最终决定了目前使用的这三种算法。
4. 提错了问题(Ask the Wrong Question)
在写算法之前,我也只是抱着尝试态度来回答这个问题:数据挖掘是否能用在股票预测上?
经过这四个多月来的验证和完善,似乎证明这个问题的回答应该是肯定的。
5. 只靠数据来说话(Listen (only) to the Data)
我也明白股市会受外围消息面的影响,但由于外围消息面很难量化并代入算法,所以目前算法只是考虑数据方面,这也是目前算法所存在的一个局限性。
6. 使用了未来的信息(Accept Leaks from the Future)
在以前数据量不足的情况下,我的确使用了未来信息,未来信息会影响算法的准确性,这也是为什么以前会得出120天累计上涨到5万点。现在的算法已经完全排除了未来数据,结果会更加接近现实。由于时间问题,120天累计上涨的结果还没有计算出来(大概需要3周的计算时间),估计2万多点应该是有的。
7. 抛弃了不该忽略的案例(Discount Pesky Cases)
股票数据中似乎不存在案例一说,因为所有数据都是一致的,也就是说只有一种案例。
8. 轻信预测(Extrapolate)
我们不能轻信预测,我在很久以前的文章就已经提到:
数据挖掘的目的是从历史数据中找出规律来,从而对未来进行预测,但历史数据不能100%反映未来,所以不能完全相信预测。
算法只是起辅助作用,配合个人的实战经验,才能取得更大的收益。
9. 试图回答所有问题(Answer Every Inquiry)
我知道数据挖掘的局限性,所以现在算法的目标是解决两个问题:
个股挖掘:从所有个股里面找出大涨机会大的个股;
点位预测:预测个股第二天的点位(现在已暂停)。
10. 随便地进行抽样(Sample Casually)
我所选取的数据是股票最近960天的所有数据,不存在抽样问题。
11. 太相信最佳模型(Believe the Best Model)
新算法为了适应不同的大市情况(熊市,牛市,持平),一共建立了21个数据模型,并从中选取了6个最适合的。但我相信这些模型也不是最佳的,算法还有提高的空间。 |