Избранное трейдера Александр
# В КВИКе запускаем луа-скрипт QuikLuaPython.lua import socket import threading from datetime import datetime, timezone import pandas as pd import finplot as fplt fplt.display_timezone = timezone.utc class DeltaBar(): def __init__(self): self.df = pd.DataFrame(columns='date_time open high low close delta delta_time_sec'.split(' ')) self.df.loc[len(self.df)] = [0, 0, 0, 0, 0, 0, 0] def parser(self, parse): if parse[0] == '1' and parse[1] == 'RIH1': if abs(self.df.iloc[len(self.df) - 1]['delta']) >= 500: self.df.loc[len(self.df)] = [0, 0, 0, 0, 0, 0, 0] # Добавляем строку в DF self.df.iloc[len(self.df) - 1]['close'] = float(parse[4]) # Записываем последнюю цену как цену close бара if self.df.iloc[len(self.df) - 1]['date_time'] == 0: self.df.iloc[len(self.df) - 1]['date_time'] = \ datetime.strptime(f'{parse[7]} {parse[8][0:-1]}', "%d.%m.%Y %H:%M:%S.%f").replace(microsecond=0) if self.df.iloc[len(self.df) - 1]['open'] == 0: self.df.iloc[len(self.df) - 1]['open'] = float(parse[4]) if float(parse[4]) > self.df.iloc[len(self.df) - 1]['high']: self.df.iloc[len(self.df) - 1]['high'] = float(parse[4]) if (float(parse[4]) < self.df.iloc[len(self.df) - 1]['low']) or \ (self.df.iloc[len(self.df) - 1]['low'] == 0): self.df.iloc[len(self.df) - 1]['low'] = float(parse[4]) if parse[5] == '1026': self.df.iloc[len(self.df) - 1]['delta'] += float(parse[6]) if parse[5] == '1025': self.df.iloc[len(self.df) - 1]['delta'] -= float(parse[6]) self.df.iloc[len(self.df) - 1]['delta_time_sec'] = \ datetime.strptime(f'{parse[7]} {parse[8][0:-1]}', "%d.%m.%Y %H:%M:%S.%f") - \ self.df.iloc[len(self.df) - 1]['date_time'] self.df.iloc[len(self.df) - 1]['delta_time_sec'] = self.df.iloc[len(self.df) - 1]['delta_time_sec'].seconds def service(): sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.bind(('127.0.0.1', 3587)) # Хост-этот компьютер, порт - 3587 while True: res = sock.recv(2048).decode('utf-8') if res == '<qstp>\n': # строка приходит от клиента при остановке луа-скрипта в КВИКе break else: delta_bar.parser(res.split(' ')) # Здесь вызываете свой парсер. Для примера функция: parser (parse) sock.close() def update(): df = delta_bar.df # Меняем индекс и делаем его типом datetime df = df.set_index(pd.to_datetime(df['date_time'], format='%Y-%m-%d %H:%M:%S')) # print(delta_bar.df) # pick columns for our three data sources: candlesticks and TD candlesticks = df['open close high low'.split()] volumes = df['open close delta_time_sec'.split()] if not plots: # first time we create the plots global ax plots.append(fplt.candlestick_ochl(candlesticks)) plots.append(fplt.volume_ocv(volumes, ax=ax.overlay())) else: # every time after we just update the data sources on each plot plots[0].update_data(candlesticks) plots[1].update_data(volumes) if __name__ == '__main__': delta_bar = DeltaBar() # Запускаем сервер в своем потоке t = threading.Thread(name='service', target=service) t.start() plots = [] ax = fplt.create_plot('RIH1', init_zoom_periods=100, maximize=False) update() fplt.timer_callback(update, 2.0) # update (using synchronous rest call) every N seconds fplt.show()
Вышел отчет компании по итогам 2020 года. Разберем самые важные факты.
Выручка снизилась на (33,6% г/г) до 5,76 трлн. руб. Основная причина падения — снижение добычи и падение цен на нефть в 1 полугодии.
EBITDA снизилась на (42% г/г) до 1,2 трлн. руб. Снижение показателя EBITDA вызвано в том числе увеличением налоговой нагрузки.
Чистая прибыль снизилась на (79,1% г/г) до 147 млрд. руб. На чистую прибыль оказали влияние курсовые разницы, помимо снижения операционной прибыли.
Свободный денежный поток снизился на (54,8% г/г) до 425 млрд. руб.
Спрос на нефть в ЕС восстанавливается медленно, при этом, в АТР он почти вернулся к уровням 2019 года. Спрос на нефтепродукты тоже постепенно восстанавливается.
Несмотря на достаточно сложный 2020 год, впереди у компании запуск важных проектов, которые в перспективе позитивно отразятся на денежном потоке и прибыли компании.
Ближайшие газовые проекты:
Роспан (запасы газа — 1,25 трлн. куб.м., запасы газового конденсата и нефти — 313 млн.т.). Запуск первого пускового комплекса — 1 кв. 2021 г, второго — 3кв. 2021г.
Газпром нефть — это российская нефтяная компания, которая входит ТОП-5 энергетических предприятий по объемам добычи нефти и в ТОП-3 по количеству переработки нефти среди вертикально интегрированных компаний.
Производимая продукция Газпром нефти:
1.Нефтепродукты (бензин, дизельное, авиационное и судовое топливо, битум, мазут, масла, нефтехимия и т.д.)
2.Нефть
3.Газ
4.Прочее
Рынки сбыта продукции Газпром нефти:
1.Реализация в России
2.Экспорт в дальнее зарубежье
3.Экспорт в страны СНГ (Беларусь, Казахстан, Таджикистан, Киргизия, Сербия, Босния и Герцеговина, Болгария и Румыния)
Русал – ведущий российский производитель алюминия, один из крупнейших в мире.
Производимая продукция Русала:
1.Первичный алюминий и сплав
2.Алюминий
3.Фольга и другие изделия из алюминия
1.Россия
2.Турция
3.Нидерланды
4.США
5.Южная Корея
6.Италия
7.Польша
8.Япония
9.Германия
10.Франция
11.Норвегия
12.Греция
13.Швеция
14.Китай
Форма 10-K представляет из себя годовой отчет деятельности компании, который включает такие разделы, как обзор бизнеса компании, основные риски, финансовая отчетность и комментарии к ней, корпоративное управление и т.д. Каждая компания, чьи акции торгуются на американской фондовой бирже, обязана ежегодно подавать форму 10-K в SEC.
An unofficial python API wrapper to retrieve technical analysis from TradingView.
ru.tradingview.com/symbols/MOEX-SBER/technicals/
from tradingview_ta import TA_Handler, Interval, Exchange sber = TA_Handler( symbol="SBER", screener="russia", exchange="MOEX", interval=Interval.INTERVAL_1_DAY ) print(sber.get_analysis().summary) # Example output: {"RECOMMENDATION": "BUY", "BUY": 8, "NEUTRAL": 6, "SELL": 3}
Interval.INTERVAL_1_MINUTE
Interval.INTERVAL_5_MINUTES
Interval.INTERVAL_15_MINUTES
INTERVAL_1_HOUR
Interval.INTERVAL_4_HOURS
Interval.INTERVAL_1_DAY
Interval.INTERVAL_1_WEEK
Interval.INTERVAL_1_MONTH
Documentation
python-tradingview-ta.readthedocs.io/en/latest/overview.html
Один из самых частых вопросов касается текущих идей на рынке. Сразу оговорюсь, что это лишь мое мнение и я сам на данные активы сделал ставку.
1️⃣ Юнипро — одна из самых интересных компаний с точки зрения див. доходности. Наконец-то работы по 3 энергоблоку БГРЭС вышли на финишную прямую, уже все готово к запуску, проводятся финальные испытания. После запуска блока в эксплуатацию размер дивидендов по заверению менеджмента поднимут до 0,317 руб, что дает около 11% ДД к текущим ценам. Также компания получила квоту на модернизацию 2,5ГВт в рамках ДПМ-2 до 2025 года, что позволит окупить вложенные инвестиции.
2️⃣ Энел — активно строит ветропарки, становясь все более зеленой. На период строительства менеджмент планирует платить по 3 млрд. руб в виде дивидендов или 0,085 руб на акцию, что дает к текущим ценам 9,5% годовых. Недавно вышла позитивная новость о том, что задержка ввода в эксплуатацию Азовской ВЭС (план — декабрь 2020 года) не повлечет применения штрафных санкций.