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

 
Vladimir Perervenko:

Ich hatte eine Diskussion mit Renat in einem benachbarten Thread über das Schicksal der Sprache R in MKL4/5. Die Lösung und die Richtung der Entwicklung von MKL ist nun klar.

Viel Glück!

Ich habe es gelesen, ich will gar nichts schreiben, wenn jemand nicht bereit ist, zuzuhören, gibt es nichts, um ihn zu überzeugen, wenn er 100 - 1000 Zeilen Code schreiben will, der schon lange geschrieben wurde, ist das sein Recht, während ich das Gleiche lieber mit einer Zeile in R machen würde.

Übrigens, es ist möglich, eine Herausforderung zu machen, eine nicht-triviale Aufgabe mit einigen statistischen Methoden zu machen und dann ein Modell zu lehren und zu validieren, und es in R und mql5+alglib zu implementieren und nur die Codegröße zu vergleichen ...

 
Vladimir Perervenko:

Ich hatte eine Diskussion mit Renat in einem benachbarten Thread über das Schicksal der Sprache R in MKL4/5. Die Lösung und die Richtung der Entwicklung von MKL ist nun klar.

Viel Glück!

Für diejenigen, die diesen Thread nicht gelesen haben: eine direkte Schnittstelle von mql zu R wird nicht erwartet. Aber es wird Zugang zur Alglib-Bibliothek geben, die auf mql portiert wurde, so dass der mql-Code selbst Bäume oder Neuronen aufbauen kann, etwas mit Genetik optimieren kann, nach Parametern für die Funktionen Minimum/Maximum suchen kann. Alle Möglichkeiten -http://www.alglib.net

 
Vladimir Perervenko:

Ich hatte eine Diskussion mit Renat in einem benachbarten Thread über das Schicksal der Sprache R in MKL4/5. Die Lösung und die Richtung der Entwicklung von MKL ist nun klar.

Viel Glück!



Ich verstehe den Trend. Es ist möglich, MT4 mit R kompatibel zu machen. Und MT4 ist im Moment noch sehr verbreitet. Wenn Sie eine gute Abhängigkeit in P erkennen, können Sie das Modell leicht in der MT5-Bibliothek mit denselben Parametern unterrichten.

 

Ich habe eine Matrix "P" mit Beobachtungen (Zeile für Zeile), für jede Zeile zähle ich die Verteilung durch "hist()".


Pausen - Satz 50


A <- hist(P[n,],breaks = 50,plot = F)


aber es stellte sich heraus, dass in jeder Zeile der Matrix `A$breaks` eine andere Länge hat, obwohl die Länge aller Zeilen in `P` gleich ist, wie kann man erreichen, dass `A$breaks` immer gleich groß ist

 

Wenn Sie eine Zahl in Pausen einfügen, wird das Ergebnis nahe daran sein, aber nicht unbedingt.

Für eine exakte Übereinstimmung ist es besser, die Mindest- und Höchstwerte vorher zu berechnen und den Vektor in den Parameter
A <- hist(P[n,],breaks = c(10:60),plot = F)

 
Dr. Trader:

Wenn Sie eine Zahl in Pausen einfügen, wird das Ergebnis nahe daran sein, aber nicht unbedingt.

Für eine exakte Übereinstimmung berechnen Sie besser vorher die minimalen und maximalen Werte und geben den Vektor in den Parameter
A <- hist(P[n,],breaks = with(10:60),plot = F)


Ich habe es versucht, aber aus irgendeinem Grund schlägt es fehl

> A <- hist(P[1,],breaks = с(10:60),plot = F)
Error in hist.default(P[1, ], breaks = с(10:60), plot = F) : 
  could not find function "с"
> A <- hist(P[1,],breaks = 10:60,plot = F)
Error in hist.default(P[1, ], breaks = 10:60, plot = F) : 
  some 'x' not counted; maybe 'breaks' do not span range of 'x'
 

Zum ersten Fehler - ich habe anscheinend russisch c statt englisch c geschrieben :) Ich habe meinen Beitrag oben jetzt korrigiert.

Zweiter Fehler - P[1,] enthält Werte, die entweder kleiner als 10 oder größer als 60 sind. Wir müssen die Pausen so wählen, dass alle Werte aus P[1,]

 
Dr. Trader:

Zum ersten Fehler - ich habe anscheinend russisch c statt englisch c geschrieben :) Ich habe meinen Beitrag oben jetzt korrigiert.

Zweiter Fehler - P[1,] enthält Werte, die entweder kleiner als 10 oder größer als 60 sind. Sie müssen Pausen wählen, um alle Werte von P[1,] einzubeziehen.


Leider kann ich das nicht verstehen(

Hier ein einfaches Beispiel

rn <- rnorm(100)
H <- hist(rn, breaks = 50, plot = F)
length(H$breaks)

DieLänge (H$breaks) mussimmer 50 betragen?

 

Zunächst müssen wir die Mindestzahl in rn bestimmen. Sagen wir -4. Dann die maximal mögliche Zahl: +4.

Der einfachste Weg, diese Funktion aufzurufen, besteht darin, das Histogramm von -4 bis +4 laufen zu lassen:
H <- hist(rn, breaks = c(-4:4))

Beispiel mit Fehler:
H <- hist(rn, breaks = c
(-1:1))
breaks ist von -1 bis 1 begrenzt, so dass hist() einen Fehler erzeugt, wenn rnorm() eine Zahl kleiner als -1 oder größer als +1 ergibt.

Als nächstes müssen wir einen Vektor mit Zahlen von -4 bis +4 erstellen, so dass die Gesamtlänge des Vektors gleich 50 ist. Dies geschieht mit der Funktion seq():
seq(-4, 4, length.out=50).

Das Ergebnis von seq() sollte für das Histogramm verwendet werden.
H <- hist(rn, breaks = seq(-4, 4, length.out=50))

 
Dr. Trader:

Zunächst müssen wir die Mindestzahl in rn bestimmen. Sagen wir -4. Dann die maximal mögliche Zahl: +4.

Der einfachste Weg, diese Funktion aufzurufen, ist, das Histogramm von -4 bis +4 laufen zu lassen:
H <- hist(rn, breaks = c(-4:4))

Beispiel mit Fehler:
H <- hist(rn, breaks = c
(-1:1))
breaks ist von -1 bis 1 begrenzt, d.h. wenn rnorm() eine Zahl kleiner als -1 oder größer als +1 ergibt, dann wird hist() einen Fehler erzeugen.

Dann müssen wir einen Vektor mit Zahlen von -4 bis +4 erstellen, so dass die Gesamtlänge des Vektors 50 beträgt. Dies geschieht mit der Funktion seq():
seq(-4, 4, length.out=50).

Das Ergebnis von seq() sollte für das Histogramm verwendet werden.
H <- hist(rn, breaks = seq(-4, 4, length.out=50))

Vielen Dank, ich habe keine Ahnung von diesem Ökonometrie-Kram,

Ich glaube, wir haben es.

rn <- rnorm(100)
Max <- max(rn)
Min <- min(rn)
range.vector <- seq(Min, Max, length.out=50)
H <- hist(rn, breaks = range.vector)
length(H$breaks)

[1] 50