AmiQuote 4.10 released

If you get Microsoft "SmartScreen" because the file is signed with new certificate, follow these steps:

image

and then just clicking "Run anyway"

image

1 Like

You can also help by reporting false positive to Microsoft so their "SmartScreen" actually gets "smart" one day:

image

More information:

The video below shows:

  1. how to import demo Polygon.IO data source
  2. adding Polygon.IO API key (required)
  3. "Debug" tab that allows to debug Javascript function that performs data transformation. As you can see data downloaded from Polygon.IO are in JSON format. The Javascript function uses Javascript's built-in JSON parser to parse JSON string and produce CSV format that can be consumed by AmiBroker
  4. "Javascript" page shows the user-defined transformation function
  5. Once data source is defined, it is demonstrated that it downloads intraday data for MSFT

video

6 Likes

As reported in AmiQuote 4.10 kudos there is small mistake in JavaScript code in Polygon.IO example resulting in 1-minute offset in timestamps. Corrected Javascript code is here:

function pad(num, size) 
{
    num = num.toString();
    while (num.length < size) num = "0" + num;
    return num;
}

function dateToYMD( d )
{
	return  d.getFullYear() + "-" +
           pad( d.getMonth() + 1, 2 ) + "-" +
           pad( d.getDate(), 2 );
}

function dateToHMS( d )
{
	return	 pad( d.getHours(), 2 ) + ":" +
           pad( d.getMinutes(), 2 ) + ":" +
           pad( d.getSeconds(), 2 );
}

// the processing function takes text as input and produces text as ouput
function Process( input )
{
	try
	{
		all = JSON.parse( input );

		if( all.status == "ERROR" ) 
		{
			return "Error: " + all.error;
		}

		if( all.resultsCount == 0 )
		{
			return "Error: no data for this symbol";
		}

		quotes = all.results;

		output = "";
		for( i = 0; i < quotes.length; i++ )
		{
			date = new Date( quotes[ i ].t );

			open = quotes[ i ].o;
			high = quotes[ i ].h;
			low = quotes[ i ].l;
			close = quotes[ i ].c;
			volume = quotes[ i ].v;
		
			output += dateToYMD( date ) + ", ";
			output += dateToHMS( date ) + ", ";

			output += open + ", ";
			output += high + ", ";
			output += low + ", ";
			output += close + ", ";		
			output += volume + "\n";		
		}
	}
	catch( e )
   {
      output = "Error: " + e.name + ": " + e.message;
   }

	return output;
}
1 Like

Microsoft finally "approved" it and SmartScreen notifications for AmiQuote 4.10 are gone.

Still we are waiting for Microsoft to whitelist new certificate so other programs signed with it do not need to go thru this nonsense.

2 Likes

@Tomasz, if possible, I would like to know what JavaScript engine is embedded in the new AmiQuote version, to better understand what level of functionality it provides. Thanks.

It uses Microsoft JavaScript engine in jscript9.dll (this was first introduced in IE9 and used by IE10 & IE11 that features native JSON object that previous versions of MS JScript were missing). It is based on ECMA-262 5th edition.

2 Likes

Thanks @Tomasz. I was planning to backtest a strategy in other markets and i see this "Download Ticker List" where i can actually download tickers from different exchanges :slight_smile: which makes the work easier.

Just one question i have (Please excuse me if its offtopic). I had currently tested my strategy on NSE (India) which was majorily a Bull market for the last 20 years (same for most of markets in the world as well like Nasdaq etc). Do you have idea where a market or exchange was not bullish or maybe volatile or sideways?

World markets were definitely not bullish in H2 2007-H2 2009. Also for example Warsaw stock exchange was mainly sideways for 2011-2016.

1 Like

come on! The India market has had so many sideways years - 10-14 , 18-20..Open Monthly chart and you will clearly see sideways years..
image

Thanks @Tomasz i could locate good number of them. I was mainly thinking on the US and India ones (over a very long term). Below is the list i could find:

poland stock exchange index: WIG (Sideways)
qatar stock exchange index: QE General Index (Sideways)
singapore stock exchange index: STI (Sideways)
tokyo stock exchange index: Mothers Index (2008 Fall and sideways)
netherlands stock exchange index: AEX (Slight Bullish)
FTSE/JSE Africa All Shares Index: FTSEMIB (2008 Fall and sideways)

Awesome stuff @Tomasz. One question, when using the download ticker list for the various exchanges, does it download these files as a TLS and if so where would these get saved/stored to? Thanks again for such an outstanding program. I apologize again if my questions are not as intelligent as others.......still learning the ropes here.

They are downloaded directly into AmiQuote (not into the file), but once you select the file and download it, you can save it to TLS file locally using AmiQuote's File->Save As... menu option.

1 Like

Because some people apparently don't realize that Polygon IO supplies not only stocks, here is a sample video for BTCUSD:

video

8 Likes

Thanks

I'm not able to locate the data source file in AmiBroker folder, can you please share the location (for polygon.io) ?

Data source subfolder exists inside AmiQuote folder (where AmiQuote is installed) and there you will find all files.

Hi Tomasz,

AmiQote does not start at all. It just flashes for second and then goes away. The Q is shown in the taskbar but when I click it no windows comes up. I cannot download any data for 2 weeks.

You might have moved it to other screen, then disconnected that other screen.

Use search before posting:

Discusssion is continuned here:
https://forum.amibroker.com/t/amiquote-4-12-released/33040/2