Files
CryptoBot/main.py
2026-01-01 19:46:07 +01:00

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)