Verschieben Des Durchschnittlichen Arrays




Verschieben Des Durchschnittlichen ArraysIhre innere fur iteriert alle Array so thats, warum Sie immer den gleichen Durchschnitt (die fur die gesamte Array), sollten Sie iterieren von 0 auf die aktuelle Zahl der au?eren fur statt. Ihr gleitender Durchschnitt wird aktualisiert, basierend auf j Ihrer inneren fur das bedeutet, dass es vorherige Werte uberschreibt jede neue Schleife, sollte dies innerhalb der au?eren fur statt der inneren mit i als Index sein. Sie teilen sum / j, um Mittelwerte zu berechnen, jede neue innere Schleife j Sie teilen durch 0 die erste Summe. Ich glaube, Sie wollten j1 verwenden, Index ist nicht das gleiche wie aktuelle Lange Tipps zur Fehlerbehebung: Vermeiden Sie die Verwendung von Variablen zu Loop-Arrays, sollten Sie array. length stattdessen verwenden. Fur eine Frage der Reproduktion Ihres Problems konnten Sie uns das isolierte Problem anstelle des aktuellen Codes. Dh: Stellen Sie sich vor, wenn der Fehler in Ihren Eingaben ist, wie konnten wir glauben, dass Sie wirklich verwendet sie beantwortet werden Sie sind Looping uber alle Daten jedes Mal. Fur den innersten Durchschnitt sollten Sie fur (int j (igtaverageLengthi-averageLength / 2: 0) jlt iaverageLength / 2 ampamp jltnumDataPoints j) (oder etwas ahnliches) haben. Au?erdem sollte movingAverageisum / j modifiziert werden, um den Fall zu bewaltigen, wenn j 0 ist. Insbesondere sollte es sich wahrscheinlich um MovingAverageisum / averageLength handeln und es sollte auf den movingAveragei-Slot au?erhalb der Mittelungsschleife angewendet werden. Antwortete Oct 4 13 am 20:42 Nachstes Mal, nehmen Sie die Kommentare uber die Zuweisung aus der Frage, bevor Sie es. Aber da Sie scheinen ziemlich neu in diesem, daruber nachzudenken, wie wurden Sie durch die Daten gehen, und machen es tun. Sie sollten sicherstellen, dass jede Schleife an dem richtigen Punkt stoppt, und denken Sie daran, dass wenn Sie stoppen wurden, wenn es keine Zahlen mehr gibt (wie wenn Sie die innere Schleife machen und nur 3 weitere Zahlen anstelle von 4 erhalten konnen) Muss das Programm auch stoppen. Stellen Sie sicher, dass Ihr Code fur diese Uberprufung ist. Antwortete ohne weitere Details, benotigen Sie wahrscheinlich einen ungewichteten gleitenden Durchschnitt. An einem beliebigen Punkt Ai im Eingabefeld A der Lange N (mit 0ltiltN) ist das einfach der Mittelwert der vorherigen K Eintrage des Arrays, bis zu und einschlie?lich Ai. Wenn es arent K solche Werte, dann die durchschnittlichen (i1) Werte von A0 bis Ai. Einschlie?lich. Ein wenig Gedanke zeigt Ihnen, dass Sie nicht alle K-Werte addieren mussen jedes Mal. Halten Sie einfach die Summe, und beim Bewegen zum nachsten Punkt (dies ist ein gleitender Durchschnitt), subtrahieren Sie den Wert, der ersetzt wird, und fugen Sie den neuen Wert hinzu, der es ersetzt. (Bei den ersten K-1 Punkten fugen Sie einfach den neuen Wert zur Summe hinzu und erhohen Sie den Zahler um 1.) Der gleitende Durchschnitt ist an jedem Punkt der aktuelle Summe dividiert durch den aktuellen Zahlwert. In einem gleitenden Durchschnitt, mussen Sie eine Art von Fenstergro?e haben. Ihre Fenstergro?e ist averageLength, so wird es etwa so aussehen: Die for-Schleife startet bei den aktuellen Daten und geht zuruck AverageLength Datenpunkte und fugt sie hinzu. Sie haben nur einen gleitenden Durchschnitt, wenn Sie haben, wenn Sie genugend Datenpunkte haben und der Durchschnitt wird die Summe geteilt durch die durchschnittliche Lange haben. Hinweis: Nicht getestet nur Sudo-Code, aber das ist die Idee. Beantwortet Ihre Antwort 2016 Stack Exchange, IncDie nachsten hei?en London Boroughs: wo und wann werden durchschnittliche Hauspreise 500.000 getroffen Junge Mieter entfesselt auf London zum ersten Mal neigen dazu, die beliebte Partei Hubs von Clapham, Brixton scharen Und Hackney, eifrig, so zentral zu sein, wie Mieten erlauben. Aber wenn es darum geht, auf der Leiter oder den Kauf dieser ersten Familie zu Hause, sind viele gezwungen, sich auf der Suche nach einem Gebiet, in dem sie sich leisten konnen, Eigentumer, nicht Mieter zu werden. Dieses Moment der Migration schafft Fang 22 Bezirke: gentrifying Bereiche, wo ein anhaltender Anstieg der Nachfrage treibt Werte und schlie?lich macht sie unerschwinglich fur die nachste Generation. Neue Forschung aus der Immobilien-Gruppe JLL hat identifiziert Londons Standorte des Augenblicks, wo die Preise auf Kurs sind, um die 500.000 Schwelle bis 2020 zu brechen. Klicken Sie auf die folgenden Bereiche, um herauszufinden, wann der Durchschnittspreis prognostiziert wird, um die 500.000 Marke zu brechen. Die sieben Gebiete als nachstes in der Linie, um die 14 zu verbinden, die bereits einen durchschnittlichen Wert von uber einer halben Million Pfund haben, sind Brent, Kingston-upon-Thames, Ealing, Tower Hamlets, Harrow, Bromley und Waltham Forest. Hauspreisinflation hat vor Lohn beschleunigt und bildet Kauf in, was bereits das teuerste Gebiet des britischen zentralen Londons noch weiter von der Reichweite des aufstrebenden Eigenheimbesitzers ist, sagt JLL Analytiker Nick Whitten. Er hat auch die Erschwinglichkeitsquote der einzelnen Bezirke berechnet, wobei im Verhaltnis des durchschnittlichen Hauspreises und der mittleren Gehalt. Aber es geht nicht nur um Erschwinglichkeit. So was sonst tun, das diese Eigenschaft Hotspots haben, um Brent Brent anzubieten umfa?t Bereiche wie belaubtes Queens Park, Kilburn und Harlesden, aber das Stadtrand-increment in den Hauspreisen ist ein direktes Resultat des enormen Regenerationprojektes um Wembley Stadium. Die Entwicklungsfirma Quintain kaufte 2002 das Betonloch um das Stadion und die Arena und versprach, 5.000 neue Hauser zu liefern. Apartments in zwei Concierge-Turme wurden im Jahr 2009 und 2010 verkauft, bringen einige Luxus in die Gegend, und die Show-Suite ist verfugbar, um zu sehen, was werden die 425-home Emerald Gardens. Ein 3-Zimmer-Haus mit einem gro?en Garten in der Nahe von Wembley ist 499.950 Quintain verbessert die Gehwege um die drei Stationen, Wembley Park, Wembley Central und Wembley-Stadion, und schuf drei neue Parks. Mit dem London Designer Outlet kamen Geschafte, Restaurants und ein Neun-Bildschirm-Kino mit 1.000 neuen Arbeitsplatzen. Brent hat fantastische Verkehrsverbindungen ins Zentrum von London, wurde aber traditionell zu Gunsten von begehrenswerteren Orten ubersehen, sagt Whitten. Die Regenerationsinvestitionen rund um Wembley und die Nachfrage nach Standorten am Rande des zentralen London wie Queens Park haben die Immobilienpreise in den letzten Jahren stark unter Druck gesetzt. Auf dem Markt: Ein 3-Zimmer-Haus mit einem gro?en Garten in der Nahe von Wembley ist 499.950 mit Foxtons (020 3542 2188 foxtons. co. uk). Aktuelle Erschwinglichkeitsrate: 16 Durchschnittlicher Hauspreis wird 501.391 bis Dezember 2016 treffen Kingston-upon-Thames Kingston sitzt auf dem sudlichen Ufer der Themse, bevor es nach Westen in Surrey schlangelt. Der lebhafte Vorort verfugt uber ein Kino-Komplex und Einkaufszentrum mit einem John Lewis und Bentalls. Die deutsche Schule im benachbarten Petersham zieht einige Uberseefamilien an und chinesische Kaufer schnappen sich die neuen Riverside Apartments an, aber der lokale Markt wird uberwiegend von inlandischen Kaufern und Familien betreut, die sich in den Reihen viktorianischer Terrassen niederlassen. Eine zwei-Zimmer-Garten-Wohnung ist 375.000 mit Foxtons Preise fiel weniger hier in 2008-09 im Vergleich zu zentralen London, weil waren nicht abhangig von den Launen des internationalen Marktes, sagt Peter Knowles von Hamptons International. Aber Sie erhalten noch zweimal das Haus fur den halben Preis im Vergleich zu Wimbledon oder Richmond. Familien ziehen nach Kingston, um eine angemessene Ausbildung fur ihre Kinder zu sichern, sagt er. Alle unsere Grundschulen sind hervorragend und eine neue Akademie hat gerade eroffnet. Auf dem Markt: Eine zwei-Zimmer-Garten-Wohnung ist 375.000 mit Foxtons (020 8879 2121 foxtons. co. uk). Aktuelle Preis-Leistungs-Verhaltnis: 13 Durchschnittliche Hauspreis wird 524.108 bis Dezember 2017 treffen Ealing Crossrail hat die Wahrnehmung von Ealing zu Familien und Immobilien-Spekulanten gleicherma?en verandert, sagt Paul Daniel von Hamptons International. Wenn die Elizabeth Linie im Dezember 2018 offnet, wird die Reisezeit von Ealing Broadway zur Bond Street bis zu 11 Minuten halbiert. Transport war nur ein Faktor, als Vermogensverwalter und Unternehmerin Katie Owen ihre Familie von Forest Hill im Suden von London in das Dorfgebiet von Hanwell vor drei Jahren verlegte. Wealth-Manager und Unternehmer Katie Owen zog nach Hanwell mit ihrer Familie Kredit: Julian Andrews Obwohl wir liebten Forest Hill, mein Mann arbeitet in Park Royal und unsere Verwandten leben im Westen oder in den West Midlands, sagt sie. Sie wollten auch mehr Platz fur ihre wachsende Familie (sie haben jetzt zwei Jungen) und Platz fur Owen, ihr Geschaft zu grunden, Sargasso Gray. Ma?geschneiderte Fersen fur breite Fu?e. Jedoch nahm ihr Preispunkt sie zu Hanwell, eine kleine Stadt im Suden der Stadtgemeinde. Ich wusste nichts uber Hanwell, aber der Zug dauert 15 Minuten nach Paddington und weil es keinen Tube-Halt hat, waren die Preise viel niedriger, erklart sie. Wir leben vom Brent Lodge Park mit zwei Spielplatzen, einem Labyrinth und einem Zoo. Es tickte alle Boxen fur uns. Eine Ein-Zimmer-Periode Wohnung ist 435.000 mit KFH Sie kauften ein Funf-Zimmer-Doppelhaushalfte, renovierungsbedurftig, mit einem 180ft Garten, fur knapp uber 700.000. Auf dem Markt: Eine Ein-Zimmer-Wohnung ist 435.000 mit KFH (020 3792 5718 kfh. co. uk). Aktuelle Erschwinglichkeitsrate: 16 Durchschnittlicher Hauspreis wird 511.287 bis Dezember 2017 treffen Tower Hamlets Im Osten der Stadt, Tower Hamlets umfasst Bereiche wie Canary Wharf, Whitechapel und Bow und grenzt an die Queen Elizabeth Olympic Park. Zwei verschiedene regenerative Krafte sind in den letzten zehn Jahren im Einsatz, erklart Whitten: Der olympische Effekt ist vom benachbarten Stratford verschwunden, wahrend sich London selbst unabhangig von London bewegt. Eine Ein-Zimmer-Wohnung in einer neuen Entwicklung auf Hufte Fish Island, Minuten von gut verbundenen Stratford, ist 419.000 mit CBRE Bis 2030 wird die Halfte aller Londons Bevolkerungswachstum ostlich der Hauptstadt sein, sagt er, und die Wohn-Revolution An der Canary Wharf steht im Mittelpunkt. Unter den neuen Turmen befindet sich das 60-stockige Neufundland-Appartementhaus, in dem 560 Luxuswohnungen untergebracht werden und ein unbenanntes 20-Hektar gro?es Schema, in dem 3.200 Hauser untergebracht sind. Whitten zitiert Old Street als die neue Finanz-Technologie-Hub der Welt, ziehen Menschen in diese Richtung auf der Suche nach Arbeitsplatzen. Auf dem Markt: Eine Ein-Zimmer-Wohnung in einer neuen Entwicklung auf hip Fish Island, nur wenige Minuten von gut verbundenen Stratford, ist 419.000 mit CBRE (020 7519 5917 cbreresidential) Derzeitige erschwingliche Verhaltnis : 13 Der durchschnittliche Hauspreis wird bis Dezember 2018 auf 512.031 geschlagen. Harrow Harrow, die Heimat von Stanmore (das Ende der Jubliee Line), ist das Tor zum begehrten Pendlergurtel von Hertfordshire. Viele Londoner beginnen ihre Suche nach mehr Platz in der beliebten Grafschaft, aber auf der Suche nach seiner zu teuer, entdecken Sie Harrow. 454.900 erhalten Sie ein Duplex mit drei Schlafzimmern in der Nahe von Harrow-on-the-Hill mit Woodward Es konnte das Beste aus beiden Welten fur diejenigen, die in diese Richtung gehen, sagt Whitten. Die Zugfahrt dauert nur 12 Minuten von Marylebone zu Harrow-on-the-Hill, die intelligenteste Gegend der Gemeinde um die Harrow School. Ein-, Zwei - und Drei-Zimmer-Wohnungen in Redrows neuen Lyon Square beginnen von 365.000 bis 650.000 und Persimmon hat die Erlaubnis zur Umwandlung der Kodak-Anlage in ein Gehause-System eingepackt. Auf dem Markt: 454.900 erhalten Sie ein Duplex mit drei Schlafzimmern in der Nahe von Harrow-on-the-Hill mit Woodward (020 8864 8844 woodward. co. uk). Aktuelle Preis-Leistungs-Verhaltnis: 14 Durchschnittliche Hauspreis wird 500,147 bis Dezember 2018 Bromley Die Welle der Nachfrage nach Immobilien in Bromley kam im Jahr 2014, als es von Londoner Auszug entdeckt wurde, sagt Theresa Hiscoke, Filialleiter bei Alan de Maid. Wir haben jetzt eine wirklich starke Erstkaufer-Markt und eine Menge Leute nach ihren Freunden. Sie konnen ein Drei-Zimmer-semi fur den Preis fur eine Ein-Zimmer-Wohnung im benachbarten Dulwich zu bekommen. Alan de Maid hat eine drei-Zimmer-Wohnung mit Parkplatz abseits der Stra?e fur 365.000 Die High Street, die einst den Handel mit dem nahe gelegenen Bluewater Einkaufszentrum verloren, hat sich mit einer Reihe von High-End-und unabhangigen Geschaften gebaut. Theres ein Theater, gute Primar - und Sekundarschulen und Zuge, die in Waterloo Ost, Charing Kreuz, Victoria und London-Brucke laufen. Auf dem Markt: Alan de Maid hat eine drei-Zimmer-Wohnung mit Parkplatz abseits der Stra?e fur 365.000 (020 3369 4290 alandemaid. co. uk). Aktuelle Erschwinglichkeitsrate: 12 Durchschnittlicher Hauspreis wird 509.823 bis Dezember 2019 Waltham Forest Waltham Forest lauft von der Spitze von Stratford bis Chingford mit Walthamstow in seinem Zentrum. Die trendige Orford Road verlauft durch die Mitte des Waltham Village, und mit Delis, lokalen Brauereien und Bric-a-brac Geschaften seine sicherlich eine andere E17 von der, die die Neunziger-Band inspiriert. Eine Erdgeschoss-Wohnung mit drei Schlafzimmern in Walthamstow mit einem gro?en Garten ist auf dem Markt mit Foxtons fur 475.000 Walthamstow profitiert von dem, was Foxtons Daren Haysom einen zweigleisigen Angriff nennt. Londons junge Mieter, die sich nicht leisten konnen, in Muswell Hill oder Crouch End kaufen gehen, wahrend die Kaufer sind in Venturing von den Leuten von Loughton in Essex. Das Gebiet wurde vorher ignoriert und downtrodden, aber das andert sich schnell, sagt er. Auf dem Markt: Eine Erdgeschoss-3-Zimmer-Wohnung mit einem gro?en Garten ist auf dem Markt mit Foxtons fur 475.000 (020 3728 2323 foxtons. co. uk). Aktuelle Erschwinglichkeit Ratio: 15 Durchschnittliche Hauspreis wird 503.765 bis Dezember 2019numpy. average Axis, auf die durchschnittlich ein Durchschnitt. Wenn Keine. Wird eine Mittelung uber das abgeflachte Array durchgefuhrt. Gewichte. Arraylike, optional Ein Array von Gewichten in Verbindung mit den Werten in einer. Jeder Wert in a tragt zum Durchschnitt nach seinem zugehorigen Gewicht bei. Die Gewichtsanordnung kann entweder 1-D (in diesem Fall ihre Lange die Gro?e von a entlang der gegebenen Achse sein) oder von der gleichen Form wie a sein. Wenn weightsNone. Dann wird angenommen, da? alle Daten in a ein Gewicht gleich Eins haben. ist zuruckgekommen . Bool, optional Der Standardwert ist False. Wenn wahr . Wird das Tupel (durchschnittliche Summengewichte) zuruckgegeben, ansonsten wird nur der Durchschnitt zuruckgegeben. Wenn weightsNone. Die Summe der Gewichtungen entspricht der Anzahl der Elemente, uber die der Durchschnitt genommen wird. Durchschnittlich, sumofweights. Arraytype oder double Gibt den Durchschnitt entlang der angegebenen Achse zuruck. Wenn die Ruckgabe True ist. Ein Tupel mit dem Durchschnitt als das erste Element und die Summe der Gewichte als zweites Element zuruck. Der Ruckgabetyp ist Float, wenn a vom Integer-Typ ist, andernfalls ist er vom gleichen Typ wie a. Sumofweights ist von der gleichen Art wie Durchschnitt. Ich mochte die Berechnung fur Aktienkurs gleitenden Durchschnitt zu entwickeln. Aber viel komplexe Berechnung wurden spater geplant. Mein erster Schritt zu wissen, wie man Moving Average effizient zu berechnen. Ich muss wissen, wie die Input-und Return-Ausgang effizient zu nehmen. Als Eingabe Datum und Preis. Ausgegebenes Datum, Preis und gleitender Durchschnitt. Wenn ich 500 Datensatze haben und ich mochte gleitende Durchschnitt fur 5 Tage zu berechnen, was ist der effient Weg anstatt hin und her im Array von Datum und Preis wieder bitte sugest, was ist der beste Weg, um Eingang (ArrayList, Tabelle, Array Etc) und Ausgang zuruck. Anmerkung: Der heutige MA von 5 Tagen wird der Durchschnitt der letzten 5 Tage einschlie?lich heute Preis sein. Gestern ist MA durchschnittlich der letzten 5 Tage von gestern. Ich mochte die Tage halten, um flexibel zu sein anstatt 5 konnte es 9, 14, 20 etc. sein. Wenn Sie einfache Berechnung ohne Ihre Bemuhung benotigen, als Sie TA-Lib verwenden konnen. Aber wenn Sie wollen, dass Ihre Rechnung effizienter ist als TA-Lib, dann konnen Sie Ihre eigene technische Indikator erstellen. TA-Lib ist gro?, aber Problem ist, dass diese Bibliothek nur statische Methoden haben. Das bedeutet, wenn Sie SMA-Array-Werte auf Basis von 500 Preisleisten berechnen mussen, dann werden Sie das gesamte Array von Balken senden und es wird Array von SMA-Werten zuruckgeben. Aber wenn Sie neue 501-st-Wert erhalten, dann sollten Sie wieder das gesamte Array und TA-Lib erneut berechnen und zuruckgeben SMA-Array von Werten. Stellen Sie sich jetzt vor, Sie brauchen einen solchen Indikator fur den realen Preis, und fur jede Preisanderung benotigen Sie einen neuen Indikatorwert. Wenn Sie einen Indikator nicht ein gro?es Problem haben, aber wenn Sie Hunderte Indikatoren arbeiten, konnte es ein Leistungsproblem sein. Ich war in einer solchen Situation und beginnen die Entwicklung von Echtzeit-Indikatoren, die effizient sind und zusatzliche Berechnungen fur neue Preisleiste oder fur geanderte Preisleiste nur. Leider habe ich nie benotigt SMA-Indikator fur meine Handelssysteme, aber ich habe solche fur EMA, WMA, AD, und andere. Ein solcher Indikator AD ist in meinem Blog veroffentlicht und Sie konnen von dort sehen, was ist die grundlegende Struktur meiner Echtzeit-Indikator-Klasse. Ich hoffe, Sie benotigen kleine Anderungen, um SMA-Indikator zu implementieren, denn ist einer der einfachsten. Die Logik ist einfach. Zur Berechnung von SMA benotigen Sie nur die letzten Preiswerte. So Klasse Instanz haben Sammlung von Preisen, die Speicherung halten nur letzte n Anzahl der Preise als SMA definiert ist (in Ihrem Fall 5). Also, wenn Sie neue Bar haben, werden Sie alteste entfernen und neue hinzufugen und erstellen Berechnung. Donnerstag, 10. April 2008 16:04 Alle Antworten Es gibt eine Bibliothek namens TA-Lib, die alles fur Sie erledigt und es ist Open Source. Es hat etwa 50 Indikatoren denke ich. Weve verwendet es in der Produktionsumgebung und es ist sehr effizient und realible. Sie konnen es in C, Java, C, etc. verwenden. Wenn Sie einfache Berechnung ohne Ihren Aufwand benotigen, als Sie TA-Lib verwenden konnen. Aber wenn Sie wollen, dass Ihre Rechnung effizienter ist als TA-Lib, dann konnen Sie Ihre eigene technische Indikator erstellen. TA-Lib ist gro?, aber Problem ist, dass diese Bibliothek nur statische Methoden haben. Das bedeutet, wenn Sie SMA-Array-Werte auf Basis von 500 Preisleisten berechnen mussen, dann werden Sie das gesamte Array von Balken senden und es wird Array von SMA-Werten zuruckgeben. Aber wenn Sie neue 501-st-Wert erhalten, dann sollten Sie wieder das gesamte Array und TA-Lib erneut berechnen und zuruckgeben SMA-Array von Werten. Stellen Sie sich jetzt vor, Sie brauchen einen solchen Indikator fur den realen Preis, und fur jede Preisanderung benotigen Sie einen neuen Indikatorwert. Wenn Sie einen Indikator nicht ein gro?es Problem haben, aber wenn Sie Hunderte Indikatoren arbeiten, konnte es ein Leistungsproblem sein. Ich war in einer solchen Situation und beginnen die Entwicklung von Echtzeit-Indikatoren, die effizient sind und zusatzliche Berechnungen fur neue Preisleiste oder fur geanderte Preisleiste nur. Leider habe ich nie benotigt SMA-Indikator fur meine Handelssysteme, aber ich habe solche fur EMA, WMA, AD, und andere. Ein solcher Indikator AD ist in meinem Blog veroffentlicht und Sie konnen von dort sehen, was ist die grundlegende Struktur meiner Echtzeit-Indikator-Klasse. Ich hoffe, Sie benotigen kleine Anderungen, um SMA-Indikator zu implementieren, denn ist einer der einfachsten. Die Logik ist einfach. Zur Berechnung von SMA benotigen Sie nur die letzten Preiswerte. So Klasse Instanz haben Sammlung von Preisen, die Speicherung halten nur letzte n Anzahl der Preise als SMA definiert ist (in Ihrem Fall 5). Also, wenn Sie neue Bar haben, werden Sie alteste entfernen und neue hinzufugen und erstellen Berechnung. Ich wurde den gleitenden Durchschnitt in der Datenbank uber eine gespeicherte Prozedur oder in einem Cube berechnen. Haben Sie sich Analysis Services angesehen, hat es die Moglichkeit, gleitende Durchschnitte zu berechnen. Donnerstag, 10. April 2008 16:05 Ja. TA-LIB ist gut, aber vielleicht nicht geeignet fur mich. Wenn ich neuen Wert oder aktualisierten Wert fur den Verlauf der Datensatze Ich werde die Berechnung in einer separaten Funktion nur fur das neue Angebot und speichern Sie es in der Datenbank. Ich plane, das Zitat jede Stunde zu aktualisieren. Ich muss etwa 25 bis 30 technische Indikatoren fur 2200 Aktien machen. Die Ausfuhrungszeit eines TA-Lib-Aufrufs auf einem Array von 10000 Elementen betragt etwa 15 Millisekunden (auf einem Intel Core Duo 2,13 Ghz). Dies ist der Durchschnitt aller Funktionen. Unter den schnellsten, nimmt SMA weniger als 2,5 Millisekunden. Der langsamste HTTRENDMODE benotigt 450 Millisekunden. Mit weniger Elementen ist es schneller. SMA benotigt ca. 0,22 Millisekunden fur 1000 Eingangselemente. Die Geschwindigkeitsverstarkung ist fast linear (der Aufwand fur die Ausfuhrung des Funktionsaufrufs ist vernachlassigbar). Im Rahmen Ihrer Bewerbung ist TA-Lib hochstwahrscheinlich Ihr Engpass fur die Geschwindigkeitsleistung. Auch ich in der Regel nicht empfehlen, solche quotlast nquot Losung. Lesen Sie unten fur Details. Zuerst eine Korrektur zur Boban. s-Anweisung Alle Funktionen in TA-Lib konnen auch einen einzigen letzten Wert berechnen, indem sie ein Minimum an Quell-nquot-Elementen verwenden. Sie konnen ein Array der Gro?e 10000 haben, die Daten nur fur die ersten 500 Elemente initialisieren, ein Element hinzufugen und TA-Lib aufrufen, um die SMA nur fur das neue Element zu berechnen. TA-Lib schaut nicht mehr als notig (wenn SMA von 5, dann wird TA-Lib ein einzelnes SMA mit den letzten 5 Werten berechnen). Dies wird mit dem Parameter startIdx und endIdx ermoglicht. Sie konnen einen zu berechnenden Bereich oder einen einzelnen Wert angeben. In diesem Szenario wurden Sie startIdx endIdx 500 machen, um das 501st-Element zu berechnen. Warum ist solch eine Quell-nquot-Losung fur einige gefahrlich? Unabhangig von der Auswahl der Boban. s-Losung oder TA-Lib bedenkt man, dass die Verwendung einer kleinen endlichen Anzahl von vergangenen Daten nicht gut funktioniert mit den meisten TA-Funktionen. Mit SMA, ist es offensichtlich, dass Sie nur n Element benotigen, um einen Durchschnitt uber n Element zu berechnen. Es ist nicht so einfach mit EMA (und vielen anderen TA-Funktionen). Der Algo hangt oft vom vorherigen Wert ab, um den neuen Wert zu berechnen. Die Funktion ist rekursiv. Das bedeutet, dass alle vergangenen Werte einen Einfluss auf zukunftige Werte haben. Wenn Sie sich entscheiden, Ihr algo zu verwenden, um nur eine kleine Menge von Vergangenheit n Wert verwenden, erhalten Sie nicht das gleiche Ergebnis wie jemand, der uber eine gro?e Anzahl von vergangenen Werten berechnet. Die Losung ist ein Kompromiss zwischen Geschwindigkeit und Prazision. Ich habe dies oft im Zusammenhang mit TA-Lib diskutiert (ich nenne es die quotquellierbare Periodquot in der Dokumentation und Forum). Um es einfach zu halten, meine allgemeine Empfehlung ist, wenn Sie nicht den Unterschied zwischen einem Algo mit einer endlichen Impulsantwort (FIR) aus einem Algo mit einer unendlichen Impulsantwort (IIR) machen konnen, sind Sie sicherer zu berechnen, uber alle Daten, die Sie haben erhaltlich. TA-Lib spezifizieren im Code, welche seiner Funktionen eine instabile Periode (IIR) haben. Editiert von mfortier Freitag, 15. August 2008 04:25 Korrektur von englischer Satz Freitag, 15. August, 2008 4:20 AMCalculating Moving Average Dieses VI berechnet und zeigt den gleitenden Durchschnitt mit einer vorgewahlten Zahl an. Zunachst initialisiert das VI zwei Schieberegister. Das obere Schieberegister wird mit einem Element initialisiert und fugt dann kontinuierlich den vorherigen Wert mit dem neuen Wert hinzu. Dieses Schieberegister halt die Summe der letzten x Messungen. Nach dem Teilen der Ergebnisse der Add-Funktion mit dem vorgewahlten Wert berechnet das VI den gleitenden Mittelwert. Das untere Schieberegister enthalt ein Array mit der Dimension Average. Dieses Schieberegister halt alle Werte der Messung. Die Ersatzfunktion ersetzt nach jeder Schleife den neuen Wert. Dieses VI ist sehr effizient und schnell, weil es die replace-Element-Funktion innerhalb der while-Schleife verwendet, und es initialisiert das Array, bevor es die Schleife eintritt. Dieses VI wurde in LabVIEW 6.1 erstellt. Lesezeichen amp Share