[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [amibroker] What's wrong with this formula?



PureBytes Links

Trading Reference Links


Tomasz,
Your support of user desires/requests is simply awesome! I'm anxious to try the mixed RT/EOD data.
 
DanTomasz Janeczko <amibroker@xxxxxx> wrote:




  

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:http://www.amibroker.com/members/bin/ab4540beta.exeandhttp://www.amibroker.net/members/bin/ab4540beta.exe(File size: 770 408 bytes, 770 KB)If you forgot your user name / password to the members areayou can use automatic reminder service at: http://www.amibroker.com/login.htmlThe instructions are available below and in the "ReadMe" file( Help->Read Me menu from AmiBroker )
 
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");
 }  
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 
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.
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' 
 
CHANGES FOR VERSION 4.51.1 (as compared to 4.51.0)
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");

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.comSend BUG REPORTS to bugs@xxxxxxxxxxxxxSend 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 


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.