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: 3823
Beiträge: 36902
Benutzer: 6.071
Aktive Benutzer: 494
Links: 80
Wir begrüßen unseren neuesten Benutzer: Roerich
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 11 Stunden
- Roerich
vor 11 Stunden
- John_Liver...
vor 11 Stunden
- harry1001
vor einem Tag
- supadog
vor 2 Tagen
- POCJonah7

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 33
Gesamt: 34
Team: 0
Team:  
Benutzer:  ForexMax
Freunde anzeigen

Empfehlungen

Werbung

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #41 (permalink)  
Alt 25.06.15
Mitglied
 
Registriert seit: Sep 2012
Beiträge: 224
pako befindet sich auf einem aufstrebenden Ast
Standard

MarketInfo(Symbol(),MODE_STOPLEVEL) geprüft?
  #42 (permalink)  
Alt 25.06.15
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.873
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von traderdoc Beitrag anzeigen
Nun lass ihn mal ein wenig mitmachen.

STOPLOSS*Point() und TAKEPROFIT*Point()
Außerdem wieder diese unsaubere Sache mit dem Ignorieren der 5-DigitBroker.
Das würde bei ihm nach Deiner Funktion und den Variablenwerten von StopLoss = 25 und TakeProfit = 20 zu realen Werten von 2,5 und 2,0 Pips führen. Da kann es schon wieder Probleme mit dem StopLevel geben.

traderdoc
@pako:MarketInfo(Symbol(),MODE_STOPLEVEL) geprüft?

Na das habe ich doch schon in Post #28 geschrieben!!!, wenn er seine "20" Pips nimmt und ohne Berücksichtigung des 5Digit das in Deine Funktion einsetzt.
Aber Du hast ja immer geschrieben 1 Pip = 1Pip, auch in Afrika.
Ist zwar formal, wie es da steht, richtig aber eben doch im Endeffekt falsch!
Und daran wird er scheitern, solange er nicht die 5Digit-Verhältnisse berücksichtigt.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #43 (permalink)  
Alt 25.06.15
Mitglied
 
Registriert seit: Sep 2012
Beiträge: 224
pako befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von traderdoc Beitrag anzeigen
@pako:MarketInfo(Symbol(),MODE_STOPLEVEL) geprüft?

Na das habe ich doch schon in Post #28 geschrieben!!!, wenn er seine "20" Pips nimmt und ohne Berücksichtigung des 5Digit das in Deine Funktion einsetzt.
Aber Du hast ja immer geschrieben 1 Pip = 1Pip, auch in Afrika.
Ist zwar formal, wie es da steht, richtig aber eben doch im Endeffekt falsch!
Und daran wird er scheitern, solange er nicht die 5Digit-Verhältnisse berücksichtigt.

traderdoc
ich habe SL 50 pip nur geschrieben um die funktion zu prüfen.
Ohne den kompletten Code kann man sowieso nichts sagen.
Der Heilige Gral wahrscheinlich
  #44 (permalink)  
Alt 25.06.15
Neues Mitglied
 
Registriert seit: Mar 2015
Ort: Berlin
Beiträge: 28
saro2018 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von traderdoc Beitrag anzeigen
@pako:MarketInfo(Symbol(),MODE_STOPLEVEL) geprüft?

Na das habe ich doch schon in Post #28 geschrieben!!!, wenn er seine "20" Pips nimmt und ohne Berücksichtigung des 5Digit das in Deine Funktion einsetzt.
Aber Du hast ja immer geschrieben 1 Pip = 1Pip, auch in Afrika.
Ist zwar formal, wie es da steht, richtig aber eben doch im Endeffekt falsch!
Und daran wird er scheitern, solange er nicht die 5Digit-Verhältnisse berücksichtigt.

traderdoc
Guten Abend, ich habe soweit das mit dem SL und TP hinbekommen, sprich er führt eine Order aus. Allerdings wenn ich im Journal schaue, durchläuft er gar nicht die Schleife. Warum komm ich dann zu der Annahme, dass er den SL und TP nimmt, allerdings die Schleife nicht bis zum Ende durchläuft? Weil der SL und TP von jeweils 10 Pips eingestellt werden, nachdem ein Trade im Verlust geschlossen wurde.
Jetzt gibt es allerdings eine neue Schwierigkeit, undzwar will ich dass er nur von den Ersten Bedinungen eine Gegenposition falls Verlust öffnet. Dafür habe ich mir überlegt im Comment der Order etwas zu schreiben und dies dann in die Bedinung für einen Verlust mit einzubetten. Das macht allerdings noch Probleme. Des Weiteren geht er im Gewinnfall nicht mehr zurück zu der oberen Gewinnbedinung. Woran könnte das liegen?

Gruß
Aron

Hier der Code:
Code:
if (closedProfit < 0 && (lastcomment=="Buy St" || lastcomment=="Sell St")) 
    Print("8");
    double STOPLOSS = 100;
    double TAKEPROFIT = 100;
  //if(total < 1) 
  {          //was soll total sein???
      if (lastorder == 0) {
      Print("Gegenposi");
         ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 2, Bid + (STOPLOSS*Point), Bid - (TAKEPROFIT*Point), "abgesichert", mymagicnumber);
          if(ticket>0)
        {
        if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
        }
        else Print("Error opening SELL order : ",GetLastError());
        return(0);       
      }
      if (lastorder == 1)
      {
      Print("Gegenposition Buy");
      ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 2,Ask - (STOPLOSS*Point), Ask + (TAKEPROFIT*Point), "abgescihert", mymagicnumber);
      if(ticket>0)
        {
        if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
        }
        else Print("Error opening BUY order : ",GetLastError());
        return(0);
          
      } 

   }
  #45 (permalink)  
Alt 25.06.15
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 1.873
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von pako Beitrag anzeigen
ich habe SL 50 pip nur geschrieben um die funktion zu prüfen.
Ohne den kompletten Code kann man sowieso nichts sagen.
Der Heilige Gral wahrscheinlich
Ach @pako, jetzt rede Dich nicht raus!
Ohne 5Digit-Prüfung ist in der Regel jeder EA nichts wert.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #46 (permalink)  
Alt 26.06.15
Mitglied
 
Registriert seit: Sep 2012
Beiträge: 224
pako befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von saro2018 Beitrag anzeigen
....
Code:
//+------------------------------------------------------------------+
//|                                                     saro2018.mq4 |
//+------------------------------------------------------------------+
#property strict
int StopLoss   =10;
int TakeProfit =10;
int Slippage    =2;
double Lot     =0.01;
int LastTyp=-1;
int Magic=0;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(Digits()==5 || Digits()==3)//+------------------------------------------------------------------+
     {                           //| @traderdoc prüfung                                               |
      TakeProfit*=10;            //+------------------------------------------------------------------+
      StopLoss*=10;
      Slippage *=10;
     }
     
     //prüfung
     //prüfung
     //prüfung
     //prüfung
     //u.s.w
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
     //prüfung
     //prüfung
     //prüfung
     //prüfung
     //u.s.w
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
     //prüfung
     //prüfung
     //prüfung
     //prüfung
     //u.s.w
//---
   if(OrdersTotal()==0)
     {
      if(isCloseLastPosByStopLoss())
        {
         if(LastTyp==0)
           {
            if(OrderSend(Symbol(),OP_SELL,Lot,Bid,Slippage,NormalizeDouble(OrderOpenPrice()+StopLoss*Point(),Digits()),NormalizeDouble(OrderOpenPrice()-TakeProfit*Point(),Digits()),"Sell",Magic,0,clrGreen)) Print("OK Sell");
            else Print(GetLastError());
           }
         if(LastTyp==1)
           {
            if(OrderSend(Symbol(),OP_BUY,Lot,Ask,Slippage,NormalizeDouble(OrderOpenPrice()-StopLoss*Point(),Digits()),NormalizeDouble(OrderOpenPrice()+TakeProfit*Point(),Digits()),"Buy",Magic,0,clrGreen)) Print("OK Buy");
            else Print(GetLastError());
           }
        }
     }
  }
//+------------------------------------------------------------------+
bool isCloseLastPosByStopLoss()
  {
   int      Pos=-1;
   datetime Zeit=0;
   for(int i=OrdersHistoryTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()<2)
              {
               if(Zeit<OrderCloseTime())
                 {
                  Zeit=OrderCloseTime();
                  Pos=i;
                  LastTyp=OrderType();
                 }
              }
           }
        }
     }
   if(OrderSelect(Pos,SELECT_BY_POS,MODE_HISTORY))
     {
      if(NormalizeDouble(OrderClosePrice(),5)==NormalizeDouble(OrderStopLoss(),5))
        {
         return(True);
        }
     }
   return(False);
  }
//+------------------------------------------------------------------+
prüfen MarketInfo(Symbol(),MODE_STOPLEVEL)
prüfen, erlaubt Brocker sofort SL,TP senden
oder SL,TP=0, und dann OrderModify

nicht vergessen "traderdoc prüfung" sonst beißt wieder

Geändert von pako (26.06.15 um 11:02 Uhr)
  #47 (permalink)  
Alt 26.06.15
Neues Mitglied
 
Registriert seit: Mar 2015
Ort: Berlin
Beiträge: 28
saro2018 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von traderdoc Beitrag anzeigen
Ach @pako, jetzt rede Dich nicht raus!
Ohne 5Digit-Prüfung ist in der Regel jeder EA nichts wert.

traderdoc
Woran könnte das liegen, dass dieser Fehler jetzt auftritt?
Er durchläuft die Schleife nicht mehr, das heißt er benutzt zwar die Werte für den SL und TP im Verlustfall allerdings durchläuft er dann die Schleife nicht.

Gruß
Aron
  #48 (permalink)  
Alt 26.06.15
Mitglied
 
Registriert seit: Sep 2012
Beiträge: 224
pako befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von saro2018 Beitrag anzeigen
Woran könnte das liegen, dass dieser Fehler jetzt auftritt?
Er durchläuft die Schleife nicht mehr, das heißt er benutzt zwar die Werte für den SL und TP im Verlustfall allerdings durchläuft er dann die Schleife nicht.

Gruß
Aron
logische Fehler lieber im Debugger suchen
  #49 (permalink)  
Alt 26.06.15
Neues Mitglied
 
Registriert seit: Mar 2015
Ort: Berlin
Beiträge: 28
saro2018 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von pako Beitrag anzeigen
logische Fehler lieber im Debugger suchen
Hab im Kompiler keine Fehler gefunden meinst du das? Oder im Jornal?
  #50 (permalink)  
Alt 26.06.15
Mitglied
 
Registriert seit: Sep 2012
Beiträge: 224
pako befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von saro2018 Beitrag anzeigen
Hab im Kompiler keine Fehler gefunden meinst du das? Oder im Jornal?
im Debugger


EA Öffne neue Order gleich nachdem letzte Oder ausgestoppt wurde
Thema geschlossen

Lesezeichen

Stichworte
mql4, oco, order, order öffnen, programmierung, programmierung metatrader


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 02:50 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.
-----------------------------------------------------------------------------------------------------------------------------