Hier sind einige Ideen, aber ich bin völlig außer mir, die vielleicht funktionieren ...
Ableitungen: Wenn Sie Ihr Array nehmen und die Elemente voneinander subtrahieren, um ein Array mit einem Punkt weniger zu erhalten, ist dies jedoch die erste Ableitung. Wenn Sie das jetzt glätten und nach dem Vorzeichenwechsel suchen, kann dies Ihre Beule erkennen.
Gleitende Durchschnitte: Wenn Sie möglicherweise 2 verzögerte (exponentielle oder fenstergesteuerte) gleitende Durchschnitte verwenden, wird die große Beule sichtbar, während der kleine ignoriert wird. Grundsätzlich muss die Breite des gleitenden Durchschnitts des kleineren Fensters größer sein als die Breite der Unebenheiten, die Sie ignorieren möchten. Die breitere EMA muss breiter, aber nicht zu breit sein, um die Beule zu erkennen.
Sie suchen, wann sie die Verzögerung kreuzen und subtrahieren (Fenster / 2), und das ist eine Schätzung, wo sich Ihre Beule befindet.
http://www.stockopedia.com/content/trading-the-golden-cross-does-it-really-work-69694/
Lineare Modelle: Machen Sie eine Reihe von linearen Modellen mit ausreichender Breite, die mehrere kleine Unebenheiten breit sind, sagen wir 100 Punkte. Durchlaufen Sie nun den Datensatz und erzeugen Sie lineare Regressionen für die X-Variable. Schauen Sie sich einfach den Koeffizienten von X an und sehen Sie, wo der große Vorzeichenwechsel stattgefunden hat. Das ist eine große Beule.
Das Obige ist nur eine Vermutung von meiner Seite und es gibt wahrscheinlich bessere Möglichkeiten, dies zu tun.