Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4
Startseite Registrieren Hilfe Community Kalender Heutige Beiträge Suchen

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4978
Beiträge: 43260
Benutzer: 7.224
Aktive Benutzer: 74
Links: 84
Wir begrüßen unseren neuesten Benutzer: Sundaytrader
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 18 Stunden
- Sundaytrad...
vor einem Tag
- TS_6
vor 3 Tagen
- Mane
vor 2 Wochen
- AlbertZiz
vor 2 Wochen
- michak

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

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #11 (permalink)  
Alt 28.02.21
Neues Mitglied
 
Registriert seit: Dec 2020
Beiträge: 11
Gaydon befindet sich auf einem aufstrebenden Ast
Standard

Vielen Dank für deine Antwort Indikator-Trading.

Da war der klassische Anfängerfehler wieder.
Also Buy Positons sind Bid Preise und Short Positonen sind Ask Preise.

Ich weiß nicht warum aber mein Programm mit
Code:
if(Ausstieg_5Ml>(Bid+Takeprofit_Abstand))
nicht zu recht kam, daher habe ich
Code:
if(Bid>(Ausstieg_5Ml-Takeprofit_Abstand))
was ja nichts anderes ist (für mich, aber Okey) und nun funktioniert es. Ausser im Tester da kommt immer noch eine Fehler Meldung aber im live Test nicht.?

Aber nun zurück zur Ursprungsfrage, kontrolliere ob ein TakeProfit gesetzt ist.
Nun nochmal mein jetziges Programm was funktioniert.
Code:
void Ausstieg()
{
   double Ausstieg_Indikator_long = iLow(_Symbol,PERIOD_M5,0);
   double Takeprofit_Abstand = MarketInfo(_Symbol,MODE_STOPLEVEL);
   double SMA_21 = iMA(_Symbol,PERIOD_M5,21,0,MODE_SMA,PRICE_CLOSE,0);
   double MACD_15M = iMACD(_Symbol,PERIOD_M15,12,26,9,PRICE_CLOSE,0,0);
   double MACD_15M1 = iMACD(_Symbol,PERIOD_M15,12,26,9,PRICE_CLOSE,0,1);
      {
      for (int b=OrdersTotal()-1;b>=0;b--)
         {
         if(OrderSelect(b,SELECT_BY_POS,MODE_TRADES))
            {
            if(OrderSymbol()==Symbol())
               {
               if(OrderType()==OP_BUY)
                  {
                  if((Bid>OrderStopLoss())&&(OrderTakeProfit()==0))
                     {                  
                     if((iOpen(_Symbol,PERIOD_M5,0)>SMA_21)&&(MACD_15M<=MACD_15M1))
                        {
                        double Ausstieg_5Ml=0;
                        int l=0;
                        for(l=0;(iLow(_Symbol,PERIOD_M5,l)<SMA_21);l++)   
                           {
                           Ausstieg_5Ml=iOpen(_Symbol,PERIOD_M5,l);
                              {
                              if(Bid>(Ausstieg_5Ml-Takeprofit_Abstand))
                                 {
                                 OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),Ausstieg_5Ml,0,0);
                                 SendNotification("OrderModified");
                                 Print("OrderModified", Ausstieg_5Ml);
              }}}}}}}}}}}
Aber warum bekomme ich Unendlich viele Benachrichtigungen, wenn der TakeProfit gesetzt wurde?
Nach meinem Verständnis ist doch das Programm mit der Änderung des TakeProfit einmal durchgelaufen und damit TakeProfit!=0 somit dürfte doch nicht nochmal eine Benachrichtigung geschickt werden oder irgendetwas gemacht werden (das Passiert ja auch nicht, es kommen nur Benachrichtigungen).
Andere Frage ist, das kann ich aber auch selber Testen, ich benötige doch eigentlich keine Schleife oder?
Und kann ich also mit OrderModify den TakeProfit wieder auf 0 setzen, mit TakeProfit()=0, an der richtigen stelle?

wieder mal vielen Dank für eure Antworten

Noch eine Frage, das Programm läuft ja unter OnTick, wenn ich nun den TakeProfit wieder händisch auf 0 setzt müsste doch das Programm wieder anfangen zu Kontrollieren, was es aber nicht machte. Gib es dafür einen Grund?

Geändert von Gaydon (28.02.21 um 11:44 Uhr)
Thema geschlossen

Lesezeichen


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 +2. Es ist jetzt 12:56 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.
-----------------------------------------------------------------------------------------------------------------------------