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

[amibroker] Re: AmiBroker 4.74.1 BETA released



PureBytes Links

Trading Reference Links

I agree 

--- In amibroker@xxxxxxxxxxxxxxx, William Peters <william@xxxx> 
wrote:
>
> 
> In general I agree its nice to have things fixed, there will 
always be
> some so-called problem that needs fixing, depending on who you talk
> too. I think its good to have a combination of fixing bugs and new
> features which is exactly what is being done.
> It also depends on HOW you use the program. If you are a visual
> chart orientated trader all this so called "fluff and stuff", that 
is not
> so important to you, may be very helpful.
> Over the years there has been a huge amount of the more technical
> features implemented within AmiBroker and some GUI work too, 
overall I think the
> balance has been pretty good.
> 
> 
> Regards,
> William Peters
> http://www.amitools.com
> 
> 
> 
> 
> Saturday, October 22, 2005, 8:30:15 PM, you wrote:
> G>  Hate to be odd one in the crowd but feel fixing existing
> G> things that do not work correctly should take precedence over 
fluff
> G> and stuff
> 
> G> On 10/23/05, Steve Dugas <sjdugas@xxxx> wrote:
> G> Hello TJ,
> G>  
> G> After about 4 hours of playing with every option I could find,
> G> I have to say this is about the coolest GUI that I have ever 
used !!
> G>  
> G> I have written a disclaimer for you,  to include in future 
versions:
> G>  
> G> "Warning: User Interface is addictive. I cannot be responsible
> G> if playing with it causes you to forget about making money !
> G> "       8 - )
> G>  
> G> Awesome Beta !!
> G>  
> G> Steve
> G> ----- Original Message ----- 
> G> From:Tomasz Janeczko
>   
> G> To:amibroker@xxxxxxxxxxxxxxx ; amibroker-beta@xxxxxxxxxxxxxxx ; 
amibroker-news@xxxxxxxxxxxxxxx
> G> Sent: Saturday, October 22, 2005 12:53 PM
> G> Subject: [amibroker] AmiBroker 4.74.1 BETA released
> 
> G>  
> G> Hello,
> G>  
> 
> 
> G> A new beta version (4.74.1) of AmiBroker has just been released.
> G>  
> G> It is available for registered users only from the members area 
at:
> G> http://www.amibroker.com/members/bin/ab4741beta.exe
> 
> G> (File size: 1 123 465 bytes, 1 MB)
> 
> G> If you forgot your user name / password to the members area 
> G> you can use automatic reminder service at:
> G> http://www.amibroker.com/login.html 
> 
> G> The instructions are available below and in the "ReadMe" file
> ( Help->>Read Me menu from AmiBroker )
> 
> 
> 
> 
> G> Highlight of this release is new customizable user-interface, 
featuring
> G> Tear-Off Tabs Nested docking pane grouping WYSIWYG docking
> G> sliding auto-hide pinnable windows modern "Whidbey" look Tear-
Off
> G> menus and toolbars Add/copy/Delete/Modify/drag-drop commands
> G> User-defined toolbars
> 
> G> For a little video presentation see: 
> G> http://www.amibroker.com/video/uicustomize.html
> 
> G> Note: toolbar and keyboard customizations made in old versions
> G> need to be re-done because they can not be imported by new 
system
> G> due to fundamental differences (I am sorry about that) 
> 
> G>  
> G> The only change to 4.74.0 is minor fix for progress bar display 
during exploration.
> 
> G>  
> G> Best regards,
> G> Tomasz Janeczko
> G> amibroker.com
>   
> G>  
> G> AmiBroker 4.74.1 Beta Read Me
> G> October 22, 2005 18:46 
> G> THIS IS A BETA VERSION OF THE SOFTWARE. EXPECT BUGS !!!
> G> Backup your data files and entire AmiBroker folder first! 
> G> IMPORTANT NOTE: This version uses new system to store
> G> indicators (in separate files), so old versions will not
> G> automatically "see" indicators created with new version. 
> G> INSTALLATION INSTRUCTIONS
> G> IMPORTANT: This archive is update-only. You have to install 
full version 4.70 first.
> G> Just run the installer and follow the instructions. 
> G> Then run AmiBroker. You should see "AmiBroker 4.74.1 beta" 
written in the About box.
> G> Many thanks to all providing detailed descriptions how to 
reproduce given bug.
> 
> G> See CHANGE LOG below for detailed list of changes.
> 
> G> CHANGE LOG
> G> CHANGES FOR VERSION 4.74.1 (as compared to 4.74.0)
> G> Fixed incorrect message displayed in the progress window during 
some longer explorations
> G> CHANGES FOR VERSION 4.74.0 (as compared to 4.73.0)
> G> New user interface: fully user-customizable advanced docking 
panes/toolbars/menus.
> 
> G> New UI features: 
> G> Tear-Off Tabs Nested docking pane grouping WYSIWYG docking
> G> sliding auto-hide pinnable windows modern "Whidbey" look Tear-
Off
> G> menus and toolbars Add/copy/Delete/Modify/drag-drop commands
> G> User-defined toolbars
> 
> 
> 
> G> For a little video presentation see: 
> G> http://www.amibroker.com/video/uicustomize.htmlNote: toolbar and
> G> keyboard customizations made in old versions need to be re-done
> G> because they can not be imported by new system due to 
fundamental
> G> differences (I am sorry about that)] 
> 
> 
> 
> 
> 
> 
> G> GroupID(), IndustryID(), SectorID, MarketID(), InWatchList(),
> G> IsIndex() and IsContinuous() functions are now affected by
> G> SetForeign
> 
> G> Removed debug messages cluttering DebugView output (that 
appeared in 4.73)
> 
> G> Changed the way drawing color picker is working: now it works
> G> like in Word (or other text editor) - keeps selected color even 
if
> G> drawing with different color is clicke
> 
> G> Fixed false message "The note has been modified outside the
> G> notepad editor." occuring when file did not exist
> 
> G> OLE: Changed Window.LoadTemplate to return FALSE when file can 
not be found
> 
> G> OLE: Window.LoadTemplate now refreshes display so it is not
> G> necessary to use SelectedTab = 0
> 
> G> Removed constant RT refreshes in interpretation window when 
text does not change
> 
> G> ZoomToRange: last selected bar in range is visible after 
zooming now
> G> CHANGES FOR VERSION 4.73.0 (as compared to 4.72.1)
> G> OLE: Window object, new method ZoomToRange( From, To ) 
> G> ZoomToRange( From, To )
> G> From and To parameters are of any type that can be converted to
> G> date(you can use string or OLE date for example).
> 
> G> Example code (JScript): 
> 
> G> AB=new ActiveXObject("Broker.Application");
> G> AW = AB.ActiveWindow;
> G> if( AW.ZoomToRange( "2005-04-01", "2005-08-01" ) )
> G> { 
> G>    WScript.Echo("Zoom successfull" );
> G>  }
> 
> G> Fixed: Chart got shrinked a bit with each overlaid plot, now
> G> the Y scale does not change (unless really needed) 
> 
> G> Fixed: XShift now works correctly with styleOwnScale and 
styleLeftScale
> 
> G> Fixed: Volume chart overlaid on price chart in log scale
> G> (overlay) was compressed to flat line, now it is fixed (volume
> G> chart overlay uses linear scale always)
> G> [#22262]
> 
> G> AFL: Added AlmostEqual function (completed: 2005-09-16)
> 
> G> AlmostEqual( x, y, ulps = 5 )
> 
> G> this is a helper function for comparing floating point
> G> numbers.It returns True if x and y are equal or almost equal 
upto
> G> defined accurracy (ulps).It is recommended to use this function
> G> instead of equality check (==) as itleads to more reliable
> G> comparisons and less headache caused by IEEE floating 
pointacurracy
> G> issues. 
> 
> G> Parameters:x, y - the numbers or arrays to be compared,Ulps
> G> stands for "units in last place" and represents maximum relative
> G> error of the comparison. Since 32 bit IEEE floating point 
numbers
> G> have accurracy of 7 significant digits, 1 unit in last place
(ulp)
> G> represents relative error of  0.00001 %. The default value of 
ulps
> G> parameter is 5 which gives roughtly 0.00005% "comparison
> G> sensitivity".
> 
> 
> G> Example code:
> 
> G> if( 1/3 == 0.3333333 ) 
> G> { 
> G>   printf("32-bit Floating point IEEE exact equality\n"); 
> G> }
> 
> G> if( AlmostEqual( 1/3, 0.3333333 ) ) 
> G> { 
> G>   printf("Numbers are almost equal\n");
> G> }
> 
> G> Thanks to Bruce Dawson for his fast routine.
> 
> G> Optimize() function now checks if min < max, step > 0 and
> G> checks if parameter name is not empty 
> 
> G> Made Time&Sales case insensitive (when "case sensitive tickers" 
option is turned off")
> 
> G> OBV/AccDist/Chaikin functions adjusted to be SetForeign-aware
> 
> G> OLE: Application object new methods
> G> BOOL LoadLayout( filename )
> G> BOOL SaveLayout( filename )
> 
> G> AB = new ActiveXObject("Broker.Application");
> G> AB.LoadLayout("C:\\Program
> G> Files\\AmiBroker\\Data\\Layouts\\Default.awl"); 
> 
> G> OLE: Window object new property: SelectedTab 
> 
> G> AB = new ActiveXObject("Broker.Application");
> G> AW = AB.ActiveWindow;
> G> tabindex = AW.SelectedTab; // read selected tab
> G> AW.SelectedTab = 3; //switch to tab 3 
> G> AW.SelectedTab = tabindex; // restore originally selected tab
> 
> G> Fixed: Exception was generated when GetRTDataForeign was called 
with non-existing ticker
> 
> G> OLE: Window object new methods: LoadTemplate, SaveTemplate
> 
> G> AB = new ActiveXObject("Broker.Application");
> G> AW = AB.ActiveWindow;
> G> AW.SaveTemplate("Test.abt");
> G> AW.LoadTemplate("Test.abt ");
> 
> G> CHANGES FOR VERSION 4.72.1 (as compared to 4.72.0)
> G> fixed out-of-memory problem sometimes occuring during scan of 
large (>512MB) databases
> G> CHANGES FOR VERSION 4.72.0 (as compared to 4.71.1)
> 
> G> " Currency" field support in ASCII importer 
> G> added command: 
> G> $CURRENCY USD
> 
> G> and field:
> 
> G> $FORMAT Name,Currency$OVERWRITE 1$AUTOADD 1]
> 
> G> Added "Additional commands" field in the Import wizard for
> G> typing any extra $- commands that are not available via 
checkboxes 
> 
> G> Added parameter to AddColumn/AddTextColumn to control column 
width 
> 
> G> AddColumn( ARRAY, "Caption", format = 1.2, color =
> G> colorDefault, bgcolor = colorDefault, width = -1); 
> G> AddTextColumn( "Text", "Caption", format =  1.2, color =
> G> colorDefault, bgcolor = colorDefault, width = -1 );
> 
> G> AddToComposte new flag to work when Status("action")==
> G> actionPortfolio (completed: 2005-09-09)
> G> new flag is called atcEnableInPortfolio
> 
> G> Example:
> 
> G> if( Status("action" ) == actionPortfolio ) 
> 
> G> {
> G> ... Custom backtest mode here ....
> G> AddToComposite( some_array, "~COMPOSITE", "X",
> G> atcFlagEnableInPortfolio | atcFlagDefaults );
> 
> G> }
> 
> G> AFL added: tanh(), sinh(), cosh() functions 
> G> Hyperbolic tangent, sine and cosine function
> 
> G> AFL functions: StrToUpper and StrToLower 
> 
> G> Fixed: Tick ASCII import: last tick of previous import was
> G> deleted on subsequent import, now it is corrected 
> 
> G> Function to detect mouse button state 
> 
> G> GetCursorMouseButtons() returns mouse button state at the time 
when chart formula is executed
> 
> G> 0 - if no mouse button is pressed
> G> 1 - if left mouse button is pressed 
> G> 2 - if right mouse button is pressed
> G> 4 - if middle mouse button is pressed
> 
> G> plus combinations:3 - left + right5 - left + middle6 - right +
> G> middle 7 - left + right + middle]
> 
> G> GetRTDataForeign (retrieving values for other symbols) 
> G> GetRTDataForeign( "field", "symbol")
> 
> G> Pane is not deleted if shrinked down to zero (prevents from 
accidential deletion of panes)
> 
> G> Plot function now has xshift parameter that allows to visually
> G> shift the chart past the last bar 
> G> Example 20-bar Moving average shifted 10 bars into the future 
past the last bar:
> 
> G> Plot(Close,"Close",colorBlack,styleCandle);Plot(MA(Close,20),
> G> "Shifted MA", colorRed, styleLine, Null, Null, 10 ); 
> 
> G> Note that shift occurs during plotting and does not affect 
source array
> 
> G> Removed data source selection from preferences because it
> G> caused user confusion way too often 
> 
> G> Stock.Currency available via OLE
> 
> G> Title variable now supports new special token {{OHLCX}} which
> G> is replaced at runtime by string "Open ..., Hi .... Lo ... Close
> G> (...%)" showing current price
> 
> G> This way it is possible to implement formula that will show
> G> OHLC prices with number of decimal places set in the 
preferences. 
> 
> G> Example:
> 
> G> SetChartOptions(0,chartShowArrows|chartShowDates);
> G> _N(Title = "{{NAME}} - {{INTERVAL}} {{DATE}} {{OHLCX}} 
{{VALUES}}" );
> G> Plot( C, "Close", ParamColor("Color", colorBlack ),
> G> styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); 
> 
> G> user-definable number of decimal places in chart titles 
(completed: 2005-09-09)
> G> Number of decimal places displayed in default chart title is
> G> now user-definable inTools->Preferences->Miscellaneous"Decimal
> G> places in chart titles". 
> 
> G> Allowable values:
> G> -1 - dynamic mode (number of decimal places automatically 
adjusted)
> G> 0..6 - fixed number of decimal places 
> 
> G> QuoteArray resizing now uses heuristic algorithm to minimize
> G> memory fragmentation and increase performance 
> 
> G> atcFlagDeleteValues now highlighted properly in the AFL editor
> 
> G> CHANGES FOR VERSION 4.71.1 (as compared to 4.71.0)
> G> fixed compatibility problem with AmiQuote (due to changed order
> G> of OLE properties/method while AmiQuote was using old ones) now
> G> ASCII importer in $TICKMODE does not delete quotes older than
> G> oldest (first) record in the imported file, so you can safely
> G> import tick data from subsequent files (older first, newest 
later) 
> G> CHANGES FOR VERSION 4.71.0 (as compared to 4.70.5)
> G> AFL: added GetCursorXPosition() and GetCursorYPosition() 
functions
> 
> G> Functions return current mouse cursor position. 
> G> Values returned are equal to those visible in the status bar,
> G> and these functions require status bar to be visible. Returned
> G> values represent cursor position at the formula execution time 
(or
> G> few milliseconds before it) and accurracy is subject to pixel
> G> resolution of the screen (first cursor position is read in 
screen
> G> pixels (integer) and then converted to actual value therefore 
for
> G> example when screen resolution is 1024x768 maximum obtainable
> G> resolution in X direction is  0.1% and in Y direction 0.13%), 
also
> G> X values are snap to datetime of nearest data bar.
> 
> G> It only makes sense to use these functions in 
indicator/interpretation code.
> 
> G> Using them in AA window may yield random 
> G> values.GetCursorXPosition() function returns X position in 
DateTime
> G> format (the same as used by DateTime() function).You can 
convert it
> G> to string using DateTimeToStr() function.GetCursorYPosition()
> G> returns Y position (as displayed in Y axis of the chart). 
> 
> G> Example:
> 
> G> ToolTip="X="+DateTimeToStr(GetCursorXPosition()) 
+"\nY="+GetCursorYPosition();
> 
> G> AFL: added DateTimeToStr() and StrToDateTime() functions 
> 
> G> These functions allow to convert string to datetime format and 
vice versa.
> 
> G> Example:
> 
> G> ToolTip="X="+DateTimeToStr(GetCursorXPosition()) 
+"\nY="+GetCursorYPosition();]
> G> Added ability to store charts as .GIF (in addition to PNG)
> 
> G> ASCII importer maximum supported line length is increased to 
2048 characters
> 
> G> Fixed: .aflsafe files didn't get deleted automatically
> 
> G> Added N-volume bars charts and timeframe support.
> 
> G> Custom N-volume bar intervals are definable (as usual) in Tools-
>Preferences->Intraday.
> 
> G> TimeFrame functions were also extended to support N-volume bars
> G> using new TimeFrameMode() function calling 
> 
> G> TimeFrameMode( 0 ); 
> 
> G> - switches time frame functions to time-based operation (the 
default)
> 
> G> TimeFrameMode( 1 ); 
> 
> G> - switches time frame functions to N-tick operation (positive
> G> values passed to TimeFrameSet are treated now as N-tick) 
> 
> G> TimeFrameMode( 2 ); 
> 
> G> - switches time frame functions to N-volume bar operation
> G> (positive values passed to TimeFrameSet are treated nowas N-
volme
> G> bars) 
> 
> G> Example:
> 
> G> TimeFrameMode( 2 );
> G> TimeFrameSet( 50000 ); // 50'000 share bars.. 
> G> ...do something ...
> G> TimeFrameRestore();
> 
> G> Note: N-volume bars are somewhat weird (compression of data to
> G> N-volume bar may actually deliver MORE output bars - for 
example if
> G> one tick is 1000 shares and you have specified 100V bars then
> G> single tick will be expanded to TEN 100V bars - ten times 
original
> G> size) 
> G> TimeFrame functions are protected against array overrun and
> G> will not decompress beyond original array size (you will get an
> G> "Error 47. N-volume bar compressed data longer than base time
> G> frame").
> G> Also switching main time frame to some weird N-volume bar value
> G> will result in limiting the output to maximum twice original 
data
> G> size(without error message). 
> G> You should keep that in mind and avoid using too small N-volume
> G> bar intervals that could lead to such condition.
> G> Also due to the nature of N-volume bars the only TimeFrameSet()
> G> function will yield correct N-volume bar values,
> G> TimeFrameGetPrice() may give slightly distorted results. 
> G> It is also possible to use n-volume bars in TimeFrame functions
> G> without calling TimeFrameMode() - it is then necessary to 
specify
> G> n-volume bars as negative number offset by -1000000 (minus one
> G> million):
> 
> G> TimeFrameSet( -1000000 - 2000 ); 
> 
> G> // gives 2000V barsSimilarly formatted negative numbers will be
> G> reported by Interval() function when n-volume bars are selected.
> 
> G>  
> G> OLE: Save As PNG / GIF callable from automation 
> 
> G> Example script:
> 
> G> AB = new ActiveXObject("Broker.Application");
> G> AB.ActiveWindow.ExportImage("Test.png");
> G> Plugin is not called when GetExtraData is used for symbol that
> G> has "use only local database" flag turned on, and NULL is 
returned
> G> instead of an error 
> 
> G> Protected against changing application's current working 
directory by printing to file
> 
> G> Toolbar does not get wrapped when main frame window is resized 
> 
> G> OLE: Analysis object has new method MoveWindow( x, y, width,
> G> height) that allows to control position and size of automatic
> G> analysis window
> 
> G> AB = new ActiveXObject("Broker.Application");
> G> AB.Analysis.MoveWindow ( 10, 10, 200, 200 );
> 
> G> It has some restrictions on size: specified size can not
> G> besmaller than 10x10 pixels and can not be bigger than entire
> G> screen dimensions.
> G> Also when "No minimum size for resizing dialogs" box in
> G> UNCHECKED in Tools->Prefs->Misc it won't shink AA window below
> G> default size necessary to fully display all controls. 
> 
> G> ASCII importer: added ability to import tick data from text 
files 
> 
> G> ASCII importer now allows tick data files to be imported.
> G> Tick data files consist of several records having the same
> G> timestamp.This makes it impossible to use normal import mode 
which
> G> assumes different (unique) timestampsfor each data row (when 
same
> G> timestamp is found then new data overwrites old). 
> 
> G> To turn on TICK mode you need to add manually
> 
> G> $TICKMODE 1
> 
> G> line to ASCII importer definition file.
> 
> G> $TICKMODE is a special mode of importer that allows to import
> G> quotes that haveduplicate time stamps. 
> 
> G> It makes two assumptions:
> G> a) input data should come in the ascending time order (i.e.
> G> OLDER records first, LATEST records last) 
> G> b) input data should consist of entire tick history because
> G> importer will DELETE any existing quotes (to avoid creating
> G> multiple copies of the same ticks).
> G> Once again: Turning on 
> G> $TICKMODE 1
> G> will DELETE ANY QUOTES that already exist in the database and
> G> then will import all ticks from input data file.
> G> You have been warned.
> 
> G> For example data files like this:
> G> 
MOL,0,20050606,162959,16400.0000,16400.0000,16400.0000,16400.0000,2MO
L,0,20050606,162959,16400.0000,16400.0000,16400.0000,16400.0000,11MOL
,0,20050606,162959,16400.0000,16400.0000,16400.0000,16400.0000,40
> 
> G> Can be imported using the following definition file:
> 
> G> $FORMAT Ticker, Skip, Date_YMD, Time, Open, High, Low, Close, 
Volume
> G> $SKIPLINES 1
> G> $SEPARATOR ,
> G> $CONT 1
> G> $GROUP 255
> G> $AUTOADD 1
> G> $DEBUG 1
> G> $TICKMODE 1
> 
> G> Sometimes it happens that input files have invalid timestamps 
(seconds > 59).
> 
> G> For example:
> 
> G> 
MOL,0,20050606,162970,16400.0000,16400.0000,16400.0000,16400.0000,2
> 
> G> Please take a closer look at first line shown in this example
> G> it has time:16:29:70 (you see 70 seconds !) 
> G> So I had to add a special flag to the importer that works 
around such data errors.
> 
> G> It is called $ALLOW99SECONDS 1 and will convert all records
> G> with invalid seconds (i.e greater than 59)to 59s. 
> G> So record stamped 16:29:70 will be treated as 16:29:59 
> G> Now for tick mode to work with such incorrect records you would
> G> need to add two lines to ASCII importer definition:
> G> $TICKMODE 1
> G> $ALLOW99SECONDS 1
> 
> 
> 
> G> HOW TO REPORT BUGS
> G> If you experience any problem with this beta version please
> G> send detailed description of the problem (especially the steps
> G> needed to reproduce it) to bugs at  amibroker.com
> 
> 
> G> Please note that this group is for discussion between users 
only.
> 
> G> To get support from AmiBroker please send an e-mail directly to 
> G> SUPPORT {at}  amibroker.com
> 
> G> For other support material please check also:
> G> http://www.amibroker.com/support.html 
> 
> 
> 
> 
> 
> G> SPONSORED LINKS
> G>  Investment management software Real estate investment software
> G> Investment property software Software support Real estate
> G> investment analysis software Investment software
> 
> G> YAHOO! GROUPS LINKS
> 
> G>  Visit your group "amibroker" on the web.
> G>   To unsubscribe from this group, send an email to:
> G>  amibroker-unsubscribe@xxxxxxxxxxxxxxx 
> G>   Your use of Yahoo! Groups is subject to the Yahoo! Terms of 
Service.
>






------------------------ Yahoo! Groups Sponsor --------------------~--> 
Try Online Currency Trading with GFT. Free 50K Demo. Trade 
24 Hours. Commission-Free. 
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/GHeqlB/TM
--------------------------------------------------------------------~-> 

Please note that this group is for discussion between users only.

To get support from AmiBroker please send an e-mail directly to 
SUPPORT {at} amibroker.com

For other support material please check also:
http://www.amibroker.com/support.html

 
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:
    http://docs.yahoo.com/info/terms/