{"id":1280,"date":"2017-02-17T16:54:53","date_gmt":"2017-02-17T21:54:53","guid":{"rendered":"http:\/\/www.amibroker.com\/devlog\/?p=1280"},"modified":"2017-02-25T07:26:50","modified_gmt":"2017-02-25T12:26:50","slug":"amibroker-6-20-1-release-candidate","status":"publish","type":"post","link":"http:\/\/www.amibroker.com\/wordpress\/devlog\/2017\/02\/17\/amibroker-6-20-1-release-candidate\/","title":{"rendered":"AmiBroker 6.20.1 Release Candidate"},"content":{"rendered":"

Stability: \"Rank - stable, should work fine in most environments<\/em><\/p>\n

UPDATE Feb 25, 2017: 6.20.1 is now considered as official release version.<\/em><\/p>\n

A new release candidate version (6.20.1) of AmiBroker, complete with full setup, data files and updated documentation has just been released. This version is going to become official after one week if no important issues surface.<\/p>\n

32-bit<\/strong> version:
\nhttp:\/\/www.amibroker.com\/members\/bin\/AmiBroker6201.exe<\/a>
\n(9 905 152 bytes) <\/p>\n

64-bit<\/strong> version:
\n
http:\/\/www.amibroker.com\/members\/bin\/AmiBroker6201x64.exe<\/a>
\n(10 591 808 bytes) <\/p>\n

If you can not log in into members' area please get your new password by filling the form at: http:\/\/www.amibroker.com\/login.html<\/a><\/font><\/p>\n

IMPORTANT: Unauthorized copying and\/or distribution of materials found on members' only page is STRICTLY PROHIBITED and will result in IMMEDIATE termination of license.<\/font><\/p>\n

UPGRADE POLICY<\/strong>
\nThis version is a free upgrade only for users who registered AmiBroker after February 17, 2015<\/strong>. Users who registered earlier, would need to purchase license upgrade. To find out the version you currently have use Account Information page at
http:\/\/www.amibroker.com\/members\/info.php<\/a><\/p>\n

NOTE: This version works both as fresh first-time install and as in-place upgrade. Previous installation (if any) is detected and setup switches into \u2018upgrade\u2019 mode. Don\u2019t worry, your charts, formulas, etc won\u2019t be affected by the upgrade.<\/p>\n

CHANGES FOR VERSION 6.20.1<\/strong> (as compared to 6.20.0)<\/p>\n

    \n
  1. Batch: DataImportASCII command allows to automate imports via batch. The parameter is file name to be imported. The importer uses file extension to determine format file used, so if you are importing File.aqh then aqh.format definition file will be used\n
  2. Default for time compression timestamping changed to recommended value, i.e. 'start time of interval'\n
  3. Plugin API: added GetExtraDataEx to support pad&align (see Release Notes)\n<\/ol>\n

    CHANGES FOR VERSION 6.20.0<\/strong> (as compared to 6.19.0)<\/p>\n

      \n
    1. AFL: new function GetExtraDataForeign - the same as GetExtraData but works with user-specified ticker instead of current one\n
    2. AFL: ShellExecute supports \"runbatch\" command. After running batch batch and analysis windows that were opened by batch are automatically closed\n
    3. Batch: new command DataPluginCmd - calls data plugin DataPluginCmd function (if it is exported from your data DLL) - allows custom actions to be peformed by the plugin from the batch (like maintenance)\n
    4. Batch: new command ExecuteAndWait - allows to execute external program and wait for its completion (allows among other things launching AmiQuote download and waiting until it is complete)\n
    5. New Analysis: changed forced refresh frequency of result list to every 250ms when analysis is in progress (since 6.16 when messaging system has changed it was refreshed \"on idle\")\n
    6. New Analysis: when user specified symbol with NO quotes at all as a reference symbol AND used \"last N days\" range AND used Exploration then it would lead to crash. Protection implemented against this scenario.\n
    7. OLE: AnalysisDoc.Export supports now extra (optional) parameter WhatToExport and it allows now to export not only result list but also walkforward tab Analysis.Export(\"file\", 1 );\n
    8. UI: In 64 bit version File Dialog was not resizable due to differences in Microsoft runtime. Now it is made resizable.\n<\/ol>\n

      CHANGES FOR VERSION 6.19.0<\/strong> (as compared to 6.18.0)<\/p>\n

        \n
      1. Batch Scheduler implemented (Tools->Scheduler) - integrated tool to schedule automated runs of your batches\n
      2. Batch: ExportWalkForward command added\n
      3. Batch: Pause command added\n
      4. AFL: GetOption supports all fields available in SetOption call\n
      5. AFL: new function: AddMultiTextColumn - adds a text column to the exploration where text displayed is choosen based on array value\n
      6. AFL: new function: MxSum - calculates sum of all elements of matrix (grand sum)\n
      7. AFL: StDev added support for variable period (faster and more accurate than formula-based solutions)\n
      8. AFL: Title now accepts {{VOLUME}} and {{FULLNAME}} special tokens that get replaced by current volume and full name of the symbol. Example Title = \"{{VOLUME}}\";\n
      9. AFL: updated text of Error 62 message to list newly supported sequence %s\n
      10. AFL: variable period Sum() now returns NULL if range is greater than current bar index (previously returned partial sum)\n
      11. Analysis: WalkForward settings including IS\/OS dates are no longer global, they are now per-project and saved in APX file\n
      12. ASCII importer: added $RAWCLOSE2AUX1 and $RAWCLOSE2AUX2 commands that allow to put raw close into aux1\/aux2 fields when using ADJCLOSE in 'close' field\n
      13. Changed wording to \"Free upgrade period expired.\" (from \"License expired\")\n
      14. Date\/Time fields in XML files now use ISO format always (not regional format), for better file exchangability accross regions\n
      15. Debugger: Watch window: added ability to display values of static variables in watch window - just append '$' (dollar) prefix before static variable name\n
      16. Default report chart dimensions (new instals) increased to 800x480px\n
      17. On HiDPI (>=150dpi) screens icons in menus were small, now they are bigger\n
      18. On HiDPI screens XYCharts and MonteCarlo charts could have axis labels partially truncated depending on choosen font size. Now it is fixed.\n
      19. UI: Performance Monitor shows now the number of static variables used and the amount of memory consumed by them (Tools->Performance Monitor)\n
      20. UI: Plugin data access time is now displayed with microsecond precision\n
      21. UI: Symbol and interval combo boxes in toolbar are made larger on HiDPI screens\n<\/ol>\n

        CHANGES FOR VERSION 6.18.0<\/strong> (as compared to 6.17.0)<\/p>\n

          \n
        1. AFL: GetFnData\/GetFnDataForeign added support for \"PointValue\" and \"FullName\" fields\n
        2. Batch processor: In 6.17.0 Export to file command was executed properly but never marked as completed. Fixed.\n
        3. Batch window checks if there is any other batch running and refuses to start when the other batch has not finished.\n
        4. Batch: Added command line parameter to exit AmiBroker after running batch file (\/exit)\n
        5. Batch: Added command line parameter to run batch files: \/runbatch \"full path to batch file\n
        6. Batch: Load Database \"path to workspace\/database\" - warning this function may be RISKY because it may interfere with other running operations !!\n
        7. Batch: new command: Save Database\n
        8. Batch: new command: Set log filename \"filename\"\n
        9. Batch: new command: Write text to log \"text\"\n
        10. OLE: added new method to AnalysisDoc object: Abort() - will abort any running Analysis scan\/exploration\/backtest\n
        11. UI: File->Database Setings displayed underestimated memory usage per symbol (32 bytes per quote instead of 40). Corrected.\n<\/ol>\n

          CHANGES FOR VERSION 6.17.0<\/strong> (as compared to 6.16.0)<\/p>\n

            \n
          1. New Batch processor - allows to define sequences of scans\/explorations\/backtests\/optimizations using different project files that are then run automatically. Detailed instructions on how to use Batch window are here http:\/\/www.amibroker.com\/guide\/h_batch.html<\/a>\n
          2. AFL: Changed default number formatting string from \"%g\" to \"%.7g\" (so 7 significant digits are now displayed instead of 6)\n
          3. AFL: new function GetFnDataForeign( \"field\", \"symbol\" ) - the same as GetFnData but retrieves non-current symbol's data\n
          4. AFL: new function InternetClose( handle )\n
          5. AFL: new function InternetOpenURL( \"url\" )\n
          6. AFL: new function InternetReadString( handle ) - read a string (line) from internet resource\n
          7. AFL: printf\/StrFormat\/TRACEF support now \"%s\" (string specifier) and accept string arguments passed and made faster too\n
          8. Data: Gics.txt classification updated (thanks to PremiumData)\n
          9. OLE Automation: individual backtest is now supported via OLE automation\n
          10. OLE: Interval property of Document object is now writable so you can set chart interval from OLE\n
          11. Startup is made faster\n
          12. UI: AFL Editor MDI UI did not get immediate refresh after file name change when main window was in modal state due to the way how MFC works. Fixed.\n
          13. UI: File->Database Settings, default maximum \"number of bars\" increased to 1 million\n
          14. UI: New Analysis Settings submenu is now duplicated in main window Analysis->Options menu for easier access for beginners\n
          15. Watch window: added support for modulo (%) operator in watches\n<\/ol>\n

            CHANGES FOR VERSION 6.16.0<\/strong> (as compared to 6.15.0)<\/p>\n

              \n
            1. New Analysis: implemented entirely new inter-thread communication method that does not strain main thread message queue. This gives tremendous improvement in responsivity of UI when Analysis is running\n
            2. New Analysis: removed forced message pumping when AFL finished as it was causing issues with proper MDI tab refreshes in Windows 10 while Analysis was running\n
            3. New Analysis: UI: added an option to keep using existing AFL file on opening APX project instead of asking the user what to do when differences are found between AFL file and content of APX project.\n
            4. AFL: changed the way how custom-backtest reports \"stocknum\". Previously Status(\"stocknum\") was equal to zero on custom backtest phase and this may have caused parts that use if(Status(\"stocknum\")==0) to be excecuted during custom backtest phase. Now custom backtest reports stocknum equal -1.\n
            5. AFL: DateTimeConvert supports now more formats, format = 6 - day, 7 - month, 8 - year, 9 - day of week, 10 - day of year, 11 - quarter (1..4)\n
            6. Charts: as apparently single pixel geometric pens are 8 times slower than DC pen, the optimization has been implemented that uses DC single pixel pen instead of geometric pen when bar width is 1, giving 8x faster 1-pixel bar charts\n
            7. Since 6.15 when $AUTOADD was set to 0 (zero), then symbols not existing in the database but present in the imported file were not logged into import.log as earlier. Fixed.\n
            8. UI: when AM\/PM (12 hour format) was used in list views 12:00AM was interpreted as 12:00 (noon), instead of 00:00 (midnight). Fixed.\n
            9. When backtesting Short only strategy and using backtestRegular mode and using HoldMinBars > 1, a disabled stop could trigger if it was enabled in previous backtest run. Fixed.\n
            10. Support for Windows 98 and Millenium is dropped. If anybody needs that back please let us know (email to support)!\n<\/ol>\n

              CHANGES FOR VERSION 6.15.0<\/strong> (as compared to 6.14.0)<\/p>\n

                \n
              1. AFL: DateTimeFormat( \"formatstr\", datetime ) - converts datetime to string according to user-specified format\n
              2. AFL: new function Kurtosis( ARRAY, range, population = True )\n
              3. AFL: new function Skewness( ARRAY, range, population = True )\n
              4. AFL: new modes added to DateTimeToStr() that use ISO regardless of regional settings mode = 3 (iso date and time YYYY-MM-DD HH:MM:SS) HH:MM:SS part is only included for non-EOD records, 4 (iso date only YYYY-MM-DD), 5 (iso time only HH:MM:SS)\n
              5. AFL: NumToStr could crash if format parameter was greater than 127. Fixed. Now an error message is displayed when format parameter is too large\n
              6. AFL: NumToStr now supports formatDateTimeISO\n
              7. AFL: StDev function added 3rd argument \"Population = True\", when Population is True it calculates population based stdev, otherwise sample based\n
              8. ASCII import: from version 6.11 importer always added new symbols even if $AUTOADD 0 was used. Fixed.\n
              9. UI: Charts window - an attempt to rename a file or directory to something that already exists is now prevented and results in error message box.\n
              10. UI: in 6.14 when New Analysis was switched to 'floating' mode, it could crash on attempt to run analysis. Fixed.\n
              11. UI: Quote editor - in single-symbol mode \"ticker\" field sometimes was not updated. Fixed.\n
              12. UI: Symbol->Quick Find menu command brings focus to Symbol's window search box. New installations use F3 key assignment for Quick Find. Old installations use old assignment (you can change F3 assignment in Tools->Customize->Keyboard)\n<\/ol>\n

                CHANGES FOR VERSION 6.14.0<\/strong> (as compared to 6.13.0)<\/p>\n

                  \n
                1. AFL: ParamDate() added support for format=2 to return datetime instead of datenum\/string\n
                2. AFL: PercentRank function now accepts variable period (range)\n
                3. AFL: PriceVolDistribution crashed if startbar argument was negative. Fixed by implementing protection against negative bar indexes.\n
                4. AFL: PriceVolDistribution sometimes produced some random values in 6.13. Fixed.\n
                5. ASCII importer now supports microsecond resolution timestamps (HH:MM:SS.mmmuuu) where mmm - milliseconds 000..999, uuu - microseconds 000..999\n
                6. New Analysis: new feature a PAUSE button to temporarily pause\/resume any running analysis. Note that already running threads are not interrupted, they are allowed to complete gracefully and then pause state is entered.\n
                7. UI: A warning message is displayed when user attempts to close AmiBroker while Analysis is in progress\n
                8. UI: QuoteEditor in some cases did not properly round fractional part of millisecond down to microsecond. Fixed\n
                9. UI: QuoteEditor: Edit fields for OHLC prices, Volume, OpenInt and Aux now check for proper entry as you type and display red background if entered string is not proper numer. Also those edit fields don't accept characters other than digits (0..9), decimal\n
                10. UI: Toolbar icons are set to \"Large icons\" mode automatically on HighDPI screens\n
                11. When broker.workspace file was corrupted or truncated, the file remained open which eventually prevented from writing it on close. Fixed.\n<\/ol>\n

                  CHANGES FOR VERSION 6.13.0<\/strong> (as compared to 6.12.0)<\/p>\n

                    \n
                  1. AFL Editor: calling SetForeign thousands of times followed by RestorePriceArrays() could cause exception during code verify when number of symbols exceeded cache size. Fixed.\n
                  2. AFL Editor: changes made in 6.11 to the way how automatic names for new formulas are assigned have been removed and replaced by new method that is faster and more reliable.\n
                  3. AFL Editor: if clipboard is locked by another application the editor would retry opening clipboard upto 8 times before giving up\n
                  4. AFL Editor: when formula was open cursor was located at the end. Now it is located at the top.\n
                  5. AFL: GfxSetCoordsMode( mode ) accepts now four different modes\n
                  6. AFL: MA function made upto 2 times faster, StDev function made 20% faster, Correlation made 40% faster\n
                  7. AFL: NormDist( x, mean = 0, sigma = 1, cumulative = True ) function. Implements hi-precision algorithm.\n
                  8. AFL: PriceVolDistribution( priceH, priceL, vol, bins, absolute = False, startbar = 0, endbar = -1 )\n
                  9. AFL: 64-bit version AFL Correlation() produced slightly different values (+\/-0.00001 typ) than 32-bit version due to compiler differences. Now 64-bit version produces same values as produced by all 32-bit versions.\n
                  10. Charting: new feature - Snap to Tick grid. Snap drawing tool end points to TickSize-spaced grid (if TickSize > 0 for given symbol)\n
                  11. Plugin loading routine displays a message box when plugins with incorrect bitness are found\n
                  12. Plugin loading routine writes detailed error message to the broker.log in case of problem of DLL loading (must enable plugin log to use this feature)\n
                  13. When drawn study is being modified, Y distance shown in the status bar accounts for activated snap-to-price and\/or snap-to-tick mode now.\n<\/ol>\n

                    CHANGES FOR VERSION 6.12.0<\/strong> (as compared to 6.11.0)<\/p>\n

                      \n
                    1. AFL: new function GfxDrawImage( \"filename\", x, y )\n
                    2. AFL: new function CumProd( factor ) - cumulative product of array elements\n
                    3. AFL: new function Prod( array, range ) - cumulative product of array elements over specified number of bars (range)\n
                    4. AFL: new function ProdSince( condition, array ) - cumulative product of array elements since condition is met\n
                    5. AFL: new function VoiceSelect( num ) - select SAPI (Speech API) voice to be used with Say() function, num is a numerical index of installed voices. By default Windows comes with just one voice, but one can add countless 3rd party voices\n
                    6. AFL: new function VoiceCount( ) - returns number of available SAPI (Speech API) voices - to be used with Say() command\n
                    7. AFL: StaticVarAdd with non-array input produced incorrect results. Fixed.\n
                    8. UI: New Analysis: Alt+Enter shortcut added to bring up settings window\n
                    9. UI: Quote Editor allows now immediate search for matching date - just type digits in format YYYYMMDD and list will automatically scroll and mark to quote that most closely matches entered date\n
                    10. UI: Realtime quote window: a RMB context menu items are grayed when local data is used and an empty message is set to inform the user that he\/she needs realtime data source to use this window\n
                    11. UI: Symbol Information - date fields (like last split date, div date or delisting date) can now be cleared (select all and press DELETE) to set Empty\/Null date\n
                    12. UI: Symbols with COMMA (,) caused problems with multiple-selection operations. Now it is handled properly.\n<\/ol>\n

                      CHANGES FOR VERSION 6.11.0<\/strong> (as compared to 6.10.0)<\/p>\n

                        \n
                      1. AFL: added formatDateTimeISO for ISO formatting regardless of locale settings\n
                      2. AFL: MxFromString was slow on very large matrices (>100000 cells) due to poor performance of strtod function from Microsoft C runtime. Now MxFromString does not use it and is even 1000 times faster on 100K+ cell matrices (5ms vs 5second)\n
                      3. ASCII importer can now be even 20 times faster when importing NEW (non existing) data that were oddly sorted (like for example in reverse order - descending dates instead of ascending).\n
                      4. ASCII importer is now twice as fast when updating already existing quotes thanks to using in-house code instead of msvcrt functions.\n
                      5. Charting: Fibonacci maximum user-definable level increased to 9000% (from 1000%)\n
                      6. Idle processing is forced now every 125 ms (instead of 250ms) in Analysis window to update UI components more frequently under heavy CPU load\n
                      7. Ruin stop is identified by Short(ruin) \/ Sell(ruin) instead of Short(6) \/ Sell(6)\n
                      8. Startup splash screen is displayed a little sooner now and some pre-loading of editor components is done at start to save time to open editor later\n
                      9. When there were thousands of files in \"Formulas\" folder opening editor for the first time could take some time. Now this time is significantly reduced.\n<\/ol>\n

                        KNOWN ISSUES:<\/strong><\/p>\n

                          \n
                        1. None\n<\/ol>\n

                          For more details, instructions and examples how to use new features see the 6.20 What's New<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"

                          Stability: – stable, should work fine in most environments UPDATE Feb 25, 2017: 6.20.1 is now considered as official release version. A new release candidate version (6.20.1) of AmiBroker, complete with full setup, data files and updated documentation has just been released. This version is going to become official after one week if no important […]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[],"_links":{"self":[{"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/posts\/1280"}],"collection":[{"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/comments?post=1280"}],"version-history":[{"count":0,"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/posts\/1280\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/media?parent=1280"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/categories?post=1280"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.amibroker.com\/wordpress\/devlog\/wp-json\/wp\/v2\/tags?post=1280"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}