|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Graphische Elemente duplizieren?
Hallo @all,
ich bin MT4-Rookie und habe mich bisher mit PineScript (TradinngView) befasst. Nun bin ich erstaunt, was mit MQL4 alles möglich ist, auch wenn ich da noch viiiiiel zu lernen habe. Aber man wächst ja mit seinen Aufgaben... Nun meine Frage: Gibt es die Möglichkeit bspw. eine horizontale Linie gezielt zu duplizieren? Mit gezielt meine ich, dass man die Linie um eine abzufragende Anzahl an Pips nach oben unten duplizeren kann (idealerweise auch in einer wählbaren Farbe und Linienart). Ich hoffe, jemand kann mir weiterhelfen und DANKE für das viele Konw-How, das ihr hier bereitstellt. |
|
|||
Zitat:
1. Art der Linie (horizontal, trend, vertical) 2. Farbe der Linie 3. Stil der Linie 4. Dicke der Linie 5. angeklickt oder nicht 6. Beschreibung 7. Tooltip Deine gesuchte Linie kann alle oder nur einige Kriterien erfüllen. (Ich arbeite gerne mit der Kombination aus Art und angeklickt, das reicht bei mir meistens.) In einem Loop über alle Chart Objecte suchst Du dann die Linie, die die Bedingungen erfüllt. Hast Du sie gefunden, dann fragst Du ihre Eigenschaften über ObjectGet... ab (z.B. den Price für horizontal, Price1 und 2 für trend, und für trend brauchst Du noch die Time1 und 2). Am besten in Variablen kurzfristig speichern, dann kannst Du schnell drauf zugreifen. Danach addierst/subtrahierst die gewünschten Werte von den gerade Abgefragten Price-Werten. Mit diesen errechneten neuen Werten erstellst Du ein neues Object der gleichen Art (kennst Du aus Deiner Suche) mit den errechneten Werten (bei trend bleiben die Zeiten dieselben). Farbe und Stil der neuen Linie kannst Du z.B. als Benutzereingabe schon vorher festlegen. Fertig. Reicht der Weg Dir? AVT |
|
|||
Wenn die Linie im Chart angeklickt wird, so dass die weißen quadratischen Griffpunkte sichtbar sind und die Taste "Strg" gehalten wird, kann man sich mit der Maus auf die Linie stellen und eine Kopie irgendwo hinziehen.
Mit dem Rechtsklick auf die angeklickte Linie öffnet sich ein Menü, wo man unter Objekte die Linie auswählen und bearbeiten kann bzgl. u.a. Name, Farbe und Stil. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Herzlichen Dank für deine ausführliche Antwort.
Zitat:
Zitat:
Zitat:
Bei diesem hier wird es sich ja wohl um ein Script handeln. Wird das auf bestimmte Art im SourceCode gekennzeichnet oder ergibt sich das aus der Tatsache, dass es im Script-Verzeichnis abgelegt wird? Vielen Dank nochmals - tolle Unterstützung hier. Hast du noch einen Tipp, wo man sich ambesten in das Thema MQL-Programmierung reinfuchsen kann. Mir geht es erst mal weniger um EAs oder Indikatoren; eher um Skripten, die mir die das Leben erleichtern. |
|
|||
Zitat:
|
|
|||
Zitat:
Du lädst das im Editor - dann speichern unter Scripts - dann komplieren. Neuen Chart aufmachen, ein paar Linien rein, eine Horizontale anklicken und Skript auf den Chart werfen. Ist nur die Horizontale, die ich drin habe (damit Du versuchen kannst, ob Du den Trend selber hinkriegst). Kannst natürlich auch alles andere versuchen, Code kürzen, erweitern ... Und natürlich kann man so was auch als Indikator machen, der sonst noch welche Aufgaben hat (das Prinzip ist ja dasselbe). Zitat:
1. im Editor - Hilfe - MQL4 Referenz -. Inhalt ist so ne Art Buch -. Index ist zum Suchen von etwas, einfach ein paar Zeichen in die Suchleiste -. Suchen findet jedes Vorkommen in der ganzen Referenz (manchmal ziemlich viel) 2. im Editor Klick auf Wort, dann F1 Taste, ist DirektHilfe (Stelle in der Referenz) 3. im MetaTrader - Terminal - Bibliothek - Rechtsklick auf Überschrift -. für Skripte nur die auswählen, dann kannst Du Beispiele herunterladen, die landen unter Scripts - Downloads -. zum Lesen wie andere es vielleicht lösen Hoffe, das hilft Dir, um Dich reinzubringen. AVT |
|
|||
WOW! Ganz herzlichen Dank - damit hätte ich ja nicht gerechnet. Super! Klappt!
Geändert von drater (24.06.20 um 21:25 Uhr) |
|
|||
@AVT: Ich habe mir das Skript angeschaut und viel dabei gelernt. Nochmals vielen Dank!
Bekanntlich kommt der ja Appetit beim essen . Ich habe mir daher eine Variante gebaut. Dabei wird ich keine Linie markiert, von der ab die Duplikate gezeichnet werden. Vielmehr gebe ich einen Kurswert vor und es wird eine Linie an diesem Kurs und die Duplikate gezeichnet. Nun wollte ich bei der Eingabe gerne den Kurswert mit dem aktuellen BidPrice vorbelegen. Da bekomme ich leider eine Fehlermeldung, da man eine Konstante verwenden muss. Gibt es dafür eine Lösung? Und dann ist mir noch eine Frage eingefallen, die etwas off-topic bzgl. des ursprünglichen Betreffs sind. Ich hänge sie hier mal an: Kann man mittels eines Skripts eine Berechnung auf zwei beliebige Kerzen anwenden, die man per Maus anklickt. Also Bspw. den Abstand in Pips vom Hoch der einen Kerze zum Tief der anderen Kerze? |
|
|||
Zitat:
Code:
extern double PreisOriLinie = 10650; //Preis der Originallinie extern double UpPlus = 20; //Point Abstand obere Parallele extern double DnMinus = 40; //Point Abstand untere Parallele Code:
if(PreisOriLinie==0) //BenutzerHatNixEingegeben PreisOriLinie=Bid; //DannNimmBidPreis //... und nun Linie malen Zitat:
AVT |
|
|||
Hallo AVT.
Zitat:
Code:
extern double PreisOriLinie = Bid; //Preis der Originallinie Das mit den beiden Kerzen anklicken habe ich inzwischen hingekriegt. |
Lesezeichen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|