Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 1381

 
Yuriy Asaulenko:

Ja, er ist es nicht, es istAleksey Vyazmikin. Mein Fehler.

(Natürlich werden die Preise erhöht, aber sie hören nicht auf, Preise zu sein).

Ich kam vor langer Zeit zu dem Schluss, dass der Preis nicht ein f-from und nicht verstehen, was, so dass ich nur verlieren die Informationen, und das Ergebnis wird schlechter sein.

Ich kann das Problem nicht lösen, ich habe keine Ideen. Vielleicht können Sie mir einen Tipp geben?
 
Maxim Dmitrievsky:

Ich bin schon vor langer Zeit zu dem Schluss gekommen, dass der Preis keine Funktion ist und nicht versteht, was er ist, so dass er, selbst wenn man ihn verbietet, nur Informationen verliert, und das ist alles, und infolgedessen wird sich das Ergebnis verschlechtern.

Ich kann das Problem nicht lösen, ich habe keine Ideen. Vielleicht können Sie mir einen Tipp geben?

Haben Sie jemals die rohe Karte gekaut?

Das könnte Ihnen in etwa zehn Jahren helfen))).

 
Maxim Dmitrievsky:

Ich bin schon vor langer Zeit zu dem Schluss gekommen, dass der Preis keine Funktion ist und nichts versteht, so dass er, selbst wenn man ihn verbietet, nur Informationen verliert, und das ist alles, und infolgedessen wird das Ergebnis schlechter sein.

Nun zum Problem der Skalierung... Ich kann das Problem nicht lösen, ich habe keine Ideen. Vielleicht können Sie mir einen Tipp geben?

In dem Code, der neulich veröffentlicht wurde, gibt es eine Zeile mit Skalierung, vor dem NS to feed.

while i < LenHist:
    x = []
    for j in range(0, 20): #Подготовка данных для НС

        x.append((SD.history[i-j][c.c]/SD.history[i][c.c]-1)*1000)

    out = MLP.Predict([x]) # запрашиваем прогноз НС     if out >= 3.0:         i = Long(i)               tmp.append('L')     elif out <= -3.0:         i = Short(i)                 tmp.append('S')     i += 1

Für eine NS von 20 Eingängen. Das Verhältnis (1000) kann von den NS beliebig gewählt werden. Also weiter.

 
Yuriy Asaulenko:

In dem Code, den ich neulich gepostet habe, gibt es eine Zeile mit einer Skalierung, bevor sie an den NS weitergegeben wird.

Für NS von 20 Eingängen. Das Verhältnis (1000) kann von den NS beliebig gewählt werden. Es geht ungefähr so.

dies entspricht 20 Schritten multipliziert mit 1000

 
Maxim Dmitrievsky:

Das sind also 20 Schritte multipliziert mit 1.000.

In welchen Schritten? Dies ist eine skalierte Kursfolge, in diesem Fall Close. Alle Verhältnisse in der Folge bleiben unverändert erhalten.

 
Teilen Sie

SD.history[i-j][c.c]/SD.history[i][c.c]

i-j Preisklausel für den i-ten ist ein Rückkehrer

Sie erhalten 20 Wiederkehrer mit einer Verzögerung von 1 bis 20 und multiplizieren dann aus irgendeinem Grund mit 1000
 
Maxim Dmitrievsky:
Teilen Sie

SD.history[i-j][c.c]/SD.history[i][c.c]

i-j Preis i-j ist ein Rückkehrer

Sie erhalten 20 Rückgaben mit einer Verzögerung von 1 bis 20 und multiplizieren dann aus irgendeinem Grund mit 1000

Ich bin mit Rückgaben nicht vertraut. Ich bin mit dieser Terminologie nicht vertraut.)) Es handelt sich um eine einfache Null-Übertragung des Koordinatensystems und der Skalierung.

Wir multiplizieren mit 1000, damit die Zahlen am NS-Eingang einen normalen Maßstab haben (nicht klein). )) Stellen Sie den Koeffizienten wie gewünscht ein, je nach Dynamikbereich der NS- oder Forest-Eingänge.

 
Yuriy Asaulenko:

Mir ist nicht bekannt, dass es Rückkehrer gibt. Ich bin mit dieser Terminologie nicht vertraut.) Es handelt sich um eine einfache Nullstellung und Skalierung des Koordinatensystems.

Wir multiplizieren mit 1000, damit die Zahlen am NS-Eingang einen normalen Maßstab haben (nicht fein). )) Je nachdem, welchen Koeffizienten Sie wünschen, stellen Sie diesen in Abhängigkeit vom Dynamikbereich der NS- oder Forest-Eingänge ein.

Wenn man einen Preis durch einen nahegelegenen Preis mit einer Verzögerung teilt, handelt es sich um einen Returnee, d. h. um einen Preisanstieg mit einer bestimmten Verzögerung.

 
Maxim Dmitrievsky:

Wenn Sie einen Preis durch einen nahegelegenen Preis mit einer gewissen Verzögerung dividieren, handelt es sich um einen Returnee, d. h. um eine Preiserhöhung mit einer bestimmten Verzögerung.

Die gesamte Reihe wird durch Close(0) geteilt, d. h. der Nullpunkt der Reihe ist immer 1 - so erhalten wir für alle Stichproben den gleichen Maßstab. Subtrahiere 1 von jedem Term der Reihe - bringe die Reihe zum Ursprung. Multiplizieren Sie mit dem Skalierungsfaktor (1000), um den Bereich an den NS-Eingang anzupassen.

Wenn Sie es nicht mögen, verwenden Sie es nicht).

 
Yuriy Asaulenko:

Dabei wird die gesamte Zeile durch Close(0) geteilt, d. h. der Nullpunkt der Zeile ist immer 1. Subtrahiere 1 von jedem Zeilenterm - bringe die Zeile zum Ursprung. Multiplizieren Sie mit dem Skalierungsfaktor (1000), um den Bereich an den NS-Eingang anzupassen.

Nein, wenn Sie es nicht mögen, wenden Sie es nicht an).

nope, ich bin nur sagen, es ist Renditen, können Sie log() anstelle von -1 setzen, wird die gleiche Sache passieren, dh logreturns. Dieser Informationsverlust ist sehr groß, da Sie nur 20 davon haben.