Избранное трейдера BlueOcean
Готовый пример для акций, класс — TQBR.
Список всех классов выводится на вторую строку лог-файла.
-- seclist_csv.lua, © smart-lab.ru/profile/XXM/ -- список бумаг, транслируемые QUIK-ом local ver = '0.91' -- 22.12.2016 local scriptPath = getScriptPath() local Terminal_Version=getInfoParam('VERSION') local logFile = scriptPath..'\\'..'seclist.csv' local file = io.open(logFile, "w") assert(file, "Ошибка открытия "..logFile) function string.split(str, sep) local fields = {} str:gsub(string.format("([^%s]+)", sep), function(f_c) fields[#fields + 1] = f_c end) return fields end function write_log(str) file:write(str .. "\n") end function Main() local local_datetime = os.time(os.date("*t")) local dtd = os.date("%d.%m.%Y %H:%M",local_datetime) local mes = 'Start seclist_csv '..ver..', QUIK '..Terminal_Version..', '..dtd message(mes); file:write(mes .. "\n") class_list = getClassesList() mes = 'class_list = '..class_list message(mes); write_log(mes); local class_listT = {} class_listT = string.split(class_list, ',') for i = 1, #class_listT do local fline = class_listT[i] if fline == 'TQBR' then -- для примера - только акции! local classInfo = {} classInfo = getClassInfo(fline) -- 3.2.2 getClassInfo -- Функция предназначена для получения информации о классе. local sec_list = getClassSecurities(classInfo.code) local sec_listTable = {} sec_listTable = string.split(sec_list, ',') for i = 1, #sec_listTable do local classCode = classInfo.code local secCode = sec_listTable[i] local securityInfo = getSecurityInfo(classCode, secCode) local name = securityInfo.name local step = securityInfo.min_price_step local secInfo = classInfo.name..';'..classCode..';'..name..';'..secCode..';'..step write_log(secInfo); end end end local mes = 'Готово!' message(mes); write_log(mes); file:flush() file:close() end Main() -- seclist_csv.luaНа выходе получил список из 292 ценных бумаг.
По следам моего предыдущего поста – фигасе! Сам не ожидал такого. Не только предсказал, что выберут Трампа, но и мои добавленные в портфель акции выросли с тех пор на 6.95% (LMT) и 9.5% (CBRL)
В этом выпуске, посмотрим на то, что происходит с американскими акциями в результате избрания Трампа, и как реагировать на весь этот Адъ.
Напомню, что целью проекта является доказать, что пассивный портфель, подобранный на основе анализа стратегии эмитентов, побьет как индекс S&P, так и любой портфель, основанный на анал-изе ГААП-овской отчетности или на активной торговле.
Активы в портфель выбираются по моему (но не оригинальному) принципу стратегического инвестирования, описанному здесь и здесь
Общая тема заключается в том, что, судя по реакции рынка, выиграли:
За прошедшие 4 месяца с последнего обзора портфель был существенно увеличен за счет продажи части еврооблигаций (BSPB XS0848163456 и DME XS0995845566) и конвертации выручки в рубли. В настоящий момент доля рублевых инструментов составляет 36% от общего портфеля. Это существенное отклонение от первоначальных планов декабря 2015г по увеличению доли рублевых вложений до 36% только к концу 2018г.
Причины более агрессивной покупки рублевых инструментов:
a) Снижающаяся инфляция.
b) Жесткая ДКП ЦБ РФ.
c) Низкая оценка акций ряда российских компаний (Алроса, Интер-РАО, Аэрофлот, Протек и др.)
d) Положительная динамика финансовых показателей выбранных компаний.
e) Кампания по увеличению дивидендных выплат в госкомпаниях.
f) Снижающаяся волатильность курса рубля.
g) Улучшение прогнозов динамики ВВП на 2016-2017гг.
h) Отсутствие эскалации напряженности с Западом.
i) Объявленные планы приватизации на 2016-2017гг и планы по увеличению госзаимствований для покрытия дефицита бюджета (вместо девальвации рубля и увеличения рублевой стоимость барреля).
Многим из нас знакомо чувство эйфории, когда наконец мы создали свою торговую систему. Проанализированы прошлые данные, получены положительные результаты, и мы готовы начать работать с этой системой на реальном счету. Готовы зарабатывать, зарабатывать и зарабатывать. Однако, немногие осознают, что создание системы – лишь полдела. Вторая половина – следование сигналам.
Многим кажется, что нет ничего проще. Будет сигнал на покупку – купим, будет на продажу – продадим. И мы недооцениваем свое психологическое состояние в торговые моменты. Когда мы начинаем торговать, мы спокойны. Однако, как только наш счет изменился на рубль, это начинает влиять на нас. Влиять на наши эмоции при ожидании следующего сигнала. На его исполнение. Или на включение и отключение торгового робота, который следует сигналам нашего алгоритма.
В этом посте хотелось бы описать возможные психологические ошибки трейдера, совершенные в моменты, когда эмоции зашкаливают. А именно: на просадке управления и на его пике. Те правила, следуя которым мы сможем избежать ошибок при управлении нашими деньгами в эти моменты.
Понравилось.
В Японии, в одном поселке недалеко от столицы жил старый мудрый самурай. Однажды, когда он вел занятия со своими учениками, к нему подошел молодой боец, известный своей грубостью и жестокостью. Его любимым приемом была провокация: он выводил противника из себя и, ослепленный яростью, тот принимал его вызов, совершал ошибку за ошибкой и в результате проигрывал бой.
Молодой боец начал оскорблять старика: он бросал в него камни, плевался и ругался последними словами. Но старик оставался невозмутимым и продолжал занятия. В конце дня раздраженный и уставший молодой боец убрался восвояси.
Ученики, удивленные тем, что старик вынес столько оскорблений, спросили его:
— Почему вы не вызвали его на бой? Неужели испугались поражения?
Старый самурай ответил:
— Если кто-то подойдет к вам с подарком и вы не примете его, кому будет принадлежать подарок?
— Своему прежнему хозяину, – ответил один из учеников.
— Тоже самое касается зависти, ненависти и ругательств. До тех пор, пока ты не примешь их, они принадлежат тому, кто их принес.
Подумал, что многие не знают, как подступиться к языку Qlua и запустить робота в квике. А между тем, это настолько просто, что даже не требует ничего кроме квика, виндусовского блокнота и знаний самого Qlua.
Qlua – это скриптовый язык поддерживаемый квиком, в основе язык lua 5.1 (в моем квике версия такая).
Скрипты, написанные на Qlua – это обычные текстовые файлы, которые имеют расширение «.lua». То есть можно сделать файл в обычном блокноте и после сохранения поменять в нем расширение с «.txt» на «.lua». Если внутрь этого файла записать инструкции кода на языке Qlua, то квик будет выполнять их.
Для удобства написания инструкций кода лучше пользоваться не виндусовым стандартным блокнотом, а например Notepad++, который можно скачать официально и бесплатно здесь https://notepad-plus-plus.org/download/v6.9.1.html. Он позволяет включить подсветку синтаксиса различных языков программирования, в том числе и lua, что очень помогает при написании кода.
В Notepad++ в «Опции -> Настройки» можно выбрать русский язык, а в «Опции -> Определение стиля» установить для lua понравившийся стиль отображения. Я для «Язык -> lua» ставлю стиль «Выбрать стиль -> Bespin» и еще в окошке «Стиль» для последних трех «FUNC» переопределяю цвет, иначе они с фоном сливаются.