Amibroker AFL

      @PT

      Was dafür oder dagegen spricht, kann ich noch nicht richtig einschätzen. Rein persönlich spricht dagegen, dass ich für AB viel lernen muss. Also mehr Zeit benötige. Da wäre ich bei TS einen Schritt weiter. Ich habe schon einige Zeit mit TS programmiert und kenne auch die Bedienung ganz gut. Für AB spricht u.a. der Preis.

      Meine Ursprüngliche Frage war, ob das von mir Gesuchte in AB vorhanden ist. Antwort ist klar nein. Man kann es aber programmieren. Gut mit Zeit und Wissen, kann man es wohl überall programmieren. Ist ja keine Raketentechnik, was ich suche. Wenn man es für MT4 programmiert, kostet die Plattform gar nichts. MT4 kann ich aber auch nicht programmieren. Ich hätte lieber etwas, was fix und fertig für die Nutzung wäre. Mir ist in diesem Fall das Ziel wichtiger als der Weg. Programmieren reizt mich nicht mehr so sehr. Wie man einige Beiträge vorher sieht, muss ich auch an mein Alter denken. Zeit ist das teuerste Gut.

      Gruß
      "Erfahrung ist das, was Du bekommst, wenn Du nicht bekommst, was Du willst." Randy Pausch
      Ich trade über MT4 verschieden Broker und Prostation von WHS. Ich würde aber vorschlagen von einer Textdatei mit den notwendigen Informationen auszugehen und sich nicht auf einen Broker oder Plattform zu konzentrieren. Wie die Daten des jeweiligen Brokers dann in dieses Format transferiert werden, kann/muss sich jeder selber kümmern. Das dürfte nicht das Problem sein. Der Vorteil wäre:
      1. Wir sind erst einmal unabhängig von dem Brokerimport und können die Umsetzung in AB ausprobieren.
      2. Man kann auch nicht getätigte Trades eingeben und testen. Wenn man zum Beispiel auf Futures umsteigen möchte, wäre es ja nicht schlecht vorab zu testen, welche Stop variante ist die günstigste etc. Ähnlich macht es ja auch Hintman mit den Aktientrades. Diskretionäre Einstiege - aber fundierte Analyse zu Exit und Stop's.
      3. Jeder unabhängig bei welchem Broker er gerade ist, könnte AB nutzen zum testen oder dokumentieren seiner Trades oder Tradeideen

      Welche Informationen wären in meinen Augen notwendig?

      Datum
      Uhrzeit
      Underlying
      Postionsgröße
      Richtung (kauf, verkauf)
      Initialstop (eventuell)

      Das würde für die Stopvariantentesterei ausreichen. Die Exits würde dann durch das/die Stopsystem/e dazukommen.
      Wenn man nur seine Trades dokumentieren möchte, wäre natürlich auch das diskretionäre (oder wie auch immer) Exit notwendig. Könnte auch über einen "diskretionäres Stopsystem" dazukommen.

      Ich weiß aber nicht, ob das überhaupt mit AB geht und ob es für weitere User interessant ist. Ich bin in AB blutiger Anfänger.
      Außerdem weiß ich noch nicht, ob ich mich für AB entscheide. Ich hatte das ganze schon mal in Tradesignal. Momentan nutze ich aber keine Lizenz von TS und habe auch keinen Zugriff bis auf die Onlineversion mit EOD Daten. Dir finde ich aber nicht so prickelnd. Die Standardversion von TS für Privatkunden gibt es wohl nicht mehr?

      Gruß Fisch
      "Erfahrung ist das, was Du bekommst, wenn Du nicht bekommst, was Du willst." Randy Pausch

      Mr. Moon schrieb:


      In Amibroker gibs einige Probleme. Arrays können nur Kursdaten speichern, keine Strings ect. Zahlen kann man speichern, aber auch nur positive. Also wenn man z.B. eine EquitiyKurve darstellen will und diese in den Kursdaten speichern möchte, darf die nicht in den negativen Bereich gehen. Tja was machen? Man könnte die Trades in eine Kursreihe speichern, jedoch die Information, welcher Basiswert gehandelt wurde in eine txt-datei. Auch Infos, wie Stoppweite, CRV "was auch immer". Man müsste mal schauen, wie die Performance ist, wenn man mehrere txt-Datein auswerten müsste. Ob es überhaupt sinnvoll ist, wenn man tausende von Trades im Jahr macht. Denke mal es ist sinnvoller, bei Bedarf sich nur eine bestimmt Menge an Trades zu widmen.


      Hier liegst du falsch, denn es gibt keine derartigen Probleme, da sowohl das Speichern/Darstellen von negativen Zahlen als auch das Speichern bzw Anzeigen von Zusatzkommentaren sehr wohl möglich ist! Der Beweis, dass es möglich ist, zeigen diese Bsp.Bilder is.gd/aNMDOx Hier noch z.B. Profit/Loss nicht kumuliert is.gd/g1DijQ auch aus einer externen Datei. (Und hier noch ein anderes Bsp. bei dem EURUSD einmal negativ is.gd/fRUuyK und einmal positiv is.gd/RulFDm dargestellt wird.) Das ging auch schon damals und solange ich AB kenne (Version 4.8 aus 2006 zum Beispiel). Wie es geht, sage ich jetzt mal nicht, da es zu einfach in der entsprechenden Maske zu finden ist (wenn man die Äuglein etwas weiter öffnet) oder spätestens in der Hilfe nachzulesen wäre. ;)

      Das Einlesen/Speichern von Profit/Loss brauchst du (m.M.n.) aber nicht, da Fisch ja nur die Einstiegskurse benötigt und das Datum mit Uhrzeit z.B.
      Buy signal ist dann Buy = Datetime() == StrtoDatetime(Fischs ausgelesene Einstiegszeit);
      BuyPrice = StrtoNum(Fisch's Kaufkurs aus der Datei);


      Sell = 0;
      Da er ja u.a.testen will, wie alternative Stopps und Ausstiege ausgesehen hätten.
      Das macht man dann z.B. mit
      Applystop(stoptypeLoss,...
      Applystop(StoptypeProfit,...
      Applystop(StoptypeTrailing,...
      Applystop(stopTypeNBar,...
      oder über Schleifen

      Ich schätze mal, dass Fisch keine Tickhistorie seines Brokers hat? Wahrscheinlich Minutenhistorie. Da ja bei den Einsteigszeiten seiner Trades sicherlich auch Sekunden angegeben sind, müßte man beim Umwandeln des Zeitstrings der Datei ins Datetime Format die Sekunden in "00" umwandeln, da ja bspw. die Buybedingung Datetime() == StrToDatetime("...."); sein soll und wenn er Minutenhistorie nimmt und deren Minuten Date/Time Arrays mit denen der Datum/Zeit Strings der Datei abgleichen lässt, nie zu einem Signal kommt, weil z.B.

      10.05.2012 09:16:00 der 1-Minutenhistorie des jeweiligen Underlyings nicht gleich 10.05.2012 09:16:38 aus der Tradehistorie ist. Deshalb müßte man, wie gesagt, die Sekunden der jeweiligen Zeile der Tradeliste in "00" umwandeln. Ist kein Problem. Bsp.

      Quellcode

      1. Column_0 = StrExtract(Line, 0); // extract Date/time column of text file
      2. tradesDTmod = StrLeft(Column_0, 17) + StrReplace( StrRight(Column_0, 2), StrRight(Column_0, 2), "00" ); // replace seconds data of file with "00"
      3. TradeDT_Buy = StrToDateTime( tradesDTmod );


      Was das zusätzliche Speichern/Auslesen von Strings angeht ist das auch kein Problem. Eine Lösung ... Ähnliches mache ich mit dem Update meines Intraday-News-Alarm Codes bzw Newskalenders. Einfach das Interpretation Fenster verwenden. Kommentar mit Datum/Uhrzeit mit Prüfung auf Symbolname einfach aus der Datei auslesen (wenn vorhanden) und dort darstellen lassen. Über SelectedValue kann man dann Informationen nur für den jeweiligen Tag (oder falls nötig zusätzlich nur zum jeweiligen Symbol) darstellen lassen. Zum Bsp wenn man egal wo im Chart reinklickt und der Tag ist Dienstag, dann werden nur die Zusatzkommentare mit Zeitangabe und Symbol für Dienstag angezeigt.

      Hier ein Bsp. anhand meines Updates des automatischen News Kalender is.gd/Vcd41H das zusätzlich die formatierten Newsangaben aus einer csv Datei im Interpretations Fenster ausgibt. Mit Now(4) <= tnstring (tnstring sind die Zeitstrings der Textdatei und Now(4) ist die Funktion für aktuelle Systemzeit) kann man bspw nur die noch ausstehenden Tagesnews anzeigen lassen. Siehe *GIF Animation unten (schlechte Bildqualität). Die Verwendung von SelectedValue( Timenum() ) <= tnstring wäre in dem Bsp eine anderen Möglichkeit, um bei Klick in den Chart nur die News größer des aktuell im Chart angeklickten Datum/Zeit anzuzeigen.

      Was den Ascii Import angeht, kann man das hier nachlesen (das Selbe steht in der Hilfe).
      Import wizard amibroker.com/guide/w_impwizard.html
      fortgeschrittene Methoden des Ascii Import amibroker.com/guide/d_ascii.html
      Ob z.B. AUX1 oder AUX2 auch Kommentar Strings importieren können, weiß ich nicht. Ich habe diese bisher nur für Bid/Ask Ticks verwendet. Für was die Command INFO gut ist, weiß ich ebenfalls nicht. Müßte man mal beim Support nachfragen (was jedem anzuraten wäre, der nicht sicher ist, ob etwas geht oder nicht geht). Ich würde es wie gesagt über das Interpretations Fenster machen, um in der Datei vorhandene Zusatzkommentare anzuzeigen. Das sieht dann auch aufgeräumt aus und überlädt die Chartdarstellung nicht.

      Frage an Fisch, hat deine Tradehistorie Angaben über Buy,Sell,Short,Cover? Kannst du ein Format Bsp mit veränderten Angaben reinstellen? (Fisch: "Yes, I can")

      *

      Preisskala veraendern...

      @Fisch,

      Maus in Preisskala positionieren und bei gedrueckter Shift-Taste Preisskala dehnen oder eben schrumpfen (alternativ im Menue View/Zoom/Shorter Bars bzw. Taller Bars)...
      ...und wenn Du's dann Finger-akrobatisch noch schaffst auch noch parallel das Mouse-Wheel zu bedienen kannst Du gleichzeitig auch horizontal zoomen... ;)

      ciao,
      zentrader
      Ich will mit der Maus auf der Preisskala die Gridgröße verändern. Wie Zum Beispiel in MT4 mit der linken Maustaste gedrückt. In AB verschiebe ich den Chart, verändere aber nicht das Grid.
      "Erfahrung ist das, was Du bekommst, wenn Du nicht bekommst, was Du willst." Randy Pausch