namespace Mercados.Infrastructure.DataFetchers { /// /// Clase estática que proporciona un mapeo entre los tickers de acciones y sus nombres descriptivos. /// public static class TickerNameMapping { /// /// Diccionario privado que almacena los tickers como claves y los nombres de las empresas como valores. /// La comparación de claves no distingue entre mayúsculas y minúsculas. /// private static readonly Dictionary Names = new(StringComparer.OrdinalIgnoreCase) { // USA { "SPY", "S&P 500 ETF" }, { "AAPL", "Apple Inc." }, { "AMZN", "Amazon.com, Inc." }, { "NVDA", "NVIDIA Corp." }, { "AMD", "Advanced Micro Devices" }, { "KO", "The Coca-Cola Company" }, { "BRK-B", "Berkshire Hathaway Inc." }, { "GLD", "SPDR Gold Shares" }, { "XLF", "Financial Select Sector SPDR" }, { "XLI", "Industrial Select Sector SPDR" }, { "XLE", "Energy Select Sector SPDR" }, { "XLK", "Technology Select Sector SPDR" }, { "MELI", "MercadoLibre, Inc." }, { "MSFT", "Microsoft Corp." }, { "GLOB", "Globant" }, // ADRs Argentinos que cotizan en EEUU { "YPF", "YPF S.A. (ADR)" }, { "GGAL", "Grupo Financiero Galicia (ADR)" }, { "BMA", "Banco Macro (ADR)" }, { "LOMA", "Loma Negra (ADR)" }, { "PAM", "Pampa Energía (ADR)" }, { "TEO", "Telecom Argentina (ADR)" }, { "TGS", "Transportadora de Gas del Sur (ADR)" }, { "EDN", "Edenor (ADR)" }, { "CRESY", "Cresud (ADR)" }, { "CEPU", "Central Puerto (ADR)" }, { "BBAR", "BBVA Argentina (ADR)" }, // Argentina Local { "^GSPC", "S&P 500 Index" }, // Lo dejamos por si Yahoo lo devuelve { "^MERV", "S&P Merval" }, { "GGAL.BA", "Grupo Financiero Galicia" }, { "YPFD.BA", "YPF S.A." }, { "PAMP.BA", "Pampa Energía" }, { "BMA.BA", "Banco Macro" }, { "COME.BA", "Sociedad Comercial del Plata" }, { "TECO2.BA", "Telecom Argentina" }, { "EDN.BA", "Edenor" }, { "CRES.BA", "Cresud" }, { "TXAR.BA", "Ternium Argentina" }, { "MIRG.BA", "Mirgor" }, { "CEPU.BA", "Central Puerto" }, { "LOMA.BA", "Loma Negra" }, { "VALO.BA", "Banco de Valores" }, { "MELI.BA", "MercadoLibre (CEDEAR)" }, // Aclaramos que es el CEDEAR }; /// /// Obtiene el nombre descriptivo asociado a un ticker. /// /// El ticker de la acción (ej. "AAPL"). /// El nombre completo de la empresa si se encuentra en el mapeo; de lo contrario, null. public static string? GetName(string ticker) { // Devuelve el nombre si existe, o null si no se encuentra la clave. return Names.TryGetValue(ticker, out var name) ? name : $"Ticker no reconocido: {ticker}"; } } }