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: 44345
Benutzer: 7.219
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Hopfen&Malz
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor einem Tag
- Hopfen&Mal...
vor 2 Tagen
- frankmicha...
vor einer Woche
- DFeck
vor einer Woche
- bb1107
vor 2 Wochen
- rg-trader

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

Empfehlungen

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: 2.733
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: 2.733
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 http://www.expert-advisor.com/forum/...html#post30282
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 15:05 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.
-----------------------------------------------------------------------------------------------------------------------------