Auf der Suche nach Marktmustern - Seite 114

 
Svinozavr:

Durch die Pulsanzeige. Als ob ich das nicht vergessen hätte. Ich bin gerade dabei, es zu "beenden". Hier ist das Bild bis jetzt (Eurobucks 5).


Die Legende ist wie folgt: Der Impuls selbst ist auf dem Balken mit zwei Rauten der jeweiligen Farbe (klein und groß) gekennzeichnet. Ein starker Balken, der kein Impuls ist, wird mit einem kleinen Rautensymbol gekennzeichnet (mehr dazu später).

Logik: Der durchschnittliche Bar Spread wird berechnet, d.h. МА durch ein Modulo (open - close). Dann merken wir uns den Wert der Überschreitung (sobald sie eintritt) der Steigung des Balkens über die durchschnittliche Steigung. Und wenn ein neuer Balken diesen Wert übersteigt, hmmm... OK, die Überschreitung um einen bestimmten Schwellenwert, dann wird dieser Balken als ein Impuls gezählt. Der überschüssige Betrag wird durch den neuen Betrag überschrieben. Und so weiter und so weiter und so fort. Natürlich muss es eine bestimmte Rauschschwelle geben, sonst werden Sie verstehen, dass es eine Menge falscher Signale in der Wohnung geben wird.

===

Ich weiß nicht, wann ich es beenden werde. Vielleicht heute. Vielleicht bis Mo. Vielleicht ganz allgemein... Wenn nicht "überhaupt", werde ich es hier im Thread posten. Ich brauche keine hundert Vormoderationen in kodobaz und 200 mal in der roten Armee - Bewertungen. Wenn irgendetwas, das die grundlegende Logik beschreibt, kein Problem ist, dann schreiben Sie sich selbst.

Der Autor behält sich das Recht vor, das Funktionsprinzip des Indikators teilweise zu ändern, seine Logik vollständig zu ändern oder ihn ganz zu verwerfen.


Peter, so gut ich konnte... es tut mir leid, wenn ich die Erwartungen nicht erfüllt habe.

#property copyright "Svinozavr"
#property indicator_chart_window // в окне инструмента
#property indicator_buffers 6
#property indicator_color1 Green
#property indicator_color2 Red  
#property indicator_color3 Green
#property indicator_color4 Red  
#property indicator_color5 Green
#property indicator_color6 Red  

// входные параметры
extern double MAperiod     = 200; 
extern double K            = 1.3;   // коэффициент умножения размаха (шумовой порог)
extern double Bord         = 0;     // превышение
              
extern bool   Fade         = false; // режим затухания
extern bool   OC.HL.range  = false; // способ расчёта размаха
extern bool   OC.HL.middle = false; // способ расчёта средней цены
extern bool   Hist         = true;

// массивы индикаторных и вспомогательных буферов
double Top[],Bot[],Sup[],Res[]; 
double up[],dn[];
// общие переменные 
double k0,k1,period; // коэфф. EMA и производный период
double brd; 
int    History=0; // 0- все бары

// инициализация
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
void init() 
{ 
  brd=Bord*Point;
  if(MAperiod>1)
  {
    k0=2/(1+MAperiod); 
    period=MAperiod;
  }
  else 
  { 
    k0=MAperiod; 
    period=(2-MAperiod)/MAperiod;
  }
  k1=1-k0;
   
  if(Hist) 
  {
    int stl=3,sw=1;
  } 
  else 
  {
    stl=0;sw=2;
  }
  SetIndexBuffer(0,Top); // индикатор
  SetIndexStyle(0,DRAW_LINE);
  SetIndexEmptyValue(0,0.0);

  SetIndexBuffer(1,Bot); // вспомогательный буфер
  SetIndexStyle(1,DRAW_LINE);
  SetIndexEmptyValue(1,0.0);

  SetIndexBuffer(2,Sup); // вспомогательный буфер
  SetIndexStyle(2,stl,0,sw);
  SetIndexEmptyValue(2,0.0);
  SetIndexArrow(2,117);

  SetIndexBuffer(3,Res); // вспомогательный буфер
  SetIndexStyle(3,stl,0,sw);
  SetIndexEmptyValue(3,0.0);
  SetIndexArrow(3,117);
  
  SetIndexBuffer(4,up); // вспомогательный буфер
  SetIndexStyle(4,stl,0,sw+1);
  SetIndexEmptyValue(4,0.0);
  SetIndexArrow(4,117);
  
  SetIndexBuffer(5,dn); // вспомогательный буфер
  SetIndexStyle(5,stl,0,sw+1);
  SetIndexEmptyValue(5,0.0);
  SetIndexArrow(5,117);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
void start() 
{
  int limit=Bars-IndicatorCounted()-1; 
  if(limit>1) 
  {
    limit=Bars-1;
    ArrayInitialize(Top,0.0);
    ArrayInitialize(Bot,0.0);
    ArrayInitialize(Sup,0.0);
    ArrayInitialize(Res,0.0);
  }
  if(History!=0 && limit>History) 
  {
    limit=History-1; // кол-во пересчетов по истории
  }  
  // цикл пересчета
  for(int i=limit; i>=0; i--) 
  { 
    // средняя цена
    if(OC.HL.middle)
    {
      double mid=(High[i]+Low[i])/2;
    }  
    else 
    {
      mid=(Close[i]+Open[i])/2;
    }  
    
    // размах
    if(OC.HL.range) 
    {
      double rng=High[i]-Low[i];
    }  
    else 
    {
      rng=MathAbs(Close[i]-Open[i]);
    }  
    
    // EMA
    static double dt,db;
    double ma0; 
    static double ma1;
    if(i==limit && i>1) 
    {
      ma0=rng; // начальное значение
      dt=0;db=0;
    }
    else 
    { // основной расчет
      if(rng>ma1 && Fade) 
      {
        ma0=rng;
      }  
      else 
      {
        ma0=k0*rng+k1*ma1;
      }  
    }
    if(i>0) 
    {
      ma1=ma0;
    }  
    
    // канал
    double diff=K*ma0;
    Top[i]=mid+diff;
    Bot[i]=mid-diff;
    
    // тренд
    static bool trend;
    if(i>0) 
    {
      double difft=Close[i]-Top[i];
      double diffb=Close[i]-Bot[i];
      if(difft>0) 
      {
        trend=1; 
        dt=difft;
        if(Hist) 
        {
          Sup[i]=(Close[i]+Open[i])/2;
          if(difft>=-db+brd) 
          {
            up[i]=Top[i];
          }  
        }
      }
      if(diffb<0) 
      {
        trend=0; 
        db=diffb;
        if(Hist) 
        {
          Res[i]=(Close[i]+Open[i])/2;
          if(diffb<=-dt-brd) 
          {
            dn[i]=Bot[i];
          }  
        }
      }
    }
    if(!Hist && i>0) 
    {
      if(trend) 
      {
        Sup[i]=Bot[i];
      }   
      else 
      {
        Res[i]=Top[i];
      }  
    }
//  Sup[i]=Sup[i+1]; Res[i]=Res[i+1];
  }
}
 

Einige https://www.mql5.com/ru/forum/133986/page5 schlagen vor, dass die Suche nach Marktmustern zugunsten der Untersuchung von Markteigenschaften aufgegeben werden sollte, die unbestreitbar sind; wir wollen diese hervorheben:

1. Die schwankenden Eigenschaften des Marktes;

2. Jeder Trend ist korrigierbar. Diese Eigenschaft ist unbestreitbar. Aber keineswegs ein Muster, denn die Gesetzgebung setzt genaue Daten voraus. https://www.mql5.com/ru/forum/133986/page7

3. das Vorhandensein einer natürlichen und zufälligen Komponente in den Preisveränderungen https://www.mql5.com/ru/forum/133986/page5.

4. Unterschiedliche Ausprägung von Regelmäßigkeiten auf verschiedenen TFs (es ist noch umstritten) https://www.mql5.com/ru/forum/133986/page11.

5. Vorhandensein von "Rauschen" in Zitaten, aber einige sind sicher, dass sogar ein einziges Häkchen nützliche Informationen enthält https://www.mql5.com/ru/forum/133986/page13

6. Es gibt Paare, die den Marktsektor bilden und den Ton für die Bewegung im Moment angeben https://www.mql5.com/ru/forum/133986/page16

7. Vorhandensein eines "fairen" Preises (von der Zentralbank für den aktuellen Tag festgelegt?), den der aktuelle Preis anstrebt https://www.mql5.com/ru/forum/133986/page19

8. Fixierung (Gold, z. B. zweimal täglich) https://www.mql5.com/ru/forum/133986/page20

9. Man muss den Markt wie ein wildes Tier wahrnehmen, seine Gewohnheiten kennen, seine Spuren studieren, Hinterhalte legen, Fallen stellen, Köder auslegen und genau schießen! https://www.mql5.com/ru/forum/133986/page24

10. Der Markt ist träge. Die Essenz erfolgreichen Handelns besteht darin, zu verstehen, was jetzt geschieht, und daran teilzuhaben. TA ist ein Instrument, das Ihnen sagt, wo Sie stehen. https://www.mql5.com/ru/forum/133986/page30


Schlagen Sie weitere globale Marktmerkmale vor, um die Liste zu vervollständigen.

Untersuchen wir, welche Folgen die Verwendung globaler Markteigenschaften in der TA hat und welchen potenziellen Schaden andere Muster, die mit Markteigenschaften einhergehen, dem Handel zufügen können. Folgt man beispielsweise diesen beiden Markteigenschaften, sollte man immer in einem Gegentrend handeln und auf eine Rückkehr oder Teilrückkehr (Korrektur) hoffen. Was aber, wenn diese Markteigenschaften sehr oft verletzt werden? Inwieweit kann sich dieser Umstand nachteilig auf die globale Strategie auswirken? Könnte eine Korrektur einen Teil der Verluste ausgleichen?

 
yosuf:

Einige https://www.mql5.com/ru/forum/133986/page5 schlagen vor, dass die Suche nach Marktmustern zugunsten der Untersuchung von Markteigenschaften aufgegeben werden sollte, die unbestreitbar sind; wir wollen diese hervorheben:

1. Die schwankenden Eigenschaften des Marktes;

2. Jeder Trend ist korrigierbar. Diese Eigenschaft ist unbestreitbar. Aber keineswegs ein Muster, denn die Gesetzgebung setzt genaue Daten voraus. https://www.mql5.com/ru/forum/133986/page7

3. das Vorhandensein einer natürlichen und zufälligen Komponente in den Preisveränderungen https://www.mql5.com/ru/forum/133986/page5.

4. Unterschiedliche Ausprägung von Regelmäßigkeiten auf verschiedenen TFs (bisher umstritten) https://www.mql5.com/ru/forum/133986/page11

5. Vorhandensein von "Rauschen" in Zitaten, aber einige sind sicher, dass sogar ein einziges Häkchen nützliche Informationen enthält https://www.mql5.com/ru/forum/133986/page13

6. Es gibt Paare, die den Marktsektor ausmachen und den Ton für die Bewegung im Moment angeben https://www.mql5.com/ru/forum/133986/page16

7. Das Vorhandensein eines "fairen" Preises (von der Zentralbank für den aktuellen Tag festgelegt?), den der aktuelle Preis anstrebt https://www.mql5.com/ru/forum/133986/page19

8. Fixierung (Gold, z. B. zweimal täglich) https://www.mql5.com/ru/forum/133986/page20

9. Man muss den Markt wie ein wildes Tier wahrnehmen, seine Gewohnheiten kennen, seine Spuren studieren, Hinterhalte legen, Fallen stellen, Köder auslegen und genau schießen! https://www.mql5.com/ru/forum/133986/page24

10. Der Markt ist träge. Die Essenz erfolgreichen Handelns besteht darin, zu verstehen, was jetzt geschieht, und daran teilzuhaben. TA ist ein Instrument, das Ihnen sagt, wo Sie stehen. https://www.mql5.com/ru/forum/133986/page30


Schlagen Sie weitere globale Markteigenschaften vor, um die Liste zu vervollständigen.

Untersuchen wir, welche Folgen die Verwendung globaler Markteigenschaften in der TA hat und welchen potenziellen Schaden andere Muster, die mit Markteigenschaften einhergehen, dem Handel zufügen können. Folgt man beispielsweise diesen beiden Markteigenschaften, sollte man immer in einem Gegentrend handeln und auf eine Rückkehr oder Teilrückkehr (Korrektur) hoffen. Was aber, wenn diese Markteigenschaften sehr oft verletzt werden? Inwieweit kann sich dieser Umstand nachteilig auf die globale Strategie auswirken? Könnte eine Korrektur einen Teil der Verluste ausgleichen?


Nimmt man zwei Paare, so kann man, egal wie sie sich verhalten, drei Marktzustände unterscheiden:

1) Impulsbewegung (abrupte Bewegung)

2) gemittelte Bewegung

3) Zeitlupe (flach)

Wenn wir uns all diese Dinge anhand von echten Zitaten ansehen, ist es natürlich sehr schwierig, irgendetwas auszuwählen, da das Vorhandensein von konstantem Rauschen das Gesamtbild (ganz erheblich) verzerrt und die Suche nach Ähnlichkeiten sehr schwierig ist...

 
yosuf:
///

10. Der Markt ist träge.....


Schlagen Sie weitere globale Marktmerkmale vor, um die Liste zu vervollständigen.

....


Es ist bereits genug, um einen Gewinn zu erzielen.
 
Es gibt nur zwei Muster - Rückkehr und Selbstverstärkung. Der Rest sind Filter)
 
Avals:
Es gibt nur zwei Muster - Rückkehr und Selbstverstärkung. Der Rest sind Filter).
Bitte klären Sie das Konzept der "Selbstverstärkung".
 
Avals:
Insgesamt 2 Muster - Reversion und Selbstverstärkung. Der Rest sind Filter).

Gute Idee mit Selbstverstärkung. Ich schlage den Koeffizienten S in der folgenden Gleichung als selbstverstärkenden Koeffizienten vor und betrachte sein Verhalten, wenn sich der Preis P ändert:

P =S*O^a*H^b*L^c*C^d

Unter Verwendung von 15 Tagen OHLC D1-Daten habe ich die Koeffizientenwerte erhalten, die ich zuvor hier angegeben habe https://www.mql5.com/ru/forum/140329/page43.

https://c.mql5.com/mql4/forum/2012/11/f1.jpg

Es scheint interessant zu sein, wie sich der S-Gain verhält, nachdem beispielsweise der 14. Punkt erreicht wurde, d.h. der letzte 15. Punkt wurde noch nicht erreicht, was offensichtlich auf eine mögliche Umkehr hinweist:


Die Einführung des 15. Punktes lässt keinen Zweifel an der Umkehrung, denn der Verstärkungsfaktor steigt dramatisch um das Hundertfache:


Dank Avals Anregung habe ich also offenbar einen aussagekräftigen Indikator für den Beginn einer Umkehrung gefunden. Diese Tatsache sollte jedoch mehrmals überprüft werden. Ich danke Ihnen, Herr Avals, und schlage vor, einen Indikator zu erstellen.

 
yosuf: Bitte erläutern Sie das Konzept der "Selbstverstärkung".
Positives Feedback. Wenn man einen steigenden Preis sieht, kauft man auch und treibt ihn noch weiter in die Höhe.
 

Interessante Dinge ergeben sich, wenn wir den Durchschnittswert des aktuellen Barpreises P durch OHLC wie folgt ausdrücken und das Verhalten der Gleichungskoeffizienten untersuchen:

P =S*O^a*H^b*L^c*C^d

Die gefundene Methode zur Bestimmung der Koeffizienten ermöglicht es, eine vollständige (ideale) Übereinstimmung der tatsächlichen und der berechneten Preiswerte zu erhalten, wie in der Grafik zu sehen ist:

Die Koeffizienten der Gleichung ändern sich in diesem Fall wie folgt:

Nun gilt es, dieses Verfahren mit einer ausreichend großen Datenmenge durchzuführen und das Verhalten der Kennzahlen bei Kursumkehrungen zu verfolgen und die Vorboten der Umkehrung zu suchen. Ich bin sicher, dass sie erscheinen müssen. Wir sollten einen Indikator haben, der aus vier Zeilen besteht, wie Alligator, aber nennen wir ihn anders, ich überlege gerade, wie wir ihn nennen.

Bemerkenswert ist, dass die Summe der Gleichungskoeffizienten sowie der Koeffizient S fast immer gleich eins ist, und der letzte Ausbruch kann ein Vorbote einer Aufwärtsbewegung sein:


 
...

Dank des Hinweises von Avals wurde also offenbar ein starker Prädiktor für den Beginn der Umkehrung gefunden. Diese Tatsache sollte jedoch mehrmals überprüft werden. Vielen Dank, Herr Avals, und ich schlage vor, dass Sie die Angelegenheit zur Erstellung eines Indikators bringen.



Yusuf, Umkehrprädiktoren werden von Anfängern in der Anfangsphase gesucht. Und wenn sie beginnen, ein wenig zu verstehen, geben sie die Suche auf und handeln eine Fortsetzung.