In hopes of improving the relevance of year to year comparisons I would like to correct for the fact that the data last year fell on Easter, Labor Day, or whatever. What is the easiest way to programatically determine this information? Are any solutions known to account for international holidays? I could scrape a site like this one but I feel like it is in violation of their terms of service.
views:
105answers:
2In the Java world the site you mentioned does comport an API, Instant Holiday Connection, which could be a good solution (better than screen scraping).
The Light Development Holiday Client API is a Java class library to seamlessly integrate arbitrary other applications with the World Holiday Calendar Service to make them aware of special observation days around the globe.
However, the free version only give access to last year Holidays...
Another (more public) database would be Earth Calendar, free but with no visible API (back to screen scraping again)
time and date.com does appear to have also all Holidays for all countries (with again no visible API).
They do have a fairly complete list of Holidays though
One approach is to let your users input national holidays that they know about and affect their work. You have to be careful though, at one of the IBs I worked for we noticed that one of the traders had entered National Kebab Day on his trading system as a Turkish holiday.