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.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3824
Beiträge: 36912
Benutzer: 6.074
Aktive Benutzer: 494
Links: 80
Wir begrüßen unseren neuesten Benutzer: hmf44
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 22 Stunden
- hmf44
vor einem Tag
- Crossa
vor einem Tag
- snatshit
vor einem Tag
- Roerich
vor einem Tag
- John_Liver...

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 80
Gesamt: 81
Team: 0
Team:  
Benutzer:  fxnoob
Freunde anzeigen

Empfehlungen

Werbung

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 08.06.17
Neues Mitglied
 
Registriert seit: Jun 2017
Beiträge: 5
Karabiner befindet sich auf einem aufstrebenden Ast
Standard iCustom, IndexBuffer verwenden für Order

Hallo,

ich bin neu hier und auch in der Programmierung von MQL4.
Der Zeit versuche ich einen einfachen EA zu programmieren und ihn mit dem Strategietester zu prüfen.
Folgendes Problem habe ich:
den icustom habe ich erstellt , den Buffer dort eingetragen den ich haben möchte (z.B. 3) und nun soll dieser Buffer, wenn er gefüllt/geschrieben wird durch die Berechnung des Indis, eine Buy oder Sell Order auslösen.

Für die Buy Order fällt mir nur nicht ein wie die (if) Bedingung aussehen muss ?

Code:
  
void OnTick()
  
  
  
 
{
  {
   double UP=iCustom(NULL,0,"Examples \\Indi-Name",21,14,3,1);
   double DN=iCustom(NULL,0,"Examples \\Indi-Name",21,14,2,1);
   

 }
  
   if (OrdersTotal ()<1)
    if(UP )

int buy = OrderSend(Symbol(),OP_BUY,0.10,Ask,3,(Ask - 0.0100),(Ask + 0.0025),NULL,0,0,clrNONE);

if (DN)
int sell = OrderSend(Symbol(),OP_SELL,0.1,Bid,3,(Bid + 0.0100),(Bid - 0.0025),NULL,0,0,clrNONE);


{

}
}

Wenn mir jemand weiterhelfen würde, wäre ich sehr froh darüber

Gruß der Karabiner
  #2 (permalink)  
Alt 08.06.17
Mitglied
 
Registriert seit: May 2015
Beiträge: 250
next user befindet sich auf einem aufstrebenden Ast
Standard

Unter welchen Bedingungen, bzw. was willst du denn Abfragen, infolge dessen eine Order platziert werden soll?
Ich hab das irgendwie nicht richtig verstanden.
  #3 (permalink)  
Alt 08.06.17
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.875
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Als Erstes solltest Du Dir angewöhnen, einen strukturell klar gegliederten Code zu schreiben, auch wenn er nur kurz ist.

Code:
void OnTick() {
   double UP = iCustom(NULL,0,"Examples\\Indi-Name",21,14,3,1);
   double DN = iCustom(NULL,0,"Examples\\Indi-Name",21,14,2,1);
  
   if (OrdersTotal ()<1) {
      if (UP > ...)  {           //... ein Wert Deiner Wahl
         int buy = OrderSend(Symbol(),OP_BUY,0.10,Ask,3,(Ask - 0.0100),(Ask + 0.0025),NULL,0,0,clrNONE);
      }

      if (DN < ...)  {           //... ein Wert Deiner Wahl
         int sell = OrderSend(Symbol(),OP_SELL,0.1,Bid,3,(Bid + 0.0100),(Bid - 0.0025),NULL,0,0,clrNONE);
      }
   }
}
Die TP-Festlegung mit z.B. Ask + 0.0025 würde aber nur bei Wähungspaaren funktionieren, die mindestens 4 Kommastellen haben. Beim USDJPY mit einem Kurswert von z.B. 110.674 würde dann ein TP-Wert von 110.6765 resultieren, welchen der MT4 mit einem Fehler 130 quittiert (Invalid stops).

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #4 (permalink)  
Alt 08.06.17
Mitglied
 
Registriert seit: May 2015
Beiträge: 250
next user befindet sich auf einem aufstrebenden Ast
Standard

Hey traderdoc,

hab erst durch deinen Code gesehen, das es wohl so
Code:
if(UP > ...)
if(DN < ...)
gemeint wahr.

@Karabiner:
Na siehst du, was das von traderdoc kritisierte anstellt
  #5 (permalink)  
Alt 08.06.17
Neues Mitglied
 
Registriert seit: Jun 2017
Beiträge: 5
Karabiner befindet sich auf einem aufstrebenden Ast
Standard

Hi,

schön das ihr geantwortet habt.

Also Hintergrund war das ich einen Signal Indi (Preis Signal, höchste und niedrigste =nen Pfeil) modifizieren wollte, in dem ich anstatt SetIndexArrow dort ne Zeit ausgeben wollte stattdessen. Das hab ich durch unwissen nicht auf die Reihe bekommen. Beim Googln und Youtuben bin ich dann über das automatisierte Traden gestolpert und das man sich diese EA selber erzeugen kann.

Also ich möchte immer, wenn der Iditor einen Pfeil setzt für long oder short, eine dementsprechende Order setzen ->buy oder sell. Um dann diesen EA auf seine profitabiltät zu testen.. Erstmal ne Spielerei .. Aber so lernt man es halt

Problem ist, wie setze ich die Order wenn ein z.B. "Up" Pfeil gesetzt wird? Das sollte im Buffer 3(oder 2, je nachdem wie es im Code des Indi geschrieben wurde) passieren

Gruß

Karabiner
  #6 (permalink)  
Alt 08.06.17
Neues Mitglied
 
Registriert seit: Jun 2017
Beiträge: 5
Karabiner befindet sich auf einem aufstrebenden Ast
Standard

Edit:

-Iditor
+ Indikator
  #7 (permalink)  
Alt 08.06.17
Neues Mitglied
 
Registriert seit: Jun 2017
Beiträge: 5
Karabiner befindet sich auf einem aufstrebenden Ast
Question

Zitat:
Zitat von traderdoc Beitrag anzeigen
Als Erstes solltest Du Dir angewöhnen, einen strukturell klar gegliederten Code zu schreiben, auch wenn er nur kurz ist.

Code:
void OnTick() {
   double UP = iCustom(NULL,0,"Examples\\Indi-Name",21,14,3,1);
   double DN = iCustom(NULL,0,"Examples\\Indi-Name",21,14,2,1);
  
   if (OrdersTotal ()<1) {
      if (UP > ...)  {           //... ein Wert Deiner Wahl
         int buy = OrderSend(Symbol(),OP_BUY,0.10,Ask,3,(Ask - 0.0100),(Ask + 0.0025),NULL,0,0,clrNONE);
      }

      if (DN < ...)  {           //... ein Wert Deiner Wahl
         int sell = OrderSend(Symbol(),OP_SELL,0.1,Bid,3,(Bid + 0.0100),(Bid - 0.0025),NULL,0,0,clrNONE);
      }
   }
}
Die TP-Festlegung mit z.B. Ask + 0.0025 würde aber nur bei Wähungspaaren funktionieren, die mindestens 4 Kommastellen haben. Beim USDJPY mit einem Kurswert von z.B. 110.674 würde dann ein TP-Wert von 110.6765 resultieren, welchen der MT4 mit einem Fehler 130 quittiert (Invalid stops).

traderdoc
Genau das ist der Erleuchtungshaken if(UP> von was ?)
  #8 (permalink)  
Alt 09.06.17
Neues Mitglied
 
Registriert seit: Jun 2017
Beiträge: 5
Karabiner befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

ich habe im Forum der forexfactory die passende Erklärung gefunden.
Trotzdem Danke für die Mühe und die Zeit meinen Beitrag zu lesen.
Vielleicht brauch ja jemand den Link zum Thema, daher häng ich ihn mal an.

https://www.forexfactory.com/showthread.php?t=285087

Gruß

Karabiner
  #9 (permalink)  
Alt 09.06.17
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.875
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Karabiner Beitrag anzeigen
Hallo,

ich habe im Forum der forexfactory die passende Erklärung gefunden.
Trotzdem Danke für die Mühe und die Zeit meinen Beitrag zu lesen.
Vielleicht brauch ja jemand den Link zum Thema, daher häng ich ihn mal an.

https://www.forexfactory.com/showthread.php?t=285087

Gruß

Karabiner
Wofür die passende Erklärung?
Die Lösung für Deine Fragestellung im Eingangspost wurde doch umfänglich beantwortet.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
Thema geschlossen

Lesezeichen

Stichworte
buffer, buy sell, icustom, mql4, order, programmierung, programmierung metatrader, programmierung mql4


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 13:56 Uhr.



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