Amibroker AFL

      Export von Daten (intraday, EOD usw) mit Amibroker. AFL Datei im Zip Archiv unter C:\...\AmiBroker\Formulas\Custom ablegen.
      Erklärung steht im Code. Wer eine Übersetzung benötigt, melden.

      Quellcode

      1. /*
      2. Export intraday and EOD data and Weekly and ... to TXT files
      3. One file for each stock
      4. In the first line insert the directory you want to save them to, make sure the directory exists
      5. Select your charts to export with the "Apply to" filter in AA window. Select "Range".
      6. Select the timeframe period you want to save as using the AA "Settings". AA = "Auto Analysis"
      7. Press Scan button. File(s) is/are saved.
      8. by Graham Kavanagh 05 Feb 2004
      9. */
      10. fh = fopen( "c:\\SaveData\\"+Name()+".txt", "w");
      11. if( fh )
      12. {
      13. fputs( "Ticker,Date,Time,Open,High,Low,Close,Volume \n", fh );
      14. y = Year();
      15. m = Month();
      16. d = Day();
      17. r = Hour();
      18. e = Minute();
      19. n = Second();
      20. for( i = 0; i < BarCount; i++ )
      21. {
      22. fputs( Name() + "," , fh );
      23. ds = StrFormat("%02.0f-%02.0f-%02.0f,",
      24. y[ i ], m[ i ], d[ i ] );
      25. fputs( ds, fh );
      26. ts = StrFormat("%02.0f:%02.0f:%02.0f,",
      27. r[ i ],e[ i ],n[ i ] );
      28. fputs( ts, fh );
      29. qs = StrFormat("%.4f,%.4f,%.4f,%.4f,%.0f\n", //Choose amount of decimal places for each quote, e.g. by changing %.4f to %.2f. Now quotes have 2 decimal places instead of 4.
      30. O[ i ],H[ i ],L[ i ],C[ i ],V[ i ] );
      31. fputs( qs, fh );
      32. }
      33. fclose( fh );
      34. }
      35. Buy = 0;
      Dateien
      "I'm a trader, baby. So, why don't you kill me?!"
      Servus Purri,

      yep, sind daily und Anzahl Bars bzw Periode ist auch ok.

      Ich habe Amibroker nun mal in einer VM installiert und dort kommt nun mit den selben Daten, selbem Code und selben Einstellungen das Richtige heraus. Verrückt.
      Bilder
      • Tztztz.png

        6,72 kB, 534×269, 256 mal angesehen
      "I'm a trader, baby. So, why don't you kill me?!"
      Ich würde kontrollieren ob die Matrix auch wirklich Daily Daten verwendet und ob sie gleich viele Bars ladet wie der Chart.

      P.S.: habs grad probiert: wenn ich in Neoticker als ersten Parameter Symbol 1 angebe und als 2 Parameter Symbol 2 bekomme ich unterschiedliche Ergebnisse als wenn ich Symbol 2 als Parameter 1 und Symbol 1 als Paramter 2 angebe. Könnte auch ein Grund sein.
      folgendes Problem

      Und zwar habe ich hier einen Code, der die Korrelation nach Pearson ausgibt.

      Quellcode

      1. _SECTION_BEGIN("Correlation");
      2. PeriodsC = Param("PeriodsC",8, 1, 1000, 1 );
      3. Ticker = ParamStr("Ticker", Name() );
      4. OtherStk = Foreign (Ticker, "Close");
      5. t1 = Correlation( Close, OtherStk, PeriodsC);
      6. Plot(t1, "Correlation", colorYellow);
      7. Title = "Correlation: " + WriteVal (t1,format=1.4) + " Periods: " + WriteVal (PeriodsC,format=1.0);
      8. _SECTION_END();


      Wenn man das mit Excel vergleicht anhand zweier Bsp. werte Allianz und Münchner Rück sowie Bsp.periode von 250 Tagen, dann stimmen die Ergebnisse überein (siehe Excel.png und Indikator.png).

      Nehme ich aber den Code des Correlation Matrix.afl und führe ihn im Auto-Analysis Fenster aus, dann gibt mir dieser etwas anderes aus (siehe Matrix.png).

      Code ist hier zu finden amibroker.org/userkb/2007/04/2…ting-a-correlation-table/ bzw so schaut er aus (habe die Ausgabe nur eingeschränkt mit >0.8 und >-0.8 sowie max Periode auf 1000 )

      Quellcode

      1. WLNum = Param("WatchList Number",0,0,64,1);
      2. CorrPd = Param("Correlation Period",8,1,1000,1);
      3. list = GetCategorySymbols( categoryWatchlist, WLNum);
      4. SetOption("NoDefaultColumns",True);
      5. Filter = Status("LastBarInTest");
      6. SetSortColumns( 1 );
      7. AddTextColumn(Name(),"Correlation",1.0);
      8. Ticker1= Name();
      9. for( Col=0; (Ticker2=StrExtract( List, Col))!= ""; Col++)
      10. {
      11. Var2 = Foreign(Ticker2,"C");
      12. Corr = Correlation( C, Var2, CorrPd);
      13. Color = IIf(Corr>0.8, colorBrightGreen, IIf(Corr<-0.8, colorRed,colorWhite));
      14. Color = IIf(Ticker1==Ticker2, 1, Color);
      15. AddColumn( Corr, Ticker2, 1.3, 1, Color);
      16. }


      An was könnte das liegen?
      Bilder
      • Excel.png

        10,67 kB, 807×262, 262 mal angesehen
      • Indikator.png

        19,2 kB, 966×805, 269 mal angesehen
      • Matrix.png

        43,01 kB, 1.068×645, 401 mal angesehen
      "I'm a trader, baby. So, why don't you kill me?!"

      AmiBroker Auftragsprogrammierer und Programmiertools

      Cerberus24 - der auch von Programmieren, Excel und AFl wenig bis garkeine Ahnung hat


      Hallo,

      patternexplorer.com/


      guter Programmierer aus Österreich, gutes Tool für AmiBroker und Auftragsprogrammieren, dazu diverse Auftragsprogrammierer in USA.

      Patternexplorer hat auch ein gutes Forum für AmiBroker ;)

      amitools.com/index.html - für nicht-programmierwillige ist das Frondend "PowerScan" von AmiTools zu empfehlen, das Code schreibt oder ganz neu von AmiBroker selbst im Angebot für Nichtprogrammierer "AFL Code Wizard" - amibroker.com/video/amiwiz/AFLWiz1.html

      yahoo Gruppe - finance.groups.yahoo.com/group/amibroker/messages/


      Beste Grüße

      Roti :)
      Beste Grüße

      Roti :)

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Roti“ ()

      Aber schlicht die Videos und das Tutorial durchzuarbeiten, ist ihnen (und Dir?) zuviel.
      nein es ist mir nicht zuviel,
      nur wie schon vorher gesagt ist mein schulenglisch von vor 30 jahren heute leider in meinem kopf wieder auf einem stand von null.
      und wenn du sachen lernen willst in einer sprache die du nicht kannst ist der weg verdamt mühsam.
      mir würden ja kleine tips wo mit ich es überhaupt erstmal ausprobieren kann reichen.
      es geht mir ja in erster linie erstmal darum die sache etwas zu verstehen das ich einen grundstock habe wo ich drauf auf bauen kann.
      aber wenn halt auch immer nur feheler meldungen in einer sprache kommen die du nicht verstehst ist es ziemlich frustrierent.


      Warum schreibst Du nicht mal eine Kurzbeschreibung (ohne Parameter) deines Vorhabens in PseudoCode?
      ??????????????????PseudoCode????????????????????????
      was ich will,

      entry,

      als erstes signal eine mischung aus macd und adx(+DI -DI)
      es soll also nur gekauft werden wenn beide in die gleiche richtung zeigen.
      (das bekomme ich jetzt auch schon selbst hin)

      jetzt will ich aber eigentlich nicht kaufen wenn das signal kommt,
      sondern erst nach einem rücksetzer wie bei ross.

      heist,
      signal der indis kommt für long,
      letztes hoch wird nicht überschritten,
      dann kaufen wenn letztes hoch überschritten wird.(aber nur 3-4 stäbe nach signal und wenn signal der indis weiter besteht)


      stopps,

      größter anfänglicher stop zb. bei minus 20 punkten (ich rede jetzt mal vom YM future)
      wenn das tiefste tief der letzten 3 bars vor entry enger ist dann darauf den stop.

      wenn gewinn > 15 punkte, stop entry +3 punkte
      wenn das tiefste tief von X stäben(mal schauen 10,15,20) > ist wie entry +3 punkte dann das als stop.

      wenn gewinn > 40 punkte dann minimun stop bei 50% buchgewinn.

      und am schönsten wäre es wenn mir das noch alles im chart angezeigt wird,
      auch die kaufpunkte die nicht zur ausführung kommen.

      sollte jetzt erstmal das grundgerüst sein wo man dann weitere ideen drauf aufbauen kann.
      es sollte dann ja auch kein problem sein die indis zu wechseln oder kleinigkeiten zu ändern.

      was nachher auch noch schön wäre, wäre ein positions nachkauf zb.

      erste posi stop 15 punkte im gewinn,
      indis zeigen noch in die richtung,
      dann kaufen bei einer korrektur(wie obiges kaufsignal)

      ich hoffe man konnte meine gedanken ein bisschen verstehen.
      und für kleine hilfen was ich wo für nehemn könnte bedanke ich mich schon im vorraus.

      aber im moment verstehe ich ja selbst den unterschied der nachfolgenden sachen nicht,
      bzw was ich wo für verwenden sollich bekomme ja noch nicht mal eine einfache linie mit den höchsten hoch der letzten 20 bars hin.
      (aber ich weiss jetzt schon wie ich überhaupt eine linie in den chart gemalt bekomme)

      Achja, streng geheim Dein Mördersystem......
      die streng geheime bau ich mir dann wenn ich weiss wie es geht und ich euch nicht mehr brauche :P

      Tomasz empfiehlt auch das Schreiben in Excel, falls man mit Arraykonzepten nicht vertraut ist.
      und das geht einfacher oder ist schneller zu lernen?

      gruß
      Bilder
      • Capture-3.gif

        39,46 kB, 1.040×889, 325 mal angesehen
      Die Wissenden reden nicht viel,die Redenden wissen nicht viel.

      klaus-m.blogspot.com/

      ibelieve schrieb:



      ein sehr gutes Package Preis-/Leistung,
      ich benutze die kostenlose version mit IB kurse die ich eh habe,
      von daher ist das preis/leistungs verhältnis kaum zu schlagen.


      danke für die links,
      wobei ich sie kannte,
      mein problem ist einfach das ich sachen suche die ich nicht kenne und das in einer sprache die ich nicht kann.


      ich brauche halt erstmal ewig bis ich überhaupt so weit bin das ich was finde was vielleicht zu meiner problemlösung passt und dann muss ich erstmal schauen wie es funktioniert.
      Ibelieve, Sorry, wenn ich so deutlich war und auch bleibe. AB-User, auch in der Usergroup sind meist genervt, weil die Ratsuchenden schon alle Seiten kennen, alles überflogen haben, noch immer nicht wissen, was sie eigentlich wollen, wie es heisst und wie man es anwendet. Aber schlicht die Videos und das Tutorial durchzuarbeiten, ist ihnen (und Dir?) zuviel.

      Warum schreibst Du nicht mal eine Kurzbeschreibung (ohne Parameter) deines Vorhabens in PseudoCode? Achja, streng geheim Dein Mördersystem...... Tomasz empfiehlt auch das Schreiben in Excel, falls man mit Arraykonzepten nicht vertraut ist.

      In der AFL Library sind verschiedene TEMPLATES - Programmvorlagen, die man ausfüllen kann, ändern kann etc...

      Wenn ich es richtig kapiert habe, willst Du ein Metasignal aus verschiedenen Teilsignalen bauen. Geht alles wunderbar mit AB, definiere einfach die einzelnen Systeme und ihr Signal separat und fasse sie dann per Metasignal zu einem Gesamtvoting zusammen. In der Library sind ja verschiedene Systeme aus multiplen Signalen dargestellt.

      MFG

      Cerberus24 - der auch von Programmieren, Excel und AFl wenig bis garkeine Ahnung hat
      ein sehr gutes Package Preis-/Leistung,
      ich benutze die kostenlose version mit IB kurse die ich eh habe,
      von daher ist das preis/leistungs verhältnis kaum zu schlagen.


      danke für die links,
      wobei ich sie kannte,
      mein problem ist einfach das ich sachen suche die ich nicht kenne und das in einer sprache die ich nicht kann.


      ich brauche halt erstmal ewig bis ich überhaupt so weit bin das ich was finde was vielleicht zu meiner problemlösung passt und dann muss ich erstmal schauen wie es funktioniert.
      Die Wissenden reden nicht viel,die Redenden wissen nicht viel.

      klaus-m.blogspot.com/

      AmiBroker AFL

      goso schrieb:

      Meines Wissens verwendet niemand in diesem Forum Amibroker, ich weiss nicht ob es besonders viel Sinn macht wenn du auf Antwort wartest.



      Hallo,

      AmiBroker habe ich aber bisher noch nicht im Einsatz, den AFL zu lernen hatte bis dato noch keine Zeit ist aber ein sehr gutes Package Preis-/Leistung, alles auf Englisch und 32/64 Bit Version verfügbar, bei Börsensoftware ist die Entwicklung schnell, kann sein das irgendwann ein anderes Programm das beste Preis-/Leistungsverhältnis hat - ist aber auch stark vom Trader abhängig ... ..

      aber hier:

      eine liste mit allen möglichen variablen und deren aufbau:
      amibroker.com/guide/afl/afl_index.php?m=1

      indikatoren beisspiele:
      amibroker.com/guide/afl/afl_view.php?id=138

      und hier sind schon fertige Programme, die nur noch zu kopieren sind:
      amibroker.com/library/list.php



      MultiChart soll auch ein gutes Preis-/Leistungsverhältnis haben, ob es stimmt weiss ich nicht?



      Beste Grüße

      Roti :)
      Beste Grüße

      Roti :)

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Roti“ ()

      Cerberus24 schrieb:


      ibelieve schrieb:

      dank an alle antworten :thumbup:

      hab jetzt auch in einem meiner heimat forum jemanden gefunden der mir weiter hilft.

      also noch mal dank an alle,

      falls jemand weiter interesse hat oder ein neuer user noch mal hier vorbei schaut kann er mich ja nach der adresse fragen.
      vielleicht wird es da ja was mit einer anfänger einführung.

      Na, dann schreibs doch hier rein. Wertpapierforum?

      MFG

      Cerberus24
      einige forums sehen es nicht gerne wenn man auf andere verlinkt.

      wertpapier-forum.de/index.php?act=ST&f=39&t=2252#
      Die Wissenden reden nicht viel,die Redenden wissen nicht viel.

      klaus-m.blogspot.com/

      ibelieve schrieb:

      sondern ob jemand seine Frage beantworten kann,

      nicht nur kann,
      sondern auch lust hat

      oder auch im Forum angemeldet ist...ach ne sehe gerade man kann im Neuen Forum auch Antworten ohne Mitglied zu sein :P . Also los :thumbup:

      Schau mal genau hin, du verwendest im Code einen falschen Syntax!
      Die im Chart eingestellten MACD/Signal Indikatoren laufen mit 10/20/10. Im Code schreibst Du nur signal(10).
      Laut Reference musst Du aber beim AFL-Befehl "Signal" alle drei Parameter eingeben (wie auch im Chart zu sehen)r:

      SIGNAL
      - macd signal line Indicators
      SYNTAX signal( fast = 12, slow = 26, signal = 9 )
      RETURNS ARRAY
      FUNCTION Calculates the Signal line of MACD indicator.
      EXAMPLE signal( 14, 28, 10 );


      Dein Code würde also richtig lauten:

      Quellcode

      1. Buy = Cross( MACD(10,20), Signal(10,20,10) );
      2. Sell = Cross( Signal(10,20,10), MACD(10,20) );
      3. Short=Sell;
      4. Cover=Buy;
      Habe ich auch nie behauptet, allerdings hält sich das Feedback auf die Fragen von ibelieve in Grenzen, in letzter Konsequenz ist es für ibelieve nicht relevant wieviele Leute hier Amibroker nutzen, sondern ob jemand seine Frage beantworten kann, und das war ja bis jetzt nicht der Fall.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „goso“ ()

      ibelieve schrieb:


      goso schrieb:

      Meines Wissens verwendet niemand in diesem Forum Amibroker, ich weiß nicht ob es besonders viel Sinn macht wenn du auf Antwort wartest.
      die hoffnung stirbt zuletzt,
      zumindest im letzten jahr muss es ja einige gegeben haben, sonst wäre der thread ja wohl nicht zustande gekommen
      Was nur beweist, dass auch ein "ERLEUCHTETER" a la goso nicht unbedingt alles weiss!

      MFG

      Cerberus24