王子豪



【摘? 要】論文講述了如何利用Python對多只股票進行數據分析,并且分析每只股票間的異同。運用Python,可將股票數據進行可視化處理,例如,運用線性圖展現出股票隨時間的變化情況;利用燭狀圖了解每只股票每日閉市與開市相比的盈利或者虧損情況;利用移動平均值直觀地觀察在規定時間內股票價格變動,了解股票價格是否穩定。論文以制定更好的決策為目的,從數據可視化入手,提供優質有效的數據信息,運用數據挖掘技術對微軟、蘋果、谷歌等多只股票價格波動趨勢進行研究。
【Abstract】The paper describes how to use Python to analyze data on multiple stocks and analyze the similarities and differences between each stock. By using Python, the stock data can be visualized. For example, using a linear charting to show the changing situation of the stock over time. Using candlestick charting to understand the profit or loss situation of each stock when the market is closed compared to the open each day. Using moving averages to visually observe the stock price changes within a specified period of time to understand whether the stock price is stable. With the aim of making better decisions, the paper starts with data visualization to provide high-quality and effective data information, and uses data mining technology to study the price fluctuation trends of several stocks such as Microsoft, Apple and Google.
【關鍵詞】移動平均;燭狀圖;股票數據
【Keywords】moving average; candlestick charting; stock data
【中圖分類號】F831.5? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻標志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文章編號】1673-1069(2021)01-0111-03
1 引言
在21世紀,股票已經成為經濟領域的重頭戲,股票價格數據的變化直接影響的是股票市場,而股票市場的穩定程度可以從一定程度反映一個國家的經濟狀態。進行股票數據分析則有利于更好地去觀察股票數據的變化趨勢,將它們從多角度進行可視化處理,以客觀的角度觀察某只或一些股票價格的變化情況。
本文利用Python對蘋果、微軟、谷歌三只股票進行分析:其中,以線段的方式將股票自2019年1月1日至2019年7月8日的股票數據進行可視化,更加清晰地了解到股票的變化情況。以燭狀圖的方式展現每只股票當日的虧損與盈利,根據圖中的所展示燭身形狀、顏色及位置,可以作出更準確的判斷。運用移動平均值來體現股票在某時間段內的變化波動,為大部分依靠圖表信息而作出判斷的交易人提供有效的數據,使一系列雜亂的數據信息以更清晰明了的方式展現出來……本文的目的是讓人們清晰地觀察各個公司股票價格的數據變化,為人們提供每個公司股票價格數據中蘊含的有效信息,根據其變化趨勢作出正確的決策。
本文第二部分根據已有結論驗證了探究學習股票數據分析方法的必要性。第三部分運用Python爬蟲工具包分析蘋果公司2019年1月1日至2019年7月8日的股票價格信息,以線性圖的方式展現了其價格變動趨勢。同時,介紹移動平均值,了解移動平均值在股票處理上的作用。第四部分根據所介紹的方法結合相關數據繪制圖像,分析每只股票的異同,觀察股票在不同天數的移動平均下,價格波動的不同。第五部分明確文章的目的,明確數據挖掘技術對股票數據分析的影響。
2 文獻綜述
隨著科技的發展,人們已經進入了信息化時代,高效的數據挖掘技術是做股票數據分析的重要途徑,將數據可視化處理,更有利于觀察其變化情況,劉小燕[1]在《基于圖像處理方法的股票數據分析研究》中提到:對板塊內的所有股票數據間的研究,有利于在了解板塊整體的漲跌情況以及板塊內是否存有漲勢情況異于其他的股票后,為投資者對該板塊的后期發展的分析提供一些參考信息。
在可視化處理中,運用合理有效的方法對于分析數據有著重要的作用。例如,燭狀圖,劉哲、王虎、楊建宇等人[2]在《品種篩選多環境測試作圖分析方法》中提到:蠟燭圖有助于單指標的詳細對比和規律挖掘,如試點區辨力、品種穩定性與優異性規律等。
除燭狀圖外,人們還運用到了移動平均值的方法,劉麗芳、王慧、王松敏等人[3]在《移動平均法在青少年吸毒分析中的應用》中提到:移動平均法是一種時間序列預測法,它是能從時間序列數據中去掉周期變動或隨機波動的影響,從而進行數據分析的方法。
3 股票數據收集與移動平均值介紹
3.1 股票數據收集
運用合理的收集方法是進行有效數據收集的必要前提,因此,本文數據收集過程采用了Python中data工具包的DataReader,這里將蘋果公司的股票信息從Yahoo上收集下來,提取自2019年1月1日至2019年7月8日的股票數據進行數據分析(見圖1)。
在數據分析過程中,open指的是每一天開盤時股票的價格,這里的股票價格指的并不是前一天閉市時股票的價格;close指的是每一天閉盤時股票的價格,同理這里的價格也不是第二天開盤時股票的價格;high指的是每一天股票價格的最高值;low指的是每一天中股票價格的最低值;volume指的是一天股票的交易次數;adjust close指的是根據法人進行操作過后的閉市價格。股票價格大部分情況是由交易者決定的,但stock splits(拆股,也就是上市公司將現有的股票分為兩份,新的股市價格為原來價格的二分之一)和dividends(分紅,每一股的分紅)都會影響當天股票的價格。這里每一個因素都應該進行處理分析,以便于得到更清晰、更準確的股票數據信息,使人們更好地作出判斷。
3.2 移動平均值
除了根據數據分析中圖表的方式作出決策以外,人們還可以利用移動平均值來找到股票價格的變化趨勢,從而用具體的數據反映股票真實的變化情況。
移動平均值可以讓某些雜亂的連續數據變得更加平滑,這利于人們從中找到股票數據信息的變化情況。例如,將一個q天的移動平均值(用MA■■來表示)定義為:對于某一個時間點t,它之前q天的平均值。
其中,q值越大,其波動越不敏感,越平滑。越快的移動平均,q值越小,其展現的圖像更貼合真實的股票價格變動;而越慢的移動平均,它的q值越大,這讓其對波動不敏感并且逐漸變得更加穩定。
4 實證分析
利用上述方法,本文將收集到的股票價格數據信息進行了可視化處理,在這里分別以“股票趨勢變化”與“股票燭狀圖及移動平均值”兩部分向大家展示。
4.1 股票趨勢變化
每只股票的利益是每個交易者所關注的,所以本文將每天的股票價格與第一天初始價格做差值,進行可視化。將蘋果公司、微軟公司以及谷歌公司自2019年1月至2019年8月每日股票數據的變化量繪制出來,如圖2所示,在圖中可以清楚地看出幾只股票自數據第一天起,每日的股票價格與首日的股票價格相比的收益差距有著明顯的不同。
其中,藍色的線代表蘋果公司的股票,從圖上可以看到,這只股票在這近幾個月里股票價格波動幅度較大,股票的價格不穩定;綠色的線代表谷歌公司的股票,它與第一天的股票價格相比,收益差距趨勢近似于蘋果公司,同樣也是波動幅度較大,股票的價格不穩定;最后黃色的線代表微軟公司的股票,其較其他兩只股票的圖像相比,其線段的最大值與最小值差距比較小,波動不太明顯,更為穩定。
除了用線段的方法展示數據信息以外,還可以利用燭狀圖的方式將股票數據信息進行可視化處理,從而以不同的角度觀察探究股票的價格變動。
4.2 股票燭狀圖及移動平均值
利用燭狀圖可以清楚看出股票在所研究時間段內每天的數據增減比例。如圖3展示的是蘋果公司自1月7日至7月8日每天的股票價格變化圖。其中,每個紅色部分代表當天閉市價格高于開市的價格(盈利),每個黑色部分代表閉市價格低于開市的價格(虧損),根據圖中所展示的燭身形狀、顏色及位置,可以作出更準確的決策。
在交易過程中,絕大部分的交易者僅僅是利用圖表來作出判斷,所以本文運用到了移動平均值。利用函數,將蘋果公司股票價格的20天移動平均值與50天移動平均值表示出來,如圖3所示,藍線代表的是20天的移動平均值,紅線代表的是50天的移動平均值。將兩個移動平均值相比,50天具有較慢的移動平均,其波動較20天波動來說,更為穩定。但移動平均值的開始時間與所選擇的天數有關,多少天的移動平均值,它的開始時間就推遲多少天,這對長時間段的移動平均值有著較大的影響。
5 結語
利用數據挖掘技術對股票數據進行處理有利于更好地觀察每只股票的波動趨勢,更容易地觀察出股票因時間因素而形成的變化趨勢。運用Python,將多只股票的數據信息分別以線性圖、燭狀圖的方法進行可視化處理,分析圖像,了解如何利用圖像觀察股票在近幾個月的價格變化情況和每只股票每日閉市與開市相比的盈利或者虧損,比較多只股票的價格波動趨勢。了解移動平均值,明確移動平均值在股票數據分析中的優勢,觀察圖像,比較不同時間的移動平均對圖像信息的影響。運用多種可視化處理的方法,正確分析股票數據信息,提供優質有效的數據信息,以便于交易者作出準確的決策,促進股票市場經濟的發展。
【參考文獻】
【1】劉小燕.基于圖像處理方法的股票數據分析研究[D].重慶:重慶大學,2013.
【2】劉哲,王虎,楊建宇,等.品種篩選多環境測試作圖分析方法[J].農業工程學報,2011,27(10):142-147.
【3】劉麗芳,王慧,王松敏,等.移動平均法在青少年吸毒分析中的應用[J].咸陽師范學院學報,2015,30(04):37-40.