今天看啥  ›  专栏  ›  coderpai

论文阅读 | An Artificial Neural Network-based Stock Trading System

coderpai  · 掘金  ·  · 2018-02-06 07:17

作者:chen_h
微信号 & QQ:862251340
微信公众号:coderpai
我的博客:请点击这里

论文链接:arxiv

1. 论文摘要

在这篇文章中,作者提出了一个神经网络架构用来对股票价格进行预测,使用的数据源是股票的一些技术分析指标。首先,作者开发了一个将金融股票序列数据转化成一系列买卖的信号,也就是制作模型训练集和测试集。然后,在所有道指股票上面进行学习(时间从 1997 年到 2007 年)。作者使用了 Apache Spark 大数据框架用于训练过程,最后利用从 2007 年到 2017 年的数据进行模型测试。结果表明,通过选择最合适的技术指标,在大多数情况下,神经网络模型可以实现比较好的策略结果。此外,微调技术指标和(或)优化策略可以提升整体的交易表现。

2. 数据处理

股票市场上面有许多的技术指标,在这里我们主要选择的是三种技术指标:RSI,MACD 和 Williams %R(WR)。

2.1 Relative Strength Index(RSI)

相对强弱指数(RSI)是显示股价历史强弱的技术动量指标。它还比较了在特定时间段内的损失和收益,具体公式如下:

2.2 Moving Average Convergence and Diver- gence(MACD)

MACD 是一个说明股价走势的技术指标。它等于 12 日指数移动平均线(EMA)与 26 日均线指数(EMA)的差值。具体公式如下:

2.3 Williams %R(WR)

威廉指标是基于动量的技术指标,显示股价超买和超卖的变化。具体公式如下:

3. 模型分析

在这篇文章中,作者一共用了两个模型:一个是金融序列模型,用来处理原始数据,得到我们的买点和卖点;另一个是神经网络模型,用来预测买点和卖点。

3.1 金融序列模型

我们通过编写模型,来自动分析股票历史数据中的波峰和波谷,从而得到买点和卖点数据。

3.2 神经网络模型

神经网络模型一共有四层,即一个输入层(4个节点),两个隐藏层(5个节点和4个节点)和一个输出层(3个节点)。我们输入的数据分别是收盘价(close price),RSI,WR和MACD。输出数据是买点,卖点和不操作(三分类)。具体模型如下:

论文完整的算法步骤,可以如下概括:


CoderPai 是一个专注于算法实战的平台,从基础的算法到人工智能算法都有设计。如果你对算法实战感兴趣,请快快关注我们吧。加入AI实战微信群,AI实战QQ群,ACM算法微信群,ACM算法QQ群。详情请关注 “CoderPai” 微信号(coderpai) 。





原文地址:访问原文地址
快照地址: 访问文章快照