AmiBroker 5.95.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 (5.95.0) of AmiBroker has just been released.

32-bit version:
(2 458 000 bytes)

64-bit version:
(9 977 200 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 5.90 or higher from

CHANGES FOR VERSION 5.95.0 (as compared to 5.94.0)

  1. AFL Editor: Pretify formatting fixes and improvements. Also editor attempts to keep unchanged scroll position after prettify.
  2. AFL Editor: Prettify selection now removes extra padding around parenthesis and leaves only one space pad inside
  3. AFL Editor: Word wrap implemented (View->Word Wrap menu)
  4. AFL Engine: upsizing certain common scalar values (-1, 0, 1, Null) to array is much quicker thanks to caching
  5. AFL: #pragma maxthreads N – where N is a natural number 1…. Allows to lower the number of parallel threads using in Analysis. For example to run in just one thread use #pragma maxthreads 1
  6. AFL: ApplyStop has new, 7th parameter: precedence that defines the order in which stops are triggered if they appear on the very same bar
  7. AFL: Custom Backtest: Monte Carlo simulation results are now available in custom bactester (after backtest or PostProcess()). GetMonteCarloSim() to retrieve MC object to access distributions
  8. AFL: MonteCarloSim GetValue( “field”, percentile )
  9. AFL: new function: IIR – general-purpose Infinite Impulse Response filter of order 1-4
  10. AFL: SetOption/GetOption new fields for MC Equity/Straw broom chart, “MCChartEquityCurves” (true/false), “MCStrawBroomLines” (0..100), MCPosSizePctEquity (0..100)
  11. AFL: Status(“ThreadID”) – gets the current thread ID under which formula is executed
  12. Analysis: MCS: new position sizing method: Percent of Equity
  13. Backtest: fixed ruin stop (99.6% drawdown) in backtestModeRegular is executed last as in other modes now.
  14. Memory usage was larger in 5.94 when lots of chart panes were open. Now it is back to previous levels.
  15. MonteCarlo: Min/Max/Avg Equity + Straw broom chart implemented + Settings
  16. UI: Enhanced Assignment Organizer: Faster operation, display FULL NAME alongside with symbol, sorting by column, alternate row background, proportional resizing of both left/right lists

CHANGES FOR VERSION 5.94.0 (as compared to 5.93.0)

  1. Analysis: implemented high-speed integrated Monte Carlo simulation (preliminary) that produces CDF charts of MC Final Equity, MC CAR, MC Max Drawdown $ and %, Lowest Equity (more details in the Read Me)
  2. AFL: SetOption/GetOption support new fields that control Monte Carlo simulation: “MCEnable” (true/false), “MCRuns” – default 1000, “MCPosSizeMethod” – 0 – don’t change, 1 – fixed size, 2 – constant amount, “MCPosSizeShares” (number), “MCPosSizeValue” (number)
  3. AFL: 32-bit round() is 7X faster and now works in “round half to even” (default IEEE mode) instead of half towards infinity. Hand written in assembly due to slowness of CRT
  4. AFL: int() and frac() functions are 2X faster now
  5. AFL: integer division operator \ (experimental)
  6. AFL: StrMatch() – string pattern/wildcard matching
  7. AFL: support for UCN (universal character numbers) \uXXXX where XXXX is hexadecimal character code. UCN output works in PlotText/PlotTextSetFont, GfxDrawText, GfxTextOut, Chart titles (more details in the Read Me)
  8. Interpretation and Commentary windows. Requires Windows 2000 or higher
  9. UI: Charts: when creating a new chart window Interval Lock was often marked automatically. Now it is fixed (it is always OFF for new charts).
  10. UI: XY-charts could enter infinite loop (hang) if ALL Y-coordintates were the same. Fixed.
  11. UI: XYCharts tooltip display shows X/Y point data under the cursor as in old version but when it does not find any, it shows data point from relevant X position

CHANGES FOR VERSION 5.93.0 (as compared to 5.92.0)

  1. AFL Editor provides precise positioning of cursor for errors that occur within argument list of function calls
  2. AFL: Error 5 (incorrect type of argument in function call) is now much more precise: it tells what function expects and what type is actually found
  3. AFL: Low Level Gfx: GfxSelectStockObject() added – allows to select so called “stock” GDI objects such as Hollow brush (that allow to draw empty circles, polygons and so on)
  4. AFL: Low-Level Gfx: GfxSelectHatchBrush( color, style )
  5. AFL: Low-level Gfx: GfxSetZOrder now supports using z-order outside -5…+5 range, but displays a warning 903 in the editor about possible decrease in performance
  6. AFL: Percentile() function now supports variable period and has default value for rank = 50 (such param gives median with average of upper/lower median for even periods)
  7. AFL: XYAddChartPoint has new parameter (linecolor)
  8. AFL: XYChartSetAxis now supports the following styles: styleLine, styleDots, styleHistogram, styleThick and combinations of those styles. Multiple lines are possible – to start a new line call add a NULL point – XYAddChartPoint( chartname, “”, Null, Null );
  9. Backtest: Buy-And-Hold simulation is performed and its statistics are calculated and included in the Backtest Report.
  10. Backtest: Report : numerical values don’t get wrapped when report window is made small
  11. Backtest: implemented user-definable interest on account margin loans, charged when net cash balance drops below zero. Margin rate (0..100%) is definable in Analysis Settings.
  12. Backtest: implemented variable interest rate earnings
  13. Backtest: interest earnings on positve cash balance and deductions on margin loans are now reported in detail in “Detailed log” mode every day
  14. Filter window enhanced. Now you can select multiple categories of the same type (for example even 7 different watch lists) and combine them using “OR” (match ANY), or “AND” (match ALL)
  15. UI: Commentary: added marquee progress bar to give visual clue to the user when formula is being executed
  16. UI: Deletion of symbols is now confirmed with better looking task dialog that has explicit button “Yes, delete permanently” to avoid user mistakes

CHANGES FOR VERSION 5.92.0 (as compared to 5.91.0)

  1. Analysis: Exploration’s XYChart now allows bar style in addition to point style.
  2. AFL: New argument for XYChartSetAxis(“chartname”, “xaxis”, “yaxis”, chartStyle = 0 )
  3. AFL: SetChartBkColor did not change the background behind X-axis text. Fixed.
  4. AFL: WriteVal/NumToStr has now new roundAndPad parameter that controls whenever function rounds output beyond 7th significant digit (and pads the rest with zeros), By default rounding is OFF now because it was off in 5.90 and earlier and rounding introduced in 5.91 could confuse old time users
  5. AFL: WriteVal/NumToStr will display Warning 506 if specified format exceeds maximum IEEE precision (7 significant digits) and roundAndPad option is turned off
  6. Analysis: 3D optimization chart was not available after Individual (MT) Optimization. Fixed.
  7. Analysis: a faster Export to CSV routine in 5.91.0 caused memory leak. Fixed.
  8. Analysis: Export to CSV could run out of memory when exporting more than 2GB. Fixed.
  9. Log window shows correct path when using “Check AFL syntax” in the editor, especially helpful if error is inside #included file
  10. Log window: double clicking on error line brings up AFL editor and scrolls to error line / column automatically
  11. PersistentVars.bin loading moved to AFTER CWD fix (prevents problem with deleting persistent variables when program is started with incorrect working directory)

CHANGES FOR VERSION 5.91.1 (as compared to 5.90.1)

  1. Fixed problem introduced in 5.91.0 with [] operator sometimes giving misleading error message
  2. AFL/Charts: GfxSetCoordsMode( 1 ) now works with logarithmic scale too.
  3. AFL: added “Warning 505. Division by zero” (level 2 warning). It detects divison by zero in arrays too and prints which array element was zero
  4. AFL: failed COM type conversion is reported as a regular error within editor/log window instead of displaying message box
  5. AFL: new field in SetOption(“WarningLevel”, x ); — allows to change warning level. Level 1 is default for all AFL executions with exception of AFL editor and commentary where warning level is set to 4
  6. AFL: new function AddRow (AddTextRow?) to add a raw text row to the exploration (allows outputing things without respecting Filter and without being limited to number of bars)
  7. AFL: new functions SparseCompact( query_points, data ) /SparseExpand( query_points, data )
  8. AFL: NumToStr protected against user error of specifying precision higher than provided by IEEE standard (display never exceeds 7 significant digits, rest is padded with zeros)
  9. AFL: the engine displays more verbose error in case when GetArraySymbolCopy fails
  10. Analysis: CSV Export speeded up 100+ times. Now exporting large files takes seconds instead of hours. Export speeds on ordinary hard disks > 80MB/sec
  11. Charts: Interval Lock added (so now you can lock symbol or interval or both)
  12. Commentary window – warning level raised to 4 (report all warnings in commentary window)
  13. Sort() could crash with IndexMode = True and start parameter was greater than zero. Fixed.
  14. When chart pane is being resized/dragged, real-time chart refreshes are temporarily held to prevent disappearing of tracking rectangle


  1. None

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

AmiQuote 3.12 released

A new version of AmiQuote 3.12 is available for download from (100KB) – 32 bit version (120KB) – 64 bit version

This version features new data source: (US stocks, EOD data). Please do not forget to enter your AuthToken for in the Tools->Settings – it is required if you want to issue more than 50 download requests per day. AuthToken can be obtained from web site.

The upgrade is free for all previously registered AmiQuote users.

CHANGES FOR VERSION 3.12 (as compared to version 3.04)

  1. Yahoo changed the format slightly causing problems with Yahoo Fundamental Basic download. Incompatibility is fixed now.

CHANGES FOR VERSION 3.10 (as compared to version 3.04)

  1. Added new data source: (US stocks, EOD data).
  2. Removed code and settings for Lycos/ (taken over by eSignal and shut down) – no longer available

CHANGES FOR VERSION 3.03 (as compared to version 3.02)

  1. added “Max days” edit to control maximum intraday backfill length. Specifying lower than maximum allowed days results in faster download and less data to transfer. Google Intraday supports 1..15 max days for 1-minute bars and 1..60 max days for 5-minute bars. Yahoo Intraday supports only 1-day of 1-minute bars and only 1 and 5 days of 5-minute bars. Specifying other combinations (such as 2, 3 or 4 max days for 5-minute bars) for Yahoo results in retrieving all 5 days.


AmiQuote is nothing but specialized web browser/downloader. You are using 3rd party web pages/services (Yahoo/MSN/Google/Finam) available to the public and AmiQuote acts like Internet Explorer or Firefox. The availability of data/web pages depends on those 3rd parties and may change in the future. The financial data downloaded from public web sites such as Yahoo Finance/MSN/Google/Finam are for personal use only. Consult 3rd parties’ Terms of Service for details. For actual trading we recommend using paid data sources that provide higher data quality and reliability.

IMPORTANT NOTE for AmiBroker 64-bit users:

There is also a 64-bit version of AmiQuote available from (120KB) – but please note that if you installed AmiBroker 64-bit to directory different than C:\Program Files\AmiBroker then you would need to pick correct AmiBroker 64-bit installation directory manually, since this small update package would not detect 64-bit AmiBroker installation automatically.