PyDownloader Reloaded

rmike

Well-Known Member
#1
Python Yahoo (Multi Exchange, 1 minute Historical Data) Downloader - PyD v1.0

PyDownloader reloaded with Yahoo flavour :)

- Download the setup via the attached link

- This will install the utility in the folder C:\PyDownloader with an option for placement of PyDownloader program in Start Menu\ All Programs directory and PyDownlader shortcut on your desktop (users may need to remove folder(s) of previous version(s) if they still have it on their rig

- This is a Python distributable utility to download 1 min interval historical intraday data (max 7 days) for multiple exchanges worldwide from Yahoo Finance. This is compiled to work on Microsoft Windows OS (from Windows 7 onwards). The utility will not work on Mac and Linux OS.

Important - Do not modify the name of any file or folder!!!

- Post installation, the contents of the folder (apart from uninstall files viz. unins000.exe/dat) will look like this

contents.png

- Place the PyD.format file in the Amibroker Formats folder. You will need to remove/ overwrite the previous PyD format file as the data format is different

- The 'PyD_1.0.exe' is the utility's executable. 'Data' is the folder into which the data (text files) will be downloaded. 'Error Log.txt' is the error record log for troubleshooting. 'PyD_1.0_Lic' is the usage licence file. 'TickerList.txt' stores your tickers of choice. The max limit for tickers is 100 - Yeah I know! :) But be reasonable, you don't want yahoo to go down google's way - now do you?! Hence play nice and download only that much what ought to be ordinarily required by an individual retail trader

Contd :-
 

Attachments

Last edited:

rmike

Well-Known Member
#4
Contd :-

Coming now to the important subject of TickerList nuances. Sample TickerList shown below

tickerlist.png


- The tickers must be exactly as per Yahoo Finance site

- The indices in yahoo finance (worldwide format) generally have the caret '^' prefix notation and don't have the .NS (i.e the exchange, sample shown for NSE India) suffix unlike Google Finance

- The equities ordinarily have the dot+exchange suffix e.g ALBK.BO illustrated as the ticker on BSE India exchange. However some equities may not have dot+exchange suffix - Like ACC illustrated for ACC ticker of NYSE - America's New York exchange

- The transformation of ampersand notation '&' for query, and back for data output, is handled internally by the utility so that the user does not have to manually make the changes - like M&M.NS illustrated as above. Also, the ticker output is without the exchange suffix (similar to data from NEST/ NOW terminals) so that a user can carry out a seamless backfill during market hours even while continuing to use TB/ Josh's RTD utility and can maintain database continuity without ticker changes contortions - But then, I guess, users have come to expect such attention to detail and niceties from this utility :)

Contd :-
 
Last edited:

rmike

Well-Known Member
#5
Contd :-

Coming to the subject of utility functioning

- Upon launch you'll see a blank console window while the python environment loads. This could take a bit of time (variable as per your rig's juice) so be patient :)

- When the utility's ready, the console screen will look like this

Input_scr.png


- Input the required number of trading days (as per requirement - max 7) as a numeral, check you have net connectivity, press 'Enter' and you're good to GO!

- If there's any issue with incorrect entries in tickerlist or net connectivity, the utility will flash the requisite error and exit. Apart from these two, all so common, errors the utility has the feature to catch other exceptions and errors in the Error Log

- If however, all is well then the utility will do its thing - and notify you when its done!

Run_scr.png


- The utility has the feature of '5 runs per launch'. The run count is displayed after each 'run'. For initiating the next 'run', Input your choice as 'y' OR 'n' in small caps as desired and press 'Enter'. The utility will bid 'Goodbye' after the fifth run, irrespective of input :)

- Data can be backfilled in Amibroker via the ASCII Import function, using the PyD format file.

- The format of data output has been structured such that Metastock users may backfill the same in Metastock by changing the .txt extension of the data file(s) to .csv, if desired. Alert - This is Untested as I don't possess MS

Well .... that's all that I can think of at this time in the way of 'useful instructions'!!! :)

HTH, Cheerio!!!
 
Last edited:

rmike

Well-Known Member
#10
A couple of other things

- If you download tickers from markets in other time zone(s) e.g Dow Jones Index, Hang Seng Index etc, the output data will have the trade times converted as per your local time zone i.e IST

- Yahoo implements ratelimiting i.e if you keep hitting the server with far too many queries, your ISP will be capped

- PyDownloader is merely a transport mechanism for data from server to your end in a comprehensible (and usable) format. It does not, and cannot, guarantee glitch free data accuracy. So do carry out due diligence from time to time

sr114 said:
pls upload the util to any other site as in 4shared we have to create an account there
Done! Alternate link is attached

Cheerio!!!
 

Attachments

Thread starter Similar threads Forum Replies Date
R Intraday 315
V Introductions 0

Similar threads