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.

Mythos

Moderatoren
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Mythos

  1. Genial Formuliert ;) Das ist mal eine praktische Analogie!
  2. jup, wird aber eher keinen Fehler beim Comiler liefern. Ich hab nur gefragt, weil ich ja auch einen Codeteil gepostet hab ;)
  3. Auch von mir ein herzliches Willkommen! *g* dann bist du in guter Gesellschaft ;)
  4. aktuellste Version 1.02, der Bug in der Preis normalisierung sollte jetzt endgültig behoben sein (Es stand noch ein MathMax wo ein MathMin stehen sollte ;) Ich hab die Datei in "TradeBox" umbenannt, weil wir es eh die ganze zeit so nennen ;) Im Header ist jetzt eine Art Public License inkl. Disclaimer, der bei uns auf der Uni meist verwendet wird. Es steht mal mein Name im Copyright. Wie gesagt, ich schreib gern weitere Namen dazu, ich will nur nix ohne Einverständiss machen.
  5. Welcher Codeteil jetzt genau? Stimmt, "automatisch" ist vielleicht ein bissl übertrieben, aber wenn man das Grundprinzip vom programmieren wirklich verstanden hat, ist der Rest (also syntax, Schleifen etc) rein technisch.
  6. Ja, der hat mir letztens wieder ein paar Felle und Antilopen vorbeigebracht SCNR
  7. Mythos antwortete auf Mythos's Thema in Think Tank
    Vektor im Sinne von einer Sequenz fixer Länge, die alle Werte enthält um den aktuellen Zustand zu beschreiben. Man kann den Zustand natürlich auch anders beschreiben, aber für die automatisierte Umsetzung ist ein Vektor IMO die beste Variante. Im einfachen Beispiel von oben wäre zb (X-Koord vom Agent , Y-Koord vom Agent) eine mögliche Form. Der Zustandsvektor (0,0) würde dann bedeuten der Agent steht am Start, Der Zustandsvektor (10,1) das der Agent am 11. Feld in der 2. Zeile steht. Für den Markt könnte man zB sagen der Zustandsvektor besteht aus den Closekursen der letzten 10 Bars. Ein bisschen klarer?
  8. Machbar auf alle Fälle, man sollte sich da nur zuerst die "Grundlagen vom Programmieren" aneignen. Also so Sachen wie "Was ist eigentlich ein Programm?", "Was ist eine Variable?", "Was bedeutet Programmablauf?" etc. Ich weiß, sobald man mit Programmieren was zu tun hat sind die Fragen kindisch, aber sie sind grundlegend, um eine Chance zu haben ein Programm zu verstehen. (Find ich halt) Liest du gern? ;) Falls ja, kann ich dir unser "Skriptum" für die allererste Programmiervorlesung von der Uni empfehlen, es ist nur inzwischen als Buch erschienen. "Softwareentwicklung in C" von Klaus Schmaranz Ich weiß, C ist nicht MQL, aber wenn du die Grundzüge von C verstanden hast, ist MQL ein Kinderspiel ;)
  9. Um die Verwirrung zu erhöhen: Ich würds wieder nicht Fehler nennen (falls wir das gleiche meinen), eher unerwünschtes Verhalten. In eclipse würde hier sogar der Compiler warnen mit einer Meldung ala "Bist du dir sicher was du da tust?" Ich hab nix gesagt
  10. Mythos antwortete auf Mythos's Thema in Think Tank
    Natürlich, voll ok Interessent wofür? Den Million Dollar Trading Agent? ;) Das dürfte noch ein bissl dauern. Aber ich bin auf alle Fälle froh das es nicht nur mich interessiert! Ich formulier die Frage nach dem Zustandsvektor mal etwas "allgemeiner": Was denkt ihr? Ist alle Information die man braucht bereits im Kurs/Kursverlauf eingepreist (sprich das dazunehmen anderer Quotes ist sinnlos) oder ist es unbedingt notwendig, will man zB den FDAX handeln, sich auch Öl, EURUSD, DOW etc. anzuschauen? Ich weiß, das ist fast eine Glaubensfrage, aber das machts nur spannender ;)
  11. Die Frage klingt jetzt vielleicht blöd, aber: ist die "schwere" Lesbarkeit (was den Programmablauf angeht) von dem Codestück Absicht oder hat das die Code-Umgebung produziert? Aufgrund der Klammerung ist es nur schwer ersichtlich zu welchem if dieses else gehört. (Order ist das Teil der Challenge? ;) Zu "Bars" vielleicht auch noch eine Anmerkung: Bars ist auch eine Variable, jedoch eine bereits von MQL intern verwendete Variable, die immer als Wert die Anzahl der vorhandenen Bars hat, Vordefinierte Variablen dürfen nicht verändert werden (man kann nur den Wert auslesen, aber keinen neuen Wert zuweisen), das wird vom Compiler verhindert. (weitere vordefinierte Variablen: Close, Open, High, Low, Time, Volume, Bid, Ask...)
  12. kleines Beispiel warum man IMMER (vor allem als Anfänger) diese Klammern verwenden sollte: Beispiel wir schreiben eine kleine if Anweisung: if(fehler == true) return(0); Sprich wenn die boolsche Variable (eine Variable die true oder false sein kann) "fehler" wahr ist, brechen wir das Programm ab. Nach ein paar Tagen testen denken wir uns "Wir sollten nicht nur abbrechen, sondern dem User auch sagen das ein Problem vorliegt". Also ändern wir den Code auf: if(fehler == true) alert("Irgendwas ist schief gelaufen"); return(0); Und jetzt die Preisfrage: Was ist bei dieser Änderung wirklich schief gelaufen, und warum sitzt der Entwickler jetzt weitere 3 Stunden und wundert sich warum der EA plötzlich seltsam reagiert? (zugegeben, ist schon eher eine fortgeschrittene Frage, aber es macht auch für Anfänger Sinn sich darüber gedanken zu machen, bevor man die Lösung erfährt ;)
  13. Um was geht es beim RL (reinforcement learning)? (Hier eine informelle Erklärung, mehr Details auf Es gibt 2 wichtige Punkte: Die Environment und den Agenten. Die Environment ist (wie der Name schon sagt) alles rundherum und wird zu jedem Zeitpunkt mit einem gewissen Zustand repräsentiert. Dieser Zustand kommt aus einem Zustandsraum S, der endlich oder unendlich groß sein kann. Der Agent interagiert jetzt in jedem Zeitpunkt mit der Environment. Nach jeder Aktion des Agenten, ändert sich der Zustand in dem sich die Environment befindet und der Agent erhält einen Reward. Eine "Änderung" passiert eigentlich implizit, indem der Agent erfährt in welchem neuen Zustand die Environment ist. Dieser Zustand kann natürlich gleich bleiben, falls sich nichts geändert hat, bzw. kann natürlich der Agent auch mit der Fähigkeit des "Nichtstun" ausgestattet sein ;). Eine Strategie des Agenten ist nichts anderes als eine Vorschrift, welche Aktion er in welchem Zustand ausführt. Der Agent versucht nun eine Strategie zu lernen, die die erwarteten Rewards auf lange Sicht maximiert. Dieser "Lernvorgang" ist vom Entwickler aber nur insoweit beeinflussbar, als das er die möglichen Aktionen des Agenten bestimmt, das Environment und die Rewardstruktur modelliert. Für endliche Zustandsräume und endliche Aktionsräume kann man die Konvergenz zu einer optimalen Strategie beweisen. Bei unendlichen Zustandsräumen wird das schwerer bis unmöglich. Die Zustandsänderungen und Rewards können natürlich auch stochastisch sein. Kleines "praktisches" Beispiel: Eine simples Schachbrett. rechts oben ist das Ziel, links unten der Start. Der aktuelle "Zustand" ist die Position an der sich der Agent befindet. Der Agent steht zu Beginn am Start und kann nun die Aktionen links, rechts, vor und zurück ausführen. Für jede Bewegung erhält er einen Reward von -1, Erreicht er das Ziel, so erhält er einen Reward von 100 und die Episode ist vorbei. Fällt er vom Brett erhält er -100 und die Episode ist ebenfalls aus. Nach mehreren (hunderten ;) Trainingsläufen, lernt der Agent in diesem Beispiel den schnellsten Weg vom Start zum Ziel zu finden. Und was hat das jetzt mit Trading zu tun? Wähle Zustandsraum: Der Markt. Mögliche Aktionen: Kaufen (zB zwischen 0.1 und 5 Lots), Verkaufen (auch 0.1 bis 5 Lots) und nichts tun. Jeder Bar ist ein Zeitschritt, Der Reward ist die Balance Änderung von heute open (also wo die aktion passiert) bis nächster Bar open. Soweit die Theorie Warum ich das hier poste: Ich bin derzeit dabei mich stark in das Thema einzuarbeiten, und seh da einiges an forschungspotential und möglicherweise Anwendungsmöglichkeiten im Markt. Die Frage die sich mir stellt: Wie modelliert man den Markt sinnvoll? also wie sieht ein Zustandsvektor aus?
  14. In MQL ist es eigentlich egal, da jede nichtinitialisierte Variable den Wert 0 erhält. Bei Erweiterungen von Code wirds nur witzig, wenn man dann denkt, das die Variable hier noch keinen Wert haben muss (weil auf keinen initialisiert), dann was damit macht, und dann draufkommt das sie später plötzlich nicht mehr 0 ist oder so ;) In C ist halt erst recht lustig, weil die Variable dann wirklich den Wert hat, der gerade zufällig dort im Speicher war. immer wieder lustiges debuggen, weil meist ist es 0, aber eben nit immer ;)
  15. Wenn man EAs schreibt, die man vielleicht mal debuggen, erweitern muss/will. Oder die auch andere verstehen sollen. Und zum Ausschließen von Fehlern, ist es IMO besser wenn man zwischen "ohne Wert deklarieren" und "Mit Wert 0 initialisieren" unterscheidet. Sprich: Wenn ich die Variable pommes haben will, diese aber noch keinen Wert haben muss, weil er sowieso kurz später initialisiert wird dann: int pommes; Ist es aber Programmtechnisch wichtig, das pommes auf 0 initialisiert wird. Dann ist es schöner, wenn man dies explizit macht: int pommes= 0; anstatt die automatische Initialisierung zu verwenden. (Bei zB C wird nicht immer auf 0 initialisiert, da handelt man sich dann nur ärger ein ;)
  16. Ich finds super lesbar und (vor allem für Anfänger) super verständlich! Ich würds vermutlich nicht so schön hinkriegen
  17. Worauf warten wir dann noch? Achso stimmt, auf jemand der eine Idee hat
  18. Ich wusste gar nicht das es sowas hier gibt ;) (was man so alles lernt *gg*) Woher sind die ganzen EAs eigentlich?
  19. Es gibt viele EAs mit denen man den DAX handeln kann. Gute Systeme sollte man auf fast jeden Markt adaptieren können ;) Aber ich glaub es gibt wenig EAs/Systeme die als Blackbox auf Dauer funktionieren. Also so das es jemand, der nicht weiß was der EA tut, profitabel einsetzen kann. Die besten Systeme sind immer noch die, die man selbst entwickelt hat bzw. voll versteht, und die noch dazu profitabel sind ;) Man könnte ja versuchen gemeinsam einen EA für den DAX zu entwickeln...
  20. Das freut mich ganz besonders hier noch einen Österreicher zu finden! Willkommen an Board ;) Korrigiert mich wenn ich falsch liege, aber ActivTrades ist ja auch Eurozone und bietet den DAX (als Ger30) via MT an. Geb ich dir Recht, MQL ist wesentlich komplexer als MetaStock oder EasyLanguage, dafür auch wesentlich mächtiger.
  21. Yuhu ;) Klar, ich hab kein Problem damit. Wenn man den "Bug" kennt kann man ihn ja ignorieren/umgehen ;)
  22. Nö, tom-Next is einer der wenigen, die Cookies dauerhaft anlegen dürfen ;) wenn ich mir die Cookies anschaue haben die auch alle lange Gültigkeit. Das Cookie topicsread (was vom namen her passen könnte ;) hat aber nur gültigkeit bis ende der Session... kA obs daran liegt.... ich versuch mal was... Edit: Jup, das "topicsread" cookie ist "böse". Wenn ich nur das Cookie im laufenden Betrieb (also tom-next bleibt offen) lösche und wieder auf "neue Beiträge" klicke sind wieder alle ungelesen. Wie es scheint ist das Cookie aber nur für eine Session gültig. Aktuelle Theorie: Kann es sein das in der Datenbank oder whereever die "neuen Topics seit letztem Logout" gespeichert sind, und einfach alle, bis auf die, die im Cookie "topicsread" gespeichert sind, als ungelesen markiert werden? Mit der Annahme, das ein Beenden des Browsers einem Logout gleich kommt, wär es ja richtig, dass das Cookie beim Sitzung beenden gelöscht wird, da das nächste mal diese Topics erst wieder im "neue Beiträge" aufscheinen, wenn sie wirklich neu sind... Da aber die Beiträge in "neue Beiträge" gleich bleiben solang kein Timeout-Logout passiert "vergisst" das System beim Firefox restart welche der "neuen" Beiträge schon gelesen wurden...
  23. Ok, wenn ich mich manuell auslogge und wieder einlogge passt alles (Neue Beiträge stimmen (also im konkreten Fall 0), "zuletzt hier um " stimmt...) Kann es sein das, wenn ich aussteige ohne mich explizit auszuloggen (was lästig wäre weil extra wieder einloggen), ich halt erst per TimeOut ausgeloggt werde. Und bei neuer SessionID oder so (kenn mich nit so aus) sagt er aus irgendeinem Grund: "alle die seit dem letzten Login als neu markiert sind müssen ungelesen sein" (was ja stimmen würd, nur das "FireFox schließen" eben nicht mit "Logout" gleichgesetzt ist, und damit "last login" nicht mit "last firefox start" zusammenfällt)... nur so eine Theorie... aber wie gesagt, kann auch totaler Blödsinn sein ;)
  24. Danke das du fragst, jetzt kann ich endlich mal den Smily verwenden: IE zeigt genau das gleiche Verhalten, ladet nur länger ;) Was spannend ist: auch nach "Cookies löschen" steht: Dein letzter Besuch war: Heute, 02:05 AM ?
  25. Thread lesen - Tab mit Tom-Next schließen - wieder rein -> gelesen markiert ... geht bei mir auch. Thread lesen - Firefox schließen - wieder rein -> alle threads aus "neue Beiträge" wieder neu obwohl zuvor schon gelesen.

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.