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

по

Куда исчезла ликвидность? Визуализируем гигабайты биржевых данных стакана в браузере

Обычный трейдер смотрит на свечной график, но свеча — это уже тень прошлого, постфактум. Между тем настоящая динамика рождается в глубине торгового стакана — Limit Order Book, где борьба заявок определяет будущий импульс.

Проблема в том, что историю стакана почти нигде не увидеть: розничные терминалы для частных клиентов дают лишь текущую таблицу DOM ( Depth of Market ) и это статичный срез без прошлого.

Чтобы увидеть то, на что обычный трейдер не обращает внимание я собрал инструмент, который превращает исторические данные L2 Order Book (стакан заданной глубиной) и Trades Stream (обезличенные сделки) в тепловые карты и позволяет изучать эволюцию заявок на Московской бирже через браузер с Deep Zoom — плавно, как в Google Maps.

Куда исчезла ликвидность? Визуализируем гигабайты биржевых данных стакана в браузере

Знаете Bookmap?



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

Код для выгрузки исторических данных по облигациям с сайта Мосбиржи

    • 25 октября 2025, 13:41
    • |
    • Tenant
  • Еще
Код Python позволяет получать исторические данные по облигациям: цены, объемы, НКД. Нужно только ввести тикер или ISIN, а также указать диапазон дат. Полученные данные сохраняются в файл формата .csv

# Получение данных о ценах облигаций
import requests
import csv
from datetime import datetime
import time

def get_bond_data(bond_identifier, start_date, end_date):
    """Получение данных по облигации (ISIN, тикер или название)"""
    
    # Поиск облигации
    url = "https://iss.moex.com/iss/securities.json"
    params = {'q': bond_identifier}
    
    response = requests.get(url, params=params)
    data = response.json()
    
    # Ищем облигацию
    bond_info = None
    for security in data['securities']['data']:
        if (security[1] == bond_identifier or  # ISIN
            security[0] == bond_identifier or  # тикер
            security[2] == bond_identifier):   # название
            
            bond_info = {
                'ticker': security[0],
                'shortname': security[1],
                'fullname': security[2],
                'isin': security[1] if security[1].


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

Народный Python: строим универсальный шаблон для алгоритмической торговли на Московской бирже

В мире алгоритмической торговли доминируют крупные фонды с их колоссальными ресурсами. Но что, если мы, частные инвесторы и разработчики, можем создать собственный мощный и доступный инструмент? Что, если больше не придётся зависеть от проприетарных платформ или писать с нуля сложную инфраструктуру для тестирования каждой новой идеи?

Сегодня у нас есть Python и такие мощные библиотеки, как Backtrader. Однако голый фреймворк — это лишь половина дела. Чтобы он стал по‑настоящему народным инструментом, ему нужна удобная обвязка: готовая структура проекта, автоматический импорт стратегий, наглядные отчёты, тепловые карты для оптимизации и бесшовное подключение к API брокеров — не только российских, но надо начать с Мосбиржи.

Мы стремимся сделать инструмент таким же удобным, как TradingView. Простота в использовании и доступность всех функций для пользователей без глубокой технической экспертизы — мне кажется вот идеал. Чтобы каждый, кто заинтересован в алгоритмической торговле, мог без усилий внедрить свою стратегию, протестировать её и получить результаты, не проводя часы и дни за настройкой системы.



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

Хватит тестировать на мусоре! Python-скрипт для отбора ликвидных акций Мосбиржи под Backtrader через библиотеку Игоря Чечета

 Хватит тестировать на мусоре! Python-скрипт для отбора ликвидных акций Мосбиржи под Backtrader через библиотеку Игоря Чечета

Если вы задумывались о системной торговле, то, скорее всего, уже слышали о Python библиотеке Backtrader. Это гибкий фреймворк для тестирования торговых стратегий на исторических данных, который к тому же может быть подключён к автоторговле через API российского брокера. В нём можно реализовать практически любую логику, от простого пересечения скользящих средних до сложных многофакторных моделей.

➡️ Робот, который живёт в стене: мой опыт автоматизации торговли на Python

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

Ликвидность — это не про «красиво на графике», а про то, как на самом деле исполняются сделки, насколько проскальзывает цена и как часто ваши заявки останутся без исполнения. Здесь нам поможет Игорь Чечет — автор библиотек AlorPy, TinkoffPy и FinamPy, размещенных на GitHub, которые дают удобный способ подключиться к API этих трёх брокеров из Python. Эти инструменты и библиотека-обертка — фактически мост между Backtrader и живым рынком.



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

Робот, который живёт в стене: мой опыт автоматизации торговли на Python

Робот, который живёт в стене: мой опыт автоматизации торговли на Python

В предыдущих статьях я рассказывал, как пришёл к идее создания собственного торгового робота. Мотивация проста:

  • Автоматизация — алгоритм не спит, не нервничает и не занят своими делами.

  • Дисциплина — робот исключает эмоции, следуя правилам.

  • Тестирование — любую идею можно проверить на исторических данных, прежде чем рисковать деньгами.

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

Поскольку я нахожусь в активном поиске подходящего решения для автотрейдинга и уже опробовал несколько рабочих вариантов, то эта статья представляет мои размышления об этом механизме исполнения заявок. Ваша критика или поддержка идей приветствуется.

Почему я не хочу использовать QUIК и Windows?

По моему мнению QUIK архаичен, нестабилен для автоматизации и требует оконной среды. Он не предназначен для headless-серверов (это компьютер без монитора, клавиатуры, мыши). QUIK + LUA или внешнее ПО — это сложная, криво документированная и уязвимая связка.



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

DeepSeek + TSLab: как ИИ генерирует код для профессиональных трейдеров

Введение

В трейдинге каждая секунда может иметь значение. Но стандартные инструменты часто не позволяют работать с данными высокого разрешения. В этой статье я поделюсь опытом создания кастомного решения для TSLab, которое сохраняет 1-секундные свечи с расширенными метриками (открытый интерес, количество продавцов/покупателей, лента сделок, лучшие бид/аск и др.). Покажу, как забрать эти данные из TSLab, передать их в Python для ML – анализа и т.д.

Задача

Трейдеры часто сталкиваются с ограничениями стандартных платформ: нельзя сохранить сверхмалые таймфреймы, добавить кастомные метрики или быстро переложить данные в Python для ML.

**Цель проекта** — создать инструмент, который:

— Сохраняет 1-секундные свечи с расширенными данными (открытый интерес, лента сделок…).

— Автоматически генерирует CSV-файлы для анализа.

— Позволяет строить интерактивные графики и обучать ML-модели.

 

**Главный герой** — ИИ-ассистент DeepSeek, который ускорил разработку в несколько раз и решил ключевые технические проблемы.



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

Давайте-ка пощупаем "стратегов" автоследования

Давайте-ка пощупаем "стратегов" автоследования


Всем привет!

На нашем рынке давно и активно развивается институт автоследования. Любой популярный Вася может сделать свою стратегию, поставщик услуги поможет ему нагнать туда людей, но что в итоге получают эти люди? Да на поверхности мы видим какие то безумные цифры доходности в популярных стратегиях, но что на самом деле? Что РЕАЛЬНО зарабатывают люди которые на это подписываются?

На днях поковырял открытые данные по всем стратегиям автоследования в Тиньке, всего почти 1500 штук, на сайте ststat.ru/ и мне показалось что полученный результат достаточно красноречив.

Что я сделал:

1) Выгрузил все данные по стратегиям опубликованные на сайте на вторник 18 февраля. Upd: при ближайшем рассмотрении оказалось, что там есть сложности с актуальностью данных, к сожалению. Сайт вцелом обновляется регулярно, но почему то в разных стратегиях отдельные параметры, как следует из мелкого шрифта рядом, обновляются очень нерегулярно. Пришлось тут упрощать и усреднять. Волевым решением принимаем дату последнего обновления за 19 ноября 2024 года, тк за эту дату похоже было последнее обновление доходностей. Проверено руками на нескольких (не всех) стратегиях. Оставим эту сложность с качеством данных в качестве подачи тем кто захочет потом оправдаться, что у него дела идут намного лучше чем я тут насчитал )

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

5-6 идей для построения прибыльной торговой системы - Александр Резвяков

Если вы трейдер или спекулянт, рекомендую посмотреть видос с Александром Резвяковым с нашей конфы👍

Выложили на этой неделе.

Один из немногих, кто говорит оч правильные вещи


А если вам нужны идеи для прибыльных инвестиций, записывайтесь на нашу конференцию 1 марта в Москве:

https://bonds.smart-lab.ru/


Таблица для QUIK Спреды акций бесплатно

Представляю свою новую программу Утилита для QUIK «Супер таблица».

Утилита предназначена для создания различных таблиц в торговом терминале QUIK. Пользователь может самостоятельно получать различные значения таблиц QUIK, проводить расчёты и выводить результат в Супер таблицу (аналог MS EXCEL). В комплекте готовый пример «Спреды акций»:

Таблица для QUIK Спреды акций бесплатно

Как можно использовать спреды фьючерс-акция?

Зарабатываем процентную ставку (синтетическая облигация).

Находим наибольший годовой процент. Покупаем акции, продаём фьючерсы равного объёма. К экспирации разница нивелируется. Например, на момент написания «iСофтлайн» показывает хороший результат 26.11% годовых.



( Читать дальше )
  • обсудить на форуме:
  • QUIK

Код для построения графика КБД Мосбиржи

    • 08 октября 2024, 09:56
    • |
    • Tenant
  • Еще
0. Импортируем нужные библиотеки

import requests
import pandas as pd 
import numpy as np
import matplotlib.pyplot as plt


1. Извлекаем данные о расчетных параметрах КБД
Расчетные параметры на конкретную дату указаны внизу страницы
www.moex.com/ru/marketdata/indices/state/g-curve/
# 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() 



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

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