Избранное трейдера andydiver
Результаты консервативной количественной инвестиционной модели LQI (lazy quantitative investing), о которой я писал ранее (https://smart-lab.ru/blog/384110.php), за декабрь (результаты за прошлый месяц: smart-lab.ru/blog/508343.php). Модель третий месяц подряд обгоняет SPY, но учитывая динамику индекса за последний месяц это не очень-то вселяет оптимизм. Вот веса предыдущего месяца и соответствующие ретурны торгуемых тикеров:
weight monthly.ret
XLY 0.048 -7.95
XLP 0.221 -8.91
XLE 0.000 -12.43
XLF 0.000 -11.12
XLV 0.000 -9.35
XLI 0.196 -10.65
XLB 0.000 -6.88
XLK 0.000 -8.36
XLU 0.210 -3.99
IYZ 0.214 -8.22
VNQ 0.112 -7.96
SHY 0.000 0.76
TLT 0.000 5.85
GLD 0.000 4.92
В среднем перформанс выбранных секторов оказался чуть лучше, чем у SPY, за счет этого удалось примерно на 1% обогнать индекс, однако из-за отсутствия в портфеле из-за предыдущего несходящего тренда защитных активов — золота и трежерей — модель проиграла EQW (equal-weighted портфель торгуемых тикеров): (-8.8%) SPY vs (-7.8%) LQI vs. (-6.0%) EQW. В терминах максимальной просадки в течение месяца модель также обогнала SPY и оказалась хуже EQW: 12.6% LQI vs. 15.4% SPY vs. 11.1% EQW. Что немного радует: в течение месяца я активно управлял реальным счетом (сливая портфель по ходу углубления просадки), так что результат получился чуть лучше — наверное, где-то на уровне EQW, однако этот результат все равно удручающий.
Пишу быстро, чтобы успеть до закрытия торгов. Табличка ниже, это 8 лучших бумаг из списка 30 наиболее ликвидных по итогам 2018 года на 17:50 по московскому времени. У вас еще будет время купить их сегодня. Если не успеете, ничего страшного можно будет купить 3 января. Лучшие бумаги по итогам 2018 года выделены желтым цветом в таблице 1.
Таблица 1.
До закрытия торгов осталось уже немного времени, так что список 8 лучших бумаг по итогам года уже не изменится. Итак, в этом году победителями становятся:
За 12 лет наблюдения лучшие бумаги рынка проиграли индексу только один раз, и было это в 2011 году. Все остальные годы лучшие бумаги прошлого года неизменно обгоняли индекс МосБиржи на следующий год. С очень большой вероятностью так произойдет и в следующем 2019 году. Покупать можно по рынку, в равных долях. Я уже купил на 40% от одного из своих счетов.
P.S. Более подробный анализ я надеюсь написать завтра.
4 года и 4 месяца прошло с выхода поста «Торговый робот на LUA для QUIK» (https://smart-lab.ru/blog/200767.php) про конструктор Lbot. За это время он повзрослел, лишился графического интерфейса и… превратился в младшего брата для Lbot3D. И если раньше для Lbot была пробная версия (с одним инструментом и одним лотом), то теперь, фактически, сам превратился в пробную версию для Lbot3D и, с этого дня, предоставляется в свободное пользование с полным функционалом:
Скачать Lbot180.zip можно тут: drive.google.com/open?id=1DL9jGEBm2Uhk89PcQdlK-ObaOe2zihnx
INI-файл написан для демо-QUIK на 3 инструмента — Сбербанк, Газпром и Лукойл. Стратегия на Газпроме — безиндикаторная, на Сбербанке — на скользящих средних, на Лукойле — на пересечениях MACD.
encoding = "UTF-8" FREQUENCY = 1000 account = NL0011100043, 10110 PositionSize = 300000 xy = 421, 0, 859, 118 ;------------------------------------------------------------------------------- [GAZP] Security = GAZP, QJSIM, Gazp_moex WorkSize = 3 // рабочий объем, в штуках; LossLimit = 100 // ограничение на убыток по стратегии OpenSlippage = 10 // допустимое проскальзывание на сделке, в количестве минимальных шагов цены; OpenLong = {Close, 1} < {High, 2} // цена 'close' предыдущей 'полной' свечи превысила 'high' предшествующего ей бара; OpenShort = {Close, 1} > {Low, 5-2} // цена 'close' предыдущей 'полной' свечи принизила 'low' 5-2 баров; StopLoss = 2 TakeProfit = 3, 1, 1 EOD = 18:29:00 //закрытия позиции в указанное время. autoBot = Y [SBER] Security = SBER, QJSIM, Sber_moex WorkSize = 10 LossLimit = 100 OpenSlippage = 10 OpenLong = {Ema1} > {Ema2} CloseLong = {Ema1} < {Ema2} OpenShort = {Ema1} < {Ema2} CloseShort = {Ema1} > {Ema2} autoBot = Y [LKOH] WorkSize = 2 Security = LKOH, QJSIM, Lkoh_moex LossLimit = 225 OpenSlippage = 10 OpenLong = cross(macd_Lkoh.0, macd_Lkoh.1) OpenShort = cross(macd_Lkoh.1, macd_Lkoh.0) ;OpenLong = {Close, 1} < {Low, 5-2} ;OpenShort = {Close, 1} > {High, 2} StopLoss = 30 TakeProfit = 50, 10, 10 autoBot = Y