Избранное трейдера MrD
Друзья мои, хочу поздравить Сергея с завершением активной стадии написания коннектора для MOEX FixFast Twime Futures (срочная секция).
Наконец-то у нас есть скоростное подключение для торговли на ФОРТС! Без преувеличения, многие этого ждали!
Сергей, СПАСИБО!
Находятся они в проекте, вот здесь: https://github.com/AlexWan/OsEngine
Несколько статей о том, чем подключение к срочной секции отличается от спота, подключение к API из OsEngine и обзор кода. Будет выложено на следующей неделе.
У нас сейчас ещё будет несколько месяцев обкатывания проекта в боевых торгах. Т.ч. ещё какие-то проблемы обязательно будут исправлены. Плюс будет оптимизация проведена. На данный момент ускоряли только FixFastCurrency подключение. В общем, держите руку на пульсе.
import requests import pandas as pd import numpy as np import matplotlib.pyplot as plt
# URL для API MOEX, данные по ZCYC (zero coupon yield curve) url = "https://iss.moex.com/iss/engines/stock/zcyc/securities.json" # Запрос на получение данных response = requests.get(url) data = response.json() # Извлекаем данные из секции 'params' columns = data['params']['columns'] values = data['params']['data'] # Преобразуем в DataFrame df = pd.DataFrame(values, columns=columns) # Выбираем нужные столбцы: B1, B2, B3, T1, G1, ..., G9 df_selected = df[['tradedate', 'tradetime', 'B1', 'B2', 'B3', 'T1', 'G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9']] # Извлекаем параметры для функции GT из df_selected beta0 = df_selected['B1'].values[0] beta1 = df_selected['B2'].values[0] beta2 = df_selected['B3'].values[0] tau = df_selected['T1'].values[0] g_values = df_selected[['G1', 'G2', 'G3', 'G4', 'G5', 'G6', 'G7', 'G8', 'G9']].values[0].tolist()
В данной статье посмотрим робота, который реализован с использованием многопоточного подхода.
Смотрит стаканы поступающих с биржи бумаг, ожидая «Плиту». При этом смотрит то кол-во бумаг, которое Вы в него подключили, как скринер.
Добрый день, коллеги!
Этот пост написан в продолжение дискуссии, начатой
Открытое письмо к VictorGromov. Доколе?! (smart-lab.ru)
К сожалению, сам я в ней поучаствовать не смог, т.к. был мгновенно забанен за систематическое называние VictorGromov большим земляным червяком, не уважающим нас, смердов. Ну и правильно. Чем больше на СЛ будет таких активных и плодовитых авторов, как VictorGromov, тем больше годного контента мы с вами получим. Аминь!
Возьмем какой-нибудь длинный массив котировок. Например, XBTUSD.P (код tradingview.com), которым я давно и успешно торгую. В моменте у меня его аж 2437219 минутных баров. Поскольку биткойн на долгосроке ходит размашисто, возьмем логарифм от цены (не буду повторяться, почему всегда полезно исследовать логарифм от цены, но на коротком сроке это бесполезная модификация).
Пусть x(n) — это логарифм цены
Пусть d(n)=x(n)-x(n-1) — это приращение логарифма цены
В 99% вероятностных подходов к рынку базовой случайной величиной является не цена, а ее приращение (ну, или приращение ее логарифма). Опять же не буду повторяться, почему это удобнее — на этот счет есть 100500 публикаций.
В амортизируемых облигациях иногда можно наблюдать ценовые разрывы после частичного погашения номинала. Подобная “дивотсечка” недавно произошла, например, в бумагах Ульоб35002 (ISIN. RU000A101U61). 26 июня 2024 г. они торговались по цене около 87% от номинала, а на следующий день котировки упали до 84%
Для простой облигации снижение котируемой цены означает рост доходности на величину, обратно пропорциональную дюрации. Инвесторы, купившие такие бумаги на падении, могли бы извлечь дополнительный доход при условии, что будут держать их до погашения.
Однако у облигации “Ульоб35002” эффективная доходность в указанные дни почти не менялась и составляла примерно 18% годовых, а значит, разницу цен нельзя было использовать для получения финансовой выгоды. Это легко увидеть, если перейти к абсолютным цифрам. Перед выплатой купона и частичным погашением в размере 200 руб. облигация стоила около 870 руб (с учетом НКД — 903 руб), а сразу после — 670 руб, т.е. цена упала на величину амортизированной стоимости и выплаченного купона. Но почему тогда мы видим разрыв на графике?