Избранное трейдера Vitastic
Доходность ОФЗ и депозитов обновляет минимум за несколько лет, что увеличивает интерес к инвестированию в акции. Наибольшую популярность среди начинающих инвесторов, как правило, имеют стратегии, связанные с поиском акций с наибольшей дивидендной доходностью. Мы разберем, какие ошибки можно совершить при формировании дивидендной стратегии и предложим свой вариант составления портфеля.
Высокая дивидендная доходность – лишь часть стратегии
Выбрать пару акций с наибольшей дивидендной доходностью – крайне рискованная стратегия инвестирования. Высокая дивидендная доходность означает, что рынок ожидает, что в дальнейшем дивиденды компании будут расти медленно или снижаться. При реализации негативного сценария акция может упасть в стоимости и принести большой убыток инвестору.
Чтобы защититься от негативного сценария инвестор должен придерживаться хорошей диверсификации и иметь в портфеле не менее 10-15 акций. Кроме того, в свою стратегию нужно включить мониторинг других показателей, которые укажут на возможные проблемы с последующей выплатой дивидендов.
Итак, продолжаем:
1 часть здесь smart-lab.ru/blog/571035.php#comment10270086
Как я уже определил для полного хеджирования портфеля, мне необходимо 45 путов. 3 последовательных страйка по 15 шт. на страйк. Стоимость каждого страйка составляет 2500*15 = 37500пт.
Наша задача сделать хедж бесплатным.
Каким образом я решаю эту задачу? Все очень элементарно! Я просто продаю 10 недельных стредлов на ЦС примерно за 10 дней до экспирации, т.е. в понедельник-вторник. Временная стоимость 1 стредла 3800-4000пт, в сумме мы получаем 38000-40000пт.
Понятно, что б/а не стоит на месте и легко может уйти как вправо, так и влево.
Если влево, то ничего страшного, низы прикрыты с избытком. Успевает дойти до следующего страйка, продаю еще 10 коллов. Не успевает – путы, зашедшие в деньги превращаются в длинные фьючи, которые будут нейтрализованы при следующей продаже коллов.
Гораздо сложнее обстоит дело со второй частью стредла, проданными коллами. Вот их я дополнительно прикрываю покупкой коллов следующего страйка. Это стоит недешево, но делать необходимо. Если рынок растет, например как сейчас, то с выходом на следующий страйк, продаю новые путы. Коллы не трогаю. В этом случае, если б/а зависает между начальным страйком и страйком справа. Коллы, зашедшие в деньги и путы, зашедшие в деньги нейтрализуются. Если б/а уходит выше второго страйка, то проданные коллы нейтрализуются купленным следующим страйком, а все проданные путы просто распадаются.
С каждой новой недельной серией открывается подобная конструкция.
Если рынок растет, то поза обходится бесплатно. Покупка каждого нового страйка на квартале компенсируется данной конструкцией на недельках. Если рынок останавливается, логично, что квартальной покупки нет, между тем, конструкция на недельках генерит профит.
Это не шарлатанство, не «британские ученые доказали...», это РКИ — рандомизированные клинические испытания, проведенные на людях. Официально
опубликовано на ncbi, pubmed. И, конечно, запущен бизнес по продаже рецептов диеты.
Диета запускает процесс аутофагии, апоптоза, то есть поедание организмом плохих клеток, в том числе «раковых».
Диета Fast Mimicking Diet (FMD) была разработана в Институте долголетия, школы геронтологии, на Кафедре биологических наук, Университета Южной Калифорнии, США (ведущий руководитель д-р Вальтер Лонго).
Сущность диеты FMD заключается в том, что 1 раз в месяц в течение 5-ти дней подряд калорийность питания и содержание белка в питании резко снижаются.
Расчёт диеты FMD делался так:
В первый день FMD калорийность пищи не превышала 54% (в среднем около 1090 килокалорий в сутки для среднего человека) от обычной калорийности рациона.
Содержание белка в пище 10% от калорийности, жира 56% от калорийности, а углеводов 34% от калорийности.
В 2-5 дни FMD калорийность пищи не превышала 34% (в среднем около 725 килокалорий в сутки для среднего человека) от обычной калорийности рациона.
Содержание белка в пище 9% от калорийности, жира 44% от калорийности, а углеводов 47% от калорийности.
Расчет пенсии по старости для женщины в 2019году
Расчет пенсии по старости в 2019 году должен учитывать соответствующие изменения пенсионного законодательства, в том числе, повышение пенсионного возраста. В статье представлена инструкция для расчета страховой пенсии по старости для женщины 1964 года рождения. Изложенная информация позволит Вам сориентироваться в современном пенсионном законодательстве. Для заказа детального расчета Вашей пенсии звоните и пишите лично.
Современная пенсионная формула: простыми словами.
В 2019 году мы продолжаем говорить о расчете страховой пенсии по старости для женщин, теперь уже 1964 года рождения.
Право на пенсию по старости в 2019 году имеет женщина:
1) достигшая возраста 55 с половиной лет (согласно части 1 статьи 8 федерального закона от 28.12.2013 № 400-ФЗ «О страховых пенсиях», с учетом изменений от 03.10.2018);
Общаюсь с одним знакомым. Молодой студент, скальпинг любит, впрочем, как и многие нетерпеливые трейдеры. Сразу оговорюсь, что скальпинг — очень тяжелый вид спекуляций. Но торгует он не часто, 3-5 дней в месяц, этого хватает, чтобы выглядеть не как выжатый лимон и снимать деньги с рынка.
Трейдером его назвать язык не повернется, но уже второй год все еще снимает сливки с рынка. Вчера мне прислал свою работу по Доллар-Рублю, на что ожидал наверное услышать от меня признания, что он крут.
привет!
у меня в квике стояла камарилла аж с 2014 года, когда вы выложили здесь этот индикатор.
квик обновился до 8 и камарилла пропала.
это не исправить?
-- Camarilla.lua Settings={ Name = "Camarilla", period = 'D', line = { {Name = "S5", Color = RGB(255, 0, 0), Type = 1, Width = 2}, {Name = "S4", Color = RGB(255, 165, 0), Type = 1, Width = 2}, {Name = "S3", Color = RGB(255, 255, 0), Type = 1, Width = 2}, {Name = "PP", Color = RGB(0, 255, 0), Type = 1, Width = 2}, {Name = "R3", Color = RGB(0, 191, 255), Type = 1, Width = 2}, {Name = "R4", Color = RGB(0, 0, 255), Type = 1, Width = 2}, {Name = "R5", Color = RGB(139, 0, 255), Type = 1, Width = 2}, } } local math_floor = math.floor local levels = 0 local ydH, ydL, ydC, ydO = {},{},{},{} local PP, R3, R4, R5 = 0,0,0,0 local S3, S4, S5 = 0,0,0 local delta = 0 local cl = 0 local predThisDay=0 local function dTs(t) return 100*(100*t.year+t.month)+t.day; end local OldDay = '' -- для выделения начала торгового дня function Init () local t=getDataSourceInfo() local tt = t.interval if tt == -3 then message('Месячный график не обрабатывается.',1) return end return 7 end function OnCalculate (index) local time tt=T(index); ---время из свечи --local ThisDay=dTs(tt) -- дата в формате yyyyMMdd local tDay=dTs(tt) -- дата в формате yyyyMMdd local ThisDay = tDay if Settings.period == 'W' then ThisDay=tt.week_day -- номер недели end if index == 1 then --message('First ThisDay = '..tostring(ThisDay),1) local t=getDataSourceInfo() --7.2.5 Функция предназначена для получения информации об источнике данных для индикатора. local scale = getSecurityInfo(t.class_code, t.sec_code).scale -- NUMBER, Количество значащих цифр после запятой mul = 10^scale -- возведение в степень local tt = t.interval if tt == -3 then tt = 'месяц' elseif tt == -2 then tt = 'неделя' elseif tt == -1 then tt = 'день' else tt = tt..' мин.' end --message(t.sec_code..'('..t.class_code..'), цифр после запятой: '..scale..', mul = '..mul..', дата = '..ThisDay,1) levels = levels + 1 if ThisDay ~= OldDay then OldDay = ThisDay end predThisDay = ThisDay -- delta = H(index) - L(index) cl = C(index) R5 = (H(index) / L(index))*cl calcLevels(index) local per = 'daily' if Settings.period == 'W' then per = 'weekly' end message('Camarilla '..per..', Т = '..tt..', © xsharp.ru 20.06.2015', 1) return end if Settings.period == 'W' then if ThisDay < OldDay then -- для неделек OldDay = OldDay + 1 if OldDay ~= ThisDay then OldDay = ThisDay end levels = levels + 1 delta = ydH[levels-1] - ydL[levels-1] cl = ydC[levels-1] R5 = (ydH[levels-1] / ydL[levels-1])*cl calcLevels(index) --if index<120 then --message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) --end predThisDay = ThisDay else if ThisDay ~=predThisDay then --message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) predThisDay = ThisDay OldDay = OldDay + 1 end ThisDayF(index) end elseif Settings.period == 'D' then if ThisDay ~= OldDay then -- для дневок OldDay = OldDay + 1 if OldDay ~= ThisDay then OldDay = ThisDay end levels = levels + 1 delta = ydH[levels-1] - ydL[levels-1] cl = ydC[levels-1] R5 = (ydH[levels-1] / ydL[levels-1])*cl calcLevels(index) --if index<120 then --message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) --end predThisDay = ThisDay else if ThisDay ~=predThisDay then --message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) predThisDay = ThisDay OldDay = OldDay + 1 end ThisDayF(index) end elseif Settings.period == 'H4' then if ThisDay ~= OldDay then -- для дневок OldDay = OldDay + 1 if OldDay ~= ThisDay then OldDay = ThisDay end levels = levels + 1 delta = ydH[levels-1] - ydL[levels-1] cl = ydC[levels-1] R5 = (ydH[levels-1] / ydL[levels-1])*cl calcLevels(index) --if index<120 then --message('index= '..tostring(index)..', Смена недели: '..tostring(ThisDay)..', OldDay: '..tostring(OldDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) --end predThisDay = ThisDay else if ThisDay ~=predThisDay then --message('index= '..tostring(index)..', ThisDay= '..tostring(ThisDay)..', predThisDay: '..tostring(predThisDay)..', d='..tDay..', R3= '..R3..', PP= '..cl..', S3= '..S3,1) predThisDay = ThisDay OldDay = OldDay + 1 end ThisDayF(index) end end return S5, S4, S3, cl, R3, R4, R5 end function round(value) return math_floor(value*mul + 0.5) / mul end function ThisDayF(index) ydC[levels] = C(index) if H(index) > ydH[levels] then ydH[levels] = H(index) end if L(index) < ydL[levels] then ydL[levels] = L(index) end end function calcLevels(index) ydO[levels] = O(index) ydH[levels] = H(index) ydL[levels] = L(index) ydC[levels] = C(index) -- R3 = cl + delta * 1.1/4 R4 = cl + delta * 1.1/2 -- S3 = cl - delta * 1.1/4 S4 = cl - delta * 1.1/2 S5 = cl - (R5-cl) -- R5 = round(R5) R4 = round(R4) R3 = round(R3) S3 = round(S3) S4 = round(S4) S5 = round(S5) end
Воодушевлённый статьёй с рекламой структурных продуктов на Хабре, адаптировал python-скрипт для их самостоятельного тестирования. Основная идея в том, что подобные продукты предлагают 100% защиту капитала. А учитывая 10 лет бычьего рынка, исторические показатели подобных продуктов одурманивают безрисковым раем.
Скрипт подойдёт для быстрого и понятного тестирования своих портфелей с ребалансировкой в разные периоды. Ну а кому-то данный инструмент может пригодиться для самостоятельного построения подобных стратегий. Их наипростейшей формы. Однако брокеры пишут, что это не каждому под силу.
Код выложен в GitHub в виде Jupyter-блокнота. Поехали!