Merging text and stock features
Before we can start to train the neural network, however, we'll need to figure out how we need to represent the data and what information the neural network needs to have.
The code for this section will be present in the src/financial/nn.clj
file. Open it up and add the following namespace header:
(ns financial.nn (:require [clj-time.core :as time] [clj-time.coerce :as time-coerce] [clojure.java.io :as io] [enclog.nnets :as nnets] [enclog.training :as training] [financial.utils :as u] [financial.validate :as v]) (:import [org.encog.neural.networks PersistBasicNetwork]))
However, we first need to be clear about what we're trying to do. That will allow us to properly format and present the data.
Let's break it down like this: for each document, based on the previous stock prices and the tokens in a document, can we predict the direction of future stock prices.
So one set of features will...