Я сделал скрининг акций, который дает технические характеристики акций, которые соответствуют моим критериям, в конце я хочу напечатать краткий список акций, которые соответствуют моим критериям. Я попытался использовать функцию добавления, но она печатает только одну бумагу, вместо этого я хочу, чтобы она печатала тикер каждой печати, например, «ммм», ...
Токовый выход выглядит следующим образом.
MMM
Трейлинг P / E: 17,61
Рентабельность собственного капитала: 54,34%
Доход: 32,35B
Квартальный рост выручки: -5,00%
def scrape(stock_list, interested, technicals):
for each_stock in stock_list:
technicals = scrape_yahoo(each_stock)
condition_1 = float(technicals.get('Return on Equity',0).replace('%','').replace('N/A','-100')) > 25
condition_2 = float(technicals.get('Trailing P/E',0).replace('N/A','')) > 15
condition_3 = float(technicals.get('Price/Book (mrq)',0)) <15
if (condition_1 and condition_2)==True:
print(each_stock)
SuggestedStocks = []
SuggestedStocks.append(each_stock)
for ind in interested:
print(ind + ": "+ technicals[ind])
print("------")
time.sleep(1) # Use delay to avoid getting flagged as bot
#return technicals
print(SuggestedStocks)
def main():
stock_list = ['MMM', 'ABT', 'ABBV', 'ABMD', 'ACN', 'ATVI', 'ADBE', 'AMD']
interested = ['Trailing P/E', 'Return on Equity', 'Revenue', 'Quarterly Revenue Growth']
technicals = {}
tech = scrape(stock_list, interested, technicals)
print(tech)
main()
Печатается только тикер последней акции, которая соответствует моим критериям: ADBE.