Dialog des Autors. Alexander Smirnow. - Seite 5

 
Prival:

ASmirnoff 25.01.2008 11:08


Ihre Antworten auf die folgenden Fragen sind für mich wichtig: 1. Welcher Algorithmus ist besser: meiner oder der von Djurica? Wie viel besser? 2. Haben Sie den Algorithmus von Djurica? 3. Wie unterscheiden sie sich?

Ich bin sehr froh, Sie in diesem Forum zu haben. Und würde gerne bei der Recherche helfen. Leider kann ich nicht behaupten, dass es sich hier ("Effiziente Mittelungsalgorithmen mit minimaler Verzögerung und ihre Verwendung in Indikatoren") um die "echten" Djuric-Algorithmen handelt. Aber ich denke, man kann sie und alle anderen verwenden. Ich bin bereit, einige meiner Filter zum Vergleich anzubieten, aber dazu weiter unten mehr.


Mein Vorschlag lautet wie folgt. Wenn wir 2 Indikatoren vergleichen und die Frage beantworten müssen, welcher von ihnen besser ist. Zunächst müssen wir die Kriterien festlegen. Wenn es mehr als eine gibt, können wir eine Faltung durchführen. Es geht nicht nur um die philosophische Behauptung, dass ein Indikator besser ist als ein anderer, sondern um den genauen mathematischen Nachweis dieser Tatsache. Und wie genau haben Sie die Frage gestellt, wie viel besser?


Daher möchte ich in einem ersten Schritt die folgenden Begriffe definieren (ich entnehme die MA-Nachteile aus Ihrem Artikel)

  1. Die Zeitverzögerung der Mittelwertbildung. Wo, zu welchem Zeitpunkt und wie soll sie berechnet werden? Um festzustellen, ob wir interpolieren oder extrapolieren müssen? Oder beides vergleichen?
  2. Relativ hohe Volatilität ... Weiter im Artikel ist der Slutsky-Yula-Effekt ein Gibbs-Phänomen oder etwas anderes? (eine Datei zur Erklärung des Gibbs-Phänomens ist beigefügt). Wenn es etwas grundlegend anderes ist, möchte lesen, wer ein Material hat bitte teilen.
  3. Bitte erläutern Sie das Konzept der "linearen Frequenzverzerrung".
  4. "Linearisierung nichtlinearer Preistrends durch Isolierung dieser Trends mit einer gewissen Verzerrung".

Was verstehen Sie unter Trend, bitte formulieren. Was verstehen Sie unter einem nicht-linearen Preistrend, der Formel + was wird im Verhältnis zu was und wie verschoben, was wird herausgegriffen.


Die Sache ist die, dass wir für den Vergleich zweier beliebiger Indikatoren ihnen etwas als Input geben müssen. Und um die Frage zu beantworten, welcher von ihnen besser filtert (glättet, verzögert usw.), muss man die Wahrheit wissen, was wir in den Eingang einspeisen. Gehen wir von einer verrauschten Sinuswelle aus, deren Parameter wir kennen


Durch Filterung (Glättung) dieses Datensatzes können wir feststellen, welcher der Filter der Wahrheit, wie wir sie kennen, besser entspricht (blaue Kurve).

Es ist möglich, verschiedene Eingangssignale zu synthetisieren, wie sie von Djuric verwendet wurden, um die Leistungsfähigkeit seines Indikators zu demonstrieren.(http://www.jurikres.com/catalog/ms_ama.htm#top). Die Hauptsache ist, dass man herausfindet, welche das sind.

In der letzten Phase der Forschung bin ich bereit, eine synthetische (künstliche Preisreihe) auszugeben, die durch AFC, IFR und ACF gekennzeichnet ist und mit der Preisreihe einer beliebigen Währung innerhalb einer Woche übereinstimmt. Hier haben wir etwas Ähnliches in 'Random Flow Theory and FOREX' gemacht. Wir haben Kalman-Filter und Butterworth-Filter verglichen.


In dem Artikel geht es um AFC und FFC für einige stationäre Betriebsarten und einige ursprüngliche Kriterien.

Wenn es Ihnen gelungen ist, einen stabilen Zustand zu erreichen und AFC und FFI des Signals stationär sind, bin ich bereit, mein ganzes DSP-Wissen einzusetzen und einen digitalen Filter zu synthetisieren, der dem Optimum nahe kommt. Durch Bayesian ich denke, wird nicht funktionieren, weil Sie eine ausreichende Vollständigkeit der a priori Daten (die selten geschieht), aber das Kriterium der maximalen Wahrscheinlichkeit oder ein idealer Beobachter, ich denke, ich kann tun. Es muss lediglich definiert werden, was ein Signal (zumindest in der AFC) und was ein Rauschen ist.

Eigentlich brauche ich nicht einmal den Djuric-Algorithmus selbst. Ich benötige ein 50-100-Balken-Segment des Preisdiagramms und das Ausgangsprodukt des echten Djuric-Algorithmus. Dann werden wir Schätzungen für die Impulsantwort finden und den Algorithmus selbst synthetisieren.

 
Integer:
ASmirnoff:

...deren Artikel in der Sun für Sie von großem Interesse sind


Heißt das, Sie sind der Autor jenes "Kommandoanwärter", das wir während unseres Dienstes bei den "Streitkräften" gelesen haben:-)

1. Welcher Algorithmus ist besser: meiner oder der von Djurica? Wie viel besser?

Sag mir, Spiegel, sag mir die ganze Wahrheit...


2. Haben Sie den Algorithmus von Djurica?

3. was ist der Unterschied zwischen ihnen?


Alexander, interessante Fragen, nach einem so laut klingenden Titel des Artikels. Wenn Sie in der Branche tätig sind, warum nehmen Sie nicht Jurics Code auseinander und verstehen den Algorithmus, da Sie sich mit diesem Thema wissenschaftlich befassen?

In der TAP gibt es heute so viel Wasser und wenig qualifizierte Erklärungen, dass diese Artikel von Interesse sind. Eine Korrelationsanalyse der Indikatoralgorithmen ergab, dass etwa 10-15 % wirklich originell und unabhängig voneinander sind. Djuric verdient Geld mit seinem "Geistesprodukt". Ich habe Ihnen meine Ideen kostenlos angeboten. Ich denke, ich sollte mich einfach dafür bedanken.
 
ASmirnoff:
Neutron:

Ja, gern geschehen!

Ich habe einen flüchtigen Blick auf den Artikel geworfen. Ich bin sicher, dass ich den Autor einfach nicht verstanden habe!

An der Stelle, an der er über das Auftreten von Gruppenverzögerungen (GD) bei der Verwendung eines Anti-Aliasing-Algorithmus spricht, bietet der Autor ein Rezept an, wie man letztere durch einen Rückwärtslauf "loswerden" kann. ... Soll das ein Scherz sein? Es ist bekannt, dass für gelegentliche (am rechten Ende des BP arbeitende) Systeme GZ im Prinzip unvermeidbar ist. Aber wenn BP definiert ist und wir mit ihm in der Mitte einer Reihe arbeiten wollen (nicht am rechten Rand), können wir, wie der Autor rät, die Verzögerung durch eine erneute Mittelwertbildung mit denselben Parametern in umgekehrter Richtung beseitigen. Der Autor erwähnt jedoch nicht, dass ein solcher Mittelwertbildungsalgorithmus unweigerlich zu einer Neuberechnung des letzten Balkens führt. Hat er es vergessen oder weiß er es nicht? Oder was sonst?

Hier ist ein Zitat aus dem Artikel:

"Mit dem obigen Vorschlag können wir also die Zeitverzögerung von m/2 (der erste Nachteil des traditionellen gleitenden Durchschnitts) teilweise ausgleichen. Und der zweite negative Effekt wird beseitigt ... Und die dritte, und die vierte. ...

Durch den Einsatz des vorgeschlagenen Mittelungsalgorithmus wird auch die lineare Frequenzverzerrung deutlich reduziert... "

Die Idee der Gruppenverspätungsentschädigung stammt nicht von mir, sondern von amerikanischen Wissenschaftlern. Es "funktionierte" jedoch außerhalb der realen Zeitskala. Nun, zum Beispiel in der Radioastronomie. Meine Leistung besteht darin, dass es mir gelungen ist, praktisch einen Algorithmus in Form eines synthetischen gleitenden Durchschnitts vorzuschlagen. Herr Kollege, Sie müssen den "materiellen Teil" studieren, bevor Sie ein pseudowissenschaftliches Argument vorbringen.


Bevor Sie mich wieder in die Mathematik schicken, beantworten Sie mir eine einfache Frage: Worin sehen Sie, "Kollege", den praktischen Wert Ihres Algorithmus für die Analyse von Finanzzeitreihen, wenn er eine ständige Neuzeichnung des rechten Randes der Mittelwertkurve beinhaltet? Genau der Punkt, an dem wir (Händler, MTS) eine Entscheidung treffen müssen!

Und appellieren Sie bitte nicht an die Amerikaner, Astronauten usw., sie alle haben dieses Problem für ihre Aufgabe gelöst, und ich habe keinen Zweifel daran, dass sie es, im Gegensatz zu Ihnen, mit Perfektion gelöst haben. Auch wenn Sie Ihren Algorithmus über integriertes Zufallsrauschen laufen lassen, wird er es genauso perfekt glätten. Wollen Sie jetzt behaupten, dass Sie die Zukunft vorhersagen können, wo dies im Prinzip unmöglich ist? Ich hoffe nicht, denn wenn Sie sich den rechten Rand der Kurve ansehen, können Sie erkennen, dass er sich (im Vergleich zum Rest des Glättungsabschnitts) stark von den Versuchspunkten unterscheidet. Und erst nach langem Hin und Her (etwa m/2 Punkte) nimmt sie eine "respektable" Position ein. Aber für uns ist es weder heiß noch kalt. Mit anderen Worten möchte ich sagen, dass Ihr ganzes harmonisches Gebäude (fast keine FZ, LA, niedrige "Volatilität" usw.) auf dem Fundament (der Möglichkeit der Anwendung des umgekehrten Laufs) ruht, das Sie anscheinend aus der Hand gegeben haben und das für die Analyse von Marktreihen nicht anwendbar ist.

Meine Herren! Ich bin derselbe Alexander Smirnov, dessen Artikel im "VS" Ihr großes Interesse wecken. Ich bin Wissenschaftler, aber in der Vergangenheit war ich ein praktischer Händler. Ich bin sehr gut in TAR. Ich bin ein angewandter Mathematiker.
:-)
 
ASmirnoff: Der Algorithmus in WPI ist korrekt, aber der Programmierer, der ihn implementiert hat, hat keine Erfahrung mit dieser Sprache. Das Kriterium der Wahrheit ist die Praxis. Dieser Algorithmus liefert unabhängig von der Größe des Mittelungsfensters eine Verzögerung von 1 bar im Mittelungsprodukt.

Es ist sehr gut, dass die Verzögerung nur 1 bar beträgt. Ist es möglich, dies aus erster Hand zu erfahren? Wo kann ich einen fertigen Indikator bekommen?
 
LeoV, das muss in der Dynamik gesehen werden. Jede glatte Kurve mit einer perfekten Impulsantwort ist (für unsere Aufgaben) wertlos, wenn sie neu gezeichnet wird.
 
Mathemat:
LeoV, das muss in der Dynamik gesehen werden. Jede glatte Kurve mit perfekter Impulsantwort ist wertlos (in Bezug auf unsere Probleme), wenn sie übersteuert.

Wird er überzogen? Nun, dann gibt es keine Möglichkeit, sie auf unsere Probleme anzuwenden. Der Algorithmus SSA (Caterpillar) ist ebenfalls ein guter Algorithmus, aber leider zeichnet er...... neu.
 
<br / translate="no"> Ist es irgendwie möglich, es persönlich zu sehen? Wo kann ich einen fertigen Indikator bekommen?


Ich versuche, es aus Iasi zu übersetzen:


//+------------------------------------------------------------------+
//|                                                   SmirnoffMA.mq4 |
//+------------------------------------------------------------------+
#property copyright "Smirnoff moving average"
#property link      "www.spekulant.ru"
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow
//---- input parameters
extern int per=4;   // должна быть кратна 4!(4,8,12,и т.д.)
//---- buffers
double ExtMapBuffer1[];
//----
int n;
double alf=0.0,q1[],q2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   //
   alf=2.0/(per/2+1);
   n=per-1;
   ArrayResize(q1,per); ArrayResize(q2,per);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
   if(counted_bars < 0)    return(-1);
   if(per%4!=0)            return(-1);
   int lm = Bars - counted_bars + 1; 
   //----
   for(int shift=0; shift<lm; shift++)
      {q1[0]=Close[shift];
       for(int j=1; j<per; j++) q1[j]=q1[j-1]+alf*(Close[shift+j]-q1[j-1]);
       for(int s=1; s<per/2; s++)
          {for(j=0; j<per; j++) q2[j]=q1[n-j];
           q1[0]=q2[0];
           for(j=1; j<per; j++) q1[j]=q1[j-1]+alf*(q2[j]-q1[j-1]);
          }
       ExtMapBuffer1[shift]=q1[n];
      }
   //----
   return(0);
  }
//+------------------------------------------------------------------+
Dateien:
 
zigan: Ich versuche, aus Iasi zu übersetzen:

Wird dieser Indikator nun neu gezeichnet oder nicht?
 
Nein.
 

Alexander, sollte es so aussehen? Blau ist das, was Zigan mit Ihrem Algorithmus gemacht hat, marineblau ist JMA von Code Base. Beide haben den Parameter 12.

Hier ist ein weiteres Bild - wenn der Parameter für beide Kurven gleich 4 ist:

Schlussfolgerungen (wenn der Algorithmus von Zigan richtig übersetzt wurde):

1. Ihre Kurve ist "stachelig".

2. Wenn Sie den Parameter erhöhen, wird Ihre Kurve unterlappt, d. h. Djuric kann starke Bewegungen besser verarbeiten.