Stability: - regular BETA should work fine in most environments<\/em><\/p>\n
This is a BETA version. Make a backup first<\/strong><\/font><\/p>\n
A new beta version (6.22.0) of AmiBroker, with new x64 optimizations and preliminary native chart GUI support has just been released.<\/p>\n
32-bit<\/strong> version:
\nhttp:\/\/www.amibroker.com\/members\/bin\/ab6220beta.exe<\/a>
\n(2 255 312 bytes) <\/p>\n
64-bit<\/strong> version:
\nhttp:\/\/www.amibroker.com\/members\/bin\/AmiBroker6220x64.exe<\/a>
\n(10 643 696 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
UPGRADE POLICY<\/strong>
\nThis version is a free upgrade only for users who registered AmiBroker after April 30, 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
Remember to BACKUP YOUR FILES FIRST !
\nNote that this version can only be installed onto previous full installation of version 6.20 or higher from http:\/\/www.amibroker.com\/download.html<\/a><\/strong><\/p>\n
FEATURE HIGHLIGHT 6.22<\/strong><\/p>\n
Note that migration does NOT affect 32-bit version. It is still compiled with old compiler.<\/p>\n
Why do we migrate to new compiler with 64-bit version?<\/p>\n
Why do we stay with old compiler in 32-bit version?<\/p>\n
Exact performance improvement is function dependent and hardware dependent. Many functions are faster by 30-50% but in some cases such as Min()\/Max() functions as large as 8x speed up can be observed in 64-bit version. <\/p>\n
FEATURE HIGHLIGHT 6.21<\/strong>
\nThis version features preliminary support for native chart GUI (buttons and edits at the moment). Please be reasonable with Gui* functions and be aware of Windows limits. As all controls in Windows (buttons, edit boxes, etc) are actual Window objects they are subject to Windows limitation. And there is a limit of 10000 windows PER PROCESS. So don't try to create thousands of buttons (like a button for every bar of data) because first you will see huge performance decrease and next you will hit the limit and run into problems (crash), see https:\/\/blogs.msdn.microsoft.com\/oldnewthing\/20070718-00\/?p=25963<\/a>.<\/p>\n
For more details, instructions and examples how to use new features see the 6.21.0 BETA READ ME<\/a><\/p>\n
Here is a sample formula that shows basic usage of Gui* functions:<\/p>\n
GuiButton<\/span>( <\/span>"Custom button"<\/span>, <\/span>1<\/span>, <\/span>10<\/span>, <\/span>40<\/span>, <\/span>100<\/span>, <\/span>30<\/span>, <\/span>7 <\/span>);\r
<\/span>GuiButton<\/span>( <\/span>"Dynamic "<\/span>+<\/span>Date<\/span>(), <\/span>2<\/span>, <\/span>120<\/span>, <\/span>40<\/span>, <\/span>150<\/span>, <\/span>30<\/span>, <\/span>7 <\/span>);\r
<\/span>GuiButton<\/span>( <\/span>"System button"<\/span>, <\/span>3<\/span>, <\/span>320<\/span>, <\/span>40<\/span>, <\/span>100<\/span>, <\/span>30<\/span>, <\/span>7 <\/span>);\r
<\/span>GuiEdit<\/span>( <\/span>5<\/span>, <\/span>450<\/span>, <\/span>40<\/span>, <\/span>100<\/span>, <\/span>20<\/span>, <\/span>31 <\/span>);\r
\r
<\/span>GuiSetColors<\/span>( <\/span>1<\/span>, <\/span>3<\/span>, <\/span>2<\/span>, <\/span>colorRed<\/span>, <\/span>colorBlack<\/span>, <\/span>colorRed<\/span>, <\/span>colorWhite<\/span>, <\/span>colorBlue<\/span>, <\/span>colorYellow<\/span>, \r
<\/span>colorRed<\/span>, <\/span>colorBlack<\/span>, <\/span>colorYellow <\/span>);\r
\r
<\/span>GuiSetColors<\/span>( <\/span>3<\/span>, <\/span>3<\/span>, <\/span>0 <\/span>); <\/span>\/\/ default (system) look\r
\r
<\/span>editText <\/span>= <\/span>GuiGetText<\/span>( <\/span>5 <\/span>);\r
\r
<\/span>Title <\/span>= <\/span>"Text entered: " <\/span>+ <\/span>editText <\/span>+ <\/span>"\\nLast event: " <\/span>+ <\/span>GuiGetEvent<\/span>( <\/span>0<\/span>, <\/span>2 <\/span>);\r
\r
<\/span>id <\/span>= <\/span>GuiGetEvent<\/span>( <\/span>0<\/span>, <\/span>0 <\/span>);\r
<\/span>event <\/span>= <\/span>GuiGetEvent<\/span>( <\/span>0<\/span>, <\/span>1 <\/span>);\r
\r
if( <\/span>id <\/span>== <\/span>3 <\/span>&& <\/span>event <\/span>== <\/span>1 <\/span>) <\/span>GuiSetText<\/span>(<\/span>"Button clicked"<\/span>,<\/span>5<\/span>);<\/code><\/pre>\nCHANGES FOR VERSION 6.22.0<\/strong> (as compared to 6.21.0)<\/p>\n
\n
- 64-bit: migrated all code to new compiler VC++2017 which seems to produce better code for x64 resulting in 30...50% speed improvements for many AFL functions. The only negative seems to be much bigger runtime libs\n
- 64-bit: AFL: Sum() function 2x faster\n
- 64-bit: AFL: Max() and Min() functions 8x faster\n
- 64-bit: AFL: Ref() funciton 2x faster\n
- 64-bit: AFL: MACD(), ROC(), StDev(), LinearReg() and many other functions faster by 30-50%\n
- AFL: GetExtraData does not trigger code check and profile warning about referencing future quotes if plugin implements new GetExtraDataEx function\n
- AFL: GuiEdit complained about 2nd parameter instead of 1st (being less than zero)\n<\/ol>\n
CHANGES FOR VERSION 6.21.0<\/strong> (as compared to 6.20.1)<\/p>\n
\n
- AFL: decreased memory fragmentation when user changes type of variable from array to scalar and back thousands of times\n
- AFL: GuiButton( \"Text\", id, x, y, width , height , notifyflags ) - creates a button\n
- AFL: GuiEdit( id, x, y, width, height, notifyflags ); - creates an edit field\n
- AFL: GuiGetEvent( num, what = 0 )\n
- AFL: GuiGetText( id ) - get text from control\n
- AFL: GuiSetColors( idFrom, idTo, border , clrText = -1, clrBack = -1, clrBorder = -1, clrSelText = -1, clrSelBack = -1, clrSelBorder = -1, clrHoverText = -1, clrHoverBack = -1, clrHoverBorder = -1, clrDisText = -1, clrDisBack = -1, clrDisBorder = -1\n
- AFL: GuiSetText( \"text\", id ) - set text of the control\n
- AFL: RequestMouseMoveRefresh() - request formula execution \/ refresh when mouse is moved INSIDE given chart pane (so it only triggers for ONE window under the cursor)\n
- If Quote.exe is missing and AmiBroker can't do auto-update of quotes, a detailed information is displayed of where it expects Quote.exe file to be present\n
- Plugin loading changed: first AmiBroker attempts to load plugins for \"Plugins\" subfolder from where Broker.EXE file is located (new behavior) and if subfolder is NOT found, it then defaults to old behavior (using \"Plugins\" subfolder under current working\n<\/ol>\n
KNOWN ISSUES:<\/strong><\/p>\n