MT4/MT5-EA´s für außerbörsliche Orderaufgabe

      Nach genügend negativen Erfahrungen mit dem Outsourcing von Software-Entwicklungen nach Ost-Europa oder Asien übersetze ich "zu 95 % fertig" im Zweifelsfall mit der entgegengesetzten Aussage "Wir haben das Problem noch nicht mal verstanden."

      Bei besseren Schätzungen für "zu 95 % fertig", wie sie ehrlichere und realistischere Software-Entwickler abgeben, gilt das Pareto-Prinzip, dass die letzten wenigen Prozent der Funktionalität den größten Teil des Aufwandes erfordern, meist wird 20 % zu 80 % angegeben, bei Software könnte das Verhältnis noch ungünstiger liegen.

      Für einen EA bedeutet das für die meisten Anwendungen und verwalteten Kapital-Größen, dass er nut gut genug sein muss, um ausreichend profitabel zu arbeiten, aber nicht perfekt, um mit überhöhtem technischen Aufwand noch ein klitze-kleines Extra an Performance heraus zu kitzeln.

      Was RobotTrader zur Software-Entwicklung mitteilt, darf durchaus ernst genommen werden und das Zitat von Krümel trifft auf allerlei Aktivitäten in Foren zu. Sprüche gibt es im Überfluss, vage Ideen und imposante Bildchen auch, klar nachvollziehbare Konzepte eher selten, korrekte Implementationen, egal wovon, stellen eine Ausnahme dar.

      Kommt es doch mal zu einer solchen Implementation, ist sie fast immer das Werk einzelner besonders Engagierter. Echtes Teamwork habe ich in den Trading-Foren bisher kaum gesehen. Das ist ein sehr großes Manko oberflächlicher Raffkes, welches wirklich an einer Sache orientierte Leute nicht hätten, da diese nicht nur parasitär fremde Leistung abzugreifen versuchen würden, sondern sie auch intelligent genug wären, zu verstehen, dass gemeinsame Arbeit immer aus einer Einheit von Geben und Nehmen zugleich besteht.

      Wenn Andere Zehntausende Open-Source-Projekte (inkl. ganzer Betriebs-Systeme) in großen Teams mit langjähriger gemeinsamer und höchst konstruktiver Arbeit an einer Sache schaffen, dann muss sehr deutlich gesagt werden, dass die sogenannten "Trader", die sich in Foren äußern, in dieser Sache in ihrer Gesamtheit ein eher verheerendes Bild abgeben.

      Mit ein Grund dafür ist, dass ein großer Teil der sich in Foren als "Trader" ausgebenden User in Wahrheit gar nicht traden, sondern zu einem eklatanten Anteil unterdurchschnittlich kapitalisierte junge Leute, Erwerbsunfähige, Sozial-Transfer-Empfänger und im bürgerlichen Leben mangels voller Leistungsbereitschaft nicht übermäßig erfolgreiche Leute sind, die aber dafür weit überdurchschnittlich unrealistisch raffgierig und einfältig sind, denen es um die "Nähe zum Finanz-Markt" geht, die also auf irgendeine Weise "dabei" sein wollen, wenn schon weder ihr Kapital noch ihre Skills reichen.

      Diesen Zustand beklagte goso schon vor vielen Jahren nicht nur für dieses Forum, u. a. auch im Zusammenhang mit dem nie zum Leben erweckten Trade-Statistik-Sheet, der eigentlich eine eher überschaubare Aufgabe war.

      Des Weiteren rate ich dringend, im Umgang mit nicht nur in verwaltenden Positionen tätigen Technikern einen eher zurückhaltenden Umgang mit exzessiven Forderungen.

      Oft wird nämlich übersehen, dass Techniker eher keine Rambo-Typen sind, sondern trotz ihrer nach außen oft abweisend wirkenden, häufig nicht weit ausgebauten sozialen Skills - eben weil sie schon mit schwierigen und komplexen technischen Fragen vollauf genug zu tun haben - sensible, kreative Menschen sind, die selbst zur Erbringung von Grundleistungen schon ein überdurchschnittlich intaktes Arbeitsumfeld benötigen. Physisches, organisatorisches und menschlisches Chaos um sie herum senkt ihre Produktivität typischerweise deutlich schneller auf Null als in manch anderen Tätigkeits-Feldern, in denen zuweilen selbst unter unsäglichen Arbeits-Bedingungen noch nutzbare Outputs entstehen.
      @RobotTrader

      Danke für Deine einleitende Geschichte im letzten Beitrag. Dann habe ich den programmiertechnischen Aufwand unterschätzt für einen funktionierenden EA, der einen bei der außerbörslichen Orderaufgabe unterstützt. Tut mir leid wenn ich deshalb falsche Schlüsse gezogen habe. Ich dachte, dass sich der Aufwand für die Programmierung dessen, um was es hier im Thread eigentlich geht, nämlich eines EA für die außerbörsliche Orderaufgabe, der simple Rechenoperationen übernimmt und keine Kerzen, Trends etc. selbst erkennen muss, in Grenzen hält.

      Gleichzeitig finde ich es sehr sehr schade, dass von anderen Usern hier so wenig Feedback kommt, was den eigenen Bedarf an solch einem "kleinen Helferlein" angeht. Hier setzt scheinbar jeder seine Orders um 9:00 Uhr manuell ab. :huh:

      Was ich allerdings überhaupt nicht kapiere, ist Dein Vorwurf, hier würde sich niemand die Hosen anziehen und die hier im Forum bereits zur Verfügung stehenden Informationen in ein Dokument vollständig zusammentragen, damit Du sie umsetzen kannst! Hast Du Dir die Links zu brokerdeal.de, die ich gepostet hatte, überhaupt mal angesehen ? Was erwartest Du konkret was über das dort niedergeschriebene hinaus geht? Das ist das komplette Regelwerk!

      Meinen Willen zur aktiven Mitarbeit kann ich hiermit nur nochmal bekräftigen! Wobei ich eben nicht weiß, wie ich Dir genau helfen kann!? Die Regeln der Strategie sind glasklar. Die Anforderungen, was der EA können/machen soll, sind auch klar. Wie kann man Dir helfen? Was erwartest Du konkret? Ich bin sofort dabei und würde mich freuen, wenn ich irgendwie meinen Beitrag zu einem Projekt leisten kann, dessen Endergebnis ein frei verfügbarer EA ist, der die hier schon wiederholt niedergeschriebenen Dinge kann und nicht mehr als das. Wenn es allerdings darum geht, mühevoll erworbene Erfahrungen von so viel wie möglich aktiven Händlern dieser Strategie umsonst abzufischen, daraus ein eigenes Handelssystem zu bauen und sich dann aus dem Staub zu machen, daran beteilige ich mich nicht! Das geht komplett am Grundgedanken dieses Forums vorbei und ist offensichtlich auch nicht im Sinne des Initiators dieses gesamten Projektes - Michael Hint(man)erleitner - wie wir vor ca. 11 Stunden (s.u.) gelernt haben. In diesem Fall sollte meiner Meinung nach die Diskussion zu diesem Thema hier in diesem Thread beendet werden. Denn der Titel dieses Threads besagt, wir reden hier nicht über ein vollständiges, komplett automatisiertes Handelssystem, sondern über einen EA, der bei der außerbörslichen Orderaufgabe unterstützt!!!
      An der Börse sind nicht diejenigen langfristig erfolgreich, die richtig oder falsch liegen, sondern diejenigen, die Chancen und Risiken vernünftig gegeneinander abwägen.
      Ich stelle mich selbstverständlich für eine vollständige Dokumentation zur Verfügung, nicht nur um den bestehenden Code zu verbessern, sondern vor allem auch wenn sich jemand eine Neuprogrammierung antun möchte. Denn aktuell bin ich eher soweit auf den Ursprungscode zurück zu greifen statt auf die letzte MT5-Variante wegen diverser Schwächen. Käme hoffentlich nächste Woche dazu.

      @RobotTrader

      Eine Automatisierung der Entries wird nicht machbar sein, zumindest nicht für meine Ansprüche. Es lässt sich einfach nicht in Beton gießen, welches Signal an einem Tag das sympathischste ist. Wenn du bei dem Tool für außerbörsliches Ordern helfen möchtest fände ich das großartig. Ich würde dieses allerdings allen Interessierten frei zur Verfügung stellen wollen, schicke ich gleich voraus, sowohl hier im Candletalk als auch auf BrokerDeal.
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!

      janketh schrieb:

      aber dafür dürfte der Aufwand doch um einiges geringer sein!?
      Guten Morgen, nein, da irrst Du (leider). Ich hatte mal einen potentiellen Auftraggeber, der hatte sich mit seinem alten Programmierteam zerstritten und meinte zu mir: Die Software hat jetzt 2 Jahre Entwicklungszeit gehabt und ist zu 95% fertig. Beim Blick in den hochprofessionellen (aber nicht dokumentierten (!)) code) hab' ich damals sinngemäß gesagt: 5% können schnell 200% zusätzlicher Aufwand werden. Ich habe den Auftrag nicht bekommen. 4 Jahre später war er mit der Nachfolgecodebude vor Gericht.....das Gerät hat sämliche Kostenrahmen gesprengt und ist bis heute nicht im Markt...In Kurzform: Zuweilen ist es zeitlich besser, den alten Code wegzuwerfen und ihn neu zu schreiben - ist für mich tägliches Geschäft. Software lebt - weil das Wissen in diesem Bereich jeden Tag wächst - auch nach Jahrzehnten...

      Aber zu diesem Projekt (was natürlich keine 10 Jahre dauert ;-))ist alles gesagt worden, was es zu Softwareentwicklung zu sagen gibt. Gut hat mir folgender Satz von Krümel gefallen, Zitat:
      Warum sollte ich mehr Engagement in ein Projekt stecken, was noch nicht mal die "Auftraggeber" ausreichend zu interessieren scheint ?

      Damit ist alles gesagt....anstatt sich jemand die Hosen anzieht und die hier im Forum bereits zur Verfügung stehenden Informationen in ein Dokument vollständig zusammenträgt, diskutieren wir hier über einen (meinen) Arbeitsstil....der aber weder zur Diskussion noch zur Disposition steht.

      Und Du schreibst ja auch völlig richtig, Zitat: "Eventuell sollte man mal über konkrete Zahlen sprechen und im Gegenzug eine Umfrage starten, wer alles Bedarf hätte!?".

      Stimmt genau! Bis jetzt habe sich hier nicht sonderlich viele gemeldet - weder mit einer Aussage was genau benötigt wird - noch mit dem Willen zur aktiven Mitarbeit. Auch die Frage, ob es hier Member gibt, die sich mit diesem System tatsächlich oberhalb des Kapitalerhalts bewegen, gab es keine Antwort - weder öffentlich noch BM. Nicht einmal der Entwickler (der das tool doch sicher auch benutzt?) scheint ein Interesse am Bugfix zu haben - so what?

      Für mich heißt das: Die Begeisterung befindet sich nahezu auf dem Gefrierpunkt und ist deshalb als Projekt zum Scheitern verurteilt.

      Ich habe am WE bei erdal-cene.de/webinare/ gestöbert. Der beschreibt in einem seiner öffentlichen Webianare ein Kundensystem, welches sehr starke Ähnlichkeit zu dem von Michael hat. Im Unterschied dazu wartet er aber zusätzlich noch auf eine weitere Bestätigung und gibt auch Tipps, wie man Trends erkennen kann. Sehr empfehlenswert! Die Ähnlichkeit könnte darauf hindeuten, dass die Idee grundsätzlich auf jeden Fall erfolgsversprechend ist.
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      @RobotTrader
      Nein, der Ausdruck "TamTam" war eine Anspielung auf deinen Beitrag weiter unten

      RobotTrader schrieb:

      ...Alles machbar. Ich persönlich stecke in diesen EA aber nur dann Zeit (und damit Geld) hinein, wenn einigermaßen gesichert ist, dass man mit dieser Methode auf Dauer ein Gewinn erzielt werden kann - der signifikant über den Kapitalerhalt hinausgehen sollte...

      Bitte nicht falsch verstehen: Auch wenn ich keine tiefgreifenden Programmierkenntnisse habe, so kann ich mir jedoch gut vorstellen, dass die Programmierung von solchen EAs mit unwahrscheinlich viel Aufwand verbunden ist. Dass Du die komplette Entwicklung eines EA, der die Strategie "Swingtrading für Berufstätige" von Michael vollständig automatisiert handeln kann, nicht für "n Appel und n Ei" der Community anbieten kannst, das ist doch völlig klar und versteht sich von selbst. In dieser Konversation vergangenen Freitag ging es jedoch nicht um die komplette Neuentwicklung eines vollständig automatisiert handelnden EA sondern um die Weiterentwicklung des existierenden EA von @Christoph123. Sicher kann ich das nicht reell einschätzen, aber dafür dürfte der Aufwand doch um einiges geringer sein!? Es war ein Versuch von mir, Dich um diese Weiterentwicklung/Vervollständigung zu bitten und zusammen mit der Community eine Lösung für eine entsprechende Vergütung zu finden, wenn dieser fertig entwickelte EA für alle zugänglich gemacht werden würde. Ich darf hierzu an meinen Beitrag vom 14.02.2016 erinnern, der bezüglich dieses Themas leider keine Resonanz fand...

      janketh schrieb:

      RobotTrader schrieb:

      Meine Intention hier im Forum ist eine ganz einfache: Ich will Geld verdienen!...
      Das ist auch durchaus legitim. Dein Prinzip, dass der Systemgeber und der Systemprogrammierer den EA nutzen und sonst niemand, ist aus wirtschaftlichen Gesichtspunkten ebenfalls logisch. Allerdings funktioniert das meiner Meinung nach in diesem Fall hier nur bedingt, da Michael Hinterleitner seine Strategie ja uneigennützig kostenlos öffentlich gemacht hat. Unter diesen Voraussetzungen ordentlich Geld verdienen zu wollen, hat für mich irgendwie einen faden Beigeschmack. Andererseits bin ich der Meinung, dass ein vollumfänglich funktionierender EA keinesfalls kostenlos zur Verfügung gestellt werden soll. Für einen EA, der mir Vorteile verschafft, wäre ich durchaus bereit, Geld zu bezahlen. Das geht sicher anderen hier im Forum ähnlich, auch wenn wir durch das kostenlose Bereitstellen des EA von Christoph123 ein Stück weit verwöhnt sind. Der ist zwar sehr brauchbar, aber eben noch nicht ausgereift.Eventuell sollte man mal über konkrete Zahlen sprechen und im Gegenzug eine Umfrage starten, wer alles Bedarf hätte!?Ein völlig autark handelnder EA wird dabei nicht heraus kommen müssen/können, da der Einstieg bei der Strategie "Swingtrading für Berufstätige" ja diskretionär erfolgt und die Erfahrung und Intuition des Traders eine Rolle spielt.
      An der Börse sind nicht diejenigen langfristig erfolgreich, die richtig oder falsch liegen, sondern diejenigen, die Chancen und Risiken vernünftig gegeneinander abwägen.

      Krümel schrieb:

      Aber ich halte es nicht für besonders motivationsförderlich, den Code hier im Forum zu zerpflücken.
      Dass war der Grund warum ich u.a. Christophs Einverständnis zum mitmachen haben wollte - bin von der Linie nur deshalb abgewichen, weil er zwar online war - sich aber nicht äußert. Wenn gilt Verbesserungsvorschläge == "zerpflücken", dann weiß ich endlich, warum ich so verrupft aussehe *lol*. Ich wäre zum Teil heilfroh (gewesen), wenn man mir in der Vergangenheit Tipps beim coden gegeben hätte - oder sie heute noch gibt....ich habe mit Assembler angefangen, Basic,C,C++,Forth, Pascal, S5,S7,C#........aber es ist so wie überall: Zu viel und nix richtig.....da braucht man Mitstreiter...
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      @NG
      Bei mir rennst Du damit EIGENTLICH offene Türen ein. Ich arbeite nicht umsonst mittlerweile mit Ada (Link: de.wikipedia.org/wiki/Ada_(Programmiersprache) im GNAT Programming Studio (Link: libre.adacore.com/tools/gps/).

      Ich war auch beeindruckt, was Christoph hinbekommen hat, da er hier im Forum als Programmieranfänger aufgeschlagen ist. Es geht also anscheinend, man kann es lernen, wenn man will. Dass der Code natürlich nicht aussieht wie von jemanden, der schon Jahre/Jahrzehnte programmiert, ist mir auch klar. Aber ich halte es nicht für besonders motivationsförderlich, den Code hier im Forum zu zerpflücken. Solche Dinge kann man auch weniger öffentlich besprechen.

      Und zu dem Rest: Warum sollte ich mehr Engagement in ein Projekt stecken, was noch nicht mal die "Auftraggeber" ausreichend zu interessieren scheint ? Die Erfahrung zeigt auch, dass Gut-genug-Lösungen oft erstaunlich lange leben. Wenn 2 Schrägstriche an der hoffentlich richtigen Stelle dazu beitragen können... :whistling:

      Ansonsten gilt: Wer dem Coder ordentliche Ansagen macht, braucht vor dem Traden nicht zu beten.
      Das Hamsterrad sieht nur von innen aus wie eine Karriereleiter.
      Um fair zu sein, sei angemerkt, dass Christoph erst wenige Monate Erfahrung in der Programmierung hat und selber noch ein Lernender ist. Alleine seine begeisterte Beschäftigung damit neben einem ganz anderen Beruf verdient Hochachtung, aber man darf zum momentanen Zeitpunkt von ihm noch keine perfekten Meisterwerke erwarten, die noch etwas mehr Übung und Erfahrung benötigen, bis die Skills so weit gereift sind.

      Er hat aber die Initiative und den Mut gehabt, wenigstens mal etwas in Gang zu setzen und sich nicht mit Komplexen über die eigene Unvollkommenheit im Verhältnis zu den (echten, vermeintlichen oder nur angemaßten) Top-Profis der Welt auf alle Zeit im stillen Kämmerlein bedeckt zu halten.

      Ich habe mich mit ihm in diversen PN über einige Aspekte der Programmierung inkl. Styling und Modularisierung ausgetauscht. Da gibt es durchaus etwas zu tun und ich schätze ihn, einen intelligenten, aufgeschlossenen, strebsamen, jungen Mann, als einen der Letzten ein, die einer gemeinsamen Arbeit an seinem Code erhebliche Widerstände entgegen bringen würden. Gerne würde ich seine explizite Erlaubnis inkl. einer zugrunde gelegten gängigen Lizenz (z. B. GPL o. ä.) im Quellcode und/oder hier im Forum sehen, selbst wenn es nur als eine Formalie erscheinen mag.

      Der beste Weg ist - wie schon öfter erwähnt - eine seriöse kollaborative Arbeit unter Einbeziehung einer Plattform wie GitHub, Bitbucket oder auch einem selbst aufgesetzten Server mit vergleichbarer Software, wie z. B. GitLab. Da kann man dann ohne langwierige Abwägungen jede nützlich erscheinende Änderung ohne jede Gefahr für das Gesamt-Werk spontan einbringen, da alle jemals erzeugten Zwischen-Stände automatisch verwaltet werden. Das führt zu weit schnelleren Ergebnissen, als wenn ein einzelner Entwickler ewig im eigenen Saft schmort, weil er gar nicht die zeitlichen Ressourcen hat, alle noch offenen Punkte zeitnah abzuarbeiten.

      Die permanente Überarbeitung einer jeden Software (im Fach-Jargon Refactoring) führt meist zu immer stärkerer Modularisierung und ermöglicht dann auch das sehr einfache Austauschen einzelner Komponenten sowie deren weitgehend isolierten Test ohne komplexe Wechselwirkungen mit allen anderen Software-Bestandteilen. Dadurch bezieht sich eine Fehler-Behebung oder Optimierung auf immer kleinere Code-Teile und wird damit überschaubarer, schneller machbar und weniger Fehler-anfällig.

      Bezüglich der etwas zähen Bereitstellung des für jede Programmierung von Seite der Nicht-Programmierer einzubringenden Ideen-Teils und deren unmissverständlicher Niederlegung durch diese Dritten hatte ich mich im Post "Maximale Hilfestellung für das Programmier-Vorhaben ist geboten" und der Wiedergabe einer PN an RobotTrader schon geäußert.

      Der Versuch, diese Aufgabe gleich mal en passant mit auf den Programmierer abzuwälzen ist ein Unding, welches RobotTrader völlig zurecht aus Prinzip ablehnt und da auch keinem so charmanten Drängeln nachgeben sollte.

      Es kann ja wohl nicht sein, dass Leute, die die in einer Informations-Gesellschaft so fundamentale Tätigkeit des Schreibens von Programmen, wie es früher einmal das Schreiben einfacher Texte war, schon aus Ignoranz und Bequemlichkeit verweigern, gleich auch noch das Mitdenken und Mitarbeiten an der ursprünglichen fachlichen Aufgabe loswerden wollen.

      Die genaue Differenzierung zwischen erlaubtem Hilfe-Ruf an eine Community und dem Austoben eigener Faulheit ist da bei der Bewertung des berechtigten Interesses schon von Nöten.

      Es ist auch nicht die Aufgabe, nachfolgender Programmierer sich ausschließlich an Hand von Code in eine Sache einzuarbeiten, dazu dient eine Entwickler-Dokumentation (auch wenn diese je nach benutzter Arbeitsweise in den Code integriert werden kann). Selbst für Experten, die Quelltexte Dritter ganz gut verstehen und damit schon eine Reihe von Leuten verblüfft haben, ist es aus Prinzip abzulehnen, Software auf der alleinigen Basis von Quellcode zu kommunizieren, auch wenn das in manchen Sprachen bei guter Machart sogar wirklich ein gangbarer Weg ist.

      Ansonsten gilt, dass purer Code ohne Entwickler- und Nutzer-Dokumentation, Build-System und Test-Rahmenwerk keine Software ist, sondern nur ein eklektisches Sammelsurium von Code-Fragmenten, was hier (Board-Suche nach 'Fragmente') schon weit mehr als nur einmal erwähnt wurde.

      Krümels Vorschlag, einen Code-Teil auszukommentieren, den sie selber begründet mit Vorsicht empfiehlt, ist übrigens im Zeitalter von Quellcode-Verwaltungen auch nicht mehr der letzte Stand, da er letztlich zu Codes voller auskommentierte Teile führt, von denen niemand mehr weiß, warum die noch dort stehen.

      Entweder ist eine Sache
      • wichtig, dann ist sie nicht auszukommentieren,
      • unwichtig, dann ist sie vollständig zu löschen, denn sie kann bei doch wieder auftretendem Bedarf aus einer alten Version in der Quellcode-Verwaltung entnommen werden, oder es sind
      • variable Konfigurations-Daten, die in gesonderte Konfigurations-Files gehören und von dort in der entsprechenden Phase der Bearbeitung (Übersetzung, Zusammenbau des Systems, Test, Auslieferungs-Zubereitung, Laufzeit) ausgelesen werden.
      Das sollte jetzt keine Kritik an Krümel sein, die das möglicherweise besser als ich weiß, sondern nur dem Verständnis für die Leser dienen, die keine langjährig erfahrenen Software-Fachleute sind.
      Ja, das habe ich gesehen, aber bei dem Code wäre sowieso ein Refactoring mehr als nötig, was ich aber nicht vornehmen wollte, da ich Dir nicht in Dein Projekt reinfummeln wollte, sondern nur das dringendste Übel hoffte beseitigen zu können mit so wenig Änderungen wie möglich am Originalcode.
      Das ist aktuell kein Projekt von mir....
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Die Magicnummer könnet man auch in eine globale Variable schreiben und automatisch hochzählen, wenn eine Position eröffnet wurde. Und wenn wir schon dabei sind über den Code zu diskutieren: Die Anzahl der Nachkommastellen des Instruments ist in der Systemvariablen "Digits" enthalten. Die variable "Nachkommastellen" kann entfallen. Die Zeiten selbst kann man als String für die Eingabe etwas besser lesbar machen und dann mit StrToTime wieder in eine Zeit wandeln. Also statt

      input int StartHour = 9;
      input int StartMinute = 10;

      steht da dann

      input string StartHour = "09:10";
      und dann später die zeit mit StrToTime(StartHour) vergleichen....
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Ja, das habe ich gesehen. Aber bei dem Code wäre sowieso ein Refactoring mehr als nötig, was ich aber nicht vornehmen wollte, da ich Dir nicht in Dein Projekt reinfummeln wollte, so Du es nach dem Eklat überhaupt noch angehen möchtest, sondern nur das dringendste Übel hoffte beseitigen zu können mit so wenig Änderungen wie möglich am Originalcode.
      Das Hamsterrad sieht nur von innen aus wie eine Karriereleiter.
      Die Zeile erachte ich auch für unnötig, da stimme ich Dir zu. Aber Du hast gesehen, dass er da in die historischen Daten schaut? Viele einfacher ist doch, bei der Eröffnung eines Trades ein Bit zu setzen ... könnte man in eine Globale Variable schreiben, dann wäre auch das Problem mit dem Neustart weg....

      if(OrderSend(..........
      {
      Print("OrderSend....");
      HeuteKeineOrderMehr = true;
      }

      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Meines Erachtens funktioniert der Ausschalter nicht korrekt, der prüft, ob bereits ein Trade mit der Magicnumber getätigt wurde. Ok, so weit nichts Neues. Ich habe mal kurz drübergeschaut und meines Erachtens sollte es ausreichen, die eine Zeile (s. unten) auszukommentieren und den Code danach neu zu kompilieren. Ich habe es allerdings nicht live getestet, da ich nur nen MQL5 laufen habe.


      //Order wird nur eröffnet wenn der Ask unterhalb von (Target+StopBuySell)/2 ist. [das soll ein zu großes Risiko verhindern]
      //Eine Marketorder wird ausgeführt wenn der Preis über dem StopbuySell liegt (Gap)
      //ansonsten wird eine PendingOrder ausgeführt
      //Order zu einer bestimmten Zeit öffnen
      //Order wird nur erstellt, wenn heute noch keine Order auf diesem Wert offen war
      //und Order wird nur eröffnet wenn diese MAgic noch nie auf diesem Symbol verwendet wurde

      HeuteKeineOrderMehr=false;

      for(int i=0; i<OrdersTotal(); i++)
      {
      if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
      {
      if(Symbol() == OrderSymbol() && OrderMagicNumber() == MagicNumber)
      {
      if(Year() == TimeYear(OrderCloseTime()) && DayOfYear() == TimeDayOfYear(OrderCloseTime()))
      HeuteKeineOrderMehr=true;
      }
      }
      }

      bool placeOrder = 1;
      ...


      Man kann die Zeile entweder löschen (wenn man sich sicher ist, dass das der Fehler war) oder kommentiert sie lediglich aus durch Voranstellen von zwei Schrägstrichen //. Dadurch wird die restliche Zeile hinter den Strichen für den MQL-Compiler quasi "unsichtbar" gemacht. Ich würde letzteres empfehlen, da ich mir nicht wirklich sicher bin, ob das das unerwünschte Verhalten beendet.

      Wichtig ist tatsächlich, für jede neue Order, die Ihr platzieren wollt, eine neue Magicnumber zu nutzen, da die Magicnumber zusammen mit dem Asset-Symbol (Aktienname o.ä.) einen Unique-Identifier bilden. Quasi ein einzigarte ID für diese ganz spezielle Order, die zum Prüfen verwendet wird, ob bereits eine derartige Order platziert ist, noch pending ist oder als Trade bereits geschlossen wurde. Am besten macht man sich dazu eine Exceltabelle, wo man pro Zeile die laufende Magicnumber um 1 hochzählt und daneben den Trade notiert/verlinkt.

      Probieren dürft Ihr natürlich auf eigenes Risiko ;).


      EDIT: Der Code stammt aus der MQL4-Zip-Datei aus dem ersten Posting dieses Threads.
      Das Hamsterrad sieht nur von innen aus wie eine Karriereleiter.

      Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Krümel“ ()

      Yannick schrieb:

      Hallo Fachleute ich brauche Hilfe: mein EA (von Christoph für mt4) stellt nach erreichen des TP sofort eine Folgeorder ins System. Obwohl ich immer eine neue Magic Nummer verwende, nach Anleitung von Christoph.
      Was mache ich falsch, oder ist der EA so programmiert?
      Danke im Voraus.
      Einfach mal zum Verständnis: Die sogenannte EA Nummer braucht der EA, um festzustellen, ob sich gerade noch eine aktive Order im Orderbuch befindet. Wenn keine aktive Order mehr vorhanden ist (weil schon durch TP rausgeflogen), dann sagt der EA: Ok, ist ja keine Position mehr aktiv. Christoph hat daran aber zumindest gedacht - unabhängig davon, ob er diese Funktionalität richtig getestet hat - oder nicht.....die von ihm angedachte Funktion greift nur, wenn Ihr den EA nicht zwischendurch mal schließt - d.h.: Wenn das ohne neue Orderöffnung ablaufen soll, dann muss der PC mit dem aktiven EA rund um die Uhr laufen! Und darf nie neu gestartet werden! Er war ja heute online, hat sich aber nicht gemeldet - zumindestens nicht öffentlich...
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Noch mehr schade finde ich, dass sich niemand findet, der diese Fehler ausmerzen will, ohne großes TamTam zu machen.
      Siehe dazu meinen Post
      MT4/MT5-EA´s für außerbörsliche Orderaufgabe
      das gilt auch für den EA. Wenn Du unter, Zitat: "TamTam" allerdings die ausführliche Beschreibung verstehst, dann, so fürchte ich, wird's nix mit der neuen Version - jedenfalls nicht von meiner Seite aus. ;)
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Hallo @Yannick. Ich bin zwar diesbezüglich alles andere als ein "Fachmann", aber ich kann sagen, dass Du nichts verkehrt machst. Das ist ein Fehler bzw. eine Unvollkommenheit im EA. Diese Folgeorder dürfte aber keine anderen Werte enthalten, als die Anfangsorder. Somit ist das ungefährlich, weil wenn TP erreicht wurde, ist der Kurs ja meilenweit weg vom ehemaligen Einstieg. Alternatives Beispiel, wenn der EA eine nicht ausgeführte Order am selben Tag abends wieder löschen soll, dann macht er zig mal hintereinander eine neue Order auf und löscht sie gleich wieder. Sieht man im Journal. Das ganze ist schade, weil der EA an sich total nützlich ist. Man kann @Christoph123 gar nicht genug danken. Noch mehr schade finde ich, dass sich niemand findet, der diese Fehler ausmerzen will, ohne großes TamTam zu machen. Ich würde das sofort uneigennützig tun. Mir fehlen allerdings die Programmierkenntnisse. So müssen wir weiter damit leben oder die Orders manuell berechnen und eingeben...
      An der Börse sind nicht diejenigen langfristig erfolgreich, die richtig oder falsch liegen, sondern diejenigen, die Chancen und Risiken vernünftig gegeneinander abwägen.

      janketh schrieb:

      Nützlicher für mich persönlich wäre eine abgespecktere Version eines EA (wie der von Christoph nur eben voll funktionstüchtig) den ich zum Zeitpunkt meiner Wahl außerbörslich auf den Chart meiner Wahl ziehe, der mir dann automatisch Einstiegslevel gibt, Positionsgröße, SL und TP berechnet, der zu Börseneröffnung die Order platziert, eine nicht ausgelöste Order am Ende des Tages wieder löscht und den Zeitstopp zuverlässig umsetzt...
      Guten Morgen @all Alles machbar. Ich persönlich stecke in diesen EA aber nur dann Zeit (und damit Geld) hinein, wenn einigermaßen gesichert ist, dass man mit dieser Methode auf Dauer ein Gewinn erzielt werden kann - der signifikant über den Kapitalerhalt hinausgehen sollte. Deswegen wäre es super, wenn hier in diesem Tread Trades dokumentiert werden. Ein ScreenShot zu Beginn des Trades und dann die Auflösung wie es letztlich ausging. Euch alles da draußen viel Erfolg heute - und ein schönes Wochenende :thumbup:
      Never argue with an idiot. They drag you down to their level and then beat you with experience.
      Kom*mu*ni*ka*ti*on Substantiv[die] u.a.: die Verständigung zwischen Menschen mithilfe von Sprache oder Zeichen
      Ich habe (mit Ausnahme von ein paar Brocken Visual Basic für Excel ;) ) keine Programmierkenntnisse. Trotzdem stelle ich es mir sehr schwer vor, den Einstieg für diese Strategie in einen EA fassen zu können. Und wenn, dann weiß ich nicht, ob der bessere Signale findet, als das geschulte Auge des Traders. Klar schaltet man mit einem EA-basierten funktionierenden Handelssystem jegliche menschliche Fehlerquelle und sämtliche Emotionalität im Trading aus. Ich halte aber die Einstiege hier in dieser Strategie für mich so, dass mir die irgendwie einfach gefallen müssen. Gefallen hinsichtlich des Chartbildes der Aktie. Wie ist das Swingverhalten an sich? Kurvt die Aktie schön? Wie sieht der aktuelle Rücklauf im Verhältnis zu den letzten Swings aus? Eine beim durchblättern der Charts gefundene Signalkerze ist für mich immer nur Anlass, mir die Aktie genauer anzuschauen und mir die vorgenannten Fragen zu stellen. Gibt es keine optisch schönen Chartbilder mit 1a-Signalen suche ich nach 2a-Signalen und überlege die zu handeln, auch wenn sie mir nicht optimal gefallen. Ob das alles automatisiert funktioniert!?!? Alles in allem bin ich der Meinung, dass die menschliche Komponente ein nicht unbedingt unerwünschter Teil dieser Strategie ist, zumindest beim Einstieg.

      Nützlicher für mich persönlich wäre eine abgespecktere Version eines EA (wie der von Christoph nur eben voll funktionstüchtig) den ich zum Zeitpunkt meiner Wahl außerbörslich auf den Chart meiner Wahl ziehe, der mir dann automatisch Einstiegslevel gibt, Positionsgröße, SL und TP berechnet, der zu Börseneröffnung die Order platziert, eine nicht ausgelöste Order am Ende des Tages wieder löscht und den Zeitstopp zuverlässig umsetzt...
      An der Börse sind nicht diejenigen langfristig erfolgreich, die richtig oder falsch liegen, sondern diejenigen, die Chancen und Risiken vernünftig gegeneinander abwägen.