Alpha Vantage – Intégrer les API Free Stock en PHP
Récemment, j’ai travaillé sur un projet où nous voulions intégrer des API libres de droits. Au cours de la recherche, nous sommes tombés sur le service Alpha Vantage qui fournit gratuitement des données sur les stocks. Dans le forfait gratuit, ils fournissent 5 requêtes API par minute et 500 requêtes par jour. Ce quota est suffisant pour les petites applications. Cependant, si vous avez besoin de plus de ressources, consultez leurs forfaits premium.
L’Alpha Vantage donne un point final pour récupérer les données boursières. En utilisant leurs API, nous pouvons récupérer les données de stock Intraday, Daily, Weekly, Monthly. Ils fournissent également des données fondamentales telles qu’un aperçu de l’entreprise, les bénéfices, le compte de résultat, le bilan, etc. On peut également obtenir des taux de change entre différentes devises.
Dans cet article, nous étudions comment obtenir des données boursières à l’aide d’Alpha Vantage en PHP. Pour commencer, récupérez votre clé API sur le site Web d’Alpha Vantage.
Intégrer des API Free Stock en PHP
Afin de récupérer les données de stock, nous devons envoyer des requêtes HTTP au point de terminaison fourni d’Alpha Vantage. On peut le faire en utilisant cURL. Personnellement, j’aime Guzzle à cet effet. Ici aussi, je vais envoyer des requêtes HTTP et gérer les réponses à l’aide de Guzzle.
Installez la bibliothèque Guzzle à l’aide de la commande :
composer require guzzlehttp/guzzle
Lors de l’interaction avec les API Alpha Vantage, nous devons envoyer des requêtes GET à leur point de terminaison API. Le point de terminaison de l’API https://www.alphavantage.co/query
est le même pour toutes les requêtes. Le seul changement sera dans les paramètres ‘GET’. Commençons par récupérer les données boursières de manière pratique.
Obtenir des données intrajournalières
Sur la documentation API d’Alpha Vantage, vous trouverez les détails sur le point de terminaison et leurs paramètres en détail.
Vous pouvez obtenir des données intrajournalières de n’importe quel stock comme suit. À titre d’exemple, j’utilise la société ‘IBM’.
<?php
require_once "vendor/autoload.php";
use GuzzleHttpClient;
$client = new Client([
// Base URI is used with relative requests
'base_uri' => 'https://www.alphavantage.co',
]);
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'TIME_SERIES_INTRADAY',
'symbol' => 'IBM',
'interval' => '5min',
'apikey' => 'YOUR_API_KEY',
]
]);
$body = $response->getBody();
$arr_body = json_decode($body);
print_r($arr_body);
Remplacez l’espace réservé YOUR_API_KEY par votre clé API réelle. Ici, j’utilise un paramètre de fonction as TIME_SERIES_INTRADAY
et un intervalle as 5min
.
Données quotidiennes
Vous pouvez obtenir les données quotidiennes du stock en utilisant le même point final mais avec des paramètres différents comme suit.
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'TIME_SERIES_DAILY',
'symbol' => 'IBM',
'apikey' => 'YOUR_API_KEY',
]
]);
Dans la requête API ci-dessus, le paramètre de fonction requis est TIME_SERIES_DAILY
.
Données fondamentales
Tout en choisissant les bonnes actions, vous voudrez probablement jeter un coup d’œil aux détails fondamentaux d’une entreprise. Vous pouvez obtenir ces détails facilement avec Alpha Vantage.
Présentation de l’entreprise
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'OVERVIEW',
'symbol' => 'IBM',
'apikey' => 'YOUR_API_KEY',
]
]);
Bénéfices de l’entreprise
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'EARNINGS',
'symbol' => 'IBM',
'apikey' => 'YOUR_API_KEY',
]
]);
Comptes de résultat
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'INCOME_STATEMENT',
'symbol' => 'IBM',
'apikey' => 'YOUR_API_KEY',
]
]);
Bilan
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'BALANCE_SHEET',
'symbol' => 'IBM',
'apikey' => 'YOUR_API_KEY',
]
]);
Veuillez noter que vous obtiendrez des détails sur ces points de terminaison et leurs paramètres dans leur documentation API.
Des taux de change
Si vous cherchez à obtenir des taux de change (FX) en temps réel et historiques, vous pouvez le faire en utilisant le code ci-dessous. Dans ce code, je reçois le taux USD de la devise INR.
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'CURRENCY_EXCHANGE_RATE',
'from_currency' => 'USD',
'to_currency' => 'INR',
'apikey' => 'YOUR_API_KEY',
]
]);
De la même manière, les utilisateurs peuvent récupérer les taux de change historiques (FX) entre 2 devises.
$response = $client->request('GET', '/query', [
'query' => [
'function' => 'FX_DAILY',
'from_symbol' => 'USD',
'to_symbol' => 'INR',
'apikey' => 'YOUR_API_KEY',
]
]);
Le code ci-dessus a un paramètre de fonction FX_DAILY
qui vous donnera les taux de change quotidiens. Vous pouvez obtenir des données hebdomadaires avec le paramètre FX_WEEKLY
, des données mensuelles avec FX_MONTHLY
.
Il s’agit d’intégrer des API gratuites en PHP avec Alpha Vantage. J’aimerais entendre vos pensées et suggestions dans la section des commentaires ci-dessous.
Articles Liés
- Comment lire et écrire des fichiers de feuille de calcul en PHP
- Comment créer des réunions Zoom avec PHP et JWT
- Écrire des données dans une feuille OneDrive à l’aide de l’API Microsoft Graph et de PHP