/[cvs.andrew.net.au]/stock/update_market_from_asx.pl
ViewVC logotype

Contents of /stock/update_market_from_asx.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (show annotations) (vendor branch)
Thu Mar 14 13:23:57 2002 UTC (20 years, 9 months ago) by apollock
Branch: MAIN, stock
CVS Tags: start, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
Imported sources

1 #!/usr/bin/perl
2
3 use Pg;
4 use Finance::Quote;
5
6 $start = 0;
7 $db = "stock";
8 $db_user = "postgres";
9 $db_password = "ybgz004";
10
11 $conn = Pg::connectdb("dbname=$db user=$db_user password=$db_password");
12 $asx = Finance::Quote->new;
13
14 # Work out what stock we need to get prices for
15
16 $query = "SELECT DISTINCT code FROM stock";
17
18 $result = $conn->exec($query);
19
20 if ($result) {
21 # Stuff those stock into an array
22 while ($code = $result->fetchrow) {
23 push(@codes, $code);
24 print $code, "\n";
25 }
26 # Fetch the price info for what's in the array
27 foreach $code (@codes) {
28 %stockinfo = $asx->fetch("asx", $code);
29 $open = $stockinfo{$code, 'open'} * 100;
30 $high = $stockinfo{$code, 'high'} * 100;
31 $low = $stockinfo{$code, 'low'} * 100;
32 $close = $stockinfo{$code, 'last'} * 100;
33 $volume = $stockinfo{$code, 'volume'};
34
35 # Poke it into the database;
36
37 $query = "INSERT INTO market VALUES ('$code', now(), $open, $high, $low, $close, $volume)";
38 print $query;
39 $result = $conn->exec($query);
40 if ($result) {
41 print "..." . $result->resultStatus . "\n";
42 }
43 }
44 } else {
45 die "It's all gone to custard\n";
46 }

  ViewVC Help
Powered by ViewVC 1.1.22