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)
-   -   Bedingungen in Code einbinden (http://www.expert-advisor.com/forum/showthread.php?t=5748)

ehonk 12.07.17 18:19

Bedingungen in Code einbinden
 
Hallo Tradergemeinde,
ich bin neu hier und auch noch nicht so erfahren im programmieren.
Bei meinem EA bin ich nun auf folgendes Problem gestoßen.
Ich glaube das ich die Bedingungen zum Öffnen eines Trades nicht richtig zusammen setze.
Hier das Codeteil, um das es geht:

if(kauf > 0 && offeneorders == 0)
{
if(Signal == "Long")
if(Open[0]>Open[1])
if(ADXPlus>ADXMinus)
if(ADXPlus>20)
if(ADXMain>20)
if(AcDc > AcDc1)
if(PSAR > PSAR_1)
if(Open[0] > ma1)
if(Open[0] < B_Bands_U)
{
LongOrder= OrderSend(Symbol(), OP_BUY, Lots, kauf, 3, Stoppkurs, Kursziel, "11 long Order" , Magic_Number, 0, Green);
if (LongOrder>0)
{
if(OrderSelect(LongOrder,SELECT_BY_TICKET,MODE_TRA DES)) Print("Kauforder geöffnet : ",OrderOpenPrice());
}
}
Ich habe gelesen, das man das besser mit flags machen sollte, habe aber nicht genug Erfahrung damit.

Vielleicht kann ja mal jemand drüber schauen und mir einen Tipp geben, was ich da wohl falsch mache.

Gruß ehonk

traderdoc 12.07.17 18:58

In Zukunft bitte angewöhnen den Code über das #-Zeichen zu schreiben:

Code:

if (offeneorders == 0) {
  if (Signal == "Long" && Open[0]>Open[1] && ADXPlus>ADXMinus && ADXPlus>20 && ADXMain>20 &&
      AcDc > AcDc1 && PSAR > PSAR_1 && Open[0] > ma1 && Open[0] < B_Bands_U) {
      LongOrder = OrderSend(Symbol(), OP_BUY, Lots, Ask, 3, Stoppkurs, Kursziel, "11 long Order", Magic_Number, 0, Green);
      if (LongOrder > 0) {
        if (OrderSelect(LongOrder, SELECT_BY_TICKET)) Print("Kauforder geöffnet : ", OrderOpenPrice());
      }
  }
}

traderdoc

ehonk 12.07.17 19:25

Ok traderdoc, mach ich beim nächsten mal

ehonk 12.07.17 19:33

Habs probiert und kapiert

Code:

      if(kauf > 0 && offeneorders == 0) 
      { 
        if(Signal == "Long")
        if(Open[0]>Open[1])
        if(ADXPlus>ADXMinus)
        if(ADXPlus>20)
        if(ADXMain>20)
        if(AcDc > AcDc1)
        if(PSAR > PSAR_1)
        if(Open[0] > ma1)
        if(Open[0] < B_Bands_U)
              {
                  LongOrder= OrderSend(Symbol(), OP_BUY, Lots, kauf, 3, Stoppkurs, Kursziel, "11 long Order" , Magic_Number,  0, Green);
                  if (LongOrder>0)
                    {
                        if(OrderSelect(LongOrder,SELECT_BY_TICKET,MODE_TRADES)) Print("Kauforder geöffnet : ",OrderOpenPrice());     
                    }
              }


traderdoc 12.07.17 19:38

Hast Du nun wieder den alten Code genommen?

traderdoc

ehonk 12.07.17 22:31

Nein, das war zum Thema Code posten gemeint.

Allerdings denke ich, das mit den flags habe ich kapiert, bin jedenfalls dabei die Bedingungen um zu schreiben und das Ergebniss sieht besser aus.
Gruß ehonk


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:39 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