BTC从10月初的不到2万,暴涨到12月7日的最高点12万,接着连续暴跌3天,现价不到9万(12月10日晚8点)。如果我们能够提前预知暴涨暴跌,人生该是多么的美好。
先上图:
黑色长线为BTC最近270天的实际走势,彩色短线为人工智能以5天为周期预测的走势(数据进行了标准化[-1,1])
在大趋势上的预测比较准确,在拐点处的预测不够准确;对下跌的预测比上涨的预测准确。
这不是一个技术问题,而是一个哲学问题。正如,上帝真的存在么?笔者倾向于,币价的趋势是可以预测的。因为,历史总是相似的。
比特币作为去中心化货币,难于被单一实体操控,在多方博弈的市场中各方博弈的手段总是历史相似的;
比特币作为虚拟货币,价格更大程度上反应的是人类的心理预期,而人类的心理预期总是历史相似的;
单一的人类行为和心理是随机的,但是群体行为和心理是有规律可循的
我们在认可“历史总是相似的”这个大前提下,讨论如何预测币价。
Tensorflow是google于2015年开源的一个机器学习框架,google在自家的搜索、地图、翻译等产品上均使用了该框架。TensorFlow的出现大大降低了深度学习的门槛,只要稍微了解一些深度学习的常识,就能自己上手搭建一个可运行的分布式深度学习应用。打败李世石的阿尔法狗,就是一个深度学习应用。基于深度学习的价格预测应该会比跳大神更令人信服。
LSTM全称Long Short-TermMemory长短期记忆神经网络,专门用于预测时间序列相关问题,主要用于语音识别、翻译、图片描述、价格预测等领域。LSTM改进了RNN(Recurrent Neural Networks)循环神经网络,对历史数据更加友好,解决了RNN层数过多时梯度消失的问题。人类是基于自己对已知历史的理解来推测未来的,人类不会将所有已知知识丢弃,然后用空白大脑进行思考,人类的思维具有连续性和持久性。LSTM就是模拟了人类大脑的这个思维过程。用LSTM进行价格预测应该是一个不错的选择。
我们选择了BitCoinAverage作为我们的数据提供商,BitCoinAverage拥有全球运行时间最长的虚拟货币价格数据库。我们选取了从2010年7月至今(2017年12月10日),全球50多个交易平台的BTC历史数据,作为我们的数据来源。
为了减小单一市场和短时间价格剧烈波动对币价趋势的影响,我们把所有交易平台的当日比特币均价作为当日比特币的价格。我们一共获取到2700多天比特币的价格。我们假设比特币当日价格是受当日之前30天比特币的价格影响的,我们可以把2700多天分解为2700多个训练组,每个训练组的输入为连续30天的比特币价格,输出为第31天的比特币价格。我们从中随机选择2400多组成为训练集,另外的270多组成为验证集。我们将训练集放入LSTM中进行训练。
训练结束之后,我们用验证集验证训练结果。验证方式如下:放入1-30天的价格,预测出第31天的价格;放入2-30天的价格和第31天的预测价格,预测出第32天的价格;以此类推,直到预测出第35天价格;绘制出第31到35天的价格趋势。预测结果如图所示。
我们的预测模型还处于初级阶段,预计会在以下方面进行改进:
1. 将开盘价、收盘价、最高价、最低价纳入影响因子
2. 减小历史数据的时间间隔,按小时获取历史数据
3. 将按日预测改进为按小时预测
4. 将其他币种的价格波动纳入影响因子
5. 将实时新闻纳入影响因子
6. 增加LSTM的层数
7. 优化激活函数
8. 将序列模型改进为函数模型
如果你关心虚拟货币的价格,可以关注作者公众号emoneyhome,和作者一起探讨。
币界网免责声明:
1.本网站所提供的所有信息仅供参考,不构成任何投资建议。
2.用户在使用本网站的信息时应自行判断和承担风险。
3.币界网不对用户因使用本网站信息而导致的任何损失负责。
4.用户在进行任何投资活动前应自行进行调查和研究。
5.币界网不对用户基于本网站信息做出的任何投资决策负责。
6.用户在本网站发布的任何内容均由其个人负责,与币界网无关。