AmiBroker 5.54.0 BETA Read Me
July 13, 2012 11:48
THIS IS A BETA VERSION OF THE SOFTWARE. EXPECT
BUGS !!!
Backup your data files and entire AmiBroker folder
first!
INSTALLATION INSTRUCTIONS
IMPORTANT: This archive is update-only. You have to install full version
5.50 first.
Just run the installer and follow the instructions.
Then run AmiBroker. You should see "AmiBroker 5.53.1 BETA" written
in the About box.
See CHANGE LOG below for detailed list of changes.
CHANGE LOG
CHANGES FOR VERSION 5.54.0 (as compared to 5.53.1)
- New Analysis: "Sync chart on select" did not respect linked charts
and symbol lock. Fixed.
- AFL: new function XYChartSetAxis( "chartname", "x-axis
name", "y-axis
name" )
- AFL: new function XYChartAddPoint( "chartname", "text",
x, y, color )
- New Analysis: Implemented XY (scatter) charts in Explorations
Example:
// XY chart coding example
// This formula generates 2 X-Y scatter charts
that display relationship between
// final trade profit and MFE and MAE
Buy = Cross( MACD(), Signal());
Sell = Cross( Signal(), MACD()
);
Short = False;
Cover = False;
Eq = Equity( 1 ); //
single-security equity this evaluates stops (if you use them)
and removes extra signals
Entry = Buy OR Short;
EqAtEntry = ValueWhen(
Entry, Eq );
Profit = 100 * ( Eq
- EqAtEntry ) / EqAtEntry; // percent profit
// MAE and MFE below use CLOSING equity, MAE and
MFE in the report use high/low price
MAE = 100 * ( LowestSince(
Entry, Eq ) - EqAtEntry ) / EqAtEntry; // percent
MAE
MFE = 100 * ( HighestSince(
Entry, Eq ) - EqAtEntry ) / EqAtEntry; // percent
MAE
bi = BarIndex();
Len = bi - ValueWhen(
Entry, bi );
EntryPrice = ValueWhen(
Entry, BuyPrice );
// if you prefer MAE/MFE using high/low price
// uncomment the lines below (long only Version)
MAE = 100 * ( LowestSince(
Entry, Low )
- EntryPrice ) / EntryPrice ; // percent MAE using
low
MFE = 100 * ( HighestSince(
Entry, High )
- EntryPrice ) / EntryPrice ; // percent MAE using
high
Exit = Sell OR Cover;
dt = DateTime();
Clr = ColorHSB( Status("stocknum"), 255, 255 );
for( bar = 0;
bar < BarCount;
bar++ )
{
if(
Exit[ bar ] )
{
// item text
consists of two parts
// first part
(before \t) is a item name displayed immediatelly on XY chart
// second
part (after \t) is a tooltip hint text that is displayed in the tooltip
// when you
hover on given item
// here we
will only use hint text
HintText = "\t" + Name()+"@"+ DateTimeToStr(
dt[ bar ] );
XYChartAddPoint( "Profit vs MAE",
HintText, MAE[ bar ], Profit[ bar ],Clr );
XYChartAddPoint( "Profit vs MFE",
HintText, MFE[ bar ], Profit[ bar ], Clr );
XYChartAddPoint( "Profit vs trade length",
HintText, Len[ bar ], Profit[ bar ], Clr );
}
}
XYChartSetAxis( "Profit vs MAE", "[MAE]", "[Profit]" );
XYChartSetAxis( "Profit vs MFE", "[MFE]", "[Profit]" );
XYChartSetAxis( "Profit vs trade length", "[Length]", "[Profit]" );
Filter = Exit;
AddColumn( Eq, "Equity" );
AddColumn( Profit, "Profit" );
AddColumn( MAE, "MAE" );
AddColumn( MFE, "MFE" );
AddColumn( Len, "trade
length" );
- {{INTERVAL}}
gave incorrect (unstable) results in custom n-tick/n-range/n-volume charts
when used with multithreading. Fixed.
- Interval(2) returned incorrect (unstable)
results in custom n-tick/n-range/n-volume charts when used with multithreading.
Fixed.
- Preferences: Currency page was not working properly. Fixed.
- Status bar look
matches now appearance settings (esp. visible in VS2012 style)
- Parameter window
now allows to select combined styles (like styleHidden) as well as their
components styleNoRescale+styleNoDraw independently
- User setting for minimum
pixel spacing in X grid (Tools->Preferences, "Axes
/ Grids") - it is recommended to keep it at default value (60 pixels),
for denser grid use less spacing (minimum 30 pixels), for wider grid use
more x spacing (maximum 120 pixels)
- Sometimes panes did not refresh to final
size when chart sheets are switched (for example - one tab has only one
pane second tab has two panes). Fixed.
CHANGES FOR VERSION 5.53.1 (as compared to 5.53.0)
- Trend lines and other drawing tools sometimes were blinking or disappeared
in 5.53.0. Fixed
- Plots with styleDashed mixed with plots using other styles
could cause continuous growth of rendering time in 5.52/5.53. Fixed.
CHANGES FOR VERSION 5.53.0 (as compared to 5.52.0)
- Triangle drawing tool now supports filled interiors
- Vertical selector line
was flicerking with RT update when more than one chart window was open. Fixed
- SetChartGradientFill
renamed to SetGradientFill
- SetGradientFill now has 2 more arguments: baseline
and baselinecolor. Allows reverse gradient chart (such as underwater equity)
and 3 color gradients
top->baseline->bottom
- Added 2-year and 5-year x grid spacing
- Gradient chart sometimes disappeared
when null values were in the data set and chart was zoomed out to the maximum.
Fixed.
- GUI: Preferences dialog adjustments (moved "bold" checkbox
in color page, removed obsolete "show vertical line" boxes in charting
page, moved candlestick outline color settings from charting to color page
)
- styleClipMinMax interferred with styleGradient in 5.52.0. Fixed (both styles
can now be used independently as well as combined together)
CHANGES FOR VERSION 5.52.0 (as compared to 5.51.2)
- Chart themes implemented,
featuring new look, new grid settings, new background gradient fills, predefined
themes for more details see: http://www.amibroker.com/guide/h_themes.html
- Charts:
X-axis algorithm rewritten (now it is clearer and prevents overcrowded/unreadable
X labels)
- Charts: added native gradient area charts. Gradient chart is obtained using
styleGradient. Upper gradient color is specified by color parameter in Plot()
function, bottom gradient color is either background color or can be defined
using SetChartGradientFill function. styleGradient can be combined with styleLine
Example
SetChartGradientFill( colorLightOrange, colorPaleGreen );
Plot( C, "Close", ColorBlend( colorPaleGreen, colorBlack ),
styleGradient | styleLine, Null, Null, 0,
-1 );
- Charts: Plot/PlotForeign/PlotOHLC now adds extra parameter "width" that
controls the width of the line. Positive values specify PIXEL width, negative
values specify width in percent of current bar width. So for example -20
will give you dynamic width that is 20% of bar width. Example:
Plot( C, "Close", colorBlack, styleBar, Null, Null, 0, 1,
-20 /*
line width as percent of bar */ );
- Eliminated build-up of rendering times caused by growing of MFC temporary
GDI object maps in non-UI threads. Now rendering engine uses direct WINAPI
calls without MFC
- View->Filtering
menu was disabled in 5.51.x. Fixed
- Data window was not working in 5.51.x.
Fixed
- "
Show middle lines" = "NO" causes date axis to be moved down
outside visible area. Fixed.
- Selector line was not working correctly in 5.51.
Fixed.
- Bold dotted trendline did not work in 5.51 BETA. Fixed
- AFL: LinearReg/LinRegSlope/LinRegIntercept/TSF/StdError
display proper error message when user passes negative (wrong) parameter
- Study
tooltip information now includes also number of bars between start and end
of the trendline
- New Analysis: saving last column
layout works better
- Account manager: Edit->Undo menu was missing. Fixed.
- GetFnData() now
supports retrieving "Address" field too
- On Win98 and above drawing engine uses DC_PEN/DC_BRUSH for speed
- Optimize()
reduced possibility of IEEE floating point accumulation errors with steps < 1
(such as 0.01)
- PlotShapes() does not plot multiple times in same x/y pos anymore
- it results in faster rendering when shapes overlap (large zoom outs)
CHANGES FOR VERSION 5.51.2 (as compared to 5.51.1)
- PlotShapes() rendering was slower in 5.51 than in 5.50. Fixed.
- Interpretation
was blank with new rendering engine. Fixed.
- Charts: Quick AFL was disabled
in new rendering engine causing slowdowns with > 100K
bars. Fixed
CHANGES FOR VERSION 5.51.1 (as compared to 5.51.0)
- fix for low-level Gfx* functions causing crash when multithreaded
GDI was enabled
CHANGES FOR VERSION 5.51.0 (as compared to 5.50.5)
- Charts: Multithreaded GDI implemented for super-smooth UI response and
preventing GDI-intensive charts from detoriating entire UI responsiveness
- Maximum
rendering time limit increased to 1000ms (1sec) when multithreaded
charts + GDI are enabled (allowing 2 times more complex plots without Warning
901)
- 64-bit only: eSignal plugin - first BETA version of 64-bit eSignal plugin
(3.0.0)
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