AmiQuote Read Me

AmiQuote 1.90 BETA Read Me ( June 8, 2006 )

INTRODUCTION

AmiQuote is a companion program to AmiBroker stock charting/analysis software.

The main purpose of AmiQuote is to simplify and automate downloading

AmiQuote performs downloads using multiple threads allowing you to fully utilise your connection bandwidth.

DISCLAIMER

This software is provided "as is" without warranty of any kind. Any use of the program is at your own risk. The author disclaims any implied warranty of merchantability and/or fitness for a particular purpose.

AmiBroker.com is NOT a data vendor. Quotes available via AmiQuote are provided by Yahoo Finance, Lycos/Quote.com, MSN Money Central and other free web pages. AmiQuote is just a downloader (just like Internet Explorer) but specialized in getting quotes from mentioned vendors. AmiBroker.com makes NO REPRESENTATIONS on accuracy of quotes retrieved and provides no warranty on availability of quotes.

If at any time in the future Yahoo Finance, Lycos/Quote.com, MSN Money Central or any other quote source used by AmiQuote stops to provide the data, AmiBroker.com will not be liable for the any loss caused by inability to obtain quotes via AmiQuote.

WHAT'S NEW IN VERSION 1.90?

WHAT'S NEW IN VERSION 1.81?

WHAT'S NEW IN VERSION 1.80?

WHAT'S NEW IN VERSION 1.71?

WHAT'S NEW IN VERSION 1.70?

WHAT'S NEW IN VERSION 1.69?

WHAT'S NEW IN VERSION 1.68?

WHAT'S NEW IN VERSION 1.67?

WHAT'S NEW IN VERSION 1.66?

WHAT'S NEW IN VERSION 1.65?

WHAT'S NEW IN VERSION 1.64?

WHAT'S NEW IN VERSION 1.63?

WHAT'S NEW IN VERSION 1.62?

WHAT'S NEW IN VERSION 1.61?

WHAT'S NEW IN VERSION 1.60?

WHAT'S NEW IN VERSION 1.55?

WHAT'S NEW IN VERSION 1.54?

WHAT'S NEW IN VERSION 1.53?

WHAT'S NEW IN VERSION 1.52?

WHAT'S NEW IN VERSION 1.51?

WHAT'S NEW IN VERSION 1.50?

WHAT'S NEW IN VERSION 1.49?

WHAT'S NEW IN VERSION 1.48?

WHAT'S NEW IN VERSION 1.47?

WHAT'S NEW IN VERSION 1.46?

WHAT'S NEW IN VERSION 1.45?

WHAT'S NEW IN VERSION 1.41?

WHAT'S NEW IN VERSION 1.4?

WHAT'S NEW IN VERSION 1.3?

WHAT'S NEW IN VERSION 1.2?

INSTALLATION

If you have installed AmiBroker already, no special installation of AmiQuote is required. Just unzip AmiQuote package to a separate directory (the default is "C:\Program Files\AmiBroker\AmiQuote"). If you haven't installed AmiBroker yet it is recommended to do so, because AmiQuote uses MFC libraries (version 6.0) that are supplied with AmiBroker.

QUICK START

Note: this procedure works only if you have AmiBroker installed:

  1. Launch AmiBroker and AmiQuote
  2. Choose Tools->Auto-update AmiBroker database (or corresponding toolbar button)

HOW IT WORKS

AmiQuote loads (or retrieves from AmiBroker) a ticker list file (.TLS) which is simple ASCII file with ticker symbols, then parses it and downloads data from either Yahoo Finance or Quote.com servers. Then, when you start the download process, it requests the data from Yahoo and stores downloaded data in the separate .AQD (daily) or .AQH (historical) or .AQI (intraday bar) files for each ticker. After download, if AmiBroker is running, AmiQuote will import the quotes into AmiBroker automaticaly.

USAGE

Below you will find some tips on using AmiQuote 1.2 with and without AmiBroker. More detailed instructions will be provided with the upcoming AmiBroker 3.65.

Using AmiQuote in stand-alone mode

Although AmiQuote is provided as a companion program to AmiBroker it is however possible to use it without AmiBroker. Here is a simple procedure of downloading quotes using stand-alone AmiQuote:

  1. Launch AmiQuote
  2. Open supplied example file DJIA.TLS in the directory DJIA
    This will load example ticker list (components of Dow Jones Industrial Average)
  3. Choose between downloading current or historical or intraday interval bar quotes (intraday interval bars are available only for US exchanges)
  4. Click on green arrow toolbar button (Start download)
    now for a couple of minutes you can watch the download operation progress
  5. When all downloads are complete you can close the program and find appropriate .AQD (daily quotes) or .AQH (historical) or .AQI (intraday) files stored in the directory where TLS file is located.

Using AmiQuote with AmiBroker

Automatic update

The easiest method to work with AmiQuote and AmiBroker is to use the procedure given in Quick Start section of this document. Just run AmiBroker and AmiQuote and choose Tools->Auto-update AmiBroker database. This method updates historical quotes from the last date present in AmiBroker upto today. When performing automatic update, AmiQuote performs internally 4 steps a) retrieves the ticker list from AmiBroker (all stocks loaded currently in AmiBroker);
b) gets the last quotation date available in AmiBroker;
c) performs historical download from last date upto today;
d) instructs AmiBroker to import downloaded files.

AmiQuote now supports over 50 international exchanges in "historical" and "daily" modes.

Note that AmiQuote currently supports a new command line parameter: /autoupdate. This option forces AmiQuote to perform automatic update procedure without user intervention.
You may setup you custom tools menu in AmiBroker to call AmiQuote with this argument:

C:\Program Files\AmiBroker\AmiQuote\Quote.EXE /autoupdate

If you do so, you will be able to update your database with a single click.

Manual operation

Automatic mode is nice but there are cases when you have to perform some tasks manually. There is a good old document describing that mode of operation at: http://www.amibroker.com/docs/ab304.html . Everything written in this document remains valid with one exception - now importing to AmiBroker are performed automatically if you have Automatic import checkbox marked.

There are also several cases when you prefer to do things manualy, then please don't forget about some useful tools available at your fingertips:

File->Open, File->Save, File->Save As

These functions enable you to load and save your edited ticker lists for future repeated use.

Edit->Add tickers

This function allows you to add the tickers to the list. Just type space separated tickers into the field that will show up when you choose this function.

Edit->Delete tickers

This function allows you to delete tickers from the list. Just select the items you want to delete from the list view (multiple selection possible by holding SHIFT or CTRL key while clicking on items), and choose this function.

Edit->Mark all, Edit->Unmark all, Edit->Toggle, Edit->Mark selection, Edit->Unmark selection

These functions allow you to mark the tickers for download. Please note that AmiQuote puts a checkmark before ticker name in the list view. ONLY MARKED items will be downloaded. This allows you to perform selective downloads/updates.

View->Refresh

Basically AmiQuote handles refreshes by itself when needed. For example if you changed the date range, the list will be refreshed before starting download. But there are some cases when you may want to refresh the list by yourself. For example if you downloaded and imported quotes once and want to do this again you would need to choose this function. The Refresh function simply applies all date and type settings to the URLs listed, and MARKS all tickers for a new download.

Tools->Import into AmiBroker

This function is useful if you want to import just downloaded quotes into AmiBroker but you have Automatic import checkbox cleared.

Tools->Get tickers from AmiBroker

This function retrieves all stocks from currently loaded AmiBroker database and fills the AmiQuote ticker list with them.

Tools->Get last update date

This function retrieves the date of the most recent quotation of the first stock present in currently loaded AmiBroker database and sets the From date to this date.

Tools->Settings

Displays the settings window where you can define the destination directory where all downloads are stored. Note that blank destination directory means that downloads will be stored in the current working directory (in most cases this is the folder from where current .TLS file was loaded).

In this window you can also change the mode of writing the files. By default historical files are overwritten while daily files get appended. This is recommended setup. Appending daily files simply allows you to create intra-day historical files when you do the updates daily. You may change this behaviour for your particular purpose.

LIMITATIONS

Intraday interval bar data (1-min, 5-min, 15-min, 60-min and 120-min) are available for US securities only.
Historical data for international exchanges are usually much shorter than for US markets.

Because intraday bar data are downloaded from Quote.com servers the ticker symbols for indices are different than those used by Yahoo. For complete reference please check http://finance.lycos.com/home/misc/symbol_search.asp?options=i

Intraday bar data are limited to 500 bars regardless of bar interval. In other words you always get 500 bars data, whenever these are 1-min, 5-min, 15-min, 60-min or 120-min data - so by choosing bigger interval you get data from more days. This is the limitation imposed by free delayed Quote.com server.

SUPPLIED EXAMPLE FILES

AmiQuote 1.2 with the following example ticker lists:

DISTRIBUTION

AmiQuote is distributed as shareware. The evaluation version is almost fully functional and has NO time limit, so you can use it as long as you wish, but if you like the program and use it often you are encouraged to purchase life-time license for only $35. Click here to buy

LEGAL

AmiQuote 1.70. Copyright (C)2000-2004 by Tomasz Janeczko/AmiBroker.com.
All rights reserved.
All trademarks are the property of their respective owners.


AMIQUOTE OLE AUTOMATION INTERFACE (Version 1.70 and above)

Introduction

Note: AmiQuote's OLE automation interface is available for REGISTERED AmiQuote users only and requires at least version 1.70 of AmiQuote. If you attempt to trigger download or import from OLE automation interface using unregistered version you will be presented with a message box telling you to register.

All AmiQuote automation is available via methods and properties of single object: AmiQuote.Document.
After the initial installation, AmiQuote 1.70 must be run at least once in stand-alone mode in order to setup registry entries for AmiQuote.Document automation object properly. From then on you can use AmiQuote OLE automation.

To instantiate AmiQuote use standard CreateObject (VBScript and alike) or new ActiveXObject (JScript) statements:

VBScript sample:

Set AB = CreateObject("AmiQuote.Document")

JScript sample:

AB = new ActiveXObject("AmiQuote.Document");

Important: Note that AmiQuote.Document object is registered as multiple instance object so each call to CreateObject will launch a new instance of AmiQuote. (this is different from AmiBroker)


Typing Conventions


Methods of AmiQuote.Document object

AmiQuote.Document object exposes the following methods (functions) (in alphabetical order):

All methods return True on success and False on failure.


Properties of AmiQuote.Document object

AmiQuote.Document object exposes the following properties (in alphabetical order):

Examples

Example 1:
Load ticker list from the file, download historical data since June 1st, 1995 using Yahoo, import to running instance of AmiBroker:

AQ = new ActiveXObject("AmiQuote.Document");
AQ.Open("C:\\mysymbols.tls");

FromDate = new Date(1995,5,1,0,0,0);
/* year, month-1, day, hour, min, sec (required by JScript date constructor) */

ToDate = new Date; // current time

/* getVarDate is required to convert from JScript Date to OLE-automation date */
AQ.From = FromDate.getVarDate();
AQ.To = ToDate.getVarDate();

AQ.AutoImport = true; // import automatically
AQ.Source = 0; // Yahoo Historical

AQ.Download(); // starts download

// wait until download and import is finished
while( AQ.DownloadInProgress || AQ.ImportInProgress )
{
    WScript.sleep(5000); // wait 5 seconds before querying status again
}

WScript.echo("Download and import complete");



Example 2:
Add symbols programmatically, download and import (from the code)


AQ = new ActiveXObject("AmiQuote.Document");
AQ.AddSymbols("MSFT,NVDA,INTC,AAPL"); // comma separated list of symbols

AQ.AutoImport = false; // no automatic import
AQ.Source = 0; // Yahoo Historical

AQ.Download(); // starts download

while( AQ.DownloadInProgress || AQ.ImportInProgress )
{
   WScript.sleep(5000); // wait 5 seconds while AmiQuote is downloading
}

AQ.Import(); // starts download

while( AQ.ImportInProgress )
{
   WScript.sleep(5000); // wait 5 seconds while AmiQuote is importing
}

WScript.echo("Download and import complete");