Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4536
Beiträge: 41153
Benutzer: 6.932
Aktive Benutzer: 232
Links: 80
Wir begrüßen unseren neuesten Benutzer: traderotor
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- traderotor
vor 2 Tagen
- Brummi
vor 4 Tagen
- Fussellien...
vor 5 Tagen
- ZHannes82
vor 5 Tagen
- LigthofGod

Onlineuser
'Wer ist online' anzeigen Benutzer: 2
Gäste: 93
Gesamt: 95
Team: 0
Team:  
Benutzer:  Indikator-Trading, traderdoc
Freunde anzeigen

Empfehlungen

Like Tree1Likes
Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 16.08.20
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.010
MA-EA befindet sich auf einem aufstrebenden Ast
Standard MA programmieren der früher Signale gibt

Hallo.

Hatte vor längerer Zeit nen Thema geöffnet, mit ner Idee, wie man MAs allgemein wesentlich früher nen Trendwechsel- oder Ende oder was auch immer anzeigen lassen kann. Das Thema ist aber zu.

Hab keine Ahnung, obs was bringt, aber die Idee ist eigentlich ganz einfach:

1.
Ganz normalen MA deklarieren. Z.B.
Code:
double MA_Fa=iMA(Symbol(),TimeFrame,MA_Fast_Period,MA_Fast_Chart_Shift,MA_Fast_Method,PRICE_CLOSE,1);
2.
Dieser wird dann einfach durch nen Wert, den man in den GV eintragen kann, geteilt. Z.B. jetzt einfach mal 6.
Code:
extern double MA_dividieren_durch = 6.0;
Je nachdem, ob der Wert normalen, oben beschriebenen MA <1.0 ist oder nicht, muss er dann entsprechend berechnet werden mit dem globalen Wert. Z.B.
Code:
if( MA_Fa < 1.0 )  double Dividierter_MA = MA_Fa * MA_dividieren_durch;
if( MA_FA >= 1.0 ) Dividierter_MA = MA_Fa / MA_dividieren_durch;
Nen Indikator daraus zu machen, wär echt nicht schlecht, damit man ungefähr sieht, wie diese "schnelleren MAs" eigentlich aussehn. Die müssten dann in nem extra Unterfenster abgebildet werden, wie z.B. der CCI oder RSI oder Stochastic oder so.
Mit Zitat antworten
  #2 (permalink)  
Alt 16.08.20
Benutzerbild von Indikator-Trading
Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 109
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard


Einfache Antwort:
Das ist Schwachsinn!

Der Mittelwert ist über 1 und dann teile ich ihn durch 6 und damit ist er schneller??
Hier ein Beispiel, das du vielleicht verstehst:
Du fährst in deinen Opel Corsa von 1997 auf der Autobahn.

Fährst du unter 100 km/h schnell, also z.B. 80, dann multiplizierst du den Wert mal 6, du fährst also 480 km/h!

Fährst du aber über 100 km/h, also z.B. 120km/h, dann teilst du deine Geschwindigkeit durch 6, somit denkst du also du fährst nur noch 20 km/h schnell.

Jetzt stell dir mal die Frage: Macht das irgend einen Sinn bzw. einen Mehrwert??
-> Nein, und nochmals nein, das ist hier die Antwort! So ist es halt

Verringerst du die Periodenlänge bei irgend einem Kriterium, dann kann das zumindest irgend einen fachlichen Sinn machen. Ob es dir beim Traden hilft, ist und wird auch für alle Zeit fraglich sein, mein lieber MA-EA....
Mit Zitat antworten
  #3 (permalink)  
Alt 16.08.20
AVT AVT ist offline
Premium Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 434
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Nen Indikator daraus zu machen, wär echt nicht schlecht, damit man ungefähr sieht, wie diese "schnelleren MAs" eigentlich aussehn. Die müssten dann in nem extra Unterfenster abgebildet werden, wie z.B. der CCI oder RSI oder Stochastic oder so.
Hier hast Du Deinen Indikator, kannst damit so viel rumexperimentieren wie Du willst - und komm' mir nicht mit "... dann müßte man eben noch den Preis addieren oder subtrahieren" - das hatten wir schon mal.
Außerdem ist der Quellcode kommentiert und wenn Du schon EAs programmierst, dann kannst Du den Indikator auch selber ändern.
Ansonsten empfehle ich Dir, die Antwort von Indikator-Trading heranzuziehen.
AVT
Angehängte Dateien
Dateityp: mq4 MA-EA-SS-OSC.mq4 (8,4 KB, 5x aufgerufen)
MA-EA likes this.
Mit Zitat antworten
  #4 (permalink)  
Alt 18.08.20
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.010
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Tausend Dankeschöns. Das hat mir geholfen. Im Anhang eine von mir etwas vereinfachte Vers. Die Multiplikation konnte raus. War nur wegen Dividieren/Multiplizieren von Werten <1.0 drin. Nebenbei:Es geht nicht um nen Tacho der mehr oder weniger als 100.0km/h anzeigt, sondern um kleiner oder größer als 1.0.


Wie man im Bild (hoffentlich) sehn kann, vollbringt das Ding keine Wunder, scheint aber Seitwärtsbewegungen einigermaßen gut umgehen zu können. Wenn ich irgendwas richtig erkennen kann, scheint es auf kleinere Bewegungen 1 oder 2 Kerzen früher zu reagieren, bei hoher Vola allerdings scheint er sogar manchmal hinterher zu hinken. Vielleicht braucht er auch nur lange, um den Wechsel von Trends in Seitwärtsbewegungen anzuzeigen. Bzw. umgedreht.



Anscheinend ist es mit einfachem Teilen der Werte nicht getan.


Ich trau mich eigentlich kaum zu fragen. Aber wärs möglich, den Oszi im Anhang um was eigentlich Einfaches zu ergänzen? Eigentlich ganz easy: Zu dem dividierten MA soll die ganze Rechnerei noch mal mit dem Price, auf den der normale MA gelegt wird, gemacht werden. Also das Selbe wie mit dem MA:


1.
Ganz normalen Price deklarieren. Z.B.
Code:
double Close_Price = iClose(Symbol(),TF,1);
Dann die selbe Rechnerei wie mit dem MA. Eben bloß stattdessen mit z.B. dem ClosePrice Bar1.
Code:
     MAval=iMA(_Symbol,_Period,MAperiod,0,MAmethod,MAprice,i);  //Hole MA der Kerze
      
      if(MAval <1.0)MABuff[i]=MAval*MAdivis; // Wenn MAwert kleiner 1.0: mit Divisor multiplizieren
      if(MAval>=1.0)MABuff[i]=MAval/MAdivis;// Wenn MAwert größer/gleich 1.0: durch Divisor teilen
Angehängte Dateien
Dateityp: mq4 MA-EA_DivPrMA_Osci.mq4 (8,0 KB, 0x aufgerufen)
Mit Zitat antworten
  #5 (permalink)  
Alt 18.08.20
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.010
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Das Problem ist wohl, dass alle MA einfach nur nach unten verschoben werden und dementsprechend manchmal früher und manchmal später als die "originalen" MAs sich überschneiden. So müsste das Ganze wohl eher nen Sinn ergeben, indem sie ihren jeweiligen Verhältnissen zum ClosePrice entsprechend verändert werden:
Code:
extern int MA_Fast_Period=3;
extern int MA_Fast_Chart_Shift=0;
input ENUM_MA_METHOD MA_Fast_Method=0;
extern double MA_Fast_Divi=10.0;

extern int MA_Midd_Period=6;
extern int MA_Midd_Chart_Shift=0;
input ENUM_MA_METHOD MA_Midd_Method=0;
extern double MA_Midd_Divi=10.0;

extern int MA_Slow_Period=10;
extern int MA_Slow_Chart_Shift=0;
input ENUM_MA_METHOD MA_Slow_Method=0;
extern double MA_Slow_Divi=10.0;


double CP1=iClose(Symbol(),TF,1);


double MA_Fa=iMA(Symbol(),TF,MA_Fast_Period,MA_Fast_Chart_Shift,MA_Fast_Method,PRICE_CLOSE,1);

double MA_Mi=iMA(Symbol(),TF,MA_Midd_Period,MA_Midd_Chart_Shift,MA_Midd_Method,PRICE_CLOSE,1);

double MA_Sl=iMA(Symbol(),TF,MA_Slow_Period,MA_Slow_Chart_Shift,MA_Slow_Method,PRICE_CLOSE,1);


double CP1pluMAFa = CP1 + MA_Fa;

double CP1pluMAMi = CP1 + MA_Mi;

double CP1pluMASl = CP1 + MA_Sl;


if( CP1pluMAFa<1.0 )double di_Fa = CP1pluMAFa * MA_Fast_Divi;
else di_Fa = CP1pluMAFa / MA_Fast_Divi;

if( CP1pluMAMi<1.0 )double di_Mi = CP1pluMAMi * MA_Midd_Divi;
else di_Mi = CP1pluMAMi / MA_Midd_Divi;

if( CP1pluMASl<1.0 )double di_Sl = CP1pluMASl * MA_Slow_Divi;
  else di_Sl = CP1pluMASl * MA_Slow_Divi;
Vielleicht sind noch nen paar Fehler drin, im Großen und Ganzen müsste es so aber wohl eher funktionieren.


Gute Nacht für heute.
Angehängte Dateien
Dateityp: mq4 CPplus3MA_Div_CP1AB_MT4EA.mq4 (37,1 KB, 1x aufgerufen)
Mit Zitat antworten
  #6 (permalink)  
Alt 18.08.20
Benutzerbild von Indikator-Trading
Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 109
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
… Nebenbei:Es geht nicht um nen Tacho der mehr oder weniger als 100.0km/h anzeigt, sondern um kleiner oder größer als 1.0.
Ach was, ich dachte du baust hier eine Autosteuerung ???
Ich habe das extra nur für DICH deinen MA-Dividieren-Quatsch einfach und simpel an einem Beispiel erklärt, damit vielleicht auch DU verstehen kannst, dass das immer noch SCHWACHSINN ist, den du dir da ausgedacht hast. Aber selbst das war wohl zu kompliziert oder?

Also dein Toller EA wozu du sagst:
Zitat:
Vielleicht sind noch nen paar Fehler drin, im Großen und Ganzen müsste es so aber wohl eher funktionieren.
Nein, es wird weder im Großen noch im Ganzen funktionieren. Nicht bei solchen Fehlern wie diesen hier:
Code:
if( &&  Bid<CP1_D_Sel)
{ … }

Insgesamt noch weitere Compilerfehler an weiteren sehr schönen stellen
Mit Zitat antworten
  #7 (permalink)  
Alt 18.08.20
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.415
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Mir fällt dazu nichts mehr ein. Ich bin nun seit 15 Jahren in einschlägigen Foren unterwegs, programmierte auftragsgemäß hunderte EAs und Indikatoren und habe schon die skurrilsten Handelsstrategien der Kunden umgesetzt. Aber kein Einziger hat mir jemals so einen, gelinde gesagt, Unsinn präsentiert.
Warum der @MA-EA auch immer so renitent gegenüber der Tipps und Hinweisen ist und permanent falsche Schlüsse zieht, entzieht sich meiner Kenntnis. Er tut mir fast schon etwas leid.
Wie oft wurde ihm bereits geschrieben, die Nase zunächst in Bücher und fertigen Code zu stecken und dann überrascht er uns immer wieder mit programmtechnischen Stilblüten der besonderen Art.

Ich habe leider auch keinen anderen Rat mehr.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Mit Zitat antworten
  #8 (permalink)  
Alt 18.08.20
Elite Mitglied
 
Registriert seit: Sep 2015
Beiträge: 1.010
MA-EA befindet sich auf einem aufstrebenden Ast
Standard

Was für skurrile Strategien? Erzähl mal nen paar interessante Geschichten.

Der EA im Anhang oben ist noch nicht fertig. Hab den bloß hoch geladen, damit man besser nach vollziehen kann, wie die MA-Rechnerei im EA ausschaut. Bzw. wie der irgendwann mal funktionieren soll.

Gibt doch irgendwie Indikatoren, die MAs nur als Grundlage benutzen, um damit andere Berechnungen zu machen. Die irgendwie Abstände zwischen MAs oder zwischen Letzteren und irgendwelchen Preisen ausrechnen und darstellen. In dem EA oben soll Preis und der dazu gehörige MA addiert werden. Das Ergebnis soll dann durch nen einstellbaren Wert geteilt werden. Theoretisch hätte man dann die typische Glättung des Kurses, aber ohne 3-4 oder noch mehr Kerzen auf Kreuzungen warten zu müssen. Bei 3 normalen MAs sind die meisten Trends schon wieder fast zu Ende, bis sie registriert werden.

Im Anhang noch mal der Oszillator. Da müsste lediglich noch mal der ganz normale Kurs drin deklariert werden.

double ClosePrice = iClose(...usw.

Die Rechnerei müsste ich dann eigentlich selber hin bekommen.
Angehängte Dateien
Dateityp: mq4 MA-EA_DivPrMA_Osci.mq4 (8,0 KB, 1x aufgerufen)
Mit Zitat antworten
  #9 (permalink)  
Alt 18.08.20
Benutzerbild von Indikator-Trading
Mitglied
 
Registriert seit: May 2020
Ort: Bielefeld
Beiträge: 109
Indikator-Trading befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA
Da müsste lediglich noch mal der ganz normale Kurs drin deklariert werden.

double ClosePrice = iClose(...usw.
Oh ja, den Closeprice zu bekommen, das ist schon die "hohe Kunst" in der MQL4 Programmierung.

Da helfe ich dir doch gerne:
https://docs.mql4.com/series/iclose

Jetzt musst du nur noch lesen können...

Zitat:
Zitat von MA-EA
Die Rechnerei müsste ich dann eigentlich selber hin bekommen.
Na dann viel Erfolg dabei
Mit Zitat antworten
  #10 (permalink)  
Alt 19.08.20
Mitglied
 
Registriert seit: Dec 2015
Beiträge: 76
TogoTiger befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MA-EA Beitrag anzeigen
Was für skurrile Strategien?
z.B. immer short und long gleichzeitig. Schon vor Jahren haben mehrere User dir geduldig aufzuzeigen versucht, warum diese Strategie nicht funktioniert.
Oder das, was du hier wieder präsentierst. Einfach nur Blödsinn.

Tips, die wirklich was bringen könnten, versuchst du nie umzusetzen.
Ich wiederhole mich jetzt:
Trend z.B. mit EMA in einer höheren Zeiteinheit bestimmen. Dann in einer kürzeren Zeiteinheit mit irgendeinem Indikator einsteigen, und zwar nur in der Richtung des höheren Trends. TRSI oder MACD funktionieren z.B. nicht schlecht. Wenn du kurzfristig handeln willst, dann nimmst z.B. EMA 200 in 30M oder 1H und TRSI oder MACD oder was auch immer in 5M. Du machst dann natärlich nicht 100 Trades am Tag, dafür ist die Mehrheit positiv.
Die Strategie ist ausbaufähig, z.B. den Ausstieg dynamisch suchen, je nach Stärke der Bewegung oder nach Stärke des höheren Trends.
Oder, wenn der Trade gut läuft, eine Nachkaufstrategie einbauen etc. etc.

Du solltest dich mal auf eine Strategie festlegen und die dann ausbauen. Das bringt eher ein positives Resultat als deine seltsamen Experimente.

So, und das wars jetzt wirklich. Wenn du es nicht selbst programmieren kannst, dann gib dem Traderdoc einen Auftrag. Vielleicht (aber nur vielleicht) nimmt er einen Auftrag von dir an. Ich würds nicht machen und meine funktionierenden EA's stehen nicht zum Verkauf
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 14:19 Uhr.





Die Suchmaschine - Der Wavesnode - Facebook Forum - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2020 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2020 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------