Блог им. varna_boot

Мой софт для торговли облигациями

Пообещал совсем недавно описать свои утилиты для торговли облигациями. Пообещать то легко было. Писал я их почти год на C#, не торопясь. Если писать подробно, вникая в каждый нюанс и давая свои комментарии по поводу АД, то получится интересно только для программистов. Стану писать коротко – вообще неинтересно станет. Как смогу, постараюсь найти «золотую середину».
 
— Сбор данных про новые облигации и изменение рейтингов -
Раз в неделю утилита собирает с сайта ММВБ информацию о новых выпусках облигаций, заносит в базу данных основные параметры: название, регистрационный номер, номинал, гашение, оферта, купоны + еще около 40 значений. По новым бумагам потом через терминал Альфа – Директа получаю сведения о тиккере, истории торгов (записываю все тики в базу данных).
Отдельный алгоритм проверяет изменения рейтингов или добавление новых для бумаг, допущенных для торговли.
Удобно, не нужно мониторить интернет, ища новые выпуски или сверяя рейтинги. Весь сбор информации занимает примерно 1 час. Раньше это занимало у меня почти все выходные.

 
— Запись тиков по облигациям –
На отдельное облако амазона поставил небольшую, но полезную утилиту, записывающую все движения цен на облигации на ММВБ. Биды, аски, количество предложения, объем сделок… В конце каждого дня тики выгружаются в отдельный файл, происходит запись в SQL. Так что теперь располагаю не только официальной историей, но и более подробной информацией о торгах.
Программа полностью автономная. На облако почти не захожу. Только с утра получаю сообщение, что очередной пакет с информацией о торгах доставлен в базу данных.
 
— Сводная таблица по облигациям -
Таблица она и есть таблица. Название облигации, тикер, цена в процентах, из нее высчитывается доходность к оферте и гашению, дюрация, рейтинг, экстремумы цены (верхний и нижний), границы Болинжера, доходность по ним. В общем, что нужно для принятия торговых решений.
Текущие цены могут обновляться комплексно и по мере поступления новой цены. Пересчет доходностей происходит автоматически.
Второй раздел таблицы – это информация о находящихся в портфеле облигациях. Дата покупки, цена, расходы на покупку… рассчитывается текущая на рынке цена и конечная доходность бумаги, если закрыть сделку в этот момент по этой цене. Удобно, видишь что и как продать. Приятно, когда у тебя в портфеле доходности на верхних строках 20-40% годовых. Но это получилось не сразу, приходилось работать над стратегией, платить рынку за ошибки в расчетах и программные баги.
Эта таблица высчитывает и с одобрения оператора совершает покупку в соответствии с утвержденной стратегией бумаг, проводит арбитражные операции, расставляет приказы на продажу.
В ней много полезных дополнений. Например, ведет реестр сделок, рассчитывает доходность каждой закрытой сделки, «советует» предъявить бумаги к оферте, мониторит g-кривую, досчитывает неопределенные купоны, рассчитывает сдвиг кривой, обобщает информацию по портфелю (дюрация, доходность по погашению, к распродаже… все перечислять не буду, тем более некоторые индикаторы я сделал, но не пользуюсь ими вообще).
 
— Тестер стратегий -
Помните, ранее писал, что есть утилита, которая «пишет» торги? Так вот, она абсолютно бесполезна без тестера. По тиках моделируем торги и смотрим как ведет себя алгоритм на прошлом рынке. Как быстро он покупает, как часто и качественно он меняет бумаги. Кроме того, тестер помог найти некоторые багги в самом коде. Алгоритм поведения меняется в самом коде программы, потом эти изменения тестируются на истории, потом запускается в торговлю. Все как написано во всех учебниках по трейдингу.
В принципе, он повторяет во многом предыдущую утилиту, названную мною «Сводная таблица по облигациям», но работает в 500 раз быстрее (за счет оптимизации алгоритмов) и имеет еще одну функцию – может торговать в онлайне самостоятельно. Это последняя версия, поэтому там все лишнее убрано, оптимизировано, предыдущие ошибки ликвидированы на корню.
 
 
 
Обещал писать про проблемы. Теперь не хочу. Решил поступить по – другому. По мере появления проблемы буду обсуждать ее на местных ветках и потом писать способы ее решения. Занимаюсь кодом редко, но надеюсь 1 – 3 статьи в месяц набросать.
    ★7
    23 комментария
    Основные объемы по облигам на внебирже.
    avatar
    Похвастайтесь результатом.
    Или намекните хоть.
    Иван Правдин, посмотрите прошлую тему, там часть в самой статье, часть в комментах
    avatar
    «На отдельное облако амазона поставил небольшую» — облако оплачивается по тарифу, в котором основа — оплата за процессорное время?

    ВО сколько обходится в месяц? В среднем?
    На выходные выключаете?
    Какая операционка?
    Можете стартовый линк дать — где начинается процедура выбора и оформления облака.

    Были отказы в работе облака? простои?
    Большое спасибо.
    avatar
    gib, обходится в 50-60 центов в месяц, стоит винда (есть вообще бесплатные тарифы), списывают с карты. за год косяков в работе не было. была проблема — вис на альфадиректе. решил. проблема была в АД.
    на выходные не отключаю. на этом ресурсе стоит тариф t1.micro — мне хватает.
    console.aws.amazon.com
    avatar
    varna_boot, спасибо за обстоятельный ответ.
    но нет ли ошибки в нем.

    реально 50-60 ЦЕНТОВ?
    avatar
    gib, реально. бывает и дешевле.
    там просто почитайте внимательно правила списывания.
    по памяти: бесплатно 750 часов работы в месяц, сколько то ГБ на диске (то ли 2, то ли 10) и есть порог бесплатной нагрузки на процессор.
    для серьезно работы эта машина не пойдет. я когда делаю большие расчеты, беру машину мощнее. расчеты занимают 2-3 часа и стоит примерно 3-5 долларов.
    деньги списывают с карты в конце месяца (только не знаю, пройдет ли номер с российскими картами).
    вообще, амазон мне понравился больше остальных.
    avatar
    varna_boot, 50-60 центов получается идет для машины, которая просто собирает тиковый поток данных по облигациям и записывает в файл.

    Никаких расчетов при этом практически не производится?
    avatar
    varna_boot, и картой какого государства (если не секрет) вы расплачиваетесь?
    avatar
    gib, а, написал вопрос, а потом понял, что скорее всего — Болгария?
    avatar
    gib,
    да, машина выделена специально под сбор данных. для обмена использую дропбокс
    да, живу в Болгарии, Варна
    avatar
    Понял. Спасибо еще раз.

    Очень полезно.
    avatar
    gib, рад, если помог. успехов.
    avatar
    voronnorov, тут ключевое слово «выбираешь».

    попробуйте выбрать самую привлекательную по доходности бумагу исходя из текущих предложений в стаканах.

    сколько времени Вы будете по этому калькулятору считать?

    как быстро среагируете на привлекательное предложение?

    и как Вы будете по этой ссылке считать обратную цену продажи бумаги и еще выставлять около 200 приказов в день на продажу?
    avatar
    voronnorov, ну это больше не скальпинг, а некий HFT для бондов
    для объема частника более чем, но не для пром масштаба
    А есть ли смысл все это городить при доходности в 11.5?
    сравнимо со ставками по застрахованным вкаладам
    avatar
    Только не бейте " чайника ", неправедными путями заработалнаворовал несколько денег ) ничего не смыслю в фондовом рынке, но ОЧЕНЬ хочу научиться на нем работать, интересуют ТОЛЬКО облигации ( наименее рискованное ), врубился в общий смысл, осваиваю квик по вебинарам на ютюбе, вопрос: правильно ли мыслю и в верном ли направлении иду, можно ли обратиться к Вам за помощью когда будет невмоготу? Спасибо.
    Привет. Подписываюсь по вышеуказанным постом. Такой же чайник!!
    Программу автор позволит сказать?
    здравствуйте

    теги блога varna_boot

    ....все тэги



    UPDONW
    Новый дизайн