Ich habe WFA bekommen, um auf dem vollen Satz von Intraday GBPUSD 30min-Daten zu laufen, und bin auf einige Dinge gestoßen, die adressiert werden müssen. Die erste ist, glaube ich, dass die Speicherfunktion geändert werden muss, um die Zeit aus der Zeichenkette zu entfernen (wie gezeigt als here als Pull-Anforderung auf dem R-Finance/quantstrat Repo auf Github). Die walk.forward
Funktion löst diesen Fehler:Quantstrat WFA mit Intraday-Daten
Error in gzfile(file, "wb") : cannot open the connection
In addition: Warning message:
In gzfile(file, "wb") :
cannot open compressed file 'wfa.GBPUSD.2002-10-21 00:30:00.2002-10-23 23:30:00.RData', probable reason 'Invalid argument'
Der zweite ist ein seltener Fall, wo seine Enden nach oben runSum
auf einem Datensatz mit weniger Zeilen als die Periode rufen Sie testen (n
). Dies ist die traceback()
:
8: stop("Invalid 'n'")
7: runSum(x, n)
6: runMean(x, n)
5: (function (x, n = 10, ...)
{
ma <- runMean(x, n)
if (!is.null(dim(ma))) {
colnames(ma) <- "SMA"
}
return(ma)
})(x = Cl(mktdata)[, 1], n = 25)
4: do.call(indFun, .formals)
3: applyIndicators(strategy = strategy, mktdata = mktdata, parameters = parameters,
...)
2: applyStrategy(strategy, portfolios = portfolio.st, mktdata = symbol[testing.timespan]) at custom.walk.forward.R#122
1: walk.forward(strategy.st, paramset.label = "WFA", portfolio.st = portfolio.st,
account.st = account.st, period = "days", k.training = 3,
k.testing = 1, obj.func = my.obj.func, obj.args = list(x = quote(result$apply.paramset)),
audit.prefix = "wfa", anchored = FALSE, verbose = TRUE)
Die erweiterten GBPUSD Daten in der Erstellung der Luxor Demo enthalten ein fehlerhaftes Datum (2002.10.27) mit nur 1 Beobachtung verwendet, die dieses Problem verursacht. Ich kann auch vorhersehen, dass dies ein Problem ist, wenn längere Signalzeiträume auf Instrumenten wie Crude getestet werden, wo sie nur wenige Handelsstunden am Sonntagabend (UTC) haben.
Angesichts der Tatsache, dass ich die Luxor-Demo mit dem gleichen (erweiterten) Intra-Day-Datensatz rein verfolgt habe, sind diese echten Probleme oder wurden sie durch Paket-Updates usw. verursacht?
Was ist der bevorzugte Weg, um diese Dinge an die Autoren von QS zu melden und herauszufinden, ob/wann Fixes wahrscheinlich gemacht werden?
SessionInfo()
:
R version 3.3.0 (2016-05-03)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_Australia.1252 LC_CTYPE=English_Australia.1252 LC_MONETARY=English_Australia.1252 LC_NUMERIC=C LC_TIME=English_Australia.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] quantstrat_0.9.1739 foreach_1.4.3 blotter_0.9.1741 PerformanceAnalytics_1.4.4000 FinancialInstrument_1.2.0 quantmod_0.4-5 TTR_0.23-1
[8] xts_0.9.874 zoo_1.7-13
loaded via a namespace (and not attached):
[1] compiler_3.3.0 tools_3.3.0 codetools_0.2-14 grid_3.3.0 iterators_1.0.8 lattice_0.20-33