在文章“Analysis of Hidden Markov Models and Support Vector Machines in Financial Applications”, 作者利用SVM预测sp500过去30天的买卖方向,在文章第二部分的结尾处,作者说这个方法可以达到70%的准确率。
扫了一眼,初看感觉跟我的想法蛮近的~~ 再多读了几分钟,看来他是在用HMM和SVM等各种单一方法,对市场进行预测。这个想法我也考虑过,不过我觉得单一方法直接预测都有各自的弊端。 我后来在另一篇语音识别的paper里面受到点启发,我觉得可以用SVM做形态识别,HMM做序列识别。两者结合在一起可能效果会更好。当然形态识别那里还有许多别的替代品,倒谱,小波变换,以及各自的结合等等都是可以考虑的方法~ 好想马上就开始这些研究... ...
预测对资金管理和配置很重要。 我所说的不是一个简单的“准确率”游戏——是指投资是一个变动的过程,不象掷硬币有明确的始终点,投资过程中最难把握的是过程,往往会出现你预测“准确”但操作“过程”中被甩出去的情况,这个也是“分析师”和“交易师”最大的不同。
svm的特点是针对高维小样本问题有较好的表现,而且假设样本服从iid,比如文本分类,图像识别等任务svm会非常适用。而时间序列数据大多是序列相关的,也就是所谓的ar,ma,当然svm在适用性有一定的折扣了。
svm和其他模式识别工具一样,单纯就预测准确率来讲是可以调整到很高的,特征和模型参数起主要作用。我曾用svm预测A股第二天的涨跌,有些股票真的很准(有时候弱市一天就几只股票涨,模型能够抓住),但是有时候又不准(好像是大家说的模型失效问题,我用的训练成功的模型每一个都是经过历史数据严格cross validation的)。至今不得其解,哪位大侠要是知道原因,还望指点一二,多谢。
简单的讲就是止损太大,策略的σ不理想 同时,我回过头又看到了这篇论文,必须再说两句: testdata是30天不说,它的结果只是"up to 70%" 它的这70%应该是table10里的sp_500的70%(注:他对这个原本67%的结果进行了C/G优化) 比较搞笑的一点是,这个表里有十个其他股票的数据,平均预测准确率是60.67%,而sp_500就这么简单的从没有news的53.33%蹦到了70% 如果让他再预测30天,结果肯定不是这样了