Воронов Дмитрий
Воронов Дмитрий личный блог
02 февраля 2021, 16:07

📊 Американские эмитенты: а что, так тоже можно было-4?


Добрый вечер, друзья!


В продолжение моего эксперимента с оценкой доходности рекомендаций от Zacks (см. https://smart-lab.ru/blog/673772.php) я перелопатил вчера кучу эмитентов и выбрал компании, имеющие максимальный инвестиционный рейтинг от Zacks (1-Strong Buy). 

Выкладываю на Смарт-Лабе исключительно для фиксации списка тикеров. Посмотрим что будет с котировками этих компаний через 6 месяцев.
📊 Американские эмитенты: а что, так тоже можно было-4?

63 Комментария
  • Михаил Titov
    02 февраля 2021, 16:20

    Лучше руками не лопатить, а мини прогу-парсер на каком-нибудь питоне написать. 

    Вот мой код для примера, парсит short float, short ratio, FWD PE, PS для тикеров с СПб биржи (в файле) с finfiz

    --------

    from bs4 import BeautifulSoup as BS
    from urllib.request import Request, urlopen
    import xlsxwriter
    i=0

    #открываем список тикеров
    with open(«D:/FinanceMarker/TICKs.txt», «r») as TICKs:
    TICKs = [line.rstrip() for line in TICKs]
    print(TICKs)

    # открываем новый файл на запись
    workbook = xlsxwriter.Workbook(«D:/FinanceMarker/Short.xlsx»)
    # создаем там «лист»
    worksheet = workbook.add_worksheet('Main')

    for TICK in TICKs:
    try:
    url = 'https://finviz.com/quote.ashx?t=' + TICK
    headers = {«user-agent»: «Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (HTML, like Gecko) Chrome/86.0.4240.193 Safari/537.36»}

    r1 = Request(url, headers=headers)
    webpage = urlopen(r1).read()
    html = BS(webpage, «html.parser»)

    #берем нужные данные по столбикам и строчкам
    short_float = html.find_all('table', class_='snapshot-table2')[0].find_all('tr')[2].find_all('td')[9].text
    short_ratio = html.find_all('table', class_='snapshot-table2')[0].find_all('tr')[3].find_all('td')[9].text
    forward_PE = html.find_all('table', class_='snapshot-table2')[0].find_all('tr')[1].find_all('td')[3].text
    PS = html.find_all('table', class_='snapshot-table2')[0].find_all('tr')[3].find_all('td')[3].text

    #записываем в таблицу
    print(str(TICKs.index(TICK)) + ' из ' + str(len(TICKs)) + ' Прогресс: ' + str((TICKs.index(TICK)*100)//len(TICKs)) + '%')
    worksheet.write(i, 0, TICK)
    worksheet.write(i, 1, short_float.replace('.',','))
    worksheet.write(i, 2, short_ratio.replace('.',','))
    worksheet.write(i, 3, forward_PE.replace('.',','))
    worksheet.write(i, 4, PS.replace('.',','))
    i = i+1
    except:
    print('ERR')

    workbook.close()

     

     

     

     

     

  • товарищ масон
    02 февраля 2021, 16:30
    у мну есть рукописный текст из спб (втб) от 3 долларов до 100.
    ок. 750 тикеров
  • Бурателла
    02 февраля 2021, 16:31
    Дмитрий, а как вы считаете, не нарушаете ли законы Российской Федерации, публикуя на сайте Smart-lab информацию, охраняемую авторским правом?

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн