PureBytes Links
Trading Reference Links
|
Hello,A new beta version (4.49.0) of AmiBroker has
just been released.
It is available for registered users only from the members
area at:<A
href=""><FONT
size=2>http://www.amibroker.com/members/bin/ab4490beta.exe<FONT
size=2>and<A
href=""><FONT
size=2>http://www.amibroker.net/members/bin/ab4490beta.exe<FONT
size=2>(File size: 623 687 bytes, 623 KB)If you forgot
your user name / password to the members areayou can use automatic reminder
service at: <FONT
size=2>http://www.amibroker.com/login.htmlThe
instructions are available below and in the "ReadMe" file( Help->Read Me
menu from AmiBroker )
CHANGES FOR VERSION 4.49.0 (as compared to 4.48.2)
new Percentile functionPercentile( array, period, rank
)rank is 0..100 - defines percentile rank in the
arrayExample:<FONT
color=#000000>Volume > <FONT
color=#0000ff>Percentile( <FONT
color=#000000>Volume, <FONT
color=#ff00ff>100, <FONT
color=#ff00ff>70 );means:
current day volume ranks within TOP 30% of volumes of last 100 bars (is above
70th percentile)<FONT
color=#000000>Volume < <FONT
color=#0000ff>Percentile( <FONT
color=#000000>Volume, <FONT
color=#ff00ff>100, <FONT
color=#ff00ff>30 );means: current
day volume ranks within BOTTOM 30% of volumes of last 100 bars (is below 30th
percentile)(performance note: the implementation of percentile
function involves sorting that is relatively slow process even though that
quicksort algorithm is used)
new function LineArray( x0, y0, x1, y1, extend = 0
)generates array equivalent to trend line drawn from point x0, y0 to
point x1, y1. x coordinates are in bars (zero based), y coordinates are in
dollars Note: x0 must be SMALLER than x1. Note 2: the function accepts only
numbers thereforegenerates single line. To produce multiple lines you have
to call it many times with different co-ordinates.if extend is 1 then line
is right extended.if extend is 2 then line is left extendedif extend
is 3 then line is left and right extendedExample:<FONT
color=#000000>y0=LastValue<FONT
color=#000000>(Trough<FONT
color=#000000>(L<FONT
color=#000000>,5<FONT
color=#000000>,2));
y1=LastValue<FONT
color=#000000>(Trough<FONT
color=#000000>(L<FONT
color=#000000>,5<FONT
color=#000000>,1));
x0=BarCount -
1 - <FONT
color=#0000ff>LastValue(<FONT
color=#0000ff>TroughBars(<FONT
color=#000000>L,<FONT
color=#ff00ff>5,<FONT
color=#ff00ff>2)); x1=<FONT
color=#000000>BarCount - <FONT
color=#ff00ff>1 - <FONT
color=#0000ff>LastValue(<FONT
color=#0000ff>TroughBars(<FONT
color=#000000>L,<FONT
color=#ff00ff>5,<FONT
color=#ff00ff>1)); Line = <FONT
color=#0000ff>LineArray( x0, y0, x1, y1,
1 ); <FONT
color=#0000ff>Plot(<FONT
color=#000000>C, <FONT
color=#ff00ff>"C", <FONT
color=#000000>colorWhite, <FONT
color=#000000>styleCandle); <FONT
color=#0000ff>Plot( Line, <FONT
color=#ff00ff>"Trend line", <FONT
color=#000000>colorBlue );
new function sign( x )(x can be number or array).Returns 1 if x is
positive, returns -1 if x is negative, and returns 0 if x is zero.
ApplyStop : 'exitatstop' parameter extended:ApplyStop( Type, Mode,
Amount, ExitAtStop = 1, Volatile = False, ReentryDelay = 0 )ExitAtStop
= 0 - means check stops using only trade price and exit at regular trade
price(if you are trading on close it means that only close price will be
checked for exits and exit will be done at close price)ExitAtStop = 1 -
check High-Low prices and exit intraday on price equal to stop level on the
same bar when stop was triggeredExitAtStop = 2 - check High-Low prices but
exit NEXT BAR on regular trade price.( first two modes 0 and 1 are the
same as in old versions )Note on using stops:Scenario
1: you trade on next bar OPEN and want to exit intraday on stop
priceCorrect settings: ActivateStopsImmediately turned
ONExitAtStop = 1Trade delays set to oneTrade price set to
openScenario 2: you trade on today's close and
want to exit intraday on stop priceCorrect settings:
ActivateStopsImmediately turned OFFExitAtStop = 1Trade delays set
to zeroTrade price set to closeScenario 3:
you trade on next day OPEN and want to exit by stop on OPEN price when
PREVIOUS day H-L range hits stopCorrect settings:
(if you want to have stops executed AFTER regular signals, so cash from
stopped out positions is NOT available to enter trades the same day)
ActivateStopsImmediately turned ON
b) (if you want to have stops executed BEFORE regular signals, so cash
from stopped out positions IS available to enter new trades the same
day)ActivateStopsImmediately turned OFF ExitAtStop = 2
(NEW)Trade delays set to oneTrade price set to
openScenario 4: you trade on today's close and
want to exit only when today's close price hits the stop levelCorrect
settings: ActivateStopsImmediately turned OFFExitAtStop = 0Trade
delays set to zeroTrade price set to close
portfolio backtester: MAE/MFE are now updated with exit price in case when
profit has been hit intraday and activate stops immediatelly was turned
off.
portfolio backtester: 'activate stops immediately'=TRUE and 'same bar
exit'=FALSE combination works OK now
'auto-tile windows' feature now tiles windows only it two cases:- when
new window is open- when RT quote window is shown/hidden
in versions 4.48.0-4.48.2 cloned windows were sometimes saved in two or
more copies, now it is fixed. This bug caused also crashes when switching
layouts. Fixed.
portfolio backtester now allows custom exit labeling as old backtester
fixed range unmarking by double click in cloned windows
all listviews now use alternate background colors for odd/even rows this
feature can be turned off using Tools->Preferences->Miscellaneous "Use
alternate row colors"
Best regards,Tomasz Janeczkoamibroker.com
AmiBroker 4.49.0 Beta Read Me
November 17, 2003 13:43
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 4.40 first.
Just run the installer and follow the instructions.
Then run AmiBroker. You should see "AmiBroker 4.49.0 beta" written in the
About box.
See CHANGE LOG below for detailed list of changes.
HELP ON NEW FEATURES
New backtest report
New report is hugely enhanced compared to old one. It includes separate
statistics for all, long and short sides as well as large number of new metrics.
You can get short help on given figure by hovering your mouse over given field
name. You will see the description in the tooltip. Short explanations are
provided also below:
Exposure % - modified since last release
-'Market exposure of the trading system calculated on bar by bar basis. Sum of
bar exposures divided by number of bars. Single bar exposure is the value of
open positions divided by portfolio equity.
Net Risk Adjusted Return % - Net profit % divided by
Exposure %
Annual Return % - Compounded Annual Return % (CAR)
Risk Adjusted Return % - Annual return % divided by Exposure
%
Avg. Profit/Loss - (Profit of winners + Loss of
losers)/(number of trades)
Avg. Profit/Loss % - '(% Profit of winners + % Loss of
losers)/(number of trades)
Avg. Bars Held - sum of bars in trades / number of
trades
Max. trade drawdown - The largest peak to valley decline
experienced in any single trade
Max. trade % drawdown - The largest peak to valley
percentage decline experienced in any single trade
Max. system drawdown - The largest peak to valley decline
experienced in portfolio equity
Max. system % drawdown - The largest peak to valley
percentage decline experienced in portfolio equityRecovery
Factor - Net profit divided by Max. system
drawdownCAR/MaxDD - Compound Annual % Return divided by
Max. system % drawdown
RAR/MaxDD - Risk Adjusted Return divided by Max. system %
drawdown
Profit Factor - Profit of winners divided by loss of
losers
Payoff Ratio - Ratio average win / average
lossStandard Error - Standard error measures chopiness
of equity line. The lower the better.
Risk-Reward Ratio - Measure of the relation between the risk
inherent in a trading the system compared to its potential gain. Higher is
better. Calculated as slope of equity line (expected annual return) divided by
its standard error.
Ulcer Index - Square root of sum of squared drawdowns
divided by number of bars
Ulcer Performance Index - (Annual profit - Tresury notes
profit)/Ulcer Index'>Ulcer Performance Index. Currently tresury notes profit
is hardcoded at 5.4. In future version there will be user-setting for this.
Sharpe Ratio of trades - Measure of risk adjusted return of
investment. Above 1.0 is good, more than 2.0 is very good. More information <A
href="">http://www.stanford.edu/~wfsharpe/art/sr/sr.htm
. Calculation: first average percentage return and standard deviation of returns
is calculated. Then these two figures are annualized by multipling them by ratio
(NumberOfBarsPerYear)/(AvgNumberOfBarsPerTrade). Then the risk free rate of
return is subtracted (currently hard-coded 5) from annualized average return and
then divided by annualized standard deviation of
returns.K-Ratio - Detects inconsistency in returns.
Should be 1.0 or more. The higher K ratio is the more consistent return you may
expect from the system. Linear regression slope of equity line multiplied by
square root of sum of squared deviations of bar number divided by standard error
of equity line multiplied by square root of number of bars. More information:
Stocks & Commodities V14:3 (115-118): Measuring System Performance by Lars
N. Kestner
Optimization in new portfolio backtester
|