Outdated egg!

This is an egg for CHICKEN 4, the unsupported old release. You're almost certainly looking for the CHICKEN 5 version of this egg, if it exists.

If it does not exist, there may be equivalent functionality provided by another egg; have a look at the egg index. Otherwise, please consider porting this egg to the current version of CHICKEN.

yahoo-finance

  1. Outdated egg!
  2. yahoo-finance
    1. Description
    2. Requirements
    3. API
    4. License

Description

This was a tiny library for accessing Yahoo Finance's stock data "API".

It is now obsolete, since Yahoo has done away with the APIs it used.

Don't use it, it won't work.

Requirements

API

There are two functions.

[procedure] (fetch-quotes symbol-or-symbols field-or-fields)

fetch-quotes takes one or more stock symbols and one or more field name symbols and returns a table of the requested information:

   > (use yahoo-finance)
   
   > (fetch-quotes 'aapl 'eps)
   ((stock (eps 42.548)))
   
   > (fetch-quotes 'aapl '(name p/e p/s p/b))
   ((stock (name "Apple Inc.")
           (p/e 15.86)
           (p/s 4.25)
           (p/b 5.66)))
   
   > (fetch-quotes '(aapl goog msft) '(name high low change)))
   ((stock (name "Apple Inc.")
           (high 677.67)
           (low 672.6)
           (change -1.334))
    (stock (name "Google Inc.")
           (high 688.99)
           (low 676.15)
           (change 10.76))
    (stock (name "Microsoft Corpora")
           (high 30.75)
           (low 30.44)
           (change 0.02)))

Read the code for a list of available fields.

[procedure] (fetch-quotes symbol [interval [start-date [end-date]]])

fetch-history takes a single stock symbol and, as optional arguments, an interval symbol (one of daily, weekly, monthly, or dividends), a start date as a list of numbers of the form (y m d), and an end date of the same form. It returns a table in one of two forms:

   > (fetch-history 'aapl 'monthly)
   ((row (date "2012-08-01")
         (open 615.91)
         (high 680.87)
         (low 600.25)
         (close 673.47)
         (volume 13327800)
         (adjusted-close 673.47))
    (row (date "2012-07-02")
         (open 584.73)
         (high 619.87)
         (low 570.0)
         (close 610.76)
         (volume 15938700)
         (adjusted-close 608.15))
     ...)
   
   > (fetch-history 'aapl 'dividends '(1987 1 1) '(1989 1 1))
   ((row (date "1988-11-21") (dividend 0.025))
    (row (date "1988-08-15") (dividend 0.02))
    (row (date "1988-05-16") (dividend 0.02))
    (row (date "1988-02-12") (dividend 0.02))
    (row (date "1987-11-17") (dividend 0.02))
    (row (date "1987-08-10") (dividend 0.015))
    (row (date "1987-05-11") (dividend 0.015)))

License

Public Domain