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: 4973
Beiträge: 43253
Benutzer: 7.221
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Thomas75
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 5 Stunden
- Thomas75
vor 18 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 802
Gesamt: 802
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #11 (permalink)  
Alt 05.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Die TestBlue und TestRed sind dazu da, um herauszufinden, welche "Farbzahl" herauskommt, wenn die Farbe "clrBlue" oder "clrRed" heißt. Das sind die Vorgabewerte aus dem Indikator. (Solltest Du die mal ändern, also statt "Blue" z.B. "YellowGreen" einstellen, wird sich auch die "Farbzahl" ändern).

Um die Farbe eines Objektes zu auszulesen, nimmt man ObjectGetInteger(...), man erfragt also eine Integer-Zahl (genau gesagt sind die "Farbzahlen" vom Typ long integer). Da es aber keine (jedenfalls ist mir so was nicht bekannt) Umwandlung von IntegerToColor oder sowas gibt, ist das einfachste mit dem Zahlwert zu arbeiten.
Hab ich verstanden, klasse. Danke für die Erleuterung!

Zitat:
Dann brauchst Du trotzdem die beiden unterschiedlichen Zahlen, damit Du weißt, ob Du grad blau oder rot zu fassen hast. Wenn Du diese Farben vom Indikator nie änderst, dann kannst Du deren Zahlwerte vorher festlegen, der Rest ist dann die Bedingung
Code:

long UpColor=16711680; // Blue
long DnColor=255; // Red

if( ObjectGetInteger(0,FXVTF1,OBJPROP_COLOR)==UpColor
&& ObjectGetInteger(0,FXVTF2,OBJPROP_COLOR)==UpColor
&& ObjectGetInteger(0,FXVTF3,OBJPROP_COLOR)==UpColor )
{
//dann kaufen
}

ungetestet, sollte aber eigentlich so funktionieren. AVT
Das werde ich dann bei Gelegenheit mal ausprobieren, wird aber sicherlich genau das sein, was ich brauche.
Nochmal vielen vielen Danke!

Grüße
  #12 (permalink)  
Alt 07.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Ich habe das ganze nun mal in eine Funktion gepackt (mache ich zunmindest immer so) aber ich bekomme immer noch kein "Ergebnis", im Sinne eines Prints, geschweige denn, wenn ich mit "Trend" weiterarbeite.

Code:
string Trend;
string up, down;
string Rect1Name = "FXVTF1"; 
string Rect2Name = "FXVTF2";
string Rect3Name = "FXVTF3";
long UpColor = 16711680;   
long DnColor = 255;        
string FXVTF()
   {
      if(   ObjectGetInteger(0,Rect1Name,OBJPROP_COLOR) == UpColor 
         && ObjectGetInteger(0,Rect2Name,OBJPROP_COLOR) == UpColor 
         && ObjectGetInteger(0,Rect3Name,OBJPROP_COLOR) == UpColor)
            {
               Trend = up;
            }
      if(   ObjectGetInteger(0,Rect1Name,OBJPROP_COLOR) == DnColor 
         && ObjectGetInteger(0,Rect2Name,OBJPROP_COLOR) == DnColor 
         && ObjectGetInteger(0,Rect3Name,OBJPROP_COLOR) == DnColor)
            {
               Trend = down;
            }
      else Trend = "";
         
      Print(Trend);
         
      return(Trend);       
   }
Habe ich doch noch was falsch verstanden?

Grüße
  #13 (permalink)  
Alt 07.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Gondiego Beitrag anzeigen
Ich habe das ganze nun mal in eine Funktion gepackt (mache ich zunmindest immer so) aber ich bekomme immer noch kein "Ergebnis", im Sinne eines Prints, geschweige denn, wenn ich mit "Trend" weiterarbeite.

Code:
string Trend; //Variable ohne Anfangswert
string up, down; //2 weitere Variablen ohne Anfangswert
string FXVTF()
{
   if( ... ) Trend = up; //Trend bekommt den Wert von Variable up
   if( ... ) Trend = down; //Trend bekommt den Wert von Variable down
   else    Trend = ""; //Trend bekommt den Wert Leer
         
   Print(Trend);
   return(Trend);       
}
Habe ich doch noch was falsch verstanden?
Sieh Dir mal an, was mit Deinen Variablen passiert. Zum Vergleich mal eine Version angehängt (da Wochenende ist, ist ein Aufruf in OnInit). AVT
Angehängte Dateien
Dateityp: mq4 FXVDA1watcher.mq4 (2,6 KB, 3x aufgerufen)
  #14 (permalink)  
Alt 08.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Danke für die Anmekungen.
Aber auch mit deinem Watcher erhalte ich nichts...

Steh ich jetzt komplett auf dem Schlauch?
Angehängte Grafiken
Dateityp: jpg Test.JPG (139,9 KB, 4x aufgerufen)
  #15 (permalink)  
Alt 08.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Gondiego Beitrag anzeigen
Danke für die Anmekungen.
Aber auch mit deinem Watcher erhalte ich nichts...
Steh ich jetzt komplett auf dem Schlauch?
Ich auch, ich habe Dir mal ein Bild angehängt wie das bei mir aussieht. Geladen: nur der VXDA1.ex4 Indikator und dann der FXDA1watcher.ex4. Sobald der zweite auf den Chart gezogen wird, erscheinen unter "Experten" die Print Meldungen. Du mußt unter "Experten" nachsehen und nicht unter "Journal". AVT
Angehängte Grafiken
Dateityp: jpg FXVDA-pic.JPG (118,0 KB, 3x aufgerufen)

Geändert von AVT (08.09.19 um 13:27 Uhr) Grund: zusätzliche Info
  #16 (permalink)  
Alt 08.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Super, danke dir.

Hoffentlich letzte Frage, wie zu sehen ist jetzt beim zweiten kein Trend (none) vorhanden, trotz das alle rot sind. Kann es daran liegen,dass Wochenende ist? Nur zum Verständnis für mich.
Angehängte Grafiken
Dateityp: jpg Test.JPG (95,6 KB, 5x aufgerufen)
  #17 (permalink)  
Alt 11.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Gondiego Beitrag anzeigen
Hoffentlich letzte Frage, wie zu sehen ist jetzt beim zweiten kein Trend (none) vorhanden, trotz das alle rot sind. Kann es daran liegen,dass Wochenende ist? Nur zum Verständnis für mich.
Tschuldigung, war unterwegs. Ne, eigentlich sollte der im Init schon den korrekten Wert anzeigen, aber das tut er hier selbst im OnCalculate nicht, ich krieg momentan ein "none" obwohl down ist.
Jetzt weiß ich auch nicht mehr weiter, sorry ich bin nicht nur mit meinem Latein am Ende, sondern auch mit Griechisch und Germanisch AVT
  #18 (permalink)  
Alt 13.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Tschuldigung, war unterwegs. Ne, eigentlich sollte der im Init schon den korrekten Wert anzeigen, aber das tut er hier selbst im OnCalculate nicht, ich krieg momentan ein "none" obwohl down ist.
Jetzt weiß ich auch nicht mehr weiter, sorry ich bin nicht nur mit meinem Latein am Ende, sondern auch mit Griechisch und Germanisch AVT
Oha...das heißt ja dann schon was
Dann muss ich wohl mal gucken, ob ich das irgendwie anders bewerkstelligt bekomme bzw. ob ich den Indi durch einen anderen ersetzen kann.

Trotzdem danke nochmal.

Grüße
  #19 (permalink)  
Alt 15.09.19
Neues Mitglied
 
Registriert seit: May 2017
Beiträge: 25
Gondiego befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Tschuldigung, war unterwegs. Ne, eigentlich sollte der im Init schon den korrekten Wert anzeigen, aber das tut er hier selbst im OnCalculate nicht, ich krieg momentan ein "none" obwohl down ist.
Jetzt weiß ich auch nicht mehr weiter, sorry ich bin nicht nur mit meinem Latein am Ende, sondern auch mit Griechisch und Germanisch AVT
@AVT, ich kann dich beruhigen, du bist nicht mit deinem Latein, Griechisch oder Germanisch am Ende...du hast einfach den Wald vor lauter Bäumen nicht mehr gesehen.

Ich bin bisher nicht dazu gekommen meinen EA live zu testen und habe bei dem auftretenden "Fehler", komischerweise, immer in meinem EA geguckt, wo der Fehler liegen könnte. Habe es da aber tatsächlich richitg geschrieben. Wenn du jetzt nochmal in deinen FXDA1watcher reingucken wirst, wirst du jetzt wahrscheinlich schnell feststellen, dass du bei beiden Bedingungen das Gleiche reingeschrieben hast

Code:
if(        ObjectGetInteger(0,Rect1Name,OBJPROP_COLOR)==UpColor
              && ObjectGetInteger(0,Rect2Name,OBJPROP_COLOR)==UpColor
              && ObjectGetInteger(0,Rect3Name,OBJPROP_COLOR)==UpColor)
              
         Trend = "up";
         
      else if(   ObjectGetInteger(0,Rect1Name,OBJPROP_COLOR)==UpColor
              && ObjectGetInteger(0,Rect2Name,OBJPROP_COLOR)==UpColor
              && ObjectGetInteger(0,Rect3Name,OBJPROP_COLOR)==UpColor)
         
         Trend = "down"
Kann dann ja logischerweise kein "down" erfüllt werden.
Funktioniert also einwandfrei

Grüße und schönen Sonntag noch
  #20 (permalink)  
Alt 15.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Gondiego Beitrag anzeigen
@AVT, ich kann dich beruhigen, du bist nicht mit deinem Latein, Griechisch oder Germanisch am Ende...du hast einfach den Wald vor lauter Bäumen nicht mehr gesehen.

Wenn du jetzt nochmal in deinen FXDA1watcher reingucken wirst, wirst du jetzt wahrscheinlich schnell feststellen, dass du bei beiden Bedingungen das Gleiche reingeschrieben hast

Kann dann ja logischerweise kein "down" erfüllt werden.
Funktioniert also einwandfrei
Suuuper, daß Du das gesehen hast dann ist ja meine Welt wieder im Lot! Danke und erfolgreiche nächste Woche. AVT
Thema geschlossen

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 +1. Es ist jetzt 16:36 Uhr.





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