
Vous pouvez générer une clé d’accès gratuite à l’API Alphavantage. Avec la clé gratuite vous serez limité à 25 requêtes par jour. Au delà, il vous faudra générer une clé payante.
Personnellement, je me suis servi d’Alphavantage payant pour télécharger des cotations US intra journalières. Ci-dessous le code javascript :
// Remplacer par la clé générée sur Alpha Vantage
const API_KEY = "votre clé";
const interval = "1min"; // Interval de temps
const outputSize = "full"; // "compact" (100 points) ou "full" (historique complet)
function wait(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function fetchStockData(ticker, month) {
url = `https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY&symbol=${ticker}&interval=${interval}&month=${month}&apikey=${API_KEY}&outputsize=${outputSize}`;
try {
const response = await fetch(url);
const data = await response.json();
if (!data["Time Series (1min)"]) {
console.error(`⚠️ Erreur : Pas de données pour ${ticker} ${url}`);
return;
}
Object.entries(data["Time Series (1min)"])
.forEach(([timestamp, values]) => {
const dateObj = new Date(timestamp);
// Format: AAAA/MM/JJ
const date = dateObj.toLocaleDateString('en-ZA');
// Format: HH:MM
const time = dateObj.toLocaleTimeString('en-GB', { hour: '2-digit', minute: '2-digit' });
console.log(`${ticker};${date};${time};${values["1. open"]};${values["4. close"]};${values["2. high"]};${values["3. low"]};${values["5. volume"]}`);
});
} catch (error) {
console.error(`❌ Erreur lors de la récupération de ${ticker} :`, error.message);
}
}
setTimeout(()=>{fetchStockData('AAPL', '2024-12');},0);
//indiquez votre ticker et le mois souhaité pour les données intra journalières
setTimeout(()=>{fetchStockData('votre ticker', 'AAAA-MM');},0);
et l’appel dans le terminal node.js
node alphavantage.js >> c:\temp\intraday.csv
Laisser un commentaire