77 lines
2.8 KiB
Python
77 lines
2.8 KiB
Python
import configparser
|
|
import os
|
|
import sys
|
|
|
|
# ------------------------------------------------------------------
|
|
# 1. Gestion des imports depuis le dossier ./API
|
|
# ------------------------------------------------------------------
|
|
sys.path.append(os.path.join(os.path.dirname(__file__), 'API'))
|
|
|
|
try:
|
|
from API.Krakenfutures_api import KrakenFutureClient
|
|
except ImportError:
|
|
# Alternative si le dossier API n'est pas vu comme un module
|
|
from Krakenfutures_api import KrakenFutureClient
|
|
|
|
# ------------------------------------------------------------------
|
|
# 2. Lecture de la configuration
|
|
# ------------------------------------------------------------------
|
|
config = configparser.ConfigParser()
|
|
config_path = os.path.join(os.path.dirname(__file__), 'conf', 'config.ini')
|
|
|
|
# Vérification que le fichier existe
|
|
if not os.path.exists(config_path):
|
|
raise FileNotFoundError(f"Le fichier de configuration est introuvable ici : {config_path}")
|
|
|
|
config.read(config_path)
|
|
|
|
# Récupération des clés
|
|
try:
|
|
api_key = config['KRAKEN']['api_key']
|
|
api_secret = config['KRAKEN']['api_secret']
|
|
except KeyError as e:
|
|
raise ValueError(f"Erreur de lecture du config.ini. La clé ou la section est manquante : {e}")
|
|
|
|
# ------------------------------------------------------------------
|
|
# 3. Initialisation du Client et Test
|
|
# ------------------------------------------------------------------
|
|
if __name__ == "__main__":
|
|
print("Initialisation du client Kraken Futures...")
|
|
|
|
# Création de l'instance du client
|
|
kraken_client = KrakenFutureClient(
|
|
api_key=api_key,
|
|
api_secret=api_secret
|
|
)
|
|
|
|
try:
|
|
print("Tentative de connexion à l'API...")
|
|
response = kraken_client.get_tickers()
|
|
|
|
# Vérification si la clé 'tickers' existe
|
|
if 'tickers' in response:
|
|
tickers_list = response['tickers']
|
|
print("Connexion réussie !")
|
|
|
|
if len(tickers_list) > 0:
|
|
# On prend le premier élément de la liste
|
|
first_ticker = tickers_list[0]
|
|
|
|
# On affiche le contenu de ce premier ticker
|
|
print("\n--- Exemple de premier ticker reçu ---")
|
|
print(first_ticker)
|
|
|
|
# Si vous voulez afficher spécifiquement le nom du symbole (souvent 'symbol' ou 'pair')
|
|
# Vous pouvez faire : print(f"Symbole : {first_ticker.get('symbol', 'Inconnu')}")
|
|
else:
|
|
print("La liste des tickers est vide.")
|
|
|
|
else:
|
|
print("Réponse reçue, mais format inattendu (pas de clé 'tickers') :", response)
|
|
|
|
except Exception as e:
|
|
print(f"Une erreur est survenue lors de l'appel API : {e}")
|
|
|
|
# Pour tester un appel PRIVÉ (nécessite que les clés soient valides)
|
|
# accounts = kraken_client.get_accounts()
|
|
# print(accounts) |