Ich versuche, ein Quantstrat-Konto zu implementieren, das mehrere Portfolios mit verschiedenen Währungen verwendet. So heres mein grundlegendes Setup: 1 Konto in EUR 1 Portfolio in USD So, damit dies funktioniert, muss ich einen Wechselkurs einrichten, den ich auf Daten basiert, die von yahoo abgerufen werden. Dann sollte ich meine grundlegende Strategie laufen und die Umwandlung erfolgt automatisch im letzten Schritt über die updateAcct-Funktion. Jetzt ist hier das reiben. Ich denke, die updateAcct-Funktion hat einen Bug. Dann benutze ich einige Indikatoren, Signale, Regeln etc. Alles funktioniert, bis der Code die letzte Zeile erreicht. Die letzte Zeile gibt die Fehlermeldung: Fehler in isTRUE (invertieren). Objekt invert nicht gefunden Mögliche Fehler: Also habe ich beschlossen, check out die updateAcct Funktion versuchen Sie ein wenig Debug hier. Ich bin ziemlich sicher, dass es einen Fehler im Code. Die if-Klausel in Zeile 63 fragt nach isTRUE (invert) ab, aber invert wird nur erzeugt, wenn es tatsächlich wahr ist (siehe else-Klauselzeile 46). Aber invert ist nicht initialisiert, also, wenn es tatsächlich falsch ist, wird der Code fehlschlagen. Heres der Quellcode blotter (original) Heres, was ich denke, es sollte aussehen (snippet Zeile 28-50). Ich denke, Theres Bug in Blotter: updateAcct, die auftritt, wenn die Währungsumrechnung nicht brauchen, um den Wechselkurs invertieren. Frage: Bin ich richtig, das ist ein Bug Oder bin ich fehlt etwas, das ich normalerweise Datei dies als ein Bug, sondern A) Ich weiß nicht, wie man den Fehler mit den Autoren B) Ich noch ein Neuling mit Quantstrat, Blotter und Co. und Ich denke, jemand anderes sollte dies auch überprüfen (und die Autoren hängen hier auch ziemlich häufig).Q) I39m nicht sicher, wie die Indikatoren arbeiten in quantstrat, in den meisten backtesting Software es Schleifen durch jeden Tag und berechnet die Indikator ( Für jeden Tag schaust du dann 5 Tage zurück), macht quanstrat das selbe oder brauche ich, um meine eigene Looping-Funktion in der Anzeige A zu schreiben) Sie Indikator - und Signalfunktionen werden als pfadunabhängig angenommen. Sie sollten ein xts-Zeitreihenobjekt mit derselben Länge wie die Eingabedaten zurückgeben. Meine Interpretation) Die Funktion verarbeitet einmal und sollte ein xts-Objekt retten ndash GeV 126 Jul 3 15 um 4:11 Die meisten technischen Indikatoren müssen im TTR-Paket vorhanden sein. Allerdings, wenn sie nicht sind, dann können Sie eine benutzerdefinierte Indikator für die Verwendung in quantstrat wie folgt schreiben. Ich habe zwei hier, fractalindicator. up und fractalindicator. dn definiert. Sie können mit diesen, wie Sie in einer normalen Quantstrat-Strategie zu tun. Ich kann falsch beim Aufbau des Indikators sein, also überprüfen Sie die Logik. Es ist auch möglich, die beiden Funktionen mit einem zusätzlichen Parameter zu kombinieren. Auch quantstrat Fragen sind am besten auf r-sig-Finance Mailing-Liste gefragt. Die Autoren von quantstrat und viele weitere R-Enthusiasten sind sehr aktiv auf dieser Mailingliste. Antwortete Jul 2 15 um 18:19 so musste ich ein paar Änderungen, um es voll funktioniert für mich zu tun, aber Rohit Sie ziemlich viel es in der Nähe. Auch dies ist, was in meinem env gearbeitet Ich brauchte, um ein xts-Objekt zurückzugeben und enthalten, um Werte im Dataframe zugreifen Pasted unten ist der vollständige Code (ohne Analytics), benutzte ich die Boilerplate-Code von Ilya Kipnis so vollen Kredit geht an ihn (bitte Quelle der Code aus dem Link und nicht kopieren und Einfügen aus diesem) githubIlyaKipnisDSTradingblobmasterdemoTVI2.R Die Strategie nur sobald es auf und fraktal und Ausgänge auf einem Down-Fraktal, offensichtlich ist dies keine Strategie, die jeder handeln würde, kauft, Dies ist nur ein Beispiel für die Verwendung von Fraktalen.
No comments:
Post a Comment