談到投資,我最喜歡的策略是 Boglehead方法由Vanguard的創始人兼前首席執行官Jack Bogle開發。他建議投資於試圖匹配市場回報的低成本指數基金。
對於這篇博客文章,我決定看看我是否可以拿出一組股票來跑贏道瓊斯指數。
目標是選擇道瓊斯工業平均指數的一些成分,這些成分在整個財政季度的表現將優於整個指數。為了選擇高績效股票,我使用了過去三年的收益電話成績單。成績單與歷史股票價格相結合,形成統計模型,並根據收益電話中的說法預測下一季度末的股票價格。
處理非結構化數據
收益呼叫數據採用非結構化文本數據的形式。當您嘗試從中獲取信息時,這種非結構化文本數據會帶來一些獨特的挑戰。其中一些挑戰包括數據的可用性,相關性和質量。該 Text Explorer 平台 JMP 13 提供了應對這些挑戰的好工具。我將在這篇博客文章中展示其中的一些工具。
可以找到構成道瓊斯工業平均指數的30家公司中每一家的賺取電話成績單線上 。每家公司最近的收益電話都發生在秋季的某個時候,從耐克的2016年9月27日到沃爾瑪的2016年11月17日。對於歷史股票價格信息,我使用了雅虎財務提取器JMP加載項。 對於當前股票價格,我使用了收益電話當天的開盤價。
探索文本
數據導入後 JMP ,我使用Text Explorer來解析數據,添加了停用詞並找到了常用短語。對於數據解析,我使用了文本資源管理器中的默認設置,它使用正則表達式。我也開啟了詞彙組合選項,因為它結合了具有相同詞根的詞彙。你可以在下面的截圖中看到一個阻止的例子(來自沃爾特迪斯尼的成績單)。術語列表中的第一個術語是franchis,其中包含所有具有franchis根詞的單詞。在這個例子中,這些詞是特許經營,特許經營和特許經營。無論何時看到符號,都表明已經應用了詞幹。我在此分析中添加的停用詞是不能提供解釋力的詞。在這個案例中使用的一些是網絡廣播,季度和早上好。文檔中的常用短語顯示在下面顯示的短語列表中。我在分析中添加了這些常用短語。默認情況下,某些短語(如紅色字體突出顯示的副總統)會添加到分析中;可以通過添加它們作為停用詞來刪除它們。

完成此過程後,我保存了文檔術語矩陣(DTM),它將非結構化文本數據轉換為可用的數字結構。我還在Text Explorer平台上進行了主題分析(可用於 JMP Pro )。主題分析使用文檔術語矩陣的旋轉奇異值分解(SVD)來將主題分組到特定單詞或短語。然後我將主題向量保存到數據表中。以下是在Apple腳本上執行的主題分析輸出的示例。主題詞是每個主題最具代表性的詞,它們讓我對每個主題的主題有了很好的了解。這些主題可以幫助增加模型的解釋力。

建立統計模型
下一步是為道瓊斯指數的每個組成部分制定統計模型。在構建統計模型之前,我設置了一個驗證列來阻止部分數據。在這種情況下,我使用最後一年的數據作為驗證集。這種技術有助於防止過度擬合模型。要記住的一件事是,一些驗證數據可能會因使用Text Explorer而洩漏到訓練集中。此外,對於少量數據,您可以考慮使用k-fold交叉驗證方法代替驗證列。
我用於此探索的數據有很多列而不是很多行,也稱為寬和窄數據。 JMP 和JMP Pro提供了各種可以處理此類數據的建模技術。我嘗試了許多不同的模型,包括決策樹,自助森林,提升樹,神經網絡和廣義回歸。基於模型比較和我在這裡看到的具體數據集,我發現增強神經網絡具有最佳的性能和簡約性的融合。下面是一個模型的示例,顯示了實際的預測圖。
實際按預測的培訓和驗證數據集圖
為我的索引選擇股票
因為我正在製作這些模型 JMP ,我碰到了幾個不會融合耐克和蘋果的模特。看看這些數據,我意識到他們兩個股票價格從一個季度到下一個季度發生了很大的變化。對於Apple來說,這發生在2014年中期。耐克,它是在2015年底。正如你們中的一些人可能知道的那樣,時機恰逢每家公司的股票分割。出於建模目的,我將價格標準化為當前水平。
製作完所有模型後,我保存了預測公式,以預測股票價格在下一次收益調用時的位置。雖然盈利電話的日期各不相同,但大多數公司都會在2017年1月底召開下一次財報電話會議。下面是所有預測股票價格變化的結果表。這些預測都來自於通過收益電話會議記錄製作的增強型神經網絡模型。看看下面的結果,我選擇了United Health Group,Caterpillar,Merck,Goldman Sachs和McDonald's。我們的目標是看看這些選擇能否在上一次收益電話會議中表現優於道瓊斯指數,直到1月底的下一次收益電話會議。

道瓊斯指數使用價格加權平均值計算。這意味著價格較高的股票對指數的權重或影響較大。我使用相同的方法來創建我的索引並“購買”五個組件中每個組件的一個共享,更昂貴的組件構成索引的更大部分。要在上一次收益電話會議當天獲得每個組件的一份,我將花費570.61美元(見下表)。
相比之下,在這些電話會議期間,我將在10月底向道瓊斯指數“投入”相同數額的資金。道瓊斯工業平均指數10月31日開盤於18176.60;這將是投資的原始時間。假設我可以購買道瓊斯工業平均指數的股票,我將獲得平均0.03139股。模型預測,如果投資於我使用的五個選項,570.61美元將增加到629.89美元 JMP ,一季度增長10.4%。為了估算2017年1月底道瓊斯工業平均指數的位置,我採用了每個成分的預測股價並得到了總和。然後我將該數字除以道指除數,即0.14602128057775。該投影的結果如下所示。估計收盤價為18696.73,570.61美元的投資將在一個季度內增加至586.93美元或2.86%。

下一步是等待,看看我的預測實際上與道瓊斯指數相比如何,並在2月初通過博客文章重新審視。
更多想法
如果我這樣做是為了實際投資,我會改變一些事情,而不是我在感恩節週設計的有趣項目:
- 我肯定會及時回去獲得更多的收入電話成績單。十二是一個良好的開端,但更多的數據將改善這些模型。
- 由於此博客文章重點介紹如何使用Text Explorer JMP 可以使用,我只使用來自收益電話的非結構化數據。為了改進這些模型,我還會使用收入和每股收益等信息。
- 最後但並非最不重要的是,我不會選擇一個選舉週期來試圖預測未來的股價!