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

[amibroker] AmiBroker 4.31.0 BETA released



PureBytes Links

Trading Reference Links




Hello,
 
A new beta version (4.31.0) of AmiBroker has just been 
released.
 
It is available for registered users only from the members 
area at:
<A 
href="">http://www.amibroker.com/members/bin/ab4310beta.exe
 
If you forgot your user name / password to the members 
area
you can use automatic reminder service at: <A 
href="">http://www.amibroker.com/login.html
 
This release brings huge improvement to AFL: 
for and while loops and 
if-else flow control statements.
 
Native AFL loops run 2..3 times faster than JScript (according 
to my
preliminary tests on arrays with 1000-5000 bars)
 
For more details and example code please read the following 
"READ ME" text.
 
NOTE: from now on all beta releases will be available to 
registered
users only (in member area).
 
Best regards,Tomasz Janeczkoamibroker.com
 
 

AmiBroker 4.31.0 Beta Read Me
April 13, 2003 10:38 
THIS IS AN EARLY BETA VERSION OF THE SOFTWARE. EXPECT BUGS 
!!!
AGAIN: THIS IS AN EARLY 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.30 first. 
Just run the installer and follow the instructions. 
Then run AmiBroker. You should see "AmiBroker 4.31.0 beta" written in the 
About box.
CHANGES FOR VERSION 
4.31.0 (as compared to 4.30.0)
  Workspace window uses "icon font" set in the Windows settings instead of 
  hard coded Tahoma 8 
  for better readability and ClearType(tm) compatibility on WinXP, all 
  dialog windows use now 'MS Shell Dlg' face name that maps to standard MS Sans 
  Serif on Win 9x/Me/NT and Tahoma on Win 2K and XP. 
  rewritten AFL parser, now formula is parsed and coverted to syntax tree 
  and then interpreted. This would allow further improvements including 
  compilation. This allowed also to add loops/if-else statements. 
  implemented IF/ELSE statement, WHILE and FOR loops:The same basic 
  'for' loop in AFL is 2..3 times faster than in JScriptSyntax follows 
  C++/JScript style: 
  while( conditional_expression ) statement;
  for( initializer_part; conditional_expression; iterator_part ) 
  statement;
  if( conditional_expression ) statement;
  if( conditional_expression ) 
statement;elsestatement;
  
  implemented compound statements: these are blocks of statements 
  enclosedin opening and closing curly brace 
  {statement1;statement2;...statementN;}
  compound statement can appear anywhere when simple statement can.
  For example:
  i = 10;while( i < 20 ){Plot( MA( Close, i ), "MA" + 
  WriteVal( i, 0 ), colorBlack + i );i = i + 1;}
  
  implemented C-style postfix and prefix increment/decrement operators
  i = 10;WriteIf( i++ );WriteIf( ++i );WriteIf( i 
  );
  
  implemented array element access (subscript) operator []:
  WriteVal( Close[ 0 ] ); // prints the first bar of close 
  array
  /* a sample low-level implementation of exponential moving average in 
  AFL */
  myema[ 0 ] = Close[ 0 ];
  for( i = 1; i < BarCount; i++ ){myema[ i ] = 0.1 * Close[ 
  i ] + 0.9 * myema[ i - 1 ];}
  
  added built-in constant 'BarCount' that returns number of bars available in 
  arrays (the number of elements of array)When QuickAFL is turned on it may 
  be less than true number of bars because QuickAFL feature attempts to use only 
  visible bars (and few before). You can control how many bars the formula 
  requires using SetBarsRequired() function
  
  implemented infinite-loop protection. Nice if you forgot to increment 
  counter variable in 'for' loop :-)
  
  tab key now works without need to press ALT/CTRL in AFL editors
  
  added C-like synonyms for logical ADD/OR/NOT: &&, ||, ! 
  /* a sample low-level implementation of Profit-target stop in 
  AFL: */
  Buy = Cross( MACD(), Signal() );
  priceatbuy=0;
  for( i = 0; i < BarCount; i++ 
  ){     if( priceatbuy == 0 && Buy[ i 
  ] )      priceatbuy = BuyPrice[ i ];
       if( priceatbuy > 0 && 
  SellPrice[ i ] > 1.1 * priceatbuy 
  )     {       Sell[ 
  i ] = 1;       SellPrice[ i ] = 1.1 * 
  priceatbuy;       priceatbuy = 
  0;     }     else       Sell[ 
  i ] = 0;}
  /* sample EMA rainbow */
  Plot( Close, "Price", colorBlack, styleCandle );for( Range = 15; 
  Range < 100; Range++ )   Plot( EMA( Close, Range ), 
  "MA"+WriteVal(Range,0), colorRose + Range % 8, styleNoLabel );
  
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 <A 
href="">bugs@xxxxxxxxxxxxx 






Yahoo! Groups Sponsor












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



Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.