Package: libfinance-quote-perl
Version: 1.13-4
Severity: normal

1.13-4 broke retrieval of quotes of (some?) mutual funds (of the Dutch
market) through the yahoo_europe method. Example in case is INGBM.AS.

Here's my test code:

 ------  begin ----------

use Finance::Quote;
use Data::Dumper;

my $q = Finance::Quote->new();
my %data = $q->fetch('yahoo_europe', 'INGBM.AS');
#my %data = $q->fetch('yahoo_europe', 'KPN.AS');

print Dumper( {%data} );

 ------  end ----------

Output with 1.13-4 (with "undef" lines removed for brevity):

          'INGBM.ASlast' => '28.88',
          'INGBM.ASname' => 'IBP ING BASIC MAT 6',
          'INGBM.AStime' => ' 9:46PM',
          'INGBM.ASisodate' => '2009-02-27',
          'INGBM.ASopen' => '28.43',
          'INGBM.ASsuccess' => 1,
          'INGBM.ASvolume' => '+1.58%',
          'INGBM.ASprice' => '28.88',
          'INGBM.ASdate' => '02/27/2009',
          'INGBM.ASp_change' => '+0.45',
          'INGBM.ASmethod' => 'yahoo_europe',
          'INGBM.ASsymbol' => 'INGBM.AS',
          'INGBM.ASdiv_yield' => '0.00',

In particular:

 - currency is undef, which makes it unusable by Gnucash
 - p_change contains a net change, should contain percent
 - net is undef
 - volume contains what should be p_change

Output with 1.13-3 (on another machine):

          'INGBM.ASnet' => '+0.45',
          'INGBM.ASlast' => '28.88',
          'INGBM.ASname' => 'IBP ING BASIC MAT 6',
          'INGBM.AStime' => ' 9:46PM',
          'INGBM.ASisodate' => '2009-02-27',
          'INGBM.ASclose' => '28.43',
          'INGBM.ASprice' => '28.88',
          'INGBM.AScurrency' => 'EUR',
          'INGBM.ASdate' => '02/27/2009',
          'INGBM.ASp_change' => '+1.58',
          'INGBM.ASmethod' => 'yahoo_europe',
          'INGBM.ASsymbol' => 'INGBM.AS',
          'INGBM.ASdiv' => '0.00',

In particular:

 - currency is now set, which saves the day for use with Gnucash
 - p_change is now correct
 - net is correct

But there is indeed something fishy going on with (Dutch) mutual funds
in yahoo UK finance: the yahoo CSV data is not in the same format for
stocks and for mutual funds! Mutual funds have an extra column
inserted between the third and fourth, which shifts all columns after
that one to the right. Apparently 1.13-3 had some magic so that it
still works, but 1.13-4 broke that.

A concrete example. I take a stock:

 GET /d/quotes.csv?f=snl1d1t1c1p2vbapomwerr1dyj1qa2c4&e=.csv&s=KPN.AS HTTP/1.1
 Host: uk.finance.yahoo.com

 HTTP/1.1 200 OK
 Date: Sat, 28 Feb 2009 23:28:17 GMT
 Content-Type: application/vnd.ms-excel

 KPN.AS,KONINKLIJKE KPN NV ,10.19, 
9:46PM,02/27/2009,-0.03,-0.24%,10311130,10.19,10.20,10.22,10.15,N/A,N/A,0.77,0.77,0.35,5.39,N/A,8442941,EUR

Here, the fourth column is last trade time, and yahoo_europe method of
version 1.13-3 makes an OK, if not 100% correct job of decoding it
(e.g. div_date is supposed to contain the dividend pay date, but
contains its amount):

          'KPN.ASclose' => '10.22',
          'KPN.AScap' => '8442941',
          'KPN.ASname' => 'KONINKLIJKE KPN NV ',
          'KPN.ASsuccess' => 1,
          'KPN.ASvolume' => '10311130',
          'KPN.ASdate' => '02/27/2009',
          'KPN.AScurrency_set_by_fq' => 1,
          'KPN.ASnet' => '-0.03',
          'KPN.ASprice' => '10.19',
          'KPN.ASdiv' => '5.39',
          'KPN.AScurrency' => 'EUR',
          'KPN.ASask' => '10.20',
          'KPN.ASopen' => '10.15',
          'KPN.ASpe' => '0.77',
          'KPN.ASisodate' => '2009-02-27',
          'KPN.ASeps' => '0.77',
          'KPN.ASdiv_date' => '0.35',
          'KPN.ASsymbol' => 'KPN.AS',
          'KPN.ASp_change' => '-0.24',
          'KPN.ASlast' => '10.19',
          'KPN.ASmethod' => 'yahoo_europe',
          'KPN.ASex_div' => 'EUR ',
          'KPN.AStime' => ' 9:46PM',
          'KPN.ASbid' => '10.19'


1.13-4 gives exactly the same result.

          'KPN.ASclose' => '10.22',
          'KPN.AScap' => '7905630',
          'KPN.ASname' => 'KONINKLIJKE KPN NV ',
          'KPN.ASsuccess' => 1,
          'KPN.ASvolume' => '10311130',
          'KPN.ASdate' => '02/27/2009',
          'KPN.AScurrency_set_by_fq' => 1,
          'KPN.ASnet' => '-0.03',
          'KPN.ASprice' => '10.19',
          'KPN.ASdiv' => '3.53',
          'KPN.AScurrency' => 'EUR',
          'KPN.ASask' => '10.20',
          'KPN.ASopen' => '10.15',
          'KPN.ASpe' => '0.77',
          'KPN.ASisodate' => '2009-02-27',
          'KPN.ASeps' => '0.77',
          'KPN.ASdiv_date' => '0.36',
          'KPN.ASsymbol' => 'KPN.AS',
          'KPN.ASp_change' => '-0.24',
          'KPN.ASlast' => '10.19',
          'KPN.ASmethod' => 'yahoo_europe',
          'KPN.ASex_div' => 'EUR ',
          'KPN.AStime' => ' 9:46PM',
          'KPN.ASbid' => '10.19'


Now, if I take INGBM.AS (a mutual fund), here's the result:

 GET /d/quotes.csv?f=snl1d1t1c1p2vbapomwerr1dyj1qa2c4&e=.csv&s=INGBM.AS HTTP/1.1
 Host: uk.finance.yahoo.com

 HTTP/1.1 200 OK
 Date: Sat, 28 Feb 2009 23:28:45 GMT
 Content-Type: application/vnd.ms-excel

 INGBM.AS,IBP ING BASIC MAT 6,28.88,N/A, 
9:46PM,02/27/2009,+0.45,+1.58%,N/A,N/A,N/A,28.43,N/A,N/A,N/A,N/A,N/A,N/A,0.00,N/A,N/A,N/A,N/A,EUR

You see? The fourth column, which contains "N/A" pushes the last trade
time & date, the net change, etc one column more to the right, and
gives the results already detailed above.

-- System Information:
Debian Release: 5.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_LU.UTF-8, LC_CTYPE=fr_LU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages libfinance-quote-perl depends on:
ii  libcrypt-ssleay-perl          0.57-1+b1  Support for https protocol in LWP
ii  libhtml-tableextract-perl     2.10-3     module for extracting the content 
ii  libwww-perl                   5.820-1    WWW client/server library for Perl
ii  perl                          5.10.0-19  Larry Wall's Practical Extraction 

libfinance-quote-perl recommends no packages.

libfinance-quote-perl suggests no packages.

-- no debconf information


The other machine (with 1.13-3):

ii  libcrypt-ssleay-perl           0.57-1+b1
ii  libhtml-tableextract-perl      2.10-3
ii  libwww-perl                    5.813-1
ii  perl                           5.10.0-19



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to