Неожиданная программная ошибка-2 - PullRequest
0 голосов
/ 04 мая 2020

У меня есть список биржевых тикеров. Информация взята из Yahoo финансов. Мой код Python вычисляет ежедневный процентный доход / убыток каждого из тикеров и показывает пять самых высоких тикеров.

Проблемы, с которыми я сталкиваюсь:

  1. Когда заканчивается дневной процент тикера с 0%,
  2. Когда Yahoo представляет пустой (черный) график.

В обоих случаях программа прекращает печать с помощью try / кроме: «Ошибка, один из тикеров равен 0 % ".

Можно ли завершить программу или обойти ошибку и напечатать имя тикера, вызвавшего ошибку?

Большое спасибо,

Даниэль

Вот код:

! Pip install ffn

import ffn
import pandas as pd
import numpy as np
import time
import traceback
from matplotlib import pyplot as plt
plt.style.use('fivethirtyeight')
#from scipy.stats import norm
%matplotlib inline

start = time.perf_counter()
tickers =  ['A','AA','AACG','AAL','AAME','AAN','AAON','AAP','AAPL','AAT','AAWW','AAXN','AB','ABBV','ABC','ABCB','ABEV','ABG','ABEO','ABIO',]

try:
    df = ffn.get(tickers, start='04/30/2020',end='12/31/2020').to_returns().dropna()
    #ticker_error = tickers.pop()
    #print(ticker_error)
    sums = df.select_dtypes(pd.np.number).sum() 
    sort_sums = sums.sort_values(ascending = False)
    print(df.shape)
    finish = time.perf_counter()
    print(f'Finished in {round(finish - start,2)}second(s)')
    print('---------------')
    print('% RETURN')
    print('---------------')
    print(sort_sums.as_format('.2%').head(40))
except:
    ticker_error = tickers.pop()   
    print(ticker_error)
    print('One of the tickers is ZERO %')
    pass        
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...