10$ für die Aktualisierung des Indikators - Seite 6

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

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

Das ist großartig!
Und nicht 200 Zeilen Code...
;)

 
Übrigens, ich habe die SMAs mit Perioden von 1,1, 1,2 usw. beobachtet. Das ist lustig.
Kurz gesagt, es macht eine Menge Spaß. Ich denke, es hat - IMHO - keine praktische Anwendung, aber als Aktualisierung des Oxymorons "ein einfacher Zettel mit einem gebrochenen Punkt"))) wird es reichen. Es hat etwas von Zen-Fabeln an sich ("Klatsche in eine Handfläche" usw. ))))
===
Alexey sollte dieses Thema zunächst in die Abteilung für nicht handelsbezogene Aufgaben verschieben.)))
 
Und die Tür war offen...
 
grell >>:
А ларчик просто открывался...

Ja... Das ist nicht der Punkt. Es ist nur so, dass ich als rein praktischer Mensch nie auf die Idee gekommen bin, diese Truhe zu öffnen. Ich habe selbst genug Schachteln, ich würde sogar sagen, die Büchse der Pandora)).
===
Soll ich sie in den Sockel stecken? Oder ist es immer noch besser, sich nicht mit Schnickschnack zu blamieren?)))

 
//+------------------------------------------------------------------+
//|                                                          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);
  }
//+------------------------------------------------------------------+
 
Der Kopf funktioniert, aber nicht auf die richtige Weise.
 
grell >>:
Голова работает, но не в том ключе.

Dann lassen Sie uns weitermachen. ;)

Übrig geblieben sind.

2. für linear gewichtete
3. für exponentiell?
 
Setzen Sie sich "5" - das Versagen wird verteidigt. Es gibt noch die Option 4, aber sie ist die gleiche wie die beiden vorherigen.
 
grell >>:
Садись "5" - подъеб защитан. Остался 4 вариант, но решается также как и предыдущие 2.
Eine Linearkombination für einen Exponenten?
:о)
 
avatara >>:

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

Остались -

Warum für einen Exponentialwert? Er hat von Anfang an eine "gebrochene" Periode, die er nicht hat - er hat nur Rückkopplungskoeffizienten. Auf diese Weise hat MT dafür gesorgt, dass die EMA nicht gebrochen ist. So wie es ist, hatte es schon immer einen fraktionalen Parameter. Berechnen Sie diesen Koeffizienten aus der Bruchperiode neu, und schon ist es geschafft. k=2,0/(1+Periode);
Nun, der Rest der Standardaufgaben ist bereits erledigt.