AmiBroker 5.66.0 BETA Read Me
June 21, 2013 16:36
THIS IS A BETA VERSION OF THE SOFTWARE. EXPECT
Backup your data files and entire AmiBroker folder
IMPORTANT: This archive is update-only. You have to install full version
Just run the installer and follow the instructions.
Then run AmiBroker. You should see "AmiBroker 5.66.0 BETA" written
in the About box.
See CHANGE LOG below for detailed list of changes. Note that only changes
that affect end-user directly are listed here. Internal code changes/refactoring
is usually not mentioned.
CHANGES FOR VERSION 5.66.0 (as compared to 5.65.0)
- 32-bit and 64-bit versions now use different registry key to save list
of DLLs so warning messages about non-certified 3rd party plugins are not
each time you switch between 32-bit and 64-bit app version anymore.
- Foreign("~~~EQUITY" )
within custom backtest proc in old AA returned zero (because of change in
- CBT: when low-level mode was used (no ProcessTradeSignals was
called) ~~~Equity open interest field was not filled with number of open
- When user moved default Formula path somewhere else Report
charts were not generated properly. Fixed.
- CBT: a new field "TransactionCosts" (equivalent
to report's "total
transaction costs") is now supported in the custom backtester Stats.GetValue
- ASCII importer: added DELISTED_DATE to fields available in $FORMAT command.
To import delisted symbols you may use file like this. Acceptable date formats
YYYY-MM-DD (ISO standard) and DD-MM-YYYY (automatically detected).
Note that MM-DD-YYYY (US) is not detected because one can not automatically
detect if 01-02-2003 means
february 1st or january 2nd
$FORMAT NAME, DELISTING_DATE
GetFnData returned invalid value for fields DividendPayDate and ExDividendDate
when they were empty (not set) in the Information window. Fixed (now Null is
- AFL: GetFnData now supports new field "DelistingDate"
dd = GetFnData("DelistingDate");
if( IsNull( dd ) )
printf("Security is active");
printf( "Delisted at" + dd + DateTimeToStr( dd ) );
window: added "Delisting date" field.
Delisting Date is a last day when security was available for trading due to
delisting. If the security is still active the field is empty.
- Information window: it was
not possible to set/change Dividend Pay Date and Ex Dividend date from UI.
- Preferences window: new tab "Candles & Bars" that controls
detailed appearance of candlestick and traditional bar charts
Use up/down colors - when marked bar charts use candlestick up/down color defined
in the Colors tab
End cap style - controls whenever bar charts are plotted so the endings of
lines are rounded, square or flat.
The difference between square and flat is that square end will plot with "square" pen
and with wide pens it will plot width/2 pixels above high and below low because
of pen thickness (looks good but high/lows are not precisely marked).
Flat" means that ends terminate at exact position (so high and lows are
precise), but the open/close ticks may look weird when plotted at high/low
Open/Close tick % thickness - controls the thickness of line used to plot
open/close ticks. It is expressed in % of main bar thickness (default is
Open/Close tick % length - controls the length of open/close ticks. It is
expressed in % of candle width which is usually half the distance between
bars (but not more than 30 pixels).
- The database
save was triggered when opening documents using recent file list. Fixed.
window: Right mouse button double click over parameter label resets selected
parameter to the default value now
- AFL: PlotShapes() now has XShift parameter
- Custom metric optimization target
(WF tab) is now matched case-insensitive (FC#2442)
CHANGES FOR VERSION 5.65.0 (as compared to 5.64.0)
- In-memory quotation cache can now be larger than 20K symbols. Now the maximum
is 100K symbols (user definable in Tools->Preferences, "Data" tab).
Caveat use extreme values ONLY if you have plenty of memory AND you are using
- New Analysis: Walk-forward result list colums had "alpha" type
which resulted in alphabetic sort when user clicked on column. Fixed (numeric
is used now).
- QuickData did not work properly for not time-based intervals
so it is now automatically turned off for charts using such intervals.
crash @0048C19A/48C1C4 (click on result list after backtest to show arrows
sometimes produced this).
- Trade profit calculation speeded up which results in upto 15% faster optimization
with lots of trades
- New Analysis: In 5.64.x "stocknum" incorrectly
started counting from 1 instead of 0 as in old versions. Fixed.
of the same symbol as active does nothing (i.e. refers to already existing
thread local data, instead of querying database)
- New Analysis: when SetSortColumns
was used in 5.63 and above it could trigger redundant multiple sorts. Now
it is fixed (sort only once)
- New Analysis: results are now sorted after
Individual Optimization the same way as after portfolio Optimization
CHANGES FOR VERSION 5.64.0 (as compared to 5.63.0)
- New Analysis: Multi-threaded Individual Optimization (experimental). Upto
NumberOfCores faster. Note: no CBT and only exhaustive mode is supported as
The new optimizer is called "Individual Optimize" in the New analysis
window and you can access it here:
Note that old "Optimize" button runs OLD (i.e. 5.60) optimizer -
for comparison purposes.
"Individual Optimize" will use all available processor cores to
perform single-symbol optimization.
In "Current symbol" mode it will perform optimization on one symbol.
In "All symbols" and "Filter" modes it will process all
symbols sequentially, i.e.
first complete optimization for first symbol, then optimization on second
1. Custom backtester is not supported (yet)
2. Smart optimization engines are NOT supported - only EXHAUSTIVE optimization
For explanation of these limitations see http://www.amibroker.com/guide/h_multithreading.html
Eventually I may get rid of limitation (1) - when I change the CBT NOT to
use OLE anymore.
But (2) is probably here to stay for long.
- Built-in constant are set up once and shared among all threads to save
setup time (gives 10% speed up in execution of simple formulas)
- Built-in constants
such as colorBlack are now read-only and any attempt to overwrite such constant
value results in error 55.
- New Analysis, list view in scans, explorations and individual optimizations
is refreshed less often to gain some speed.
- In case of individual backtest
/ individual optimization the backtester allocates much smaller price cache
(just for 2 symbols) - takes less time.
- In 5.63 Bar Replay did not with "QuickData" enabled
(it required View->Refresh All to start working). Fixed.
- Some actions (like
import of past data, split, etc) did not trigger automatic chart refresh
when QuickData was enabled. Fixed.
CHANGES FOR VERSION 5.63.0 (as compared to 5.62.0)
CHANGES FOR VERSION 5.62.0 (as compared to 5.61.0)
- AddSummaryRows now supports also flag = 32. This flag adds standard deviation
AddColumn(V, "Volume" );
AddSummaryRows( 63, 1.2 );
// add Total, Average, Min, Max, and Count and StdDev rows (1+2+4+8+16+32)=63
- with two decimal places summary rows are added at the top of the list
- AddSummaryRows treated NULLs as zeros in averages. Now it is fixed and
NULLs are not included in calculations.
- Drawing tooltip "bars" count
starts from 0 (when line is pure vertical) to match status bar X distance
display. Status bar coords display
once drawing is done to prevent user confusion.
- Snap to price now allows
snapping to Closing and Opening price, to activate snap to close hold down "C" key,
to activate snap to open hold down "O" key
while drawing line / moving the mouse
- When "Play" button is pressed
Bar replay dialog checks if Start Date is earlier than End date and displays
error message if that is not
- Ticker box is updated with new full name if it is changed from
- Per-symbol UserData fields are accessible now via GetFnData("UserData0")..GetFnData("UserData99").
This feature is for implementors of custom data plugins to allow them to
expose custom data
for( i = 0; i < 100; i++ )
printf( "UserData%g %g\n", i, GetFnData("UserData"+i) );
- New Analysis: In 5.61.0 Walk Forward kept old "Current
Scan/Explore/Backtest was run. Fixed
- First line in "Parallel trendlines" tool
is snapped to price (if the option is turned on) as normal trendline.
now plugin supports EOD history for more than 40 years back
- Charting: Copy-Paste
Special allows to copy entire chart pane with various options
a) Entire chart pane (fully independent) - it creates a copy of chart pane,
assigns new chart ID, creates duplicate of the formula file so parameters are
independent and formula is private (not shared with source pane)
b) Entire chart pane (independent parameters, but shared formula), the same
as (a) but does NOT create duplicate of the formula so it shares the very
same formula file with the original pane
c) Entire chart pane (hard-wired, shared parameters, formula and drawings,
same chartID) - a new pasted pane is directly hard-wired with pane being
copied, so it shares the same CHART ID and every change made to it is made
to the original (source) too.
- Backtest report
now includes 'Total transaction costs' (sum of all commissions paid)
fields now allow user-definable aggregation/compression mode (File->Database
Settings->Intraday Settings). Available choices are last (default),
first, highest, lowest, sum
CHANGES FOR VERSION 5.61.0 (as compared to 5.60.3)
- When using any drawing tool X and Y distance is shown in the status bar
- When position can not be entered due to insufficient funds the
in the "detailed mode" gives additional info such as: requested
entry price, requested position size (and dollar value) and requested round
- Time&Sales column layout persists between runs now (FC #2341)
any #import command (including "Update US symbol list and categories")
is preceeded by prompt for confirmation now
- Report Explorer now supports copying
selected items to clipboard (Edit->Copy),
- Quote Editor: added "Go to selected" button that
quickly scrolls to and selects the data bar marked on chart (FC#2342)
Analysis: parameters were not reset to default values when formula was loaded.
- New Analysis: "Add artificial future bar" option
does not affect Exploration and Scan anymore (FC#2353)
- Max. chart rendering
time of 1000 ms when multithreaded charts are turned ON can be overriden
now by registry setting. See FC#2330 for details.
- Increased width of symbol
combo boxes in Symbol->Merge dialog to prevent
truncation of ticker names
- Floating window caption is now synchronized even
if it is not active (FC#2376)
- eSignal: new version allows to select
whenever EOD bars should report Settlement price or regular close
PlotShapes does NOT use "shape0", "shape1" variables
anymore to prevent clashing with user-defined variables (#104931)
- ASCII importer
now supports $WEBID command and WEBID field in the $FORMAT command to allow
importing web ID (FC#2362)
- ASCII importer now supports $ISINDEX, $ISFAVORITE
commands, and ISINDEX and ISFAVORITE fields in the $FORMAT command (FC#2310)
To: Filter dialog takes less time to show up
If you experience any problem with this beta version please send detailed
description of the problem (especially the steps needed to reproduce it) to
support at amibroker.com