摘 要:近年來,隨著全球經(jīng)濟與股市的快速發(fā)展,股票投資成為人們最常用的理財方式之一。本文研究的主要目標是利用機器學習技術,應用Python編程語言構建股票預測模型,對我國股票市場進行分析與預測。采用SVM與DTW構建股票市場的分析和預測模型,并通過Python編程進行算法實現(xiàn)。
本文對獲取到的股票數(shù)據(jù)進行簡單策略分析,選取盤中策略作為之后模型評估的基準線。分別選取上證指數(shù)、鴻達興業(yè)股票、鼎漢股票數(shù)據(jù)利用已構建的支持向量機和時間動態(tài)扭曲模型在Python平臺上進行預測分析,結果表明,對于上證指數(shù)而言,支持向量機預測下逆向策略更優(yōu),對于鴻達興業(yè)股票和鼎漢股票而言,支持向量機預測下正向策略更優(yōu);基于時間動態(tài)扭曲算法的預測方法對于特定的股票有較高的精度和可信度。研究結論表明將機器學習運用于股票分析與預測可以提高股票價格信息預測的效率,保證對海量數(shù)據(jù)的處理效率,機器學習過程可以不斷進行優(yōu)化模型,使得預測的可信度和精度不斷提高,機器學習技術在股票分析方面有很高的研究價值。
關鍵詞:機器學習;股票預測;Python;SVM;DTW
中圖分類號:F830.91 文獻標識碼:A 文章編號:1008-4428(2019)02-0123-02
一、 引言
國外股票市場的股票分析預測開始得很早,研究者們將各種數(shù)學理論、數(shù)據(jù)挖掘技術等應用到股票分析軟件中,并通過對歷史交易數(shù)據(jù)的研究,從而得到股票的走勢規(guī)律。
近年來,由于現(xiàn)實中工作與研究的需要,機器學習的研究與應用在國內(nèi)外越來越重視。機器學習可以在運用過程中依據(jù)新的數(shù)據(jù)不斷學習優(yōu)化,完善預測模型。將機器學習應用于股票市場的預測,從股票的歷史數(shù)據(jù)中挖掘出隱藏在數(shù)據(jù)中的重要信息。這樣既能夠為股民們對股價預測研究提供理論支撐,又能夠為公司的領導層提供決策支持。
基于此,本文選擇機器學習在股票分析中的應用作為研究方向。在機器學習及股票分析相關理論基礎上,使用Python開發(fā)工具,并分別運用支持向量回歸及時間動態(tài)扭曲進行預測。
二、 相關技術與理論
(一)機器學習
機器學習是融合多領域技術的交叉學科,主要包括概率論與數(shù)理統(tǒng)計、微積分、線性代數(shù)、算法設計等多門學科。通過計算機相關技術自動“學習”實現(xiàn)人工智能。
(二)股票分析方法
1. 基本面分析
基本面分析指的是在分析股票市場供應和需求關系的相關因素(如宏觀經(jīng)濟、政策導向、財務狀況以及經(jīng)營環(huán)境等)基礎上確定股票的實際價格,從而預測股票價格的趨勢。
2. 技術面分析
技術面分析指的是對股票圖樣趨勢來分析和研究,來判斷價格的走勢。
(三)基于Python的經(jīng)典機器學習模型
1. 支持向量機(SVM)
該模型最初用于分類,其最終目標是引入回歸估計。建立回歸估計函數(shù)G(x),其中回歸值與目標值之間的差值小于μ,同時保證該函數(shù)的VC維度最小。線性或非線性函數(shù)G(x)的回歸問題可以轉化為二次規(guī)劃問題,并且獲得的最優(yōu)解是唯一的。
2. 動態(tài)時間扭曲(DTW)
這是衡量時間序列之間的相似性的方法,并可以用在語音識別領域以判斷兩段聲音是否表達了同一個意思。
三、 股票預測模型的構建
(一)確定初始指標
1. 基于支持向量機確定指標
施燕杰(2005)利用支持向量機進行股票分析與預測,在多次反復嘗試基礎上提出了一系列的指標作為預測模型的輸入向量,該指標能夠有效地預測未來股價波動情況,本文在結合自身研究的基礎上,對以上施燕杰提出的指標進行改進。在原有的指標基礎上添加7日平均開盤價和7日平均收盤價,去除了成交額保留了成交量。最終建立如表1所示的20個初選指標。
本文主要是進行股票分析與預測,因此在綜合考慮各個價格指標的基礎上,本文選擇選定時間段的下一日收盤價作為模型的輸出向量。
2. 基于動態(tài)時間扭曲確定指標
根據(jù)往常研究經(jīng)驗,我們將時間序列數(shù)據(jù)分成不同的期間,每個期間長度為5日,以每個時間段相鄰每日收盤價漲跌率變化趨勢為初始指標。選擇時間序列期間下一日的收盤價與期間內(nèi)最后一日收盤價漲跌率作為模型的輸出向量。
(二)選擇樣本
1. 實驗對象
本文在分別在主板市場、中小板市場和創(chuàng)業(yè)板市場中采取隨機抽樣的方法各隨機選擇一只股票數(shù)據(jù)作為研究對象,分別是上證指數(shù)、鴻達興業(yè)股票、鼎漢股票。
2. 樣本規(guī)模
我們選取了2011年至2017年間上證指數(shù)1550條數(shù)據(jù),2015年至2017年的鴻達興業(yè)股票532條數(shù)據(jù)、鼎漢股票572條數(shù)據(jù)。分別將三類數(shù)據(jù)劃分為兩組,其中一組選取200條數(shù)據(jù)作為訓練樣本數(shù)據(jù),用于對預測模型進行訓練;剩余數(shù)據(jù)作為測試樣本數(shù)據(jù),用于檢驗模型的預測效果。
(三)數(shù)據(jù)采集與預處理
從網(wǎng)上通過爬蟲或者接口的方法獲取股票歷史數(shù)據(jù),并對數(shù)據(jù)進行整理和清理,調(diào)整異常以及缺失的數(shù)據(jù),根據(jù)分析需求將數(shù)據(jù)進行離散化、二元化。
(四)模型策略
1. 基于支持向量機模型策略
利用訓練集數(shù)據(jù)進行模型擬合,并用它測試測試集數(shù)據(jù),得到預測結果,將預測值與實際數(shù)據(jù)進行比較。
2. 基于動態(tài)時間扭曲模型策略
通過算法運行獲得每個序列相對于其他序列的距離度量,并將其放入一個DataFrame對象。刪除相互距離為零的序列,再根據(jù)序列的日期進行排序,只觀測第一個序列在時間上排在第二個序列之前的那些,刪除相同的序列對。最后,將交易限制到相互距離小于1,而第一個序列的回報為正的情況。我們將得到一系列日前收盤價曲線相近的序列,接下來,構造一個策略函數(shù),根據(jù)新進入的數(shù)據(jù)對模型進行學習、優(yōu)化。
四、 股票市場預測的實現(xiàn)
(一)數(shù)據(jù)處理和策略分析
我們通過tushare提供的API獲取交易數(shù)據(jù)。獲得的上證指數(shù)、鴻達興業(yè)股票、鼎漢股票的歷史數(shù)據(jù)是經(jīng)過清洗加工過的,數(shù)據(jù)整潔且無缺失異常,可以直接用于接下來的研究分析。
保留最高價、最低價、開盤價、收盤價、交易量這幾個原始屬性,整理得到一系列數(shù)據(jù)。針對這些數(shù)據(jù),進行初步分析,探索如何進行投資,以及該時期回報將是多少,并分析三組數(shù)據(jù)在持有策略、隔夜策略、盤中策略三種基本策略下的統(tǒng)計數(shù)據(jù)。結果發(fā)現(xiàn)三只股票在三個策略中,持有策略優(yōu)于隔夜策略,隔夜策略又優(yōu)于盤中策略。
(二)預測實現(xiàn)
1. SVM預測效果分析
基于上證指數(shù)進行模型擬合,并用它測試訓練樣本之外的數(shù)據(jù),得到預測,當模型預測強勁的收益時,選擇不交易,相反,當模型預測虧損時,反而進行交易,接下來探索此時的收益與效果,并與盤中策略相比較,如圖1所示。
逆向模型似乎表現(xiàn)出明顯的優(yōu)勢,經(jīng)過數(shù)據(jù)分析認為,針對該只股票,運用支持向量回歸建模進行預測并結合逆向策略的投資方式,在股票投資中將表現(xiàn)出一定優(yōu)勢。
基于鴻達興業(yè)股票進行模型擬合,并用它測試訓練樣本之外的數(shù)據(jù),得到預測,若預測的當日收盤價高于當日開盤價,則當天開盤時買入,并在當天收盤時賣出。獲取完整統(tǒng)計數(shù)據(jù),探索此時的收益與效果,并與盤中策略相比較,如圖2所示。
經(jīng)過以上分析,對于鴻達興業(yè)股票運用支持向量機預測,采取正向策略,即預測會收益就買入的策略,具有一定優(yōu)勢。
基于鼎漢股票進行模型擬合,并用它測試訓練樣本之外的數(shù)據(jù),得到預測,發(fā)現(xiàn)和鴻達興業(yè)股票的結果類似,也是采取正向策略有一定優(yōu)勢。
2. DTW預測效果分析
基于上證指數(shù)利用DTW算法,得到一系列日前收盤價曲線相近的序列,而且第一個序列的回報為正。按照策略來買,然后評估交易。
盈利/虧損比例和夏普比率遠高出其他的模型。根據(jù)數(shù)據(jù)顯示,這個新模型在股票預測上更具有優(yōu)勢,特別是與之前的模型相比。
基于鴻達興業(yè)股票得到的收益、夏普指數(shù)都劣于作為基線的盤中的策略,說明基于DTW的預測方法不適用于該只股票。
模擬鼎漢股票發(fā)現(xiàn)夏普比率遠高于其他的模型。根據(jù)數(shù)據(jù)顯示,對于這只股票的預測時間動態(tài)扭曲建模更具有優(yōu)勢,特別是與之前的模型相比。
五、 結論與展望
本文研究數(shù)據(jù)是基于2014年至2017年的三只股票的數(shù)據(jù),其出發(fā)點和結論貼合特定時間段特定股票的行情情況,但是在歷史時段或未來行情的適應性仍有待考慮。同時,本文所圍繞的技術面分析是基于三大假設基礎上的:一是市場行為可以包容和消化所有可能影響股價的信息。二是歷史會不斷重演。三是價格以趨勢性變化。而現(xiàn)實中股票市場受宏觀經(jīng)濟、政治環(huán)境和投資者心理等因素影響很大,所以在具體運用本文的模型時,仍要根據(jù)具體情況進行改進和優(yōu)化。
支持向量機雖然相對于其他方法具有其獨特的優(yōu)點,并且應用的領域十分廣泛,但是該方法在實際的應用中還是存在很大可以改進的空間的。在之后的進一步研究中我們可以考慮對算法進行優(yōu)化。
參考文獻:
[1]劉夢瑩.基于機器學習的基金優(yōu)選系統(tǒng)設計與實現(xiàn)[D].北京:北京交通大學,2018.
[2]肖晞暉.基于大數(shù)據(jù)和機器學習的量化選股模型研究[D].武漢:華中師范大學,2018.
作者簡介:
姚雨琪,女,江西南昌人,江西財經(jīng)大學信息管理學院。