Избранное трейдера BydloTrader
Во время подготовки заметки о сравнении результатов России и Израиля на Международных математических олимпиадах загорелся идеей посмотреть на результаты международных олимпиад 2018 года и по остальным предметам. Небольшие сюжеты на ТВ в середине 2018 позволяли предполагать, что результаты были в целом положительные. Сообщалось об успехе, о медалях, радостные лица возвращающихся участников. Но были и некоторые сомнения. Почему сомневался, как проверил и почему был шокирован- читайте ниже.
Дело в том, что золотые, серебряные и бронзовые медали на международных предметных олимпиадах школьников вручаются не так как на спортивных олимпиадах. Медали здесь получают не только три лучших (среди всех)участника, а все участники соревнований, кто наберет не менее определённого количества баллов. Соответственно, те кто не выполняет норматива хотя бы на бронзовую медаль- остаются без наград. Именно поэтому было сомнение: а вдруг все наши сборные и правда привезли личные медали, но бОльшая часть участников сборных осталась без них. А государственное ТВ, ну может же такое быть, просто выпятило в коротеньких репортажах именно медалистов. А вдруг на этих олимпиадах порог для получения медали низкий был и их всем «раздали»… Ну и так далее. Полез рыскать по англоязычным официальным сайтам олимпиад и вот что выяснил.
--Массив с Тикерами, добавьте нужные тикеры
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;как выглядит в квике:
Давайте обобщим мысль в важном рисунке (нарисовано наспех, как курица лапой, знаю – но лучше куриной лапой по делу, чем красиво всякую ересь). Чего ждать среднему участнику от биржи в частности, и инвестирования вообще.
Нулевая реальная доходность будет центром распределения, обратим внимание на отклонение доходности как вправо, так и влево. Вертикальная ось – годовая доходность (реальная с учетом инфляции), горизонтальная – вероятность ее получить. Если в игру начнут играть реальные люди, вероятность будет реальным процентом тех, кто получит тот или иной результат. Рисунок грубый. Нам сейчас не важна точность, важна идея. Для начала фиксируем, что ноль — центр распределения. Именно к нулевой доходности будет стремится безрисковая ставка, чуть выше (но не более 2-3%) даст покупка индекса со всеми налогами, комиссиями и т.д. Срочный рынок же, как известно, вообще игрока с отрицательной суммой, здесь мы ему даже польстим.
В исследовании приняли участие 27 профессиональных трейдеров, работающих на различные швейцарские банки или хедж-фонды, а также контрольная группа из 24 обычных людей. Сначала все добровольцы прошли тест на психопатию, а затем им предложили поиграть с компьютером в известную психологическую игру «дилемма заключенного»: игрок в каждом раунде должен выбрать между двумя вариантами поведения — попыткой кооперации и эгоистичным решением. При этом первый вариант более безопасен и подразумевает доверие к партнеру, а второй — более рискован, но в случае успеха приносит и большую выгоду. По окончании эксперимента ученые сравнили полученные результаты с итогами аналогичного исследования, в котором приняли участие 24 пациента немецких клиник с диагнозом «психопатия», подразумевающем, в частности, неспособность к эмпатии и безответственность.
Немного льда в холодной воде. – Захват мира при помощи 5%. – Размер не имеет значения. – Династии, которых нет. – Спросите Фуггеров.
То, что будет далее, противоречит большей части литературы по инвестициям. Я в курсе. Тем хуже для нее.
Некоторые фразы лучше произносить быстро, емко, целиком, как ведро холодной воды на голову. Итак, ведро воды.
В строгом смысле пассивного дохода не существует.
Но вот же он! Есть живые люди, они говорят: посмотрите, вот мой пассивный доход. Эти люди существуют, здесь мы не спорим.
То, что принимают за пассивный доход, либо следствие применения специальных знаний (т.е. доход не пассивен, а результат выигрыша в игре), либо удача (выигрыш в лотерею может считаться пассивным, но вряд ли может считаться постоянным доходом), либо незначительно (1-2% реальной доходности).
