AmiBroker 6.92.0 BETA release

A new BETA release version (6.92.0) of AmiBroker is available now.

Note: stability of our BETA versions is top notch. The reason why it is marked BETA is that some of NEW features are in development. But this does not affect normal operation of the program.

DOWNLOAD LINKS

32-bit version:
https://www.amibroker.com/members/download.php?AmiBroker.6.92.0.exe

64-bit version:
https://www.amibroker.com/members/download.php?AmiBroker.6.92.0.x64.exe

HIGHLIGHTS

Highlights are documented in What's new in AmiBroker 6.91

DOCUMENTATION

For the details see ReadMe.html and ReleaseNotes.html inside AmiBroker folder, F1 help, as well as in the on-line guide AmiBroker 6.90 User's Guide

UPGRADE POLICY

This version is a free upgrade only for users who registered AmiBroker after July 1, 2022 . Users who registered earlier, would need to purchase license upgrade. To find out the version you currently have use Account Information page at https://www.amibroker.com/members/info.php

CHANGES FOR VERSION 6.92.0 (as compared to 6.91.0)

  1. Added 'Warning 904' when SetOpacity is called without proper settings ("Multithreaded charts" and "QuickGFX" must be turned on in the Preferences)
  2. Charts (formula) treeview now uses Dark Mode when it is selected in the Customize/Appearance dialog
  3. Interpretation window now uses Dark Mode when it is selected in the Customize/Appearance dialog
  4. Layers list now uses Dark Mode when it is selected in the Customize/Appearance dialog
  5. Layout treeview now uses Dark Mode when it is selected in the Customize/Appearance dialog
  6. Notepad window uses Dark Mode when it is selected in the Customize/Appearance dialog
  7. Symbol Information window now uses Dark Mode when it is selected in the Customize/Appearance dialog
  8. Symbol list and category tree now use Dark Mode when it is selected in the Customize/Appearance dialog

CHANGES FOR VERSION 6.91.0 (as compared to 6.90.6)

  1. AFL: AddColumn supports 2 new formats: formatDateOnly and formatTimeOnly to display DateTime() values
  2. AFL: SetOpacity( opacity = 1 ); to change opacity level (0..1) for subsequent Plot() calls. Opacity = 1 means totally opaque, 0.5 - half-transparent (translucent) 0 - completely transparent (invisible)
  3. QuickGFX: Improved rendering of line plots with width>1 to better align with GDI output
  4. QuickGFX: Opacity / Alpha blending implemented for styleBar plots
  5. QuickGFX: Opacity / Alpha blending implemented for styleCandle plots
  6. QuickGFX: Opacity / Alpha blending implemented for styleDashed plots
  7. QuickGFX: Opacity / Alpha blending implemented for styleDots plots
  8. QuickGFX: Opacity / Alpha blending implemented for styleLine plots
  9. QuickGFX: Opacity / Alpha blending implemented for styleStaircase plots
  10. QuickGFX: Opactity / Alpha blending implemented for styleArea plots
  11. QuickGFX: Opactity / Alpha blending implemented for styleHistogram plots
  12. UI: Column widths in Plugins window scale to DPI
  13. UI: Parameter dialog now keeps the collapsed state of sections, individually on per-chartID basis (for as long as AmiBroker is running)

CHANGES FOR VERSION 6.90.6 (as compared to 6.90.5)

  1. HtmlView (report viewer) now calculates its initial size from screen DPI so it gets larger on hidpi screens automatically
  2. HtmlView (report viewer) remembers its last window size now
  3. HtmlView (report viewer) has "HiDPI aware" flag set in the manifest, that prevents Windows for blurring window
  4. AFL Reference now uses internal viewer that is able to redirect to online version of the guide if help on particular topic is missing from off-line (CHM) version
  5. Changed timestamp formatting in results.rlst back to previously used scheme with '-' and ';' separators

CHANGES FOR VERSION 6.90.5 (as compared to 6.90.1)

  1. AFL: new field Status("seqstep") for reporting current sequence step (1-based), returns 0 if action is NOT run as part of sequence
  2. NewAnalysis: "auto size to fit content" makes columns 10% wider than before because MS ListView "autosizing" calculation does not account for any margin
  3. NewAnalysis: default width of columns is now scaled by screen DPI so they are not too narrow on HighDPI screens
  4. Text tool now has new "Use pixel co-ordinates" mode that allows to fix position of text to pixel coordinates so it stays in place when you move the chart
  5. Maximum number of parameters per section increased to 1000
  6. Commentary editor (richedit based, not scintilla) displays multi-line calltips now (maxtipswidth called and long static buffer used)
  7. Added Help->Activate License dialog to provide better user experience than given by MS SmartScreen :frowning:

CHANGES FOR VERSION 6.90.1 (as compared to 6.90.0)

  1. Registry key changed back to previously used HKCU\Software\TJP\Broker
  2. Report Explorer command line handling fixed

CHANGES FOR VERSION 6.90.0 (as compared to 6.49.1)

  1. AFL Editor: now extended function description is displayed in parameter tooltips for all AFL functions
  2. AFL: All Gui* control functions added extra 'style' parameter
  3. AFL: renamed Map() to MapCreate() to avoid conflicts with existing code using 'map' word as variable identifier, and added alias MxCreate to Matrix for consistency
  4. AFL: SetOption - added yet another protection against passing absurd values in AFL for AccountMargin (outside 1..100)
  5. AFL: SparseInterpolate function added to interpolate values between sparse points given as input
  6. AmiQuote - when UserDataSources.xml config file is not found in the current working directory, change CWD to the directory where Quote.exe is located
  7. Charts: an error is displayed when user has zoomed in / scrolled into blank (no quote) area so there are no data to display
  8. Charts: Removed data access from non-GUI thread in DrawStockCustom()
  9. Charts: when pressing "END" key blank bars are only added upto the point where at least 1 data point is visible on chart
  10. Filter dialog: added a "Clear All" button to Clear BOTH Include and Exclude pages in one click
  11. New Analysis: Exploration: Removed limit of column text length in AddTextColumn
  12. New Analysis: Filter dialog would show categories that were assigned BLANK names (or no name at all as) "" to make sure that users don't assume that selecting empty name is the same as pressing clear button. It isn't
  13. NewAnalysis: changed notice when "Apply to" filtering was too strict so no symbol matched to instruct user to switch to "All symbols" or change the filter
  14. NewAnalysis: Individual optimization crashed when GenerateReports was turned on. Fixed.
  15. NewAnalysis: Removed data access from non-GUI thread in SetupParser in GetNumberOfQuotations
  16. NewAnalysis: sharing violation could occur on attempt to write shared results.rlst file when doing Individual optimization with GenerateReports. Fixed.
  17. NewAnalysis: since AmiBroker in individual optimization mode is fast enough to produce dozens of reports in single millisecond a timestamp for report folder needed to use more resolution than 1ms. Fixed using unique counter. Now folder has YYYYMMDD_HHMMSS
  18. NewAnalysis: when user turned on 'Pad and Align" but reference symbol does not exist in current database, an Error 76 is displayed.
    Regression in 6.49.1 - formulas with lots of AddToComposites could run slower, now changed idle processing so queue is emptied faster
  19. ReportExplorer: file re-reads/refreshes are 10x faster now
  20. ReportExplorer: in case of file sharing violation due to intermittient update of file by the other process, the message is quietly displayed in the status bar instead of modal blocking dialog box
  21. ReportExplorer: now uses hyper-fast list view implementation borrowed from AmiBroker. Results in 20x display performance improvement
  22. UI: Changed the way how "Start page" is displayed in the absence of other MDI windows to prevent opening more than one on loading layout
  23. UI: Filter dialog now provides instructions to press Clear to start over if filtering resulted in no symbols meeting selected criteria
  24. UI: Fixed crash when user attempted to make "Start page" floating
  25. UI: regression Log window did not show runtime errors from charts in 6.49.1. Fixed
  26. UI: Symbol bar, a context menu key on the keyboard (VK_APPS) brings up context menu (in addition to right click)
  27. UI: Symbol/Category view and Category dialog do not allow to set category names to empty (blank) - it will revert to default name if user attempted to remove name completely
  28. When weekly time compression was used, "MonthlyWeeklyUseAlwaysLastTradingDay" mode was used, Monday was not a trading day, and only Tuesday was present, then weekly bar had Monday timestamp instead of Tuesday. Fixed.

Previous version: AmiBroker 6.91.0 BETA Release

5 Likes

For the information about how to use Alpha Blending / Transluency see 6.91 announcement:

Tomasz, thanks for the release. I was testing the new feature "Use dark theme for list views", I notice using the following code:

printf( "This is a test1:" );
printf( "\nThis is a test2:" );
printf( EncodeColor(colorRed) + "\nTest3: %.2f%%", LastValue(Close) );
printf( EncodeColor(colorBlack) + "" );
printf( "\n" + "This is a test4:" )

That if I use Dark Theme then I can't see test4 because of back on black. on the white background test1, test2 and tes4 are printed with black font on white background. is there a way for restate the color to pre EncodeColor(colorRed) state without using EncodeColor(colorBlack). I know I can use colorWhite, however if I go back & forth between color schemes, I don't want to keep on changing my code.

I guess (as you did not mention it) that you are talking about "Interpretation" window, yes or no?

If yes then:

  1. the Dark Theme background color is not entirely black. It is very dark gray ColorRGB(30, 34, 36) - the color that Windows Explorer uses in dark mode, so black text is actually visible, but hardly. If you can't see it it means that your monitor gamma is incorrect.
  2. obviously if you use dark color on dark background it is hardly visible and in general case your code needs to consider colors that it uses to be contrasting with both light and dark themes if you want your codes to be universal
  3. the interpretation window, as well as other dark-mode aware windows, automatically handles change of DEFAULT text color, so the default text color is black in light theme and white in dark theme
  4. default color is used when you did not change the color yourself in the code
  5. to go back to default color use colorDefault constant
printf( "This is a test1:" );
printf( "\nThis is a test2:" );
printf( EncodeColor(colorRed) + "\nTest3: %.2f%%", LastValue(Close) );
printf( EncodeColor(colorDefault) + "" );
printf( "\n" + "This is a test4:" );

This code works universally well on both light and dark themes.

4 Likes