Nützliche Funktionen von KimIV - Seite 39

 

Heiliger Bimbam... Gib mir zwei...

 
KimIV писал (а) >>

Danke für die Antwort, es ist sehr interessant, ob es möglich ist, den Schnittpunkt zweier iMAs (gleitender Durchschnitt) zu berechnen? Und noch interessanter ist, wie man es macht, da die Winkel nicht gerade sind? Die erhaltenen Werte können für viele Expert Advisors nützlich sein. >> Bitte helfen Sie.

 
AlexDub писал (а) >>

sehr interessant ist es möglich, den Schnittpunkt zweier iMAs (gleitender Durchschnitt) zu berechnen?

es ist möglich...

AlexDub schrieb (a) >>
Und noch interessanter ist, wie man es macht, weil die Winkel nicht gerade sind?

1. Zeichnen Sie Tangenten an beide iMAs.

2. Berechnen Sie den Wert des Winkels zwischen ihnen.

 
KimIV писал (а) >>

vielleicht...

1. Zeichne Tangenten an die beiden Skalen.

2. Berechnen Sie den Wert des Winkels zwischen den Berührungspunkten.

Sagen wir, ich kann den Winkel berechnen, aber wie die Tangenten zu zeichnen, ich brauche einen Code:)
 
AlexDub писал (а) >>
brauche Code:)

schreiben... Sie können es später hier posten, wenn Sie nichts dagegen haben :)

 
Lieber Igor!
Ich versuche, Ihre Expert Advisor e-TFL_v2, es läuft und schreibt eine Meldung, dass obere und untere Preisniveaus sind undefiniert, bitte beraten, was ich falsch mache oder ich muss etwas anderes zu konfigurieren. Vielen Dank im Voraus für die Antwort!
 
Starik писал (а) >>
Ich weiß nicht, was obere und untere Preisstufen sind. Können Sie mir bitte sagen, was ich falsch mache oder ob ich etwas anderes ändern sollte?

Die Linien, die Sie auf dem Chart platzieren, müssen die "richtigen" Namen erhalten, die mit den Namen in den Parametern NameUpLine und NameDnLine des EA übereinstimmen müssen.

 

GetExtremumZZZPrice() Funktion.

Diese Funktion sucht nach einem Extremum des standardmäßigen benutzerdefinierten ZigZag-Indikators und gibt dessen Kursniveau zurück. Die Funktion akzeptiert die folgenden optionalen Parameter:

  • sy - Name des Instruments. "" oder NULL - aktuelles Symbol. Der Standardwert ist NULL.
  • tf - Zeitrahmen. Standardwert 0 - aktuelles Symbol.
  • ne - Extreme Zahl. 0 - letzte, 1 - vorherige, 2 - vorherige, usw.
  • dp, dv, bs - ZigZaga-Parameter: ExtDepth, ExtDeviation, ExtBackstep.
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 07.10.2006                                                     |
//|  Описание : Возвращает экстремум ЗигЗага по его номеру.                    |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (NULL или "" - текущий символ)          |
//|    tf - таймфрейм                  (      0     - текущий ТФ)              |
//|    ne - номер экстремума           (      0     - последний)               |
//|    dp - ExtDepth                                                           |
//|    dv - ExtDeviation                                                       |
//|    bs - ExtBackstep                                                        |
//+----------------------------------------------------------------------------+
double GetExtremumZZPrice(string sy="", int tf=0, int ne=0, int dp=12, int dv=5, int bs=3) {
  if (sy=="" || sy=="0") sy=Symbol();
  double zz;
  int    i, k=iBars(sy, tf), ke=0;

  for (i=1; i<k; i++) {
    zz=iCustom(sy, tf, "ZigZag", dp, dv, bs, 0, i);
    if (zz!=0) {
      ke++;
      if (ke>ne) return(zz);
    }
  }
  Print("GetExtremumZZPrice(): Экстремум ЗигЗага номер ",ne," не найден");
  return(0);
}
 

Beispiele für die Verwendung der Funktion GetExtremumZZZPrice().

  • Das Kursniveau des letzten ZigZag-Extremums auf dem aktuellen Chart.
    Message(GetExtremumZZPrice());
  • Das Kursniveau des letzten ZigZag-Breaks auf dem H4-Chart des aktuellen Symbols.
    Message(GetExtremumZZPrice(NULL, PERIOD_H4, 1));
  • Suchen Sie das Kursniveau des letzten ZigZag-Bruchs im aktuellen Diagramm und ziehen Sie eine horizontale Linie durch dieses Niveau.
    double p=GetExtremumZZPrice(NULL, 0, 1);
    SetHLine(Magenta, "", p);

Im Anhang finden Sie ein Skript zum Testen der Funktion GetExtremumZZZPrice().

Dateien:
 
KimIV писал (а) >>

Beispiele für die Verwendung der Funktion GetExtremumZZZPrice().

  • Das Kursniveau des letzten ZigZag-Extremums auf dem aktuellen Chart.
  • Das Kursniveau des letzten ZigZag-Breaks auf dem H4-Chart des aktuellen Symbols.
  • Suchen Sie das Kursniveau des letzten ZigZag-Bruchs im aktuellen Diagramm und ziehen Sie eine horizontale Linie durch dieses Niveau.

Und wie zeichnet man eine vertikale gestrichelte Linie als Hintergrund an all diesen Punkten?

Grund der Beschwerde: