Избранное трейдера 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-блокнота. Поехали!
