Я пытался использовать два разных API, подозреваю, что это может быть ограничение скорости API, я использую yfinnace.
Он по-прежнему не возвращает мне данные, когда я использую путь к файлу CSV.
Я также использовал другой код, где я применил вместо этого используется общая математика etx = рыночная капитализация / общее количество акций в обращении * 100 , но проблема по-прежнему возникает.
Использованный код приведен ниже:
Код: Выделить всё
# Function to calculate the volume-to-market cap ratio for Day 2
def calculate_volume_to_market_cap_ratio(ticker):
# Download 5-day data to capture daily volume
data = yf.download(ticker, period="5d", interval="1d")
if len(data) < 2:
print(f"Not enough data to calculate for {ticker}")
return None
# Get the Day 2 volume
day_2_volume = data['Volume'].iloc[1]
# Get market cap (use a rough estimate, assuming Yahoo Finance does not provide it)
# Download basic stock info to get market cap
info = yf.Ticker(ticker).info
market_cap = info.get('marketCap', 0) # Default to 0 if not available
# If market cap is available, calculate the volume-to-market-cap ratio
if market_cap > 0:
volume_to_market_cap_ratio = (day_2_volume / market_cap) * 100
else:
volume_to_market_cap_ratio = None # If market cap data is missing
return volume_to_market_cap_ratio
# Load tickers from CSV file
def load_tickers_from_csv(file_path):
tickers_df = pd.read_csv(file_path)
tickers = tickers_df['tickers'].tolist()
return tickers
Подробнее здесь: https://stackoverflow.com/questions/790 ... csv-python