AmiBroker 6.15.0 BETA released

Stability: Rank 3 - Regular BETA, pretty stable, should work fine in most environments

This is a BETA version. Make a backup first

A new beta version (6.15.0) of AmiBroker has just been released.

32-bit version:
(2 226 344 bytes)

(10 441 344 bytes)

If you can not log in into members' area please get your new password by filling the form at:

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

Note that this version can only be installed onto previous full installation of version 6.10 or higher from

CHANGES FOR VERSION 6.15.0 (as compared to 6.14.0)

  1. AFL: DateTimeFormat( "formatstr", datetime ) - converts datetime to string according to user-specified format
  2. AFL: new function Kurtosis( ARRAY, range, population = True )
  3. AFL: new function Skewness( ARRAY, range, population = True )
  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)
  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
  6. AFL: NumToStr now supports formatDateTimeISO
  7. AFL: StDev function added 3rd argument "Population = True", when Population is True it calculates population based stdev, otherwise sample based
  8. ASCII import: from version 6.11 importer always added new symbols even if $AUTOADD 0 was used. Fixed.
  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.
  10. UI: in 6.14 when New Analysis was switched to 'floating' mode, it could crash on attempt to run analysis. Fixed.
  11. UI: Quote editor - in single-symbol mode "ticker" field sometimes was not updated. Fixed.
  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)

CHANGES FOR VERSION 6.14.0 (as compared to 6.13.0)

  1. AFL: ParamDate() added support for format=2 to return datetime instead of datenum/string
  2. AFL: PercentRank function now accepts variable period (range)
  3. AFL: PriceVolDistribution crashed if startbar argument was negative. Fixed by implementing protection against negative bar indexes.
  4. AFL: PriceVolDistribution sometimes produced some random values in 6.13. Fixed.
  5. ASCII importer now supports microsecond resolution timestamps (HH:MM:SS.mmmuuu) where mmm - milliseconds 000..999, uuu - microseconds 000..999
  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.
  7. UI: A warning message is displayed when user attempts to close AmiBroker while Analysis is in progress
  8. UI: QuoteEditor in some cases did not properly round fractional part of millisecond down to microsecond. Fixed
  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
  10. UI: Toolbar icons are set to "Large icons" mode automatically on HighDPI screens
  11. When broker.workspace file was corrupted or truncated, the file remained open which eventually prevented from writing it on close. Fixed.

CHANGES FOR VERSION 6.13.0 (as compared to 6.12.0)

  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.
  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.
  3. AFL Editor: if clipboard is locked by another application the editor would retry opening clipboard upto 8 times before giving up
  4. AFL Editor: when formula was open cursor was located at the end. Now it is located at the top.
  5. AFL: GfxSetCoordsMode( mode ) accepts now four different modes
  6. AFL: MA function made upto 2 times faster, StDev function made 20% faster, Correlation made 40% faster
  7. AFL: NormDist( x, mean = 0, sigma = 1, cumulative = True ) function. Implements hi-precision algorithm.
  8. AFL: PriceVolDistribution( priceH, priceL, vol, bins, absolute = False, startbar = 0, endbar = -1 )
  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.
  10. Charting: new feature - Snap to Tick grid. Snap drawing tool end points to TickSize-spaced grid (if TickSize > 0 for given symbol)
  11. Plugin loading routine displays a message box when plugins with incorrect bitness are found
  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)
  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.

CHANGES FOR VERSION 6.12.0 (as compared to 6.11.0)

  1. AFL: new function GfxDrawImage( "filename", x, y )
  2. AFL: new function CumProd( factor ) - cumulative product of array elements
  3. AFL: new function Prod( array, range ) - cumulative product of array elements over specified number of bars (range)
  4. AFL: new function ProdSince( condition, array ) - cumulative product of array elements since condition is met
  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
  6. AFL: new function VoiceCount( ) - returns number of available SAPI (Speech API) voices - to be used with Say() command
  7. AFL: StaticVarAdd with non-array input produced incorrect results. Fixed.
  8. UI: New Analysis: Alt+Enter shortcut added to bring up settings window
  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
  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
  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
  12. UI: Symbols with COMMA (,) caused problems with multiple-selection operations. Now it is handled properly.

CHANGES FOR VERSION 6.11.0 (as compared to 6.10.0)

  1. AFL: added formatDateTimeISO for ISO formatting regardless of locale settings
  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)
  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).
  4. ASCII importer is now twice as fast when updating already existing quotes thanks to using in-house code instead of msvcrt functions.
  5. Charting: Fibonacci maximum user-definable level increased to 9000% (from 1000%)
  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
  7. Ruin stop is identified by Short(ruin) / Sell(ruin) instead of Short(6) / Sell(6)
  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
  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.


  1. None

For more details, instructions and examples how to use new features see the 6.15.0 BETA READ ME