March 8, 2015 0:27
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.90 first.
Just run the installer and follow the instructions.
Then run AmiBroker. You should see "AmiBroker 5.93.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.
CHANGE LOG
CHANGES FOR VERSION 5.93.0 (as compared to 5.92.0)
WHITE_BRUSH 0
LTGRAY_BRUSH 1
GRAY_BRUSH 2
DKGRAY_BRUSH 3
BLACK_BRUSH 4
NULL_BRUSH 5 (the same as hollow brush)
HOLLOW_BRUSH 5
WHITE_PEN 6
BLACK_PEN 7
NULL_PEN 8
OEM_FIXED_FONT 10
ANSI_FIXED_FONT 11
ANSI_VAR_FONT 12
SYSTEM_FONT 13
DEVICE_DEFAULT_FONT 14
SYSTEM_FIXED_FONT 16
DEFAULT_GUI_FONT 17
Example circle with hollow interior:
GfxSelectPen( colorOrange, 4 );
GfxSelectStockObject( 5 ); // hollow brush
GfxCircle(100, 100, 20 );
HS_HORIZONTAL 0 /* ----- */
HS_VERTICAL 1 /* ||||| */
HS_FDIAGONAL 2 /* \\\\\ */
HS_BDIAGONAL 3 /* ///// */
HS_CROSS 4 /* +++++ */
HS_DIAGCROSS 5 /* xxxxx */
Hatch color is specified by color parameter, hatch background is specified
by current background color
see: GfxSetBkColor()
GfxSelectPen( colorOrange, 4 );
GfxSetBkColor( colorLightGrey );
GfxSelectHatchBrush( colorBlue, Param("Hatch pattern", 5, 0,
5 ) );
GfxCircle(100, 100, 20 );
bi = BarIndex();
x = Percentile( Close, bi, 50 );
Plot( x, "Cumulative 50% Percentile", colorRed );
Plot( Close, "Price", colorDefault, styleCandle );
XYChartSetAxis(chartname, "[x]", "[sinx/x]", styleLine
| styleDots ); // bar style
for( x = -10; x < 10; x += 0.2 )
{
y = sin(x ) / x;
XYChartAddPoint( chartname, "", x, y, colorGreen, colorRed );
}
XYChartAddPoint( chartname, "", Null, Null ); // add a NULL point
to begin new line
for( x = -10; x < 10; x += 0.2 )
{
y = sin( 2 * x ) / x;
XYChartAddPoint( chartname, "", x, y, colorOrange, colorBlue );
}
You can turn it off from Settings, Reporting
Buy-and-hold simulation uses current symbol when doing single-symbol backtests/optimization.
When doing portfolio backtest for more than one symbol, it uses "Portfolio
B&H symbol" as a benchmark for buy and hold.
Current rates used are listed in the Detailed Log
1. Add a symbol that will hold interest rates. It does not need to have
quotes every day,
you can have only quotes on days when interest rate changes.
Interest rates should be expressed in PERCENTS. So if interest is 5% you
should enter 5 in "close" price field for particular date
2. Enter the rate symbol into "Dynamic interest symbol" in the Settings.
3. Enter "Fixed interest rate" in the Settings. It will be used for days PRIOR to very first date available in intrest rate symbol.
CHANGES FOR VERSION 5.92.0 (as compared to 5.91.1)
Example of bar style usage (this is EXPLORATION code):
chartname = "example";
XYChartSetAxis( chartname, "[x]", "[sinx/x]", 1 ); //
bar style
for ( x = -10;
x < 10; x += 0.2 )
{
y = sin( x ) / x;
XYChartAddPoint( chartname, "",
x, y, colorGreen );
}
Second example:
chartname = "gaussian";
XYChartSetAxis( chartname, "[x]", "[gaussian]", 1 );
for ( x = -3;
x < 3; x += 0.125 )
{
y = exp( - x ^ 2 );
XYChartAddPoint( chartname, "",
x, y, IIf( abs(
x ) <= 1, colorGreen, colorRed )
);
}
CHANGES FOR VERSION 5.91.0 (as compared to 5.90.1)
SetOption("NoDefaultColumns", True );
Filter = 1;
AddColumn( Close, "Column1" );
AddColumn( Null, "Column2" );
for( i = 0;
i < 10; i++ )
{
AddRow( StrFormat( "row
%g\tsecond column", i ) );
}
only_when = ( Month() % 2 )
== 0; // even months only
x = SparseCompress( only_when, Close ); // compact
sparse data
y = MA( x, 10 ); //
regular calculation
y = SparseExpand( only_when, y ); //
expand sparse data
Plot( C, "Price", colorDefault, styleBar );
Plot( y, "Sparse MA from
even months", colorRed );
function SparseCompressEquiv( sparse_array,
data_array )
{
result = Null;
j = BarCount - 1;
for( i = BarCount - 1;
i >= 0; i-- )
{
if( sparse_array[ i ] ) result[ j-- ] =
data_array[ i ];
}
return result;
}
function SparseExpandEquiv( sparse_array,
data_array )
{
result = Null;
j = BarCount - 1;
for( i = BarCount - 1;
i >= 0; i-- )
{
if( sparse_array[ i ] ) result[ i ] = data_array[
j-- ];
}
return result;
}
HOW TO REPORT BUGS
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