Всем доброго здоровья!
Давненько не постил, но случилась тема. Допилил в Jatotrader анализ и визуализацию сделок участников ЛЧИ за 2015-2020 годы.Выглядит примерно так:
Из приятного:
1) В новой версии подгружаются графики не только по акциям, валютам и «фьючам», но и по всем опционам, торгующимся или торговавшимся ранее.
2) Учитываются начальные позиции участника, а не только сделки в течение Конкурса (правда, цена начальной позиции определяется по цене закрытия дня, предшествовавшему старту участника в Конкурсе)
3) Графики можно крутить «до бесконечности влево» и детализировать до 1 минуты.
Остальное как всегда — сделки участников в таблице сделок и на графике, «эквити» на графике, можно открыть любое количество графиков на одном экране.
Еще из приятного, кто осилит топик полностью, в конце «сиськи» — код на Питоне, как обычно несколько строчек для того, чтобы майнить из
БД Джато (в датафреймы Пандас) минутные графики любых инструментов: акции, фьючерсы, опционы, валюта — как архивные, так и актуальные.
Над чем работаю: плейер для воспроизведения торговли участника (с паузами) по всем тикерам одновременно, так чтобы можно было наблюдать изменение общего риска во времени. А еще, расчет прибыли не только в пунктах цены инструмента но и в рублях.
Ингредиенты: установленный терминал Jatotrader, версия FREE или круче, а также интернет. Подключаться к Квику и пр. не нужно.
После запуска Джато, нажмите в главном меню кнопку ЛЧИ (Бык с Медведем), затем выберите год Конкурса и дождитесь загрузки таблицы участников.
Для просмотра инструментов, которыми торговал участник, кликните в поле «Загрузить» в строке участника. После загрузки сделок, кликните на список инструментов и выберите из него нужный тикер. Дождитесь загрузки свечей. При первом обращении к графику свечи загрузятся с сайта moex.com в БД Jatotrader. При последующих обращениях к графику инструмента, будут подкачиваться только те данные, которых нет в БД.
Итак, после загрузки, на графике отобразятся сделки участника, «эквити» его торговли инструментом, а также график риска (объема открытой позиции во времени). Чтобы детализировать сделки по тикеру, нажмите в меню графика кнопку «Таблица заявок и сделок».
Правой кнопкой мыши на заголовках столбцов таблицы сделок добавьте столбец «Подсветка». Если в таблице сделок кликнуть в этом столбце мышью, то выбранная сделка будет найдена на графике и выделена. Отменить выделение — повторный клик.
Для поиска участника введите ник или его часть в поле поиска. Нажмите кнопку «Искать». Чтобы вернуться к полной таблице, в поле поиска оставьте пустую строку и нажмите «Искать».
Вся скачанная информация будет постоянно храниться на вашем компьютере в папке \Jatotrader\DB. Вы можете использовать
ее для тестирования стратегий и создания собственных алгоритмов торговли.
В качестве примера, приведу код на Питоне, который подгружает минутные данные из БД Джато в датафрейм и отображает их на графике, с двумя экспоненциальными средними.
import pandas as pd from datetime import datetime import matplotlib.pyplot as plt import os #Путь к БД Jatotrader path = 'C:\\Jatotrader\\DB\\' #С помощью этой функции можно посмотреть список тикеров в БД Jatotrader os.listdir(path) #возвращает список тикеров ['BRX0','BRN0','RIM0','RIZ0','RI112500BJ0A','SIM0','SRZ0'...] #Выбираем нужный тикер из списка ticker = 'RIZ0' #Читаем в датафрейм candles минутки из БД Jatotrader по заданному тикеру. В столбцах Дата, Время, Хай,Лоу, Оупен и Клоуз свечи candles=pd.read_csv(f'{path}{ticker}\\CANDLES\\data1.cnd', sep=' ', names = ['D', 'T', 'H', 'L', 'O', 'C', 'V']) #Объединяем столбцы даты 'D' и времени 'T' в один 'DT' и преобразуем в формат DateTime candles['DT'] = pd.to_datetime(candles['D'] + ' ' + candles['T']) #Сотрируем свечи по ДатеВремени, т.к. в БД они могут храниться в произвольном порядке. candles = candles.sort_values('DT').reset_index() #Ради интереса создадим 'ema500' и 'ema1500', применив ЕМА к цене закрытия (столбец 'C') candles['ema500'] = pd.Series.ewm(candles['C'], span=500).mean() candles['ema1500'] = pd.Series.ewm(candles['C'], span=1500).mean() #Рисуем итоговый график plt.style.use('seaborn-paper') candles.plot(y=['C', 'ema500', 'ema1500'], figsize=(25,20))
Жмем Ctrl+Enter на ячейке — вуаля!
ЗЫ: Возможные ошибки в Джато — пока не работает загрузка депозитарных расписок, например при загрузке графика LNTA, может возникнуть ошибка. А также, если возникает ошибка при загрузке графика акций, вероятно неправильно задан шаг цены акции. В новой сборке исправлю. Но сложность в том, что в архивах инструмент может быть с другим шагом цены. Можно исправить это вручную. Найдите в файле symbols.dat определение инструмента и в поле minimum-price-step задайте текущее значение шага цены.
Скачать Jatotrader можно здесь. Как получить ключ в этом видео. Как подключиться к Квику здесь. Если ругаются Касперы, Авасты и пр. антивиры не пугаться — в программе нет ничего вредного — только полезное. Прога сложная, и в ней есть заходы на сайты биржи (актуальные данные по ГО и инструментам, ЛЧИ), финама (экспорт данных), инвестингком (новости), а также на сайт разработчика (обновления, онлайн документация).
Подписаться на мой канал можно здесь в ютьюбе.
Учитесь у лучших как нужно делать и у худших (как не нужно, зачастую это даже полезнее...). Всем приятных выходных!
скачаю, спасибо
на первый взгляд всё как то сложно) много ссылок, что то платное, визуализатор сделок ЛЧИ бесплатен ?