$BTC
import requests
import matplotlib.pyplot as plt
import numpy as np

# 1. Obtener datos de liquidaciones desde la API de CoinGlass
def get_liquidation_data(symbol="BTC"):
url = "https://open-api.coinglass.com/api/futures/liquidation/chart"
headers = {"coinglass-api-key": "YOUR_API_KEY"} # Coloca tu clave de API aquí
params = {
"symbol": symbol,
"exchange": "all",
"timeType": "7d" # Datos de 7 días como en tu captura
}

response = requests.get(url, headers=headers, params=params)
data = response.json()
return data['data']

# 2. Graficar el mapa de calor de liquidaciones
def plot_liquidation_map(data):
prices = data['priceList'] # Niveles de precio
long_liq = data['longList'] # Montos de liquidación largos
short_liq = data['shortList'] # Montos de liquidación cortos
current_price = data['currentPrice']

plt.figure(figsize=(14,7))

# Graficar liquidaciones cortas - Área roja a la izquierda
plt.bar(prices, short_liq, color='red', alpha=0.5, label='Liquidaciones Cortas')

# Graficar liquidaciones largas - Área verde a la derecha
plt.bar(prices, long_liq, color='green', alpha=0.5, label='Liquidaciones Largas')

# Línea del precio actual
plt.axvline(x=current_price, color='red', linestyle='--', linewidth=2, label=f'Precio Actual: ${current_price}')

plt.title("Mapa de Calor de Liquidaciones en el Exchange BTC", fontsize=16, fontweight='bold')
plt.xlabel("Precio BTC (USD)")
plt.ylabel("Monto de Liquidación (USD)")
plt.legend()
plt.grid(axis='y', alpha=0.3)
plt.show()

# 3. Cómo ejecutarlo
if __name__ == "__main__":
print("Obteniendo datos de liquidaciones de BTC...")
data = get_liquidation_data("BTC")
plot_liquidation_map(data)