Найти тему

Алиса, купи акции Яндекс

Я делаю голосовой помощник с открытым исходным кодом для торговли на бирже. За основу взял платформу Яндекс.Диалоги (Алиса) и Тинькофф Инвестиции Open API. У меня получилось купить и продать акции через Яндекс.Станцию голосом. Вот как это выглядит (смотри видео)

Платформа Диалогов предоставляет язык описания пользовательских запросов, чтобы из голосовой команды можно было извлечь намерение пользователя. Распознанные данные Диалоги присылают в обработчик. Одна из фундаментальных задач в том, чтобы научить Алису выделять названия компаний, торгующихся на бирже. Задача решается при помощи сущностей и сводится к тому, чтобы на специальном языке описать все возможные названия компаний, которые торгуются хотя бы на Московской бирже.

Платформа Диалогов предоставляет язык описания пользовательских запросов, чтобы из голосовой команды можно было извлечь намерение пользователя. Распознанные данные Диалоги присылают в обработчик. Одна из фундаментальных задач в том, чтобы научить Алису выделять названия компаний, торгующихся на бирже. Задача решается при помощи сущностей и сводится к тому, чтобы на специальном языке описать все возможные названия компаний, которые торгуются хотя бы на Московской бирже. Я начал эту работу, за прогрессом вы можете наблюдать на GitHub https://github.com/denismosolov/alice-entities-library/blob/master/entities/figi.entity, а первые результаты этой работы вы можете оценить по видео.

Пример, чтобы Алиса распознала ГДР Tinkoff Group, сейчас используется вот такое описание:

entity EFigi:
values:
BBG005DXJS36:
%exact
TCS
%lemma
тиньков(банк)?
тинькоф(банк)?
тинькофф(банк)?
ти си эс (груп)?

Эта сущность используется в грамматике, и когда кто-то говорит Алисе: «купи акции тинькофф», то платформа Диалогов понимает, что «Тинькофф» в речи пользователя — это описанная сущность EFigi, и передаёт обработчику FIGI (идентификатор ценной бумаги) BBG006L8G4H1. А внутри обработчика уже происходит взаимодействие с биржей по этому идентификатору через Тинькофф Инвестиции Open API.

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

Люди называют одни и те же компании по разному, например, кто-то говорит «Сбер», а кто-то «Сбербанк». На бирже торгуются как обычные акции Сбербанка, так и привилегированные, которые можно назвать «префами». Вероятно, существует ещё несколько популярных вариантов, о которых я даже не подозреваю, но вы, опытные инвесторы, знаете, и я буду рад, если поделитесь названиями компаний в комментариях. Например, недавно я прочитал на смартлабе, что «сиплый» означает индекс S&P 500.

Автор: Мосолов Денис

https://smart-lab.ru/blog/630849.php