AW: Goertzel Algorithmus (Frequenz + Phase)
oder kann es vielleicht sein, dass Dein Scilab beim ERZEUGEN der Frequenzen einfach immer nur volle Schwinungen erzeugt? und nicht bei der hälfte abbricht?
somit also gar keine Leakage Effekte auftauchen? |
AW: Goertzel Algorithmus (Frequenz + Phase)
phreak fasst es im Beitrag 79 sehr gut zusammen.
Wenn du das drei Mal durchliest, verstehst du das vielleicht auch. Vielleicht wären auch erstmal Mathematik-Grundlagen, Signalverarbeitung (Bücher wie Sand am Meer) und ein Internet-Grundkurs empfehlenswert. 8-) Wenn du den Scilab Code mal ausführst und liest, wird dir auffallen, wie die Variable (array) t (für time) immer befüllt wird. Logischerweise werden dadurch die Sinusfunktionen immer mit y = 0 anfangen und enden. Die Bedingung 1) die phreak genannt hat, wird also erfüllt. Wenn man anfängt aus dem Array t Werte auf Null zu setzen, werden auch die Spektren logischerweise si-förmig (si = sin(x) / x). Dahinter ist nichts magisches, sondern (physikalisch-mathematische) Grundgesetze der Signaltheorie. Es geht einfach nicht anders. Glaube es einfach, oder lese es nach bis du es weißt. Und das ist wirklich fundamental unabhängig von Algo. Punkt! Probiere es aus und lerne! |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
es fängt schon an, jetzt hab ich die Unit probiert. Scheint das zu machen, was sie soll, nur .. ich habe eine Frequenz von 175,5 reingetan, und er gibt mir 175,0 aus. http://www.delphipraxis.net/87967-ff...gorithmus.html Wie und wo kann ich also die Unit ändern, dass sie korrekt arbeitet? ... ohne gleich ganze Bücher durchlesen zu müssen? Dann hätte ich ja hier auch nicht fragen brauchen. Ich wollte etwas, was ich handhaben kann. Die Unit soll nur mit 2000 Werten aufgerufen werden, warum nicht mehr? ich will aber 100.000 da rein tun, was nun? Rechnet sie dann nicht richtig? (wenn Du nicht antworten möchtest, kann ich es verstehen, ich hoffe dann einfach, dass noch jemand anderes sich meinen Fragen erbarmt) Ich hoffe, meine Fragen sind soweit nicht unverständlich. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Liste der Anhänge anzeigen (Anzahl: 1)
der Grund warum ich frage, der Goertzel hat für tiefe Frequenzen unter 50 Hz leider eine Macke irgendwie. (siehe Bild)
Ich hab auch noch den Algorithmus von Reinsch programmiert, er liefert komischerweise das gleiche. Aber so wie es aussieht, scheint die DFT gleich gar nicht das zu machen was sie soll (halbe Frequenzen) |
AW: Goertzel Algorithmus (Frequenz + Phase)
1. Nicht immer die fachlichen Begriffe durcheinanderwürfeln!
2. Nach welchen Zusammenhang werden bei dir denn Wellenlängen gebildet? f1 = 50 Hz und l1 = 60 m(?) und f1 = 33,33Hz und l1 = 30 m(?) -> kein gemeinsamer Umrechnungsfaktor erkennbar. 3. Was heißt macht nicht das was sie soll = halbe Frequenzen? Soll das von dir gewünschte Programm das Signal "teilen"? Zitat:
Du bist Hobbyprogrammierer, oder? Ganz ehrlich, mach lieber irgendetwas anderes, etwas wobei du dich auskennst. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Hallo TiGü, Vergiss es einfach, so schlimm ist es dann doch nicht, das hab ich das nötig hätte.
Du scheinst auch nur die Hälfte zu verstehen, was ist an einer halben Frequenz nicht verständlich? |
AW: Goertzel Algorithmus (Frequenz + Phase)
Hi Stoxx,
Das Problem ist, dass du selbst den Algorithmus implementiert hast, wenn der jetzt plötzlich fehlerhafte Spektren ausgibt (so interpertiere ich jetzt mal die Aussage mit den "halben Frequenzen"), dann lässt das den Umkehrschluss zu dass deine Implementation einen Fehler enthält, da jeder dieser Algorithmen ein korrketes Fourierspektrum bilden kann, nur mehr oder weniger effizient. Welchen Fehler du gemacht hast können wir aus der Ferne nicht festellen. Daher appelliere ich an dich den hier bereits verlinkten Code für eine DFT zu verwenden da er das gleiche kann wie der Goertzel, das klappt auch mit größeren Datenmengen als 2000 dauert eben nur länger und lässt sich beschleunigen in dem man Zweierpotenzen als Fenstergröße verwendet. PS: und bitte unterlasst doch das wechselseitige infragestellen der Kompetenz, das bringt niemanden weiter... |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Willst vom Ursprungssignal nur die halbe Frequenz? Also bspw: f1(t) = 1/3 * sin(1000*x) + 2 * cos(600*x) wird zu f2(t) = 1/3 * sin(500*x) + 2 * cos(300*x)! Wenn das sowas ist, was du willst, musst du dich mit hiermit beschäftigen: http://de.wikipedia.org/wiki/Modulation_%28Technik%29 http://de.wikipedia.org/wiki/%C3%9Cb...empf%C3%A4nger Genauer wirds hier: http://books.google.de/books?id=Jel3...page&q&f=false Wenn ja, wozu eigentlich? Was ist mit den Wellenlängen? Hallo? |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Mich hätte nur interessiert, ob das verfahrenstechnisch nicht anders geht, dann brauch ich mich auch nicht weiter drum kümmern. Oder ob das vom DFT Algorithmus abhängt? http://www.delphipraxis.net/87967-ff...gorithmus.html |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
nein, ich hab sowas mit Deinem vorgeschlagenem FFT Algorithmus erzeugt: f(t) = 3 * sin(2 * Pi * 175,5) und gefunden hat die FFT 175,0 Die Frage ist, ob das verfahrenstechnisch nicht anders geht. Frequenzen mit Nachkommastellen wäre der richtige Begriff dafür gewesen... |
AW: Goertzel Algorithmus (Frequenz + Phase)
Ich denke mal, dass das Problem hier in der Frequenzauflösung liegt.
Die Frequenzauflösung deiner DFT hängt von der Anzahl der betrachteten Abstastwerte und der Abtstfrequenz ab:
Code:
Dein Spektrum besteht dann aus verschiedenen Frequenzkörben (frequency bins) die im Abstand fr liegen.
n: Anzahl der transformierten Abtastwerte
fa: Abtastfrequenz Frequenzauflösung: fr=fa/n Wenn du jetzt nicht genau einen Korb bei 175 Hz liegen hast, dann werden die zu 175,5 Hz gehörigen Spektralwerte eben in den 175 Korb sortiert. Eine höhere Frequenztauflösung bekommst du also nur wenn du längere Signalabschnitte betrachtest. EDIT: Das Problem tritt übrigens unabhängig vom verwendeten Algorithmus auf. |
AW: Goertzel Algorithmus (Frequenz + Phase)
...als ob es so dermaßen relevant wäre, ob bei der "Analyse" von Finanzrauschen die eine Nachkommastelle der Frequenz erkannt wird oder nicht. :roll:
Blick auf das Wesentliche nicht verlieren. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
@TiGü .. nun, bei 100.000 Datensätzen kannst Du selber ausrechnen, wie schnell Du eine falsche Phase am ende der Daten hast, wenn Du mal schnell eine halbe Frequenz "ignorierst" nun .. da Mathe Deine Stärke ist, wirst Du das sicher schnell rausbekommen :) |
AW: Goertzel Algorithmus (Frequenz + Phase)
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
In welchen Kontext? Link / Buchtitel? Zitat:
Dir fehlt das Hintergrundwissen, um dein Vorhaben vernünftig umsetzen zu können und falls es dir doch irgendwie gelingt, die Ergebnisse vernünftig zu interpretieren. In dem von dir geposteten Kurs (die große Textdatei) hast du ein Signal mit einer ganzen Latte von Spektralkomponenten! Kannst du abschätzen wie das Spektrum ungefähr aussieht? Oder von einen periodschen Dreieckssignal? Einen periodschen Rechtecksignal? Von einen Dirac-Implus? Irgendwer hat ein paar Seiten vorher erwähnt, dass es schon seinen Grund hat, warum Leute das semesterweise studieren, um nur die nötigsten (!!!) Grundlagen drauf zu haben. Im Anhang von oben nach unten: Orginalsignal (Zeit in Sekunden) Betrag des Spektrums (log. Darst.) Alle Spektralkomponenten wurden auf Null gesetzt bis auf die ersten 40 (log. Darst.) Rekonstruiertes Signal aus den 40 Spektralkomponenten |
AW: Goertzel Algorithmus (Frequenz + Phase)
Letztlich geht es wohl darum, aus historischen Kursdaten Regelmäßigkeiten zu erkennen. Also schaut man sich genau die Bänder an, deren Amplitude vergleichsweise groß ausfällt, nimmt sich die größte davon, und investiert in das betrachtete Papier zu einer "Tal-Zeit". Da man die Phase, Frequenz und Investitionszeitpunkt kennt, existiert zudem eine Prognose für wann man aus dem Papier wieder aussteigen sollte, nämlich am folgenden Berg.
Problematisch wird es da vor allem eine tatsächlich valide ("signifikante" - im statistischen Sinne, nicht im umgangssprachlichen Sinne) Regelmäßigkeit aufzudecken, was gerade bei den (interessanten, wil mit weniger Transaktionskosten behafteten) niedrigen Frequenzen liegt. Für diese ist das Sampleset nämlich eher gering, so dass es fragwürdig wird von einer wirklichen Gesetzmäßigkeit zu sprechen. Ich gebe zu anfangs von dem Verfahren (für die Wirtschaftsanalyse) angetan gewesen zu sein, jedoch bin ich nach etwas Überlegen und Überschlagen eher der Meinung, dass man selbst bei 20 Jahren Historie da drin zu wenig Signifikanz erreichen kann, um darauf basierend eine saftige Hand voll Geld zu riskieren. So ein Spektrum kann mit nur einer Woche Daten mehr schon wieder völlig anders aussehen, vor allem in den niedrigeren Frequenzen, die aufgrund ihrer vergleichsweise sehr hohen Amplitude wohl die einzig relevanten sein dürften. Das Ganze wird also meiner Meinung nach bestenfalls ein "ganz netter" Indikator, aber die darauf basierende Handlung würde ich nach wie vor als "höchst spekulativ" bezeichnen, sicher nicht als "gut informiert". In einem ganzen Katalog von Indikatoren ist das aber sicherlich eine sinnvolle Ergänzung - vorausgesetzt man weiss was man tut, und kann das Getane sinnvoll interpretieren ;) |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
den Link finde ich jetzt leider nicht mehr ! tut mir Leid Zitat:
Zitat:
Zitat:
das alles hast Du einzig mit der FFT geschafft? Oder was genau hast Du jetzt verwendet? Wie hast Du es hinbekommen, dass Du auch die große langsame Schwingung (niedrige Frequenzen) gut abbilden konntest? Hast Du jetzt dabei die Schwingung um einen Mittelkurs verwendet oder einfach das Signal unverarbeitet hineingeschoben? liebe Grüße stoxx |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Es ist sehr einfach. Die Textdatei wird etwas angepasst (Komma zu Punkt etc.) und eingelesen. Damit steht sie als Datenvektor zur Verfügung. Nun einfach ploten, wie in Excel (Bild 1). Der Datenvektor wird transformiert mit fft_data = fft(Datenvektor). Log. Absolutdarstellung der Amplitude bis zur Hälfte der Abtastfrequenz ist dann auch nur noch ein weiterer Plot-Befehl. fft_data bis auf die Inhalte der Indizies 1 bis 40 wird auf Null gesetzt(Bild 3). Zurücktransformiert ergibt es Bild 4. In der Summe um die 20 Zeilen Quellcode...tatadadaaa! Für jedes Problem immer das richtige Werkzeug wählen. Sicherlich könnte man das auch mit den Programmiersprachen Brainfuck oder Whitespace lösen, da beide voll Turingfähig, aber es ist nicht sinnvoll! 8-) |
AW: Goertzel Algorithmus (Frequenz + Phase)
oki .. ich lads mir mal runter :) wird aber erst nächste Woche.
Dann frag ich sicher nochmal. Der Goertzel hatte wie gesagt seine probleme mit tiefen Frequenzen, so dass die großen HAuptbewegungen verrutschen. die beschäftigung mit dem Algo hatte aber was positives, ich hatte andere gute Ideen :) Denke aber, dass da noch mehr drin sein könnte. Übrigens hat Deine Kursprognose zugetroffen. (war es überhaupt eine? ) Man müsste nun mal jede Woche einen Sliding Forward Test machen. Also jedenfalls ist der EURUSD wirklich gefallen. das verblüffende ist auch, dass der Winkel stimmte. die Frage ist allerdings, ob das wirklich schon eine Prognose war, oder ein simpler Rechenfehler an den Rändern .. *überleg* (kann natürlich zufall sein, müsste man anhand hunderter Trades mal verifizieren) |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Das sind unvermeidliche Darstellungsfehler, wenn man von zigtausend Spektralkomponenten nur ein paar Dutzend verwendet. Je höher die Frequenz, desto höher ist der Informationsgehalt (Audio: Wiedergabequalität und Klangtreue etc. / Video: Schärfe im Bild). Sowas meinte ich übrigens, als ich schrieb, dass dir die Grundlagen fehlen, um eventuelle spätere Ergebnisse richtig interpretieren zu können. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
ja genau das meinte ich. Und das bekommt man auch nicht weg? Dann scheint das Verfahren für meine Zwecke unbrauchbar zu sein. Dachte ich mir schon. "Sinus" ist etwas sehr starres um Zykliken zu bestimmen. Das passt so nicht vermutlich.. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Liste der Anhänge anzeigen (Anzahl: 2)
Ich zeigs mal mit Bildern, vielleicht wirds dann klarer!
Das erste Bild ist quasi dein Ursprungssignal. Das zweite Bild wurde in den Frequenzbereich transformiert. Alle hohen Spektralanteile wurden gedämpft / genullt / getiefpasst. Dann wieder Rücktransformation. Nun ist das Bild unscharf!!! Es kann nicht mehr wieder in das Orginalbild zurückgewandelt werden. Das ist deshalb so, weil die Informationen (hohe Spektralkomponenten) dazu nicht mehr vorhanden sind. Denke auch das du einen gänzlich falschen Ansatz hast! Du denkst es gibt in den komplexen System Finanzwelt irgendetwas periodisches bzw. zumindest Muster (Zyklik - kannte ich zuvor noch nicht das Wort...hm?). Nun erhoffst du dir durch Transformation irgendetwas zu erkennen. Das ist vielleicht gut möglich, aber nicht wenn du anfängst die relevanten Informationen (hohe Spektralkomponenten) rauszulöschen. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Kannst du das mal näher erläutern? Vor allen was du unter "Sinus" verstehst? |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zum weiteren Studium empfehle ich:
http://www.amazon.de/Systeme-Dynamik...6185270&sr=8-1 und die Beispiele aus Wirtschaft dazu: http://books.google.de/books?id=B0XB...page&q&f=false |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Hi, also damit meinte ich, dass der Sinus eine feste Wellenlänge hat. Stell Dir bildlich einen Sinus vor, der im ersten Wellenberg eng ist und im zweiten unterem Wellenberg einer Periode etwas gedehnt. Was stellst Du fest? .. Mit trigonometrischen Funktionen (gefällt Dir das Wort besser) ließe sich das nicht abbilden. Börse ist aber viel einfacher, Du willst Du ja nur wissen ob hoch oder runter. Wenn Du den veränderten Sinus entlang gehen würdest, dann kannst Du direkt an der Steigung erkennen, ob es nun weiter runter geht oder hoch. Wenn Du einen Zyklus auf finanzdaten anwendest, dann muss doch ein Zyklus nicht immer feste 5 Tage lang sein. sondern vielleich mal 4 oder 5. also ist ein Sinus zu starr. Es gibt also von mir die IDee, die Zyklen mit anderen Methoden darzustellen, und zu überlagern. lg stoxx |
AW: Goertzel Algorithmus (Frequenz + Phase)
Ich hab bei dem ganzen Thema hier ja doch immer Regressionsanalyse im Kopf. Da geht's ja gerade darum, eine mehr oder minder diffuse Datenmenge möglichst gut auf eine funktionale Beschreibung abzubilden, über die für T>heute auch mehr oder weniger gut Vorhersagen gemacht werden können. Dafür wurd die entwickelt :)
Problem: So 1-2 Semester Statistik wären wohl als Grundlage nicht verkehrt, teilweise kursiert das auch unter dem Namen "Angewandte Statistik". (Was ich gehört habe, und da geht's teils echt mal ab. Die Theorie zur Fourieranalyse ist dagegen der reinste Kindergarten.) Damit zusammen hängt dann das Problem, dass man praktisch unendlich viele Modelle entwickeln kann, und es nicht so ganz so einfach ist, deren Qualität im Bezug auf Vorhersagegenauigkeit zu quantifizieren - schon garnicht, wenn man nicht 100%ig genau weiss was man da tut. (Nicht umsonst sind Statistiker in der Finanzwelt ganz nett bezahlt :)) Aber DAS wäre imho das Mittel der Wahl. Wird denke ich auch zu Hauf bei Kursdaten eingesetzt, die "Challenge" ist dabei mehr das Entwickeln eines guten Modells. |
AW: Goertzel Algorithmus (Frequenz + Phase)
Natürlich lassen sich auch mit Regressionsanalysen Prognosen erstellen.
Das Problem der Statistiker ist aber oft, dass sie den Wald vor lauter Bäumen nicht sehen. (zum Glück) falls Dich die Anwendung von Regressionsgeraden interessiert, würde ich Dir diese Arbeit empfehlen. http://www.vtad.de/node/1442 Ansonsten haben lineare Modelle wie Regressionen in Finanzmodellen und deren Parameter aber wenig Chancen meiner Meinung nach, nichtlineare Modelle wie Support Vector Machines schon eher. beste Grüße |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Jedes reelle Zeitsignal lässt sich in ein (komplexes) Spektrum umrechnen. In diesen Fall wären es zwei Grundfrequenzen (Berg eng, Tal weit) nebst zwei einzelnen Rechtecksignalen. Wenn du immer noch nicht verstanden hast, wie und warum sowas geht, dann wirst du über eine gewisse Selbststudiumszeit mit diversen Büchern nicht drumherumkommen. Des Weiteren versuchst du irgendetwas vorauszusagen, über ein System was vielfältige Einflussfaktoren hat, insbesondere die menschliche Pyschologie. Es folgt keinen vorhersagbaren naturwissenschaftlichen Gesetzen. Beispiel: Steve Jobs sagt, dass er die Führung von Apple abgibt, und schon fällt der Kurs...obwohl es der Firma besser geht als je zuvor und die Bargeldreserven höher sind, als bei so manchen Land. Wie will man sowas vorhersagen??? |
AW: Goertzel Algorithmus (Frequenz + Phase)
Zitat:
Du, ich hab schon mit Aktien gehandelt, da warst Du noch nichtmal im dritten Semester, was genau also möchtest Du mir jetzt damit sagen? Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz