Thursday, 26 October 2017

Bollinger Bands Pandas


Im gerade erst in Pandas, zu tun, was ich tun würde, in Excel einfach nur mit einem großen Datensatz zu tun. Ich habe eine Auswahl von Futures-Preisdaten, die ich in Pandas eingegeben habe: das gibt mir ein DataFrame. Die Daten sind in der Form unten: Nun, was Im im Wesentlichen versucht, ist eine Bollinger-Band in Pandas berechnen. Wenn ich in Excel war, würde ich den ganzen Block von High, Low, Open und Close Spalten für etwa 20 Zeilen auswählen und die Standardabweichung berechnen. Ich sehe Pandas hat die rollingstd Funktion, die die rollende Standardabweichung berechnen kann, aber gerade auf einer Spalte. Wie bekomme ich Python Pandas zu berechnen eine rollende Standardabweichung auf die High, Low, Open und Close Spalte für etwa 20 Perioden Was ich versuche zu tun ist, berechnen die Standard-Devaition auf alle ausgewählten Werte über die 4 Spalten, nicht nur jede einzelne Spalte. In Excel konnte ich einfach STDEV (A1: D5) verwenden, um die Standardabweichung aller Zahlen in diesem ausgewählten Block zu finden. Was ich versuche, herauszufinden, ist, wie man pandaspython Blick auf all die openhighlowlowclose Werte gehen 20 Perioden und sagen Sie mir die Standardabweichung, nicht nur für die einzelnen Spalten. Ndash user2999716 Nov 16 13 um 17: 22Which ist die am meisten empfohlene phythonische Art und Weise der Verarbeitung von live eingehenden Daten mit Pandas Alle paar Sekunden Im erhalten einen Datenpunkt im folgenden Format: Ich möchte es an eine bestehende DataFrame anfügen und dann einige Analyse auf es. Das Problem ist, nur das Hinzufügen von Zeilen mit DataFrame. append kann zu Leistungsproblemen mit all dem Kopieren führen. Dinge, die ich versucht habe: Einige Leute schlugen vor, ein großes DataFrame zuzuweisen und es zu aktualisieren, während Daten hereinkommen: Die andere Alternative ist das Erstellen einer Liste von Dicts. Einfach die ankommenden Daten an eine Liste anhängen und in kleinere DataFrames schneiden, um die Arbeit zu erledigen. Oder so ähnlich, vielleicht die Verarbeitung der Eingabe ein wenig mehr. Ich würde HDF5pytables wie folgt verwenden: Halten Sie die Daten als eine Python-Liste so lange wie möglich. Fügen Sie Ihre Ergebnisse zu dieser Liste hinzu. Wenn es groß wird: Push-to-HDF5 Store mit Pandas io (und eine anhängende Tabelle). Löschen Sie die Liste. Wiederholen. In der Tat verwendet die Funktion, die ich definiere, eine Liste für jede Taste, so dass Sie mehrere DataFrames zum HDF5 Store in demselben Prozess speichern können. Wir definieren eine Funktion, die Sie mit jeder Zeile aufrufen d: Anmerkung: Wir verwenden die Anweisung, um den Speicher automatisch nach jedem Schreiben zu schließen. Es kann schneller sein, um es offen zu halten, aber wenn so seine empfohlene, dass Sie regelmäßig spülen (schließende Spülungen). Beachten Sie auch, dass es besser lesbar sein kann, eine Collections deque als eine Liste verwendet zu haben, aber die Leistung einer Liste wird hier etwas besser sein. Um dies zu nutzen, rufen Sie unter: Hinweis: df ist der gespeicherte Schlüssel, der im PY-Tabellenspeicher verwendet wird. Sobald der Job fertig ist, stellen Sie sicher, dass Sie den verbleibenden Cache speichern und löschen: Jetzt ist Ihr komplettes DataFrame verfügbar über: Einige Kommentare: 5000 können angepasst werden, versuchen Sie mit einigen kleineren Zahlen, um Ihren Bedürfnissen anzupassen. Liste append ist O (1). DataFrame-Append ist O (len (df)). Bis du machst Statistiken oder Daten-munging Sie nicht benötigen Pandas, verwenden, was am schnellsten ist. Dieser Code funktioniert mit mehreren Schlüsseln (Datenpunkte) kommen. Dies ist sehr wenig Code, und wohnten in Vanille-Python-Liste und dann Pandas Dataframe. Darüber hinaus, um die up to date liest können Sie eine get-Methode, die speichert und löscht vor dem Lesen zu definieren. Auf diese Weise würden Sie die meisten up to date Daten erhalten: Jetzt, wenn Sie Zugriff mit: youll erhalten die neuesten df zur Verfügung. Eine weitere Option ist etwas mehr beteiligt: ​​eine benutzerdefinierte Tabelle in vanilla pytables definieren, siehe das Tutorial. Hinweis: Sie müssen die Feldnamen kennen, um den Spaltenbeschreiber zu erstellen. Vielen Dank. Aber mit dieser Methode können Sie nicht verwenden Pandas auf die neuesten Daten der letzten paar Sekunden. Let39s sagen, ich füge Daten heute um 15:23:00, 15:23:01, 15:23:02, 15:23:04. Dann, wenn ich auf df392015-12-15 15: 23: 0139, 392015-12-15 15: 23: 0339 zugreifen möchte. Ich kann nicht. Dann heißt es, ich muss meinen eigenen Code schreiben, um Zeilen nach Zeit im Cache zu filtern. Das bedeutet, dass wir das Rad neu erfinden müssen. Ndash Basj Dez 15 15 um 16: 06Bollinger Bands reg Einleitung: Bollinger Bands sind ein technisches Trading-Tool, das von John Bollinger in den frühen 1980er Jahren geschaffen wurde. Sie entstanden aus der Notwendigkeit adaptiver Handelsbanden und der Beobachtung, dass die Volatilität dynamisch und nicht statisch war, wie damals allgemein geglaubt wurde. Der Zweck von Bollinger-Bändern besteht darin, eine relative Definition von hoch und niedrig bereitzustellen. Nach Definition sind die Preise am oberen Band und am unteren Band niedrig. Diese Definition kann eine rigorose Mustererkennung unterstützen und ist nützlich, um die Preisaktion mit der Wirkung von Indikatoren zu vergleichen, um zu systematischen Handelsentscheidungen zu gelangen. Bollinger Bands bestehen aus einem Satz von drei Kurven, die in Bezug auf die Wertpapiere gezogen werden. Das mittlere Band ist ein Maß für den mittelfristigen Trend, meist ein einfacher gleitender Durchschnitt, der als Basis für das obere Band und das untere Band dient. Das Intervall zwischen dem oberen und unteren Band und dem mittleren Band wird durch die Flüchtigkeit bestimmt, typischerweise die Standardabweichung der gleichen Daten, die für den Durchschnitt verwendet wurden. Die Standardparameter, 20 Perioden und zwei Standardabweichungen können an Ihre Bedürfnisse angepasst werden. Erfahren Sie, wie Bollinger Bands verwendet werden: Bollinger On Bollinger Bands Buch von John Bollinger, CFA, CMT Holen Sie sich die 22 Bollinger Band Regeln Melden Sie sich an, um gelegentliche E-Mails über Bollinger Bands, Webinare und Johns neueste Arbeit zu erhalten. Wir teilen nie Ihre Informationen John Bollingers Monatskapital Growth Letter Analyse und Kommentar auf den Märkten plus Investitionen Empfehlungen von John Bollinger. CGL Subscriber Area Dezember 2016 Auszug Die Bounce Wir überspringen Die Bounce in diesem Jahr als die Märkte nicht aufstellen, wie sie sollten, um eine gute Bounce versichern. Ideale Bounce-Bedingungen sind ein Höchststand an Aktienkursen früher im Jahr, viele Aktien schlagen die neue Tief-Liste als das Jahr zieht zu einem Ende, viele Steuern zu verkaufen, und das Dumping von Aktien als ein Produkt der Portfolio-Fenster-Dressing. Wir sehen nichts davon in diesem Jahr: Wir sind wahrscheinlich zu gehen in der Nähe der Höhen des Jahres. Es gibt wenige, wenn neue Tiefs gemacht werden. Steuererwerb ist einfach nicht ein Faktor (noch). Und Fenster-Dressing ist viel eher zu Panik Kauf von guten Waren zu beteiligen als den Verkauf von schlechten Waren. Also machen wir einen Pass auf The Bounce bis zum nächsten Jahr.

No comments:

Post a Comment