10$ per l'aggiornamento dell'indicatore - pagina 7

 
Dovreste tutti fare la media con gli esponenti. Portalo più in basso, almeno di un ordine di grandezza.
 
Svinozavr >>:

А чего для экпоненциальной? Она и так изначально с "дробным" периодом, которого у нее, собственно, и нет - там только коэфф. обратной связи. Это в МТ так сделали, что EMA не дробная. А так она всегда имела дробный параметр. Пересчитывайте из дробного периода этот коэфф-т и все дела. k=2.0/(1+period);
Ну, а остальные из стандартных - элементарно уже делаются.

Vi prego di perdonarmi generosamente per essere analfabeta.

È solo il modo in cui Alexei ha impostato il compito. ;)

E abbiamo già raccolto la risposta - tipo, simile alle medie precedenti...

 
Shhhhhhhh:)))
 
Bene, ecco un interruttore aggiunto EMA con un periodo frazionario. Chi vuole, può continuare. Restano due metodi))) E poi si può fare una sostituzione completa dell'iMA incorporata con il tipo di prezzo, il turno, ecc.
#property indicator_chart_window // в окне инструмента
#property indicator_buffers 1
#property indicator_color1 Blue  

// входные параметры
extern double MAperiod=3; // 
extern int Method=0; 
 int History=0; // 0- все бары

double   MA[]; // массив буфера
double k; // коэфф. EMA
double rt; // дробная часть периода
int per; // целая часть периода

void init() { // инициализация
   per=MathFloor(MAperiod);
   rt=MAperiod-per;
   k=2.0/(1+MAperiod);
   SetIndexBuffer(0,MA); // индикатор
   SetIndexLabel(0,"MA("+DoubleToStr(MAperiod,2)+")");
  }

void start() {
   int limit=Bars-IndicatorCounted()-1; 
   if(History!=0 && limit>History) limit=History-1; // кол-во пересчетов по истории

   for(int i=limit; i>=0; i--) { // цикл пересчета по ВСЕМ барам
      switch(Method) {
         case 0: // SMA
            int j=i+per;
            double ma=rt*Close[j];
            j--;
            for(; j>=i; j--) ma+=Close[j];
            ma/=MAperiod;
            MA[i]=ma;
            break;
         case 1: // EMA
            MA[i]=k*Close[i]+(1-k)*MA[i+1];   
        }
     }   
  }
File:
rma.mq4  2 kb
 
avatara >>:

Просто Алексей так задачу поставил. ;)

La domanda EMA era provocatoria e l'ho messa deliberatamente alla fine della lista :)

 
Sono giovane. Sono verde. Non giudicarmi duramente. Adoro la matematica.
E solo elementare.
 
Mathemat >>:

Вопрос с ЕМА был провокационным, и я его спецом поставил в конец списка :)

Beh, dopotutto non sono stato io a provocare)).
Sì, ho provato il mio indicatore con il peso frazionario nella barra alta? Mi sembra logico. Soprattutto se si pensa come una serie, e come il periodo frazionario striscia sul membro più vecchio)).

 
Sì, questo ha senso. Non differisce molto dalla soluzione di Grell.
 
Forse sono sciocco.... ma non credo che nemmeno le frazioni SMA debbano essere contate in quel modo...
 
Suggerisci qualcos'altro, gomma da masticare.