forked from ncornwell/R
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNN9.R
33 lines (21 loc) · 962 Bytes
/
NN9.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
library("RSNNS")
optionDataNormalized = read.csv("allData20mean.csv")
learnData = optionDataNormalized[optionDataNormalized$quotedate <= 20111212,]
inputs <- learnData[,inputColumns(learnData)]
targets <- learnData[,outputColumns(learnData)]
patterns <- splitForTrainingAndTest(inputs, targets, ratio = 0.15)
print(Sys.time())
sysTime = Sys.time()
model <- mlp(patterns$inputsTrain, patterns$targetsTrain,
size = c(20, 20), learnFuncParams = c(0.1), maxit = 200,
inputsTest = patterns$inputsTest, targetsTest = patterns$targetsTest)
print(Sys.time() - sysTime)
testData = optionDataNormalized[optionDataNormalized$quotedate > 20111212,]
ceInputs <- testData[,inputColumns(testData)]
predictions = predict(model, ceInputs)
preds = predictions > 0.6
actualReturn = preds * testData$todayReturn
trueTrues = preds & testData$outPositiveRet
print(sum(trueTrues)/sum(preds))
print(mean(actualReturn))
print(summary(actualReturn))