Caratteristiche utili da KimIV - pagina 39

 

Porca miseria... dammi due...

 
KimIV писал (а) >>

Grazie per la risposta, è molto interessante se è possibile calcolare l'angolo di intersezione di due iMA (media mobile)? E ancora più interessante come farlo, visto che gli angoli non sono dritti? I valori ottenuti possono essere utili per molti Expert Advisors. >> Per favore aiutatemi.

 
AlexDub писал (а) >>

molto interessante è possibile calcolare l'angolo di intersezione di due iMA (media mobile)?

è possibile...

AlexDub ha scritto (a) >>.
E ancora più interessante come farlo, perché gli angoli non sono dritti?

1. Disegna le tangenti a entrambe le iMA.

2. Calcola il valore dell'angolo tra di loro.

 
KimIV писал (а) >>

forse...

1. Disegna le tangenti alle due scale.

2. Calcola il valore dell'angolo tra le tangenti.

Diciamo che posso calcolare l'angolo, ma come disegnare le tangenti, ho bisogno di un codice:)
 
AlexDub писал (а) >>
bisogno di codice:)

scrivere... Poi puoi postarlo qui, se non ti senti in colpa :)

 
Caro Igor!
Sto provando il vostro Expert Advisor e-TFL_v2, viene eseguito e scrive un messaggio che i livelli di prezzo superiore e inferiore sono indefiniti, per favore consigliatemi cosa sto sbagliando o devo configurare qualcos'altro. Grazie in anticipo per la risposta!
 
Starik писал (а) >>
Non so cosa siano i livelli di prezzo superiore e inferiore, puoi dirmi per favore cosa sto sbagliando o devo modificare qualcos'altro?

Le linee che metti sul grafico devono avere i nomi "corretti", che devono corrispondere ai nomi nei parametri NameUpLine e NameDnLine dell'EA.

 

Funzione GetExtremumZZZPrice().

Questa funzione cerca un estremo dell'indicatore ZigZag standard personalizzato e restituisce il suo livello di prezzo. La funzione accetta i seguenti parametri opzionali:

  • sy - Nome dello strumento. "" o NULL - simbolo corrente. Il valore predefinito è NULL.
  • tf - Timeframe. Valore predefinito 0 - simbolo corrente.
  • ne - Numero estremo. 0 - ultimo, 1 - precedente, 2 - precedente, ecc.
  • dp, dv, bs - parametri ZigZaga: 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);
}
 

Esempi di utilizzo della funzione GetExtremumZZZPrice().

  • Il livello di prezzo dell'ultimo estremo di ZigZag sul grafico corrente.
    Message(GetExtremumZZPrice());
  • Il livello di prezzo dell'ultima rottura dello ZigZag sul grafico H4 del simbolo corrente.
    Message(GetExtremumZZPrice(NULL, PERIOD_H4, 1));
  • Trova il livello di prezzo dell'ultima rottura dello ZigZag sul grafico corrente e traccia una linea orizzontale attraverso di esso.
    double p=GetExtremumZZPrice(NULL, 0, 1);
    SetHLine(Magenta, "", p);

In allegato trovate uno script per testare la funzione GetExtremumZZZPrice().

 
KimIV писал (а) >>

Esempi di utilizzo della funzione GetExtremumZZZPrice().

  • Il livello di prezzo dell'ultimo estremo di ZigZag sul grafico corrente.
  • Il livello di prezzo dell'ultima rottura dello ZigZag sul grafico H4 del simbolo corrente.
  • Trova il livello di prezzo dell'ultima rottura dello ZigZag sul grafico corrente e traccia una linea orizzontale attraverso di esso.

E come si fa a disegnare una linea tratteggiata verticale come sfondo in tutti questi punti?