Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

eMT4StatsCopier

Geschrieben

So, hier nun die beiden Teile des EAs.

 

Die .NET Anwendung ist als komplette Solution (für VS 2008 Express / C#) verpackt. Für die Nicht-Entwickler befindet sich die ausführbare Datei im Unterverzeichnis bin\Release. Vorraussetzung ist das .NET Framework 3.5.

 

Zu den Dingen, mit denen ich überhaupt nicht zufrieden bin, gehört an erster Stelle die Extraktion der Daten aus dem HTML. Das ganze funktioniert derzeit über reguläre Ausdrücke. Mein persönliches Ziel ist es, einen DOM-Parser über's HTML laufen zu lassen. Später können dann auch abgeschlossene Trades analysiert werden, damit die im eigenen Account noch geöffneten Trades nicht unbedingt blind geschlossen werden.

 

Vieles ist jetzt einfach nur quick & dirty gelöst, aber es scheint zu funktionieren :beee:

 

Die Kopie vom Grinder hatte eben innerhalb von 24h mit gerademal 2 Trades 10% Gewinn geschafft. :LLL: Die Position die in der Kopie jetzt noch offen ist und grad anfängt kräftig Verluste zu sammeln, ist beim echten EA wahrscheinlich längst geschlossen.

 

eMT4StatsCopier.mq4

MT4StatsCopierWPF.zip

Featured Replies

Geschrieben
So, hier nun die beiden Teile des EAs.
:LLL:

:beee:

*.mq4 Datei einbinden ist klar, aber was und wie wird mit den Dateien aus der *.zip gemacht? :LLL:

Geschrieben
  • Autor
*.mq4 Datei einbinden ist klar, aber was und wie wird mit den Dateien aus der *.zip gemacht?

 

Für die Nicht-Entwickler befindet sich die ausführbare Datei im Unterverzeichnis bin\Release :LLL:

Also einfach die MT4StatsCopierWPF.exe ausführen.

Geschrieben
  • Autor
Zu den Dingen, mit denen ich überhaupt nicht zufrieden bin, gehört an erster Stelle die Extraktion der Daten aus dem HTML. Das ganze funktioniert derzeit über reguläre Ausdrücke. Mein persönliches Ziel ist es, einen DOM-Parser über's HTML laufen zu lassen.

 

Geschafft. Der Code zum Parsen ist jetzt entschieden übersichtlicher und der Prozess des Parsens performanter.

 

Der Endanwender wird den Performanceunterschied kaum merken, hat in der neuen Version aber ein schönes Icon für die Anwendung.

 

Falls irgendwas bei der Verwendung noch unklar ist, bitte Bescheid geben. Hatte eben 'n kleines Video vorbereitet, war am Ende aber doch zu viel (stolze 450 MB) und so lang kein Bedarf besteht, fehlt mir die Motivation alles nochmal aufzunehmen :LLL:

 

MT4StatsCopierWPF.zip

Bearbeitet von Buthus

Geschrieben
Der Endanwender wird den Performanceunterschied kaum merken, hat in der neuen Version aber ein schönes Icon für die Anwendung.

 

@Whipsaw:

Am Slang erkennt man den Fachmann. :LLL:

 

 

@Buthus:

Good job :LLL:

Geschrieben
  • Autor
@Buthus - wie ist es, wenn Du die Videos gleich nach *.swf renderst?

 

Hatte ich anfangs, bis ich gemerkt hab, dass a) youtube mit swf nichts anfangen kann und b) mir nicht klar ist, wie ich's ohne youtube im Forum einbetten kann.

Geschrieben
Hatte ich anfangs, bis ich gemerkt hab, dass a) youtube mit swf nichts anfangen kann und b) mir nicht klar ist, wie ich's ohne youtube im Forum einbetten kann.

 

 

ok, dann ist es nachvollziehbar.

Ich war bisher immer der Meinung, Youtube würde alle gängigen Mediafiles konvertieren können. Naja, wieder was dazu gelernt.

 

 

 

PS:

@all - bei Trainingsvideos/ Screencasts wie dem von Buthus, stellen wir gern Space auf dem Server bereit.

Geschrieben

Hatte leider noch nicht die Zeit mir das Ding genau anzusehen, aber nach dem was du schreibst und wie es klingt bin ich jetzt schon begeistert! :LLL:

 

Bin eigentlich nicht in C# daheim, aber vielleicht werd ich trotzdem auch in den Code reinschnüffeln. Meinst könnte man es als dll umformulieren, damit der EA alles macht?

Wär für den Endanwender praktischer von der Handhabung her (siehe Frage von ecart) und die Angst vor unbekannten *.exe wär auch gebannt ;)

Geschrieben
  • Autor
Bin eigentlich nicht in C# daheim, aber vielleicht werd ich trotzdem auch in den Code reinschnüffeln. Meinst könnte man es als dll umformulieren, damit der EA alles macht?

Wär für den Endanwender praktischer von der Handhabung her (siehe Frage von ecart) und die Angst vor unbekannten *.exe wär auch gebannt ;)

 

Ist wahrscheinlich machbar, allerdings sind die paar Versuche, die ich gestartet hab, .NET mit MT4 zu verheiraten, kläglich gescheitert. Und mit nativem C++ hab ich seit Einführung des .NET FX fast nichts mehr zu tun gehabt, von daher fällt eine Kovertierung C#/C++ meinerseits schonmal flach. Ich find' es aber auch vorteilhaft, dass der EA einfach nur CSV Dateien auswertet; so lassen sich die Daten prinzipiell von überall herholen (also nicht mehr nur beschränkt auf die MT4 Stats).

 

Folgendes Szenario wäre denkbar: Herr A schreibt einen Blog mit täglichen Empfehlungen (hier einsteigen, da austeigen, hier SL, da TP, etc.). Herr B liest täglich diesen Blog und handelt seit längerer Zeit erfolgreich nach diesen Empfehlungen. Die externe Anwendung könnte nun permanent den Blog auswerten und entsprechende Limit/Stop Orders platzieren.

 

Natürlich kann man dann auch dieses Szenario direkt im EA oder einer DLL abbilden, nur wird das meiner Meinung nach zu schnell zu komplex. So eine kleine .NET Anwendung ist da entschieden schneller erweitert.

 

Und noch ein Punkt, der mir grad einfällt: Da die Anwendung ja als Verteiler fungiert, also auch mehrere lokale Accounts bedienen kann, kann man da noch die Anzahl der Web-Anfragen optimieren. Wenn ich z.B. den Forex Grinder auf 3 meiner Konten kopiert haben will, reicht eine Anfrage aus. Bei MT4 Stats mag das bedingt durch das Aktualisierungsinterval noch unkritisch sein, hat man aber mal eine andere Quelle, die entsprechende Daten entschieden schneller bereitstellt, ist die Anzahl der Web-Anfragen schon ein kritischer Punkt.

Geschrieben

WEbzugriffe und das zusammenfassen mehrerer "Kopierer" is ein guter Punkt. Ich denk für die "Profianwendung" ist das eigenständige Tool die beste Lösung.

 

Aber seit ich hier bei Tom-Next bin, denk ich schon oft in der "wie muss man es machen, sodass man dem Endanwender so wenig wie möglich erklären muss" Schiene. Und da wär so ein kleiner handlicher EA, wo man als Parameter nur den nickname von mt4stats angibt und den Rest macht der EA alleine per dll etc. schon praktisch.

aber is nur eine Idee, wenn ich die Zeit finde schau ichs mir gern selber mal an, bin ja mehr im alten C/C++ daheim und wollt schon lange mal rausfinden wie das mit den DLLs wirklich läuft :LLL:

Geschrieben
Ist wahrscheinlich machbar, allerdings sind die paar Versuche, die ich gestartet hab, .NET mit MT4 zu verheiraten, kläglich gescheitert. Und mit nativem C++ hab ich seit Einführung des .NET FX fast nichts mehr zu tun gehabt, von daher fällt eine Kovertierung C#/C++ meinerseits schonmal flach.

Ja, ich hab auch nur gelesen, dass MT den gemanagten Code von C# nicht haben mag... :LLL: Hab's aber selbst noch nie versucht.

 

Muss man wahrscheinlich nen C++-Wrapper draußen rumschreiben so wie in dem ic.arrow.right.png Tutorial beschrieben.

Geschrieben
  • Autor
Ja, ich hab auch nur gelesen, dass MT den gemanagten Code von C# nicht haben mag... :LLL: Hab's aber selbst noch nie versucht.

 

Muss man wahrscheinlich nen C++-Wrapper draußen rumschreiben so wie in dem ic.arrow.right.png Tutorial beschrieben.

 

Hab ich auch probiert, funktioniert aber auch mit Wrappern so gut wie gar nicht. Beschränkt man sich auf einfache Dinge, wie z.B. ein paar mathematische Funktionen, dann klappt's mit Wrappern, aber dafür brauch ich kein .NET. Fängt man mit komplexeren Dingen, wie z.B. WebRequests an, stürzt MT4 beim Laden der DLL ab.

 

Aber ich bin ja Geduldsmensch :LLL: - MT5 wird kommen und alles wird gut :LLL:

Geschrieben
MT5 wird kommen und alles wird gut :LLL:

Aber das versprechen die Entwickler doch schon seit 10 Jahren, oder ? Langsam glaub' ich nicht mehr dran. :LLL:

Geschrieben

@Buthus

Erstmal Hut ab für das, was Du da gebaut hast :sad:.

Ist es möglich, dass Du ein kurzes Tutorial schreibst, wie man ein öffentliches Statement in ein eigenes Demokonto bekommt. Aus dem (leider tonlosen) Video werde ich nicht ganz schlau und nur den EA und die exe ausführen wird denke ich mal nicht reichen :laugh:.

Geschrieben
  • Autor
...und nur den EA und die exe ausführen wird denke ich mal nicht reichen :laugh:.

 

Doch :sad:

 

Wie im Video zu sehen wählst Du in der externen Applikation zuerst das Verzeichnis aus, in dem Du MetaTrader installiert hast. Anschließend gibst Du den Namen des Accounts ein, den Du kopiert haben möchtest und klickst dann auf Hinzufügen.

 

EA-Parameter:

  • Name
    Name des zu kopierenden Kontos
  • MaxDeviation
    Maximale Abweichung vom Preis; Öffnet der EA auf dem zu kopierenden Konto eine neue Position (Market Order), wird die Kopie in der Regel nicht mehr den gleichen Preis bekommen. Mit dem Parameter MaxDeviation legst Du fest, bis zu welcher Preisabweichung (in Pips/Punkten) in der Kopie trotzdem noch eine Market Order abgeschickt werden soll.
    • Beispiel
      MaxDeviation = 5
      Das Original öffnet bei 1.4137 eine Long Position auf EUR/USD. Bis diese Position in den Stats erscheint vergehen einige Minuten. Wenn der MT4StatsCopier diese Position dann erfasst hat, wird im eigenen Account eine Market Order platziert, wenn der Preis sich im Bereich 0 - 1.4142 bewegt. Hat der Preis bereits die 1.4142 bereits überschritten, wird eine Limit Buy Order platziert.

    [*]CloseOrders

    Gibt an, ob Positionen, sobald sie im Original geschlossen wurden, auch in der Kopie geschlossen werden sollen.

     

    [*]Magic

    Magic Number für alle geöffneten Positionen/Orders; diese sollte sich für alle kopierten Konten unterscheiden.

Geschrieben

@Buthus

Habe mir die Dateien mal runter gezogen und auch das Framework 3.5 installiert. Trotzdem will er die exe aus dem Release Verzeichnis nicht laden. Als OS habe ich XP Professional mit SP3. Hast Du es auch mal unter XP getestet (sehe im Video, dass Du wohl eher Vista benutzt)?

Geschrieben
  • Autor
@Buthus

Habe mir die Dateien mal runter gezogen und auch das Framework 3.5 installiert. Trotzdem will er die exe aus dem Release Verzeichnis nicht laden. Als OS habe ich XP Professional mit SP3. Hast Du es auch mal unter XP getestet (sehe im Video, dass Du wohl eher Vista benutzt)?

 

Hi conglom,

 

auf anderen Systemen hab ich's noch nicht getestet, schau ich mir aber heut Abend mal auf XP an. Startet die Anwendung einfach nur nicht oder kommt noch eine mehr oder weniger aussagekräftige Fehlermeldung?

Geschrieben
[...]Startet die Anwendung einfach nur nicht oder kommt noch eine mehr oder weniger aussagekräftige Fehlermeldung?

Nö, startet einfach nur nicht - man doppelklickt die exe und es passiert .... nichts :siscop:.

Evtl. hat es ja sonst noch jemand ausprobiert - Freiwillige vor :door:.

Geschrieben
  • Autor
Nö, startet einfach nur nicht - man doppelklickt die exe und es passiert .... nichts :siscop:.

Evtl. hat es ja sonst noch jemand ausprobiert - Freiwillige vor :door:.

 

So, wundert mich, dass sich vorher noch niemand beschwert hat, es hätte nicht mal unter Vista funktionieren dürfen. Ich hab jetzt ein Click-Once-Deployment erstellt:

 

http://hangman.qsh.eu/MT4StatsCopier/

 

Fehlende Komponenten werden vom Installer automatisch gezogen. Nach der Installation, ist der Copier im Startmenü zu finden. Eventuelle Updates kommen in Zukunft automatisch rein (wird vorm Starten geprüft).

Geschrieben

@Buthus

Vielen Dank für Deine Mühe, bekomme da aber leider nur den Error 404, weil Dein Server die Setup-Datei nicht finden kann :siscop:.

Geschrieben
  • Autor
bekomme da aber leider nur den Error 404

 

Hm, kann das jemand bestätigen? Bei mir funktioniert die Installation auf 3 verschiedenen Rechnern.

Bestenfalls auch mit dem IE draufgehen, Firefox zickt bei Click Once hin und wieder rum (und andere Browser probier ich erst gar nicht).

Geschrieben
Hm, kann das jemand bestätigen? Bei mir funktioniert die Installation auf 3 verschiedenen Rechnern.

Bestenfalls auch mit dem IE draufgehen, Firefox zickt bei Click Once hin und wieder rum (und andere Browser probier ich erst gar nicht).

 

Nö, auch beim IE gehts nicht. Liegt eventuell bei Dir daran, dass alle Rechner auf Laufwerk H: zugreifen können. Oder hast Du es auch mal mit einem "externen" Rechner probiert?

 

Link

http://hangman.qsh.eu/MT4StatsCopier/setup.exe

 

Fehler

HTTP Error 404.0 - Not Found

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Requested URL http://hangman.qsh.eu/Rejected-By-UrlScan?...opier/setup.exe

Physical Path H:\Home\Webs\qsh.eu\hangman_c3eb1f50-597d-488c-b4d6-9147f5c60dee\www\Rejected-By-UrlScan

Bearbeitet von conglom-o

Geschrieben
  • Autor

 

Auf die setup.exe sollte der IE gar nicht zugreifen. Probier mal http://hangman.qsh.eu/MT4StatsCopier/MT4St...WPF.application.

 

Fehler

HTTP Error 404.0 - Not Found

The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

Requested URL http://hangman.qsh.eu/Rejected-By-UrlScan?...opier/setup.exe

Physical Path H:\Home\Webs\qsh.eu\hangman_c3eb1f50-597d-488c-b4d6-9147f5c60dee\www\Rejected-By-UrlScan

 

Mit dem Laufwerk H hab ich nix zu tun, das ist kostenloser Webspace, wo ich's hochgeladen hab; Hab dort nur FTP Zugriff.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.