Ich versuche, zu berechnen exponentiellen gleitenden Durchschnitt auf 15 Tage Bars, sondern wollen die Entwicklung der 15-Tage-Bar EMA auf jeder (Ende) Tagbar zu sehen. Also, das bedeutet, dass ich 15 Tage Bars haben. Wenn neue Daten auf einer täglichen Basis kommen, möchte ich EMA mit neuen Informationen neu berechnen. Tatsächlich habe ich 15 Tagesstäbe und dann, nach jedem Tag meine neue 15 Tagesstange beginnt zu wachsen und jede neue Stange, die entlang kommt, soll für EMA Berechnung zusammen mit vorherigen vollen 15 Tagesstäben benutzt werden. Lassen Sie uns sagen, dass wir am 2012-01-01 beginnen (wir haben Daten für jeden Kalendertag für dieses Beispiel), am Ende von 2012-01-15 haben wir die erste komplette 15 Tagesbar. Nach 4 abgeschlossenen 15-Tage-Bars am 2012-03-01 können wir mit der Berechnung von 4 bar EMA (EMA (x, n4)) beginnen. Am Ende des 2012-03-02 nutzen wir Informationen, die wir bis zu diesem Moment haben und berechnen EMA am 2012-03-02 vorgibt, dass OHLC für 2012-03-02 die 15 Tage Bar in Arbeit ist. So nehmen wir die 4 komplette Bars und die Bar am 2012-03-02 und berechnen EMA (x, n4). Dann warten wir noch einen Tag, sehen, was passiert mit der neuen 15 Tage Bar im Gange (siehe Funktion to. period. cumulative unten für Details) und berechnen neuen Wert für EMA. Und so für die nächsten 15 Tage weiter. Siehe Funktion EMA. cumulative unten für Details. Im Folgenden finden Sie, was ich bis jetzt kommen konnte. Die Leistung ist nicht akzeptabel für mich und ich kann es nicht schneller machen mit meinem begrenzten R Wissen. Auf meinem System dauert es eine akzeptable Ausführungszeit wäre weniger als eine Sekunde. Ist es möglich, dies zu erreichen mit rein R Dieser Beitrag ist verknüpft mit Optimieren gleitende Durchschnitte Berechnung - ist es möglich, wo ich keine Antworten erhielt. Ich war nun in der Lage, ein reproduzierbares Beispiel mit detaillierterer Erklärung, was ich beschleunigen wollen. Ich hoffe, die Frage macht mehr Sinn jetzt. Irgendwelche Ideen auf, wie man dieses beschleunigt, werden in hohem Grade geschätzt. Huh, dann habe ich ein Problem. Nehmen wir an, wir haben Daten auf einer täglichen Basis. Ich möchte 4 bar EMA (EMA (x, n4)) auf 15-Tage-Basisbars berechnen. So transformieren Sie tägliche Daten zu 15 Tage Bars mit to. period. Das wäre einfach. Was ich bekommen möchte, ist, dass ich die Entwicklung von 4 Tage EMA auf 15 Tagesbars jeden Tag sehen möchte. Wie Sie gerne (in der Nähe) Echtzeit-Grafik von EMA zu zeichnen, wie neue Daten kommen in. Sie betrachten die letzten bekannten Daten als eine volle 15-Tage-Bar (auch wenn es nur 3 Tage quotoldquot zum Beispiel). Dann nehmen Sie, was Sie jetzt wissen und alle vorherigen volle 15 Tage Bars und berechnen EMA. Jeder bessere ndash Samo Jan 12 um 23:51 Joshua, ich danke Ihnen für Ihr freundliches Angebot. Nur um Sie auf die Grenze und Startbedingungen aufmerksam zu machen: Ich bin Teilzeit unrentabel Einzelhandel Traderprogrammer mit einem kleinen Handelskonto dies ein Hobby (oder Programmierung Übung), die R als eine Plattform für die Unterstützung meines Handels (gut, nur Backtesting tatsächlich) Aktivitäten. Ich bin nicht die Entwicklung dieser für kommerzielle Zwecke für eine juristische Person. Ich bin sehr dankbar für alles, was Sie geschaffen haben und alle Unterstützung in Ihrer Freizeit zur Verfügung gestellt. Wenn ich keine anderen Ideen quotquote freequot dann werde ich sicher nehmen Sie Ihr freundliches Angebot. Ndash Samo Jan 12 12 at 0:10 Iterator eine Bar ist eine Notation der (Grenzen) Preisbewegungen der finanziellen Zeitreihen in bestimmten Zeitraum. Er stellt den Preis zu Beginn des Zeitintervalls (offener Preis), am Ende des Intervalls (Schlusskurs) und dem Maximum (hoch) und Minimum (niedrig) im Zeitraum dar. Bar Länge (Zeitdauer) kann alles: 1 Minute, 15 Minuten, 1 Tag, 1 Woche. Sie können versuchen und verwenden: Bibliothek (quantmod) getSymbols (quotSPYquot) chartSeries (SPY) und Sie werden sehen, was ich meine mit einer Leiste. Ein Leuchter eigentlich. Ndash Samo Ich habe nicht eine befriedigende Lösung für meine Frage mit R. Also habe ich das alte Werkzeug, c Sprache, und die Ergebnisse sind besser, als ich es je erwartet hätte. Vielen Dank für den Druck mich mit diesem tollen Tools von Rcpp, Inline etc. Amazing. Ich denke, wenn ich Leistungsanforderungen in der Zukunft habe und nicht mit R erfüllt werden kann, füge ich C zu R hinzu und die Leistung ist da. Also, siehe unten mein Code und die Auflösung der Performance-Probleme. EDIT: Um einen Hinweis auf Performance-Verbesserung über meine umständlich (ich bin sicher, es kann besser gemacht werden, da in Wirklichkeit habe ich doppelte Schleife) R hier ist ein Ausdruck: Also, durch meine Standards, eine SF Art der Verbesserung . Die Formel für den volumengewichteten (oder volumenangepassten) gleitenden Durchschnitt ist. Ich habe die Funktion vwma () zu MetaTraders Moving Averages. mq4 hinzugefügt und nannte es myVWMA. mq4 (beigefügt). Der Unterschied zwischen dem VWMA und dem SMA (einfacher gleitender Durchschnitt der gleichen Periode) ist ein Maß für eine Tendenz-Robustheit. Wenn die Differenz positiv ist, heißt sie VPC (Volumenpreisbestätigung), wenn negativer VPC - (Volumenpreis-Widerspruch). Sie verwenden diese Informationen in Ihrem Handel durch die Vermeidung von Trends, die widerlegt werden und Montage Trends, die bestätigt werden. Ich versuche jetzt, einen Oszillator von VPC ähnlich MACD im Aussehen zu bauen, aber ich brauche Ihre Hilfe. Beim Aufbau von MACD verwendet MetaTrader die Funktion. Int-Zeit, int mashift, int mamethod, int angewandter Preis, int-Verschiebung), aber es gibt keine mamethod genannt MODEVWMA. Wie kann ich die vwma () - Funktion verwenden, um die Informationen zu erzeugen, die ich für den VPC-Oszillator benötige. Vielen Dank an alle, Helmut Ich sehe jetzt den VPC-Indikator an, wenn ich handele. Basierend auf anderen Signalen, bin ich derzeit lange. Ich habe schon ein paar gute Kerzen. Die VPC ist. Die dritte Kerze machte einen guten Anfang, aber jetzt schrumpft sie. Allerdings wächst der VPC. Wo ich die schrumpfende Kerze mit etwas Beklommenheit vor gesehen haben könnte, gibt der wachsende VPC einige Sicherheit, dass die lange Position gesund ist. Sein nicht vorbei, bis die fette Dame singt. Ich werde Sie auf dem Laufenden halten. Die dritte Kerze endete eine perfekte Doji, aber die vierte Kerze ist derzeit durch das Dach, mit VPC immer noch wächst. Die fünfte Kerze kämpft. VPC wächst langsam, kann nicht vorbei an der vorherigen Spitze. Kerze noch positiv, war aber negativ zu starten. Das ist angespannt Mein schleppender Anschlag ist im Geld aber ein langer Weg von der Spitze. Die Kerze wird negativ und VPC hat aufgehört zu wachsen. Ich bin mit einem netten Profit. Die nächsten Kerzen erzählen. Ich hasse es, zu glänzen, aber auf der nächsten Kerze kollabiert der Markt an meinem hinteren Halt vorbei. Ich wäre noch mit einem kleinen Gewinn ausgegangen, aber dieses Beispiel zeigt mir, dass die Beobachtung der VPC während des Handels hat Verdienst.
No comments:
Post a Comment