Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   Schnelleren MA programmieren (http://www.expert-advisor.com/forum/showthread.php?t=6477)

MA-EA 11.08.19 21:54

Schnelleren MA programmieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo.

Kennt sich Jemand mit dem Proggen von eigenen Indikatoren aus? Hab ne Idee, wie man den MA viel schneller machen könnte. Hab mich aber noch nicht viel damit befasst.

Eigentlich scheint es einfach zu sein:

Normalen MA benutzen.

Kurs minus MA rechnen.

Diesen Abstand durch die Perioden-Zahl des MA teilen. Also z.B. bei nem MA auf 10 Perioden Abstand zwischen Kurs und MA durch 10 teilen.

Ergebnis vom Kurs abziehen.

Das müsste es eigentlich gewesen sein. Dürfte nich allzu schwer sein. Aber ich kenn mich mit dem Gestalten eigener Indikatoren leider gar nicht aus. :(

traderdoc 11.08.19 22:19

Zitat:

Zitat von MA-EA (Beitrag 42730)
Hallo.

Kennt sich Jemand mit dem Proggen von eigenen Indikatoren aus? Hab ne Idee, wie man den MA viel schneller machen könnte. Hab mich aber noch nicht viel damit befasst.

Eigentlich scheint es einfach zu sein:

Normalen MA benutzen.

Kurs minus MA rechnen.

Diesen Abstand durch die Perioden-Zahl des MA teilen. Also z.B. bei nem MA auf 10 Perioden Abstand zwischen Kurs und MA durch 10 teilen.

Ergebnis vom Kurs abziehen.

Das müsste es eigentlich gewesen sein. Dürfte nich allzu schwer sein. Aber ich kenn mich mit dem Gestalten eigener Indikatoren leider gar nicht aus. :(

Womit Du Dich aber auch beschäftigst!
Läuft der MA zu langsam, dann solltest Du lieber Deinen PC aufpeppen, denn an den Code gibt es nichts groß zu optimieren. Und wenn Du die Sprache MQL4 verstehen würdest, hättest Du Dein Post nicht geschrieben.

traderdoc

MA-EA 12.08.19 18:13

Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von traderdoc (Beitrag 42731)
Womit Du Dich aber auch beschäftigst!
Läuft der MA zu langsam, dann solltest Du lieber Deinen PC aufpeppen, denn an den Code gibt es nichts groß zu optimieren. Und wenn Du die Sprache MQL4 verstehen würdest, hättest Du Dein Post nicht geschrieben.

Da läuft nichts zu langsam. Nur die MAs sind ja von Natur aus etwas träge... :( Da muss man doch was gegen machen können.

Wenn ich wüsste, wie man nen eigenen Indi macht, dann bräuchte ich allerdings nicht fragen.

Also wie kann man die MAs nach dem eigenen Weg berechnen lassen?

traderdoc 12.08.19 18:24

Ich weiss nicht, was bei Dir da träge laufen soll?
Bei mir laufen die wie geschmiert.

Und wie man einen Indikator programmiert? Nun, dann schau Dir doch einfach den von Dir angehängten Indi an. Damit hast Du doch schon alles, was man braucht.

traderdoc

Ca$hDigger 12.08.19 20:00

Kann es sein das Ihr von unterschiedlichen Dingen redet? Traderdoc redet von Performance und so klingt die Frage auch.
Oder meinst du mit "schnell" etwa, dass der MA dem Kurs näher hinterherläuft?
Falls ja mach die Periode kürzer oder nehme einen gewichteten MA der nennt sich EMA.

C$D

MA-EA 12.08.19 20:13

Liste der Anhänge anzeigen (Anzahl: 1)
Das scheint die Berechnung des SMA zu sein.

Code:

//--- main loop
  for(i=limit; i<rates_total && !IsStopped(); i++)
      ExtLineBuffer[i]=ExtLineBuffer[i-1]+(price[i]-price[i-InpMAPeriod])/InpMAPeriod;

Irgendwie müssten da jetzt meine eigenen Deklarationen und Berechnungen rein. Aber ich seh nicht durch und hab keine Ahnung wie. :confused:

Edit:
Zitat:

Zitat von Ca$hDigger (Beitrag 42734)
Oder meinst du mit "schnell" etwa, dass der MA dem Kurs näher hinterherläuft?
Falls ja mach die Periode kürzer oder nehme einen gewichteten MA der nennt sich EMA.

C$D

Genau das meine ich. Aber noch näher als EMA oder was es Alles gibt. Die Idee dafür steht im 1. Post.

MA-EA 13.08.19 00:10

Liste der Anhänge anzeigen (Anzahl: 2)
Hab mal versucht, nen EA entsprechend zu proggen. Ist im Anhang. Hab ihn aber noch nicht getestet...

Wär nicht schlecht, wenn man seine "UD"-MAs mal in nem Chart sehn könnte.

Deklarationen des normalen MA:
Code:

extern int Fast_MA_Period=3;
extern int Fast_MA_Chart_Shift=0;
input ENUM_MA_METHOD Fast_MA_Method=0;

Code:

double Fast_MA_B1=iMA(Symbol(),Timeframe,Fast_MA_Period,Fast_MA_Chart_Shift,Fast_MA_Method,PRICE_CLOSE,1);
Berechnung meiner "UD"-MAs:
Code:

double CP1_FMAB1 = CP1 - Fast_MA_B1;
double CP1FMAB1_FMAB1Per = NormalizeDouble( CP1_FMAB1 / Fast_MA_Period *_Point,_Digits);
double UD_F_B1 = CP1 - CP1FMAB1_FMAB1Per;


MA-EA 14.10.19 23:41

Liste der Anhänge anzeigen (Anzahl: 1)
Hallo.

Theoretisch ist einfach:Einfach die Werte des Kurses und der MAs durch den selben Wert teilen. Eigentlich müssten sie in diesem EA 7 mal so schnell sein. Aber wie gesagt dachte ich schon oft, es wäre einfach...

Hab den EA im Anhang ein paar Stunden getestet und schien nicht schlecht zu laufen.

Wär nicht schlecht, wenn Jemand einen ensprechenden Indikator proggen könnte. Der müsste dann aber wahrscheinlich nen seperates Fenster haben weil man meine dividierten MAs im normalen Chart vermutlich nicht sehen kann.

AVT 15.10.19 15:49

Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von MA-EA (Beitrag 42730)
Hallo.
Normalen MA benutzen.
Kurs minus MA rechnen.
Diesen Abstand durch die Perioden-Zahl des MA teilen. Also z.B. bei nem MA auf 10 Perioden Abstand zwischen Kurs und MA durch 10 teilen.
Ergebnis vom Kurs abziehen.

Ich hab das Ding mal spaßeshalber nach diesen Angaben geschrieben, es malt alle Schritte als Linien plus das Endergebnis. Die Entehungslinien siehst Du allerdings nicht im Chart (mach das Datenfenster auf, dann siehst Du warum).
So, und nun kannst Du darüber nachdenken, wieso solch ein Ergebnis zustande kommt :p AVT

MA-EA 15.10.19 17:22

Liste der Anhänge anzeigen (Anzahl: 2)
Dankeschön. Aber die Abstände zwischen Kurs und MAs zu verkürzen, war vermutlich nicht gut.

Aber Alles durch den selben Wert zu teilen und die Ergebnisse als Kurven in nem extra Fenster anzuzeigen, dürfte eher sinnvoll sein. Wär echt dankbar, wenn Jemand nen entsprechenden Indi proggen würde.

Oder wenn Jemand erklären könnte, wie ich den schon vorhanden MA-Indikator entsprechend ändern kann.


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:57 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum