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: 43253
Benutzer: 7.221
Aktive Benutzer: 81
Links: 84
Wir begrüßen unseren neuesten Benutzer: Thomas75
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 5 Stunden
- Thomas75
vor 18 Stunden
- JosephTK
vor 2 Tagen
- Hopfen&Mal...
vor 3 Tagen
- frankmicha...
vor einer Woche
- DFeck

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

Empfehlungen

Like Tree1Likes
Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 01.10.15
Mitglied
 
Registriert seit: Sep 2015
Beiträge: 30
skynat befindet sich auf einem aufstrebenden Ast
Standard Signal-Logik gibt nur Short auch bei Long

Guten Morgen,

langsam komme ich mir blöd vor...
Ich habe einen EA auf Basis von drei EMAs geschrieben...nun habe ich das Problem (nebst vielen Anderen) dass er NUR Shortsignale umsetzt...leider aber auch wenn es eigentlich Long sein sollte...Ich vermute den Fehler in der Logik aber finde ihn ums verrecken nicht...

Code:
//+------------------------------------------------------------------+
//|                    Handelssignale generieren                     |
//|                                                                  |
//+------------------------------------------------------------------+
     
    
     if(NeuePeriodeBegonnen==true)
      {
           //LongSignal
           if(Close[1]>EMA1_15min>EMA2_15min>EMA3_15min>EMA4_15min)
            {
               if(Close[1]>EMA1_1h>EMA2_1h>EMA3_1h>EMA4_1h)
                  {
                     if(Close[1]>EMA1_4h>EMA2_4h>EMA3_4h>EMA4_4h)
                        {
                           Longsignal = true;
                           Print ("Long");
                        }
                  }
                  
            }
           else Longsignal = false;
           
           //ShortSignal
           if(Close[1]<EMA1_15min<EMA2_15min<EMA3_15min<EMA4_15min)
            {
               if(Close[1]<EMA1_1h<EMA2_1h<EMA3_1h<EMA4_1h)
                  {
                     if(Close[1]<EMA1_4h<EMA2_4h<EMA3_4h<EMA4_4h)
                        {
                           Shortsignal = true;
                           Print ("Short");
                        }
                        
                  }
                  
            }
           
           else Shortsignal = false;
           
      }
     else 
     {
      Longsignal = false;
      Shortsignal = false;
     }
  #2 (permalink)  
Alt 01.10.15
Mitglied
 
Registriert seit: Sep 2015
Beiträge: 30
skynat befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von skynat Beitrag anzeigen
Guten Morgen,

langsam komme ich mir blöd vor...
Ich habe einen EA auf Basis von drei EMAs geschrieben...nun habe ich das Problem (nebst vielen Anderen) dass er NUR Shortsignale umsetzt...leider aber auch wenn es eigentlich Long sein sollte...Ich vermute den Fehler in der Logik aber finde ihn ums verrecken nicht...

Code:
//+------------------------------------------------------------------+
//|                    Handelssignale generieren                     |
//|                                                                  |
//+------------------------------------------------------------------+
     
    
     if(NeuePeriodeBegonnen==true)
      {
           //LongSignal
           if(Close[1]>EMA1_15min>EMA2_15min>EMA3_15min>EMA4_15min)
            {
               if(Close[1]>EMA1_1h>EMA2_1h>EMA3_1h>EMA4_1h)
                  {
                     if(Close[1]>EMA1_4h>EMA2_4h>EMA3_4h>EMA4_4h)
                        {
                           Longsignal = true;
                           Print ("Long");
                        }
                  }
                  
            }
           else Longsignal = false;
           
           //ShortSignal
           if(Close[1]<EMA1_15min<EMA2_15min<EMA3_15min<EMA4_15min)
            {
               if(Close[1]<EMA1_1h<EMA2_1h<EMA3_1h<EMA4_1h)
                  {
                     if(Close[1]<EMA1_4h<EMA2_4h<EMA3_4h<EMA4_4h)
                        {
                           Shortsignal = true;
                           Print ("Short");
                        }
                        
                  }
                  
            }
           
           else Shortsignal = false;
           
      }
     else 
     {
      Longsignal = false;
      Shortsignal = false;
     }
Okay ich finde den Editor nicht...Leider hat sich meine HD eben verabschiedet... Muss wohl noch einmal schreiben

Gesendet von meinem D6603 mit Tapatalk
  #3 (permalink)  
Alt 02.10.15
Mitglied
 
Registriert seit: Jun 2011
Ort: Minsk, Weißrussland
Beiträge: 87
Bobs befindet sich auf einem aufstrebenden Ast
Standard

Vielleicht im EA Optionen \ Allgemeine einfach "Short only" Positionen ausgewählt?
  #4 (permalink)  
Alt 02.10.15
Premium Mitglied
 
Registriert seit: Apr 2015
Beiträge: 422
Raul0 befindet sich auf einem aufstrebenden Ast
Standard

Was willst Du damit überhaupt sagen?

Zitat:
Close[1]>EMA1_15min>EMA2_15min>EMA3_15min>EMA4_15min
Soll nun Close größer als EMA1 sein und Close größer als EMA2 ..oder ist Close größer als EMA1 und EMA1 größer EMA2 ...?
  #5 (permalink)  
Alt 02.10.15
Mitglied
 
Registriert seit: Sep 2015
Beiträge: 30
skynat befindet sich auf einem aufstrebenden Ast
Standard

Ja ich habe es schon ausbaldowert. Ich wollte es zu genau und darum konnte es nicht funktionieren. Habe es jetzt auf reihe und kann morgen gern mal die vorläufige Version Posten. Werde das noch umbauen sodass der ea eine Unterstützung darstellt und kein eigenständiger ea der selbst handelt. Habe in den backtests gesehen dass zu viele fehltrades zustande kommen.

Gesendet von meinem D6603 mit Tapatalk
  #6 (permalink)  
Alt 03.10.15
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Raul0 Beitrag anzeigen
Was willst Du damit überhaupt sagen?
Soll nun Close größer als EMA1 sein und Close größer als EMA2 ..oder ist Close größer als EMA1 und EMA1 größer EMA2 ...?
Die dahinterliegende mathemathische Logik ist eineindeutig, denn in dieser Vergleichskette liegt absteigend das größte Glied links, also Close.

Ob das tradetechnisch sinnvoll ist, wäre dann aber eine ganz andere Frage.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #7 (permalink)  
Alt 03.10.15
Mitglied
 
Registriert seit: Sep 2015
Beiträge: 30
skynat befindet sich auf einem aufstrebenden Ast
Standard

Ist es nicht. Habe ich ja nun schon gemerkt xD

Gesendet von meinem D6603 mit Tapatalk
  #8 (permalink)  
Alt 03.10.15
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.733
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von skynat Beitrag anzeigen
Ist es nicht. Habe ich ja nun schon gemerkt xD

Gesendet von meinem D6603 mit Tapatalk
Mein vorheriger Kommentar bezog sich hauptsächlich auf den unnötigen Einwurf von @Raul0, denn die mathematische Logik läßt keine! Interpretation zu.
Wenn es so nicht gewollt ist, ist das eine andere Baustelle.

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.
  #9 (permalink)  
Alt 03.10.15
Premium Mitglied
 
Registriert seit: Apr 2015
Beiträge: 422
Raul0 befindet sich auf einem aufstrebenden Ast
Standard

So unnötig war der Einwurf nicht, da ich mit genau solch einem Aufbau Probleme hatte:

PHP-Code:
EMA1_15min EMA2_15min EMA3_15min EMA4_15min 
Der EA funktionierte nach einer Änderung:

PHP-Code:
EMA1_15min EMA2_15min && EMA2_15min EMA3_15min && EMA3_15min EMA4_15min 
Die Logik bleibt die gleiche, jedoch nahm der EA seine Funktion anschließend war.

Wie ist es nun richtig?
  #10 (permalink)  
Alt 03.10.15
Mitglied
 
Registriert seit: Sep 2015
Beiträge: 30
skynat befindet sich auf einem aufstrebenden Ast
Standard

Raul0

deine zweite Variante habe ich dann auch umgesetzt - allerdings in Klammern der übersicht halber für mich.

das Problem bei mir lag scheinbar einfach darin dass ich metatrader auf einem mac ausgeführt habe und wine dadurch probleme gemacht hat.

später hat er keine trades umgesetzt weil ich die vorgegebenen regeln für drei zeitcharts gleichzeitig anwenden wollte um den einstieg zu bekommen. dies stellte sich allerdings als schwieriger heraus als gedacht - vielleicht überarbeite ich das nochmal.



am dienstag besitze ich dann wieder einen windows pc und kann dann auch mal die datei hochladen die nun soweit ich das möchte funktioniert (nicht wundern dort ist noch eine menge unnötiges zeug auskommentiert)

ich würde den EA nun gern so umrüsten, dass er mich bei meinen trades lediglich unterstützt - sprich mir signale gibt und meinen SL nachzieht so wie vorgesehen

das thema mit dem einstieg werde ich dann nochmal überdenken und ggf anpassen. wenn die datei hochgeladen ist steht es euch frei diese zu nutzen oder zu verändern/verbessern - letzteres ist sicher notwendig da ich mit dem programmieren (damals moderat c++ programmiert) erst nach jahren wieder angefangen habe

in diesem zuge würde ich mich über vorschläge und anregungen freuen

//edit
ich habe die backupdatei noch gefunden und hänge sie an
Angehängte Dateien
Dateityp: ex4 Triple EMA.ex4 (9,0 KB, 0x aufgerufen)
Dateityp: mq4 Triple EMA.mq4 (11,9 KB, 3x aufgerufen)
Thema geschlossen

Lesezeichen

Stichworte
long, mql4, programmierung, programmierung metatrader, short

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 16:43 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.
-----------------------------------------------------------------------------------------------------------------------------