Hallo Fritz,
der cValue hat mit den Zeitreihen nichts zu tun. Bei den Zeitreihen kannst du in der Weka.ini genau die wählen die dir gefallen. Die einzigen Voraussetzungen sind 1. sie müssen in Investox rechenbar sein und zweitens muss die Zählung der Reihen lückenlos sein, also 1. Reihe heißt reihe1= dann kommt reihe2= usw.
Der cValue ist ein wesentlicher Optimierungsparamter für die Support Vector Machine. Mit einfachen und mathematisch natürlich nicht perfekten Worten würde ich ihn als Maß der Komplexität der Schätzfunktion. Ein kleiner cValue erzeugt eine Schätzfunktion mit geringer Komplexität und umgekehrt. Es bietet sich eine Analogie zur Anzahl der Knoten in den Neuronalen Netzn von Investox an. Ein Netz mit wenigen Knoten passt sich schlechter an eine Kurve an ist jedoch weniger empfindlich in Bezug auf eine optimale Anpassung an die Trainingsdaten mit einem abrupten Abfall der Leistung bei den Schätzdaten. Aber, den Wert nur klein zu halten garantiert natürlich noch lange keine guten Vorhersagen und was klein ist ist so eine Frage. Bei 10 Trainingsperioden reagiert das Netz natürlich anders als bei 1000
Nochmal zu den Zeitreihen.
Mein Rat ist, probier doch einfach mal andere Reihen aus. Sichere die originale Weka.in und passe die Werte an. Ein simples Beispiel wäre:
reihe1=Close
reihe2=ROC(Close, 10, %)
ziel=Ref(Open, 2) - Ref(Open, 1)
historien=0,-1
In diesem Fall würden halt nur 2 Reihen für den Input eingehen. Von jeder Reihe der für die aktuellen Periode gültige Wert (historie=0) und der der darvorliegenden Periode (historie=-1)
Das Ziel habe ich belassen. Die SVM sollte so minimal natürlich schneller sein.
Und probier mal einen Fehler in den Reihen zu machen. Schreibe z.B. reihe1=lose. Jetzt sollte beim Berechnen des Indi in der Datei debug.txt eine Fehlermeldung hierzu erscheinen.
Viele Grüße
Martin