為神經網路選擇測試數據
我一直在研究基於某些技術指標的神經網路。正如熟悉神經網路的人在提出假設後會知道的那樣,開發人員還應該提供一組數據以供學習。現在,如果要開髮用於過濾垃圾郵件的神經網路,我會為其提供垃圾郵件和非垃圾郵件數據集。但在我的情況下,我如何選擇買入/賣出點……我只是隨機選擇可以直覺地看到我想要的價格變動的入口點還是有更好的方法?
您會發現,使用神經網路 (NN) 作為金融市場預測工具的成功程度在很大程度上取決於最初看起來非常微妙的因素。尤其:
輸入數據:您提到使用“某些技術指標”。我假設您指的是基於價格的標準 TA 指標集,例如移動平均線、MACD、RSI、CCI、隨機震盪指標、威廉姆斯 %R 等,可能還有一些與交易量相關的指標。您會發現您的 NN 結果對您用於這些指標中的每一個的回溯期很敏感,您需要對此進行一些廣泛的實驗,以及對您選擇的指標進行標準化和轉換。
輸出/訓練數據:來自 NN 的輸出可以是連續值或離散值,例如二元 {0,1} 或三元 {-1,0,+1}。您可以選擇所需的輸出類型,這完全取決於您在 NN 的幫助下嘗試回答的問題(即您想要預測的確切內容)。你會發現神經網路對此非常敏感。例如,從人類交易者的角度來看,以下問題可能看起來沒有太大不同,但從 NN 的角度來看,它們卻大不相同:
在今天收盤和明天收盤之間,股票 XYZ 或整體市場會上漲多少(以點或百分比為單位)?(需要連續值輸出)。
同期,股票 XYZ 的漲幅會超過 3.5%嗎?YES=1 或 NO=0(二進制輸出)
股票 XYZ 會顯著上升(輸出 = +1),顯著下降(輸出 = -1),還是在某個容差範圍內保持大致相同(輸出 = 0)?
明天(或今天?)的價格是否可能是下週的最高/最低?(二進制輸出)
如果我今天買入,我應該在周五平倉還是在周末持有?(二進制輸出,基於您對盈利能力、回撤和其他交易指標的研究)。
等等
如果您對 NN 的成功比您希望的要少,那麼請嘗試提出一個稍微不同的問題。還要記住,有時即使是很小的“僅比隨機好一點”的結果也可能足以讓您在交易中獲得有用的優勢。
神經網路是一種有監督的機器學習算法。與非監督式機器學習不同,有監督機器學習的關鍵是輸入因素的選擇和輸出的顯式標記。
輸入因素必須手動選擇,例如您的技術/基本/統計指標組合。必鬚根據您選擇的輸入因素明確標記輸出(買入/賣出信號)。
例如,一個超級簡單的例子可能是:
f1 = X 日均線穿越 Y 日均線
f2 = Z 上方的 ADX
然後,您將使用這些因素創建一個訓練集並標記您的輸出:
f1 = 0, f2 = 0 –> 保持
f1 = 1, f2 = 1 –> 購買
f1 = 1, f2 = 0 –> 購買
f1 = 1, f2 = 1 –> 賣出
然後針對這個訓練集訓練你的 NN 網路。訓練 NN 後,您應該在樣本外測試集上執行 NN 集以評估 NN 的性能。