PureBytes Links
Trading Reference Links
|
Hello,A new beta version (4.54.0) of
AmiBroker has just been released.
It is available for registered users only from
the members area at:<A
href=""><FONT face=Arial
size=2>http://www.amibroker.com/members/bin/ab4540beta.exe<FONT
face=Arial size=2>and<A
href=""><FONT face=Arial
size=2>http://www.amibroker.net/members/bin/ab4540beta.exe<FONT
face=Arial size=2>(File size: 770 408 bytes, 770 KB)If
you forgot your user name / password to the members areayou can use
automatic reminder service at: <A
href=""><FONT face=Arial
size=2>http://www.amibroker.com/login.html<FONT face=Arial
size=2>The instructions are available below and in the "ReadMe" file(
Help->Read Me menu from AmiBroker )
The highlight of this version is mixed EOD/intraday
mode that allows
working with very long EOD histories and intraday
data in single database
(there is no longer the need to run two instances
for that). Currently this mode is supported
by eSignal and Market Cast plugins
only.
The archive comes with updated versions of eSignal
(1.7.0) and MarketCast (1.1.0)
plugins both featuring support for new mixed
EOD/Intraday mode.
To create database with new mixed mode you have to
go to
File->New database and create it as usual, but
later click on "Intraday Settings" button
and make sure that "Allow mixed intraday/EOD" box
is checked.
Best regards,Tomasz Janeczkoamibroker.com
AmiBroker 4.54.0 Beta Read Me
April 28, 2004 20:08
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.50 first.
Just run the installer and follow the instructions.
Then run AmiBroker. You should see "AmiBroker 4.54.0
beta" written in the About box.
Many thanks to all providing detailed descriptions
how to reproduce given bug.
See CHANGE LOG below for detailed list of
changes.
CHANGE LOG
CHANGES FOR VERSION 4.54.0 (as compared to
4.53.1)
"Allow mixed EOD/intraday data" mode added
(controllable from File->Database Settings->Intraday, checkbox with the
same name) it allows to work with database that has a mixture of intraday and
EOD data in one data file. If this is turned on then in intraday modes EOD
bars are removed on-the-fly and in daily mode EOD bars are displayed instead
of time compressed intraday or if there is no EOD bar for corresponding day
then intraday bars are compressed as usual.
This mode works in conjunction with new versions of
plugins that allow mixed data. Mixed mode is now supported by MarketCast
plugin (1.1 or higher)(Australia) and eSignal plugin (1.7.0 or higher)
only.
Mixed mode allows intraday plus very long daily
histories in one database.
Note that this is EXPERIMENTAL feature.
Real-Time quote window enhancedNow only fields
that are changed change the background to 'yellow' and if the value in given
field increases then it is displayed in green if decreases then is displayed
in red. This allows easy identification of movement.
all strings in the program moved to resources
for easy localization
fixed problem with SetForeign()+FullName()
returning symbol instead of full name of foreign security.
added new AFL function IsContinuous() to
check if "continuous" flag is turned on in Symbol->Information
window
OLE properties can be retrieved
(DISPATCH_PROPERTYGET) directly from AFL now using parameterless function
syntax. This allows reading values exposed by OLE automation directly from AFL
code. Example:
AB = CreateObject("Broker.Application"); Stocks
= AB.Stocks(); // get collection Stock = Stocks.Item( Name() ); //
currently selected "FullName : " + Stock.FullName(); "Alias : " +
Stock.Alias(); "Address : " + Stock.Address(); "Shares: " +
Stock.Issue(); "Book value: " + Stock.BookValue(); "Market : " +
Stock.MarketID(); "WebID : " + Stock.WebID();
You can check if OLE object is valid by calling
IsNull() function, example:
AB = CreateObject("Broker.Application"); Stocks
= AB.Stocks(); // get collection Stock = Stocks.Item( "INTC" );
if( IsNull( Stock ) ) { printf("COM object invalid
(Null) - symbol does not exist\n"); } else {
printf("COM object valid - you can access its methods\n");
}
IsEmpty/IsNull and IsTrue functions operate
with scalars and OLE dispatches without upsizing them to
array
CHANGES FOR VERSION 4.53.1 (as compared to
4.53.0)
addressed problem with broker.layers file. Now
version 4.53.1 correctly reads broker.layers file saved with older versions
however note that old versions are not compatible with new format.
layer properties dialog provides more comfortable
setting of layer visibility
other minor fixes
CHANGES FOR VERSION 4.53.0 (as compared to
4.52.0)
per-group intraday settings (filtering/daily
compression) Use Symbol->Categories: "GROUP" -> Use own intraday
settings, clickon "Intraday settings" button to define intraday settings
specific to given group.
intraday settings now allow to specify separate
day (RTH) and night (ETH) sessions
time filtering now allows to display:a) 24
hours trading (no filtering)b) day session onlyc) night session
onlyd) day and night sessions only
new intraday time compression mode: Day/Night -
shows two bars (day and night) per day
daily compression can be now based ona)
exchange time (available since 4.00)b) local time (available since
4.50)c) day/night session times definable by the user (new)
when "activatestopsimmediately" is turned ON then
cash from stopped out positions is NOT available to enter trades the same
day
easy access to selected category settings from
Symbol->Information window.
Workspace tree supports in-place editing of
market, group, sector, industry and watch list names. Single click on category
name and just enter the name
CHANGES FOR VERSION 4.52.0 (as compared to
4.51.1)
fixed problem with fixup=0 and handling multiple
data holes in a row
added new commands to ASCII format
definitions:$MINTICKERLEN <number> - defines minimum accepted length
of the ticker symbol$MAXTICKERLEN <number> - defines maximum
accepted length of the ticker symbol For example ASX users may wish to
use$MAXTICKERLEN 3to make sure that ASCII importer accepts only
symbols that have no more than 3 characters (this excludes ASX options and
warrants)
fixed problem with incorrect very first value of
the array returned by variable-period version of HHV/LLV
fixed Procedure/function parameter overwrite issue
when using built-in price arrays and variable overwrite issue
memory allocated for return value is marked for
earlier freeing so calling user-defined functions inside loops should consume
less memory
Interval() function enhanced. Now accepts format
parameter:Interval( format = 0 );possible values:format = 0 -
returns bar interval in secondsformat = 1 - as above plus TICK bar
intervals are returned with negative signso Interval() function applied to
10 tick chart will return -10format = 2 - returns STRING with name of
interval such as "weekly/monthly/daily/hourly/15-minute/5-tick"
vertical quote selection line in linked windows is
now independent
changing "same day stops" via
SetOption("ActivateStopsImmediately") in portfolio backtest mode has an effect
now (previously reacted only on manual settings)
SetOption("CommissionMode", mode ) works now in
portfolio mode too (previously workedin old backtest mode only)
SetOption("CommissionAmount", amount ) works now
in portfolio mode too (previously workedin old backtest mode
only)
$SEPARATOR command in ASCII importer definitions
now allows to import files that have fields separated by more than one
separator characters Separator string (array of characters) must be enclosed
in quotation marks. If there is only one separator character (as in old
versions) then quotation marks are needed.For example files with joined
date and time$SEPARATOR ", "$FORMAT
DATE_YMD,TIME,OPEN,HIGH,LOW,CLOSEwill be able to import file like
this:2004-02-04 12:30,3.41,3.44,3.40,3.42 (note date and time field
are separated by space not by comma)
Import wizard now supports new separators 'comma
or space', 'semicolon or space' and 'tab or space'
ASCII importer and Quote Editor properly
distinguish records with time specified as 00:00:00 from EOD records
(without time)
CHANGES FOR VERSION 4.51.1 (as compared to
4.51.0)
OLE interface methods numbering adjusted to
maintain backward compatibility with previous versions and other programs
referring to old OLE interface
CHANGES FOR VERSION 4.51.0 (as compared to
4.50.10)
OLE automation interface changes:
Analysis.Backtest and Analysis.Optimize now support
new "Type" parameter.Type can be one of the following values:0 :
portfolio backtest/optimize1 : individual backtest/optimize2 : old
backtest/optimizeFor backward compatibility Type parameter is optional
and defaults to 2(old backtest/optimize)
Example code:AB = new
ActiveXObject("Broker.Application");AB.Analysis.Backtest( 0 ); // perform
portfolio backtestAB.Analysis.Optimize( 0 ); // perform portfolio
optimize
OLE automation interface new object:
"Commentary"This object has 5 methods:- BOOL LoadFormula( STRING
pszFileName ) - loads the formula- BOOL SaveFormula( STRING pszFileName )
- saves the formula- void Apply() - displays the commentary - BOOL
Save( STRING pszFileName ); - saves commentary output (result) to the file
(use after call to Apply())- void Close() - closes the commentary
window
Commentary object is accessible from
Broker.Application object via Commentary property:
Example code:AB = new
ActiveXObject("Broker.Application");AB.Commentary.LoadFormula("C:\\Program
Files\\AmiBroker\\AFL\\MACD_c.afl");AB.Commentary.Apply();AB.Commentary.Save("Test.txt");AB.Commentary.SaveFormula("MACDTest.afl");//AB.Commentary.Close();
AFL function Now( format = 0 ) accepts new
parameter values
Returns current date / time in numerous of formats:
// formats supported by old versionsformat = 0 - returns string
containing current date/time formatted according to system settings format
= 1 - returns string containing current date only formatted according to
system settings format = 2 - returns string containing current time only
formatted according to system settings format = 3 - returns DATENUM number
with current date format = 4 - returns TIMENUM number with current time
format = 5 - returns DATETIME number with current date/time // new
formats available from version 4.51format = 6 - returns current DAY
(1..31) format = 7 - returns current MONTH (1..12)format = 8 - returns
current YEAR (four digit) format = 9 - returns current DAY OF WEEK (1..7,
where 1=Sunday, 2=Monday, and so on)format = 10 - returns current DAY OF
YEAR (1..366)
Custom indicators:If plot name is empty the
value of such plot does not appear in the titleand does not appear in the
data tool tip
Plot( C, "Price", colorWhite, styleCandle
);Plot( MA( C, 10 ), "", colorRed ); // NOTE that this plot name/value
will NOT appear in the titlePlot( MA( C, 20 ), "MA20", colorGreen
);
SetOption( "field", value )accepts new
fields:"CommissionMode" - 0 - use portfolio manager commission
table1 - percent of trade2 - $ per trade3 - $ per
share/contract
"CommissionAmount" - amount of commission in modes
1..3
"MarginRequirement" - account margin requirement
(as in settings), 100 = no margin
"ReverseSignalForcesExit" - reverse entry signal
forces exit of existing trade (default = True )
new AFL function: GetOption( "field" ) - retrieves
the settings, accepted fields the same as in SetOption.
Example:
PositionSize = -100 /
GetOption("MaxOpenPositions");
new AFL function: GetRTData( "field" )-
retrieves the LAST (the most recent) value of the following fieldsreported
by streaming real time data source )(Note 1: this function is available
ONLY in PROFESSIONAL edition,calling it using Standard edition will give
you NULL values for all fields)(Note 2: works only if data source uses
real time data source (plugin) )(Note 3: availablity of data depends on
underlying data source- check the real-time quote window to see if given
field is available )(Note 4: function result represents the current value
at the time of the call/formula execution/, and they will be refreshed
depending on chart or commentary refresh interval/settable in
preferences/. Built-in real time quote window is refreshedway more often
(at least 10 times per second) )
Supported fields:"Ask" - current best ask price
"AskSize " - current ask size"Bid" - current best bid price
"BidSize " - current bid size"52WeekHigh" - 52 week high
value"52WeekHighDate" - 52 week high date (in datenum
format)"52WeekLow" - 52 week low value"52WeekLowDate" - 52 week low
date (in datenum format)"Change" - change since yesterdays
close"Dividend" - last dividend value"DivYield" - dividend
yield"EPS" - earnings per share"High" - current day's high
price"Low" - current day's low price"Open" - current day's open
price"Last" - last trade price"OpenInt" - current open
interest"Prev" - previous day close"TotalVolume" - total today's
volume"TradeVolume" - last trade volume"ChangeDate" - datenum
(YYYMMDD) of last data change"ChangeTime" - timenum (HHMMSS) of last data
change"UpdateDate" - datenum (YYYMMDD) of last data update"UpdateTime"
- timenum (HHMMSS) of last data update"Shares" - total number of shares
Example:"Bid = "+GetRTData("Bid");"Ask =
"+GetRTData("Ask");"Last = "+GetRTData("Last");"Vol =
"+GetRTData("TradeVolume");
"EPS = "+GetRTData("EPS");"52week high =
"+GetRTData("52weekhigh");
Custom indicators:Default names and graph
values appear in the title when using old-style graph0, graph1, graph2
statements in the custom indicators
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 bugs at amibroker.com
Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
(Web page: http://groups.yahoo.com/group/amiquote/messages/)
--------------------------------------------
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html
Yahoo! Groups Sponsor
ADVERTISEMENT
Yahoo! Groups Links
To visit your group on the web, go to:http://groups.yahoo.com/group/amibroker/
To unsubscribe from this group, send an email to:amibroker-unsubscribe@xxxxxxxxxxxxxxx
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
|