Избранное трейдера WooDoo

по

Статистический арбитраж на Санкт-Петербургской Бирже или парный трейдинг становится ближе.

     В этой статье я хочу рассказать об одной стратегии парного трейдинга и торговом роботе MultiConnect с помощью которого наши друзья и партнеры «ФК Викинг» активно торгуют арбитражные стратегии на Санкт-Петербургской Бирже.

     Парный трейдинг и статистический арбитраж зародился в Америке в шестидесятых годах прошлого века, сначала такой принцип торговли был доступен ограниченному кругу трейдеров, пришедших в этот бизнес с кафедр математических университетов. С помощью статарбитража сколачивались огромные состояния, открывались транснациональные хедж фонды. Во многом электронная биржевая торговля, какой мы видим ее сейчас, обязана статистическому арбитражу.  Об этих временах и нравах на Уолл-стрит, о зарождении, взлетах и падениях некоторых хеджфондов очень интересно написал  Скотт Паттерсон в своей книге «Кванты» https://smart-lab.ru/books/kvanty-patterson/.  

     В основе нашей стратегии также лежит идея торговли акциями друг против друга – т.е. когда мы покупаем одну компанию, одновременно продаем другую, торгуем спред акций. По сути, создается синтетический инструмент, который менее подвержен трендовым движениям, стремится к паритету. Были отобраны акции одного сектора, банковского – JP MorganChase (JPM) и Bank of Amerika (BAC). Компании фундаментально схожи между собой, два крупнейших банка, воздействие на сектор вызывает движение в обеих бумагах, что обеспечивает приемлемые риски, но при этом мы ловим расхождения в цене, вызванные факторами, воздействующими лишь на одну из компаний или  рыночными неэффективностями. При этом есть одна интересная идея – торговать через Санкт-Петербургскую Биржу, где торги начинаются с 10 утра по Москве и продолжаются до закрытия постмаркета в Америке. Это позволяет ловить ценовые неэффективности до того, как подключатся американские «коллеги» — зачастую утром выходит отчетность и появляются новости, напрямую влияющие как на отдельно взятую компанию, так и на весь рынок в целом.  Комиссии на СПБирже более чем конкурентны: 0.01 процент от суммы сделки, что дает возможность торговать пары акций с небольшим шагом спреда между этими бумагами.



( Читать дальше )

QUIK: Бенчмарк ОФЗ к ставке ЦБ

    Может кому будет интересен скрипт на QLUA, который выступает простым бенчмарком ОФЗ с постоянным купоном к ставке ЦБ.
Основные параметры доходность и премия к ставке ЦБ, с учетом дюрации.
Скрипт не работает онлайн (оперативность тут не принципиальна), при запуске собирает параметры в таблицу и выводит на экран.
В дальнейшем планируется эти данные использовать для анализа премии доходности по дюрации для муниципальных и корпоративных облигаций к ОФЗ.

QUIK: Бенчмарк ОФЗ к ставке ЦБ


    Код скрипта на github (на github две версии одна в utf-8 для просмотра и основная версия в win1251, т.к. quik понимает только его):
github.com/trantor77/lua_scripts/boundsOFZ.lua

    Код скрипта:
--переменные
keyRateCB = 7.5
classCode = "TQOB"

function CreateTable()
    t_id = AllocTable()
    AddColumn(t_id, 0, "Бумага", true, QTABLE_STRING_TYPE, 15)
    AddColumn(t_id, 1, "Цена", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 2, "Доходность, %", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 3, "Дюрация, лет", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 4, "Купон, %", true, QTABLE_DOUBLE_TYPE, 15)
    AddColumn(t_id, 5, "Премия к ЦБ, бп", true, QTABLE_INT_TYPE, 15)
    AddColumn(t_id, 6, "Погашение", true, QTABLE_STRING_TYPE, 15)
    t = CreateWindow(t_id)
    SetWindowCaption(t_id, "ОФЗ")
end

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 getParamNumber(code, param)
    return tonumber(getParamEx(classCode, code, param).param_value)
end

function formatData(prm)
    return string.format("%02d.%02d.%04d", prm%100, (prm%10000)/100, prm/10000)
end

CreateTable()

arr = {}
sec_list = getClassSecurities(classCode)
sec_listTable = string.split(sec_list, ',')
j = 0
for i = 1, #sec_listTable do
    secCode = sec_listTable[i]
    securityInfo = getSecurityInfo(classCode, secCode)
    short_name = securityInfo.short_name
    if short_name:find("ОФЗ 26") ~= nil then
        j = j + 1
        r = {}
        r["short_name"] = short_name
        r["price"] = getParamNumber(securityInfo.code, "PREVPRICE")
        r["yield"] = getParamNumber(securityInfo.code, "YIELD")
        r["duration"] = getParamNumber(securityInfo.code, "DURATION")/365
        couponvalue = getParamNumber(securityInfo.code, "COUPONVALUE")
        couponperiod = getParamNumber(securityInfo.code, "COUPONPERIOD")
        r["coupon"] = ((365/couponperiod) * couponvalue)/10
        r["bonus"] = (r["yield"] - keyRateCB)*100
        r["mat_date"] = getParamNumber(securityInfo.code, "MAT_DATE")
        table.insert(arr, j, r)
    end
end

table.sort(arr, function(a,b) return a["duration"] < b["duration"] end)

for j = 1, #arr do
    row = InsertRow(t_id, -1)
    SetCell(t_id, row, 0, arr[j]["short_name"])
    price = arr[j]["price"]
    SetCell(t_id, row, 1, string.format("%.2f", price), price)
    yield = arr[j]["yield"]
    SetCell(t_id, row, 2, string.format("%.2f", yield), yield)
    duration = arr[j]["duration"]
    SetCell(t_id, row, 3, string.format("%.2f", duration), duration)
    coupon = arr[j]["coupon"]
    SetCell(t_id, row, 4, string.format("%.2f", coupon), coupon)
    bonus = arr[j]["bonus"]
    SetCell(t_id, row, 5, string.format("%.0f", bonus), bonus)
    mat_date = arr[j]["mat_date"]
    SetCell(t_id, row, 6, formatData(mat_date), mat_date)
end
  • обсудить на форуме:
  • Quik Lua

Как правильно торговать опционами урок 1 и урок 2

Урок1: 

Настройка ПО option workshop, подключение к терминалу quik.



( Читать дальше )

Обещанный Манн-Уитни

    • 17 октября 2018, 13:21
    • |
    • А. Г.
      Проверенный аккаунт
  • Еще
Как и обещал в комментарии из моего предыдущего топика 

smart-lab.ru/blog/499678.php#comment8969912

Исходные данные: закрытия дня с 07.12.2005 по 16.10.2018 для S&P500 и индекса Мосбиржи

VAR00003, если VAR00004=0: центрированные и нормированные приращения логарифмов индекса Мосбиржи
VAR00003, если VAR00004=1: центрированные и нормированные приращения логарифмов индекса S&P500

Результат

Обещанный Манн-Уитни

Итого: вероятность ошибиться, утверждая, что эти распределения разные, больше 0,334.

И вывод: выборочные распределения приращений логарифмов дневных значений индексов Мосбиржи и S&P500, вероятней всего, совпадают  с точностью до среднего и дисперсии.

Книга Technical Analysis на русском

    • 16 октября 2018, 14:04
    • |
    • p1x3
  • Еще
Представляю вам супер ЭКСКЛЮЗИВ. На русском до сих пор не было! Наш трейдер Дмитрий перевел книгу про тех. анализ одного крутого американца, который торгует аж с 1991 года. Многие могли видеть эту книгу, но на русском её не было все это время.

Минимум воды, максимум рабочих ситуаций. Рекомендую к чтению! Реальная практика.

Cкачать в PDF тут Tekhnicheskiy_analiz_shenon.pdf
Книга Technical Analysis на русском




Старый гном в одном посте

Поступила информация, что население смартлаба за последние годы несколько обновилось, и кому-то может оказаться полезным узнать как можно просрать миллиарды на опционах, как можно на салфетках объяснить опционы гуманитарию или как написать робота, который с капиталом 3 млн р держал 15% объемов торгов в опционах RI. В общем иногда полезно перечитывать хорошо забытое старое (сейчас даже сам удивляюсь, как это меня хватило на все это буквосложение)



Гном. Или как трейдер обанкротил банк.

Глава первая и вторая

Глава третья и четвертая

Глава пятая и шестая


Гном 2. Возвращение.

Глава первая

Глава вторая и третья

Глава четвертая и пятая

( Читать дальше )

График выплат и погашений ОФЗ в наглядной форме

Недавно интересовались графиком выплат / погашений ОФЗ в наглядной форме. Например, это может понадобиться при построении облигационного портфеля с определенным графиком поступлений. Их есть у меня.

Для начала разберемся с погашениями:

График выплат и погашений ОФЗ в наглядной форме

Зеленым обозначены ОФЗ с фиксированным номиналом и купоном
Желтым — бумаги с переменным купоном
Оранжевым — облигации с индексируемым номиналом (ОФЗ-ИН)
Синим — с амортизируемым номиналом ОФЗ-АД

Небольшой нюанс, т.к., год заканчивается, то обновил таблицу уже сразу с расчетом будущее, т.е. трехлетки (по сроку погашения) это бумаги до конца 2022, а не до 2021 г. и т.д. 

Теперь определимся с купонами. Вот:

График выплат и погашений ОФЗ в наглядной форме

( Читать дальше )

Облигации: дюрация - объясняем с примерами

Дюрация от слова Duration

Очень надеюсь, что эта статья окажется максимально понятной и полезной для сообщества инвесторов, так как сам очень долго понимал смысл дюрации.

Первое, что вам нужно знать, слово дюрация — это адаптация на русский язык слова (duration — длительность). И отсюда же вытекает второй момент. Раз у нас дюрация — это на самом деле длительность, сразу становится логично, что измеряется данный показатель во временных единицах (обычно годы, могут быть дни).

Не смотрите Википедию

Мы все хотим, чтобы нам объясняли так, чтобы было понятно. Когда  заходишь на википедию и видишь формулу дюрации — совсем непонятно:

Облигации: дюрация - объясняем с примерами



Формула дюрации на википедии

Формулу выше можете не запоминать, важно здесь осознать только первую ее часть:

Облигации: дюрация - объясняем с примерами

( Читать дальше )

По традиции публикую презентацию доклада на конференции Смарт-лаба заранее

    • 03 октября 2018, 11:25
    • |
    • А. Г.
      Проверенный аккаунт
  • Еще
Желающие могут скачать по ссылке

drive.google.com/file/d/1vGjqf4geQ5VVLUqb-dGhF3B1j55AjacG/view

В этот раз ни одной формулы :)

PS. Прошу прощения, первый раз перепутал ссылку с гугл-диска.


Что делать если комп тормозит, актуально для трейдеров.

Решил записать видос, не про трейдинг, а про то, с чем мы сталкиваемся каждый день. Я уже более 10 лет занимаюсь it аутсорсингом, ну а так же в свободное от трейдинга время, помогаю с компами друзьям. И я понял, что в 90% случаев, я делаю одни и те-же действия, которые будут полезны любому трейдеру, так как без компа у нас ничего не получится. 


....все тэги
UPDONW
Новый дизайн