10$ para atualização do indicador - página 6

 
Svinozavr >>:
Ну набросал я индикатор по SMA. Вообще-то, что весовая часть дробной части приходится на старший бар, логично. Отсчитываем-то назад, в историю.
Вот картинка. красный - SMA(4), синий - SMA(3.5), зеленый - SMA(4.5):

Индюк прикреплен, и вот код:

Isso é ótimo!
E não 200 linhas de código...
;)

 
A propósito, têm observado os SMAs com períodos de 1.1, 1.2 etc. É engraçado.
Em resumo, é muito divertido. Eu acho que não tem - IMHO - nenhuma aplicação prática, mas como uma atualização do oximoro "um simples deslize com um período fracionário")))) servirá. Há algo de fábulas Zen nele ("Clap one palm" etc. ))))
====
Alexey deveria colocar este tópico inicialmente no ramo de tarefas não relacionadas ao comércio))))
 
E a porta estava aberta...
 
grell >>:
А ларчик просто открывался...

Sim... Não é essa a questão. É que, como pessoa puramente prática, nunca me ocorreu abrir esta arca. Eu tenho caixas próprias suficientes, eu diria até caixas de Pandora)).
===
Devo colocá-lo na base? Ou ainda é melhor não se envergonhar com bugigangas?))))

 
//+------------------------------------------------------------------+
//|                                                          kMa.mq4 |
//|                                                            Grell |
//|                                                dwgrell@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Grell"
#property link      "dwgrell@gmail.com"
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Red
#property indicator_color2 Yellow
#property indicator_color3 Green
extern int    per1=3;
extern double perk=3.7;
extern int    per2=4;
double Buffer1[];
double Bufferk[];
double Buffer2[];
int init()
  {
  SetIndexStyle(0,DRAW_LINE);
  SetIndexBuffer(0,Buffer1);
  SetIndexStyle(1,DRAW_LINE);
  SetIndexBuffer(1,Bufferk);
  SetIndexStyle(2,DRAW_LINE);
  SetIndexBuffer(2,Buffer2);
  return(0);
  }
int deinit()
  {
  return(0);
  }
int start()
  {
   int limit;
   int counted_bars=IndicatorCounted();
   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
   double a1=perk-MathFloor(perk);
   double a2=MathCeil(perk)-perk;
   for(int i=0; i<limit; i++)
     {
     Buffer1[i]=iMA(NULL,0,per1,0,0,0,i);
     Buffer2[i]=iMA(NULL,0,per2,0,0,0,i);
     Bufferk[i]=a1*iMA(NULL,0,per2,0,0,0,i)+a2*iMA(NULL,0,per1,0,0,0,i);
     }
   return(0);
  }
//+------------------------------------------------------------------+
 
A cabeça funciona, mas não da maneira correta.
 
grell >>:
Голова работает, но не в том ключе.

Então, vamos continuar com isso. ;)

Os restantes são.

2. Para peso linear
3. Para exponencial?
 
Sente-se "5" - a fuck-up é defendida. Ainda existe a opção 4, mas é a mesma que as duas anteriores.
 
grell >>:
Садись "5" - подъеб защитан. Остался 4 вариант, но решается также как и предыдущие 2.
Uma combinação linear para um expoente?
:о)
 
avatara >>:

Тогда продолжим. ;)

Остались -

Por que para um exponencial? Tem um período "fracionário" desde o início, que não tem - tem apenas coeficientes de feedback. Foi assim que a MT fez para que a EMA não fosse fracionária. Como está, sempre teve um parâmetro fracionário. Recalcule este coeficiente a partir do período fracionário e está feito. k=2,0/(1+período);
Bem, o resto dos padrões já são elementares.