Избранное трейдера iAlexander
Названия строк |
Мы сохраняем рекомендацию «покупать» по акциям Мосбиржи и повышаем целевую цену с 115 до 123 руб. Потенциал роста в перспективе 12 мес. 32%.
Прибыль акционеров снизилась в 2018 году на 3% до 19,7 млрд.руб в основном под влиянием создания единовременного резерва. Скорректированная прибыль, по нашим оценкам, составила 20,6 млрд.руб. (+1,56%).
Комиссии выросли на 11,5% с улучшением результата на всех рынках. Чистые процентные и финансовые доходы повысились на 12%.
Менеджмент рекомендовал годовой дивиденд 7,7 руб. (-3%), сохранив норму выплат на уровне прошлого года 89%, что стало положительном сюрпризом после решения не выплачивать промежуточные дивиденды. Доходность 8,3% — одна из самых привлекательных в российском финансовом секторе и превышает среднюю по акциям Мосбиржи DY 2015-2017 6.6%.
Добрый вечер, уважаемые читатели!
Сегодня хочу немного подробнее остановиться на отчете Мосбиржи, в частности заострить внимание на разделе ОПУ (отчет о прибылях и убытках).
Традиционно и особенно потому что Мосбиржа есть у меня в портфеле я вставлю дисклеймер, кроме того постараюсь быть чуть более критичен при разборе.
Текст статьи не является индивидуальной инвестиционной рекомендацией, а только личным мнением автора по вопросам, которые в состоянии охватить его блуждающее внимание. Любые ваши выводы без проведенных дополнительных исследований и критического мышления с немалой долей вероятности могут принести вам разочарование.
Итак, Мосбиржа. Это компания не нуждающаяся в представлении. Еще не вдаваясь в отчетность несложно предположить, что с точки зрения жизнеспособности бизнес этой компании имеет достаточно высокий уровень. Логично, что без политических форс-мажоров акции Мосбиржи существуют параллельно с организацией торгов в нашей стране в принципе. Вопрос лишь в стоимости акций, а также их динамике. Кто бы что ни говорил о возможных угрозах конкуренции Мосбиржа остается монополистом, а кому собственно может требоваться конкурент, когда там внутри и так крупнейшие банки страны, включая Центральный. Впрочем, последний планирует выйти из капитала Биржи еще с 2010 года, но долго и медленно заносит ногу над порогом. И длился весь этот брекзит до 2014 года, когда грянули санкции, вот тогда ЦБ определился с позицией, что, возможно, выйдет из Мосбиржи, если с РФ снимут санкции. Так что акционеры Мосбиржи могут от снятия санкций испытывать определенный когнитивный диссонанс.
В условиях роста санкционных рисков многие инвесторы в российские акции ищут защитные активы, которые были бы не так сильно подвержены зависимости от внешних геополитических факторов.
Один из возможных вариантов защиты от подобных событий – составление консервативного портфеля из дивидендных бумаг. Высокая дивидендная доходность позволяет частично нивелировать негативные шоки. Статистически подобные портфели являются наиболее надежным инструментом на рынке акций во время просадок, поскольку привлекательная доходность не дает бумагам сильно просесть.
Ранее мы опубликовали обзор с прогнозами дивидендов на 2019 г. по акциям российского рынка. Данные расчеты мы взяли за основу нашего дивидендного портфеля. В итоге мы отобрали 10 наиболее привлекательных бумаг из разных отраслей, обладающих различной ликвидностью, что позволяет максимально диверсифицировать риски.
В портфель вошли бумаги следующих эмитентов: Сбербанк-ап, Татнефть-ап, Северсталь, АЛРОСА, ФСК ЕЭС, Сургутнефтегаз-ап, Башнефть-ап, Детский мир, ЛСР, Мечел-ап.
--Массив с Тикерами, добавьте нужные тикеры aTickerList = {"MSNG", "GAZP", "LKOH", "SIBN", "GMKN","ROSN", "SBER", "TATN", "NVTK", "IRAO", "RSTI", "SBERP", "PHOR", "SNGS", "TRNFP", "VTBR", "FEES", "MVID", "RASP", "MFON", "AFLT", "MAGN", "ALRS", "MTSS", "MOEX", "RTKM", "MGNT", "NLMK", "SNGSP", "CHMF", "MTLR", "HYDR", "MFON", "RSTI", "PLZL", "BANEP", "POLY" }; --Функция поиска цены function fGetPrice(sTickerName, sNum) --Подключаемся к источнику данных local ds=CreateDataSource("TQBR", sTickerName, INTERVAL_D1); while (Error=="" or Error == nil) and ds:Size() ==0 do sleep(10) end; if Error ~="" and Error ~=nil then message("Error: "..Error, 1) end; local sSize=ds:Size(); local sCurrentPrice=ds:O(sSize); local sLastWeekPrice7=0; local sLastWeekPrice14=0; --Берем цену закрытия свечи неделю назад sLastWeekPrice7=ds:C(sSize-4); --Берем цену закрытия свечи 2 недели назад sLastWeekPrice14=ds:C(sSize-8); --Вычисляем проценты local sPrc7=math.floor((100-((sLastWeekPrice7*100)/sCurrentPrice))*100)/100; local sPrc14=math.floor((100-((sLastWeekPrice14*100)/sCurrentPrice))*100)/100; --Заполняем таблицу значениями SetCell(t_id, sNum, 0, tostring(sTickerName)); SetCell(t_id, sNum, 1, tostring(sCurrentPrice),sCurrentPrice); SetCell(t_id, sNum, 2, tostring(sLastWeekPrice7),sLastWeekPrice7); SetCell(t_id, sNum, 3, tostring(sLastWeekPrice14),sLastWeekPrice14); SetCell(t_id, sNum, 4, tostring(sPrc7),sPrc7); SetCell(t_id, sNum, 5, tostring(sPrc14),sPrc14); --Текущая цена больше цены прошлой недели - раскрашиваем зеленым if sCurrentPrice>sLastWeekPrice7 then fGreen(sNum); end; --Текущая цена меньше цены прошлой недели - раскрашиваем красным if sCurrentPrice<sLastWeekPrice7 then fRed(sNum); end; --Текущая цена больше цены прошлой недели и цена прошлой недели больше цены позапрошлой недели --раскрашиваем желтым if sCurrentPrice>sLastWeekPrice7 and sLastWeekPrice7>sLastWeekPrice14 then fYellow(sNum); end; end; --- Функция создает таблицу function CreateTable() -- Получает доступный id для создания t_id = AllocTable(); -- Добавляет 6 колонок AddColumn(t_id, 0, "Тикер", true, QTABLE_INT_TYPE, 15); AddColumn(t_id, 1, "Сегодня", true, QTABLE_INT_TYPE, 15); AddColumn(t_id, 2, "Неделя", true, QTABLE_INT_TYPE, 15); AddColumn(t_id, 3, "2 Недели", true, QTABLE_INT_TYPE, 15); AddColumn(t_id, 4, "Неделя (%)", true, QTABLE_INT_TYPE, 15); AddColumn(t_id, 5, "2 Недели (%)", true, QTABLE_INT_TYPE, 15); -- Создаем t = CreateWindow(t_id); -- Даем заголовок SetWindowCaption(t_id, "7 Days"); -- Добавляем строки for k,v in pairs(aTickerList) do InsertRow(t_id, k); end; end; --- Функции раскрашивают ячейки таблицы function fRed(col) SetColor(t_id, col, -1, RGB(255,168,164), RGB(0,0,0), RGB(255,168,164), RGB(0,0,0)); end; function fGreen(col) SetColor(t_id, col, -1, RGB(157,241,163), RGB(0,0,0), RGB(157,241,163), RGB(0,0,0)); end; function fYellow(col) SetColor(t_id, col, -1, RGB(249,247,172), RGB(0,0,0), RGB(249,247,172), RGB(0,0,0)); end; --Основная функция function main() -- Создаем таблицу CreateTable(); --Пробегаемся по массиву тикеров for k,v in pairs(aTickerList) do fGetPrice(v, k); end; end;как выглядит в квике: