Заменить третий сценарий на поиск сигналов в волатильных акциях

This commit is contained in:
admin committed 2026-11-11 06:37:51 +00:00
1 parent 5c10747fdf
commit 040907ad6c
3 files changed
+35 -23

No files matched your search

+1 -1
View File
@@ -44,7 +44,7 @@ Invest Harness — платформа агентов для инвестиций
### Пять инвестиционных сценариев
На общем DSH harness создаются пять шаблонов: **«Мой первый портфель»** объясняет инструменты начинающему, **«Эксперты из Пульс»** сопоставляет подтверждённые мнения авторов, **«Сохранить деньги»** проверяет портфель к заданной дате, **«Капитал под цель»** рассчитывает план накопления, **«Исследовательская панель»** анализирует отчётность. Пользователь настраивает шаблон через JSON Schema Driven UI и выбирает локальный либо удалённый Runner. Финансовые инструменты реализуются плагинами; методика задаётся скиллами
На общем DSH harness создаются пять шаблонов: **«Мой первый портфель»** объясняет инструменты начинающему, **«Эксперты из Пульс»** сопоставляет подтверждённые мнения авторов, **«Поиск сигналов в волатильных акциях»** регулярно выявляет необычное ускорение роста, замедление роста и падение цены и сообщает пользователю, **«Капитал под цель»** рассчитывает план накопления, **«Исследовательская панель»** анализирует отчётность. Пользователь настраивает шаблон через JSON Schema Driven UI и выбирает локальный либо удалённый Runner. Финансовые инструменты реализуются плагинами; методика задаётся скиллами
[Сценарии с настройками, шагами, обработкой ошибок и критериями приёмки](scenarios.md). Они описывают демонстрационные шаблоны с учебным или read-only доступом; конкретные внешние интеграции требуют проверки. Внутренняя логика агента остаётся за границей ответственности платформы
+30 -18
View File
@@ -1,14 +1,14 @@
# Пять демонстрационных сценариев
Сценарии адаптированы из предоставленной аналитической работы «Finance Harness», версия 1.0 от 11.11.2026, раздел 3 (страницы 4–5), с учётом технической модели на странице 11. Это требования к демонстрации Invest Harness, а не описание готовых интеграций или подтверждённых продуктовых эффектов
Четыре сценария адаптированы из предоставленной аналитической работы «Finance Harness», версия 1.0 от 11.11.2026, раздел 3 (страницы 4–5), с учётом технической модели на странице 11. Третий сценарий заменён на поиск сигналов в волатильных акциях по продуктовому запросу. Это требования к демонстрации Invest Harness, а не описание готовых интеграций или подтверждённых продуктовых эффектов
В исследовании профили называются harness. В [терминах платформы](design.md) «Мой первый портфель», «Эксперты из Пульс», «Сохранить деньги», «Капитал под цель» и «Исследовательская панель» — пять **шаблонов агента** на общей DSH-базе: каждый закрепляет harness, плагины, скиллы, правила ответа и JSON Schema настроек. Отдельный движок для каждого сценария не нужен. Пользователь создаёт из шаблона свой экземпляр агента
В исследовании профили называются harness. В [терминах платформы](design.md) «Мой первый портфель», «Эксперты из Пульс», «Поиск сигналов в волатильных акциях», «Капитал под цель» и «Исследовательская панель» — пять **шаблонов агента** на общей DSH-базе: каждый закрепляет harness, плагины, скиллы, правила ответа и JSON Schema настроек. Отдельный движок для каждого сценария не нужен. Пользователь создаёт из шаблона свой экземпляр агента
| Шаблон | Запрос пользователя | Результат | Демонстрируемая возможность |
|---|---|---|---|
| Мой первый портфель | «Объясни, чем отличаются эти инструменты» | Понятное сравнение и учебный пример | Настройка глубины ответа через форму |
| Эксперты из Пульс | «Как менялась позиция выбранного автора?» | Хронология с подтверждающими источниками | Поиск по публикациям и цитирование |
| Сохранить деньги | «Деньги нужны через девять месяцев: где риски?» | Аудит портфеля и ликвидности | Read-only данные и регулярный обзор |
| Поиск сигналов в волатильных акциях | «Сообщи о необычном движении выбранных акций» | Сигнал с графиком и объяснением | Частый мониторинг и уведомления |
| Капитал под цель | «Как накопить 3 млн рублей за семь лет?» | Несколько расчётных планов | Калькулятор, параметры и график |
| Исследовательская панель | «Сравни банки по отчётности» | Проверяемые расчёты и аналитический отчёт | Инструменты, документы и свой Runner |
@@ -70,29 +70,41 @@
**Критерий приёмки.** Каждая цитата совпадает с фрагментом корпуса, автор и дата атрибутированы правильно. Тестовый конфликт показывает обе позиции; запрос без источника не порождает выдуманный ответ. Разрешения корпуса проверяются и в локальном, и в удалённом режиме
## 3. «Сохранить деньги»
## 3. «Поиск сигналов в волатильных акциях»
**Пользователь и цель.** Инвестору нужны деньги к определённой дате. Он хочет увидеть концентрацию, сроки и неопределённость ликвидности своего портфеля. Пример: «Мне нужны деньги через девять месяцев. Какие позиции требуют внимания?»
**Пользователь и цель.** Инвестор выбирает набор волатильных акций и хочет получать сообщения о необычном ускорении роста, замедлении роста или падении цены. Пример: «Проверяй эти акции каждые две минуты и сообщай о резких изменениях, для которых не нашлось объяснения в доступных источниках»
**Состав.** DSH harness; плагины чтения портфеля, метаданных облигаций и сценарного расчёта (`portfolio_read`, `bond_metadata`, `rate_scenario`, `issuer_risk`), при регулярном запуске — `recurring-tasks`; скилл аудита портфеля
**Состав.** DSH harness; плагины рыночных данных, расчёта сигналов, новостного поиска, графиков, `recurring-tasks` и доставки уведомлений; скилл объяснения рыночных отклонений. Расчёт выполняет детерминированный инструмент, а агент проверяет контекст и формулирует сообщение. Торговые поручения не отправляются
**Настройки формы.** `targetDate`, `requiredAmount`, `baseCurrency`, `maxDataAgeHours`, включение сценариев изменения ставки. Параметры стресс-сценария задаются явно. Расписание настраивается отдельной формой платформы с timezone, preview, overlap и misfire policy
**Настройки формы.** Список идентификаторов инструментов и бирж, интервал проверки (в первой версии 1–5 минут), размер свечи, окно сглаживания, окно оценки обычной волатильности, пороги скорости и ускорения, минимальная ликвидность/объём, максимальный возраст данных, время подавления повторов и выбранные типы сигналов. Пользователь задаёт режим уведомлений: обо всех обнаруженных отклонениях либо только об отклонениях без найденного объяснения. Источники новостей и канал доставки подключаются с отдельными разрешениями; секреты в форму не попадают
**Как определяется сигнал.** Используются завершённые свечи одинаковой длительности. Расчётный плагин получает сглаженный логарифм цены x(t), оценивает скорость v(t) = [x(t) − x(t−Δt)] / Δt и ускорение a(t) = [v(t) − v(t−Δt)] / Δt. Метод сглаживания, единицы времени, пороги и версия алгоритма закреплены в конфигурации. Сглаживание и сравнение используют только данные, доступные к моменту оценки, без будущих свечей
- Ускорение роста: скорость положительна, ускорение положительно и превышает выбранный порог необычности
- Замедление роста: скорость ещё положительна, ускорение отрицательно и по модулю превышает порог; это не утверждение, что цена уже падает
- Падение: скорость отрицательна и её модуль превышает порог; отрицательное ускорение дополнительно отмечает усиление падения
Пороги сравниваются с прошлым поведением той же бумаги на сопоставимом интервале, а не с одним абсолютным значением для всех акций. Алгоритм и значения порогов проверяются на историческом воспроизведении до включения уведомлений; документ не задаёт универсально прибыльную торговую стратегию
**Ход сценария.**
1. Пользователь выбирает «Сохранить деньги» и загружает снимок портфеля либо подключает доступный read-only источник
2. Задаёт дату потребности в деньгах и сумму; платформа фиксирует конфигурацию агента
3. Плагин нормализует позиции, валюты и дату оценки, объединяет экспозиции одного эмитента
4. Инструменты рассчитывают концентрацию и заданные сценарии; агент объясняет результаты с указанием недостающих данных
5. Пользователь сохраняет отчёт. При необходимости включает еженедельный запуск и просматривает следующие срабатывания перед сохранением
1. Пользователь выбирает акции, периодичность, параметры чувствительности и канал уведомлений, сохраняет ревизию и включает расписание
2. Запуск проверяет торговую сессию, свежесть и полноту свечей, достаточность истории и ликвидность, затем рассчитывает скорость, ускорение и отклонения
3. Для кандидатов плагин проверяет корпоративные события, доступные новости, движение рынка и сектора; сплит или изменение базы цены не выдаются за обычный рыночный скачок
4. Агент формирует объяснение со ссылками либо помечает, что объяснение не найдено в проверенных источниках. Недоступный источник обозначается отдельно: он не подтверждает отсутствие новостей
5. Сигнал сохраняется, проверяется подавление повторов и создаётся задание доставки в разрешённый канал. Пользователь получает время, бумагу, тип отклонения, значения показателей, график или ссылку на него и статус проверки объяснения
**Результат.** Сводка портфеля, концентрация по эмитентам и классам, сведения о сроках и ликвидности, сценарии и перечень пробелов. Для повторного обзора можно явно передать предыдущий результат; вывод об изменениях содержит обе даты оценки
**Результат.** Карточка сигнала с датой и часовым поясом, временем последней свечи, источником котировок, интервалом расчёта, порогом и измеренным отклонением. При найденной новости показывается возможная связь, а не доказанная причина. Слова «объяснение не найдено» не означают, что движение объективно необоснованно, и не являются командой купить или продать
**Если источник устарел или недоступен.** Отчёт обозначает возраст снимка; при превышении установленного порога задача не выдаёт его за актуальный обзор. Отзыв connection останавливает расписание с причиной. Низкая ликвидность не определяется только сроком погашения
**Если данные непригодны.** При пропусках, устаревших котировках, недостаточной истории, остановке торгов или неподтверждённой корректировке цены расчёт по бумаге пропускается с причиной. Недоступность новостей даёт статус «объяснение не проверено»; в режиме «только без найденного объяснения» такой сигнал не отправляется как необъяснённый. Техническая ошибка видна в истории запусков
**Регулярная работа.** Еженедельный запуск получает свежий разрешённый снимок портфеля, повторяет расчёты и сравнивает результат с последним успешным отчётом. В отчёте фиксируются обе даты оценки, изменившиеся позиции и пробелы данных. Если подключён только загруженный файл, агент анализирует его с исходной датой и не обещает обновление портфеля. Обнаруженные изменения отображаются в результате; самостоятельная продажа или покупка не выполняется
**Регулярная работа.** Расписание запускает проверку каждые 1–5 минут; плагин учитывает календарь и сессию конкретной биржи, вне сессии возвращает статус без сигнала. Для этого сценария overlapPolicy=skip и misfirePolicy=skip: после простоя проверяется ближайшее новое срабатывание, просроченные торговые сигналы не рассылаются. Субминутный мониторинг потребует отдельного потокового режима и не обещается текущим cron API
**Критерий приёмки.** Итоги на подготовленном портфеле совпадают с эталонными расчётами, отсутствующие сведения видимы. Повторная доставка одного occurrence не создаёт второй Run. Локальное расписание работает только при запущенном daemon; удалённое выполняется на выбранном Runner
Состояние мониторинга хранит последнюю обработанную свечу и активное отклонение отдельно для tenant, агента, инструмента и версии алгоритма. Пока одно отклонение продолжается, новые проверки не создают одинаковые уведомления. Повтор разрешён после возврата показателя в норму и нового пересечения порога либо при явно настроенном усилении сигнала; cooldown ограничивает частоту. Перезапуск Runner не сбрасывает это состояние
Сигнал и запись на доставку фиксируются атомарно в хранилище плагина. Доставка повторяется отдельно от расчёта с тем же notificationId и ограниченным сроком актуальности; статус доставки виден пользователю. Если канал не поддерживает идемпотентность, неоднозначный ответ отмечается как неизвестный результат доставки, без обещания отсутствия дублей. Перед отправкой повторно проверяются разрешение канала и возраст сигнала
**Критерий приёмки.** Историческое воспроизведение проверяет раздельное обнаружение трёх типов движения, отсутствие использования будущих данных и подавление повторов. Пропуск свечи, сплит, закрытая сессия и устаревшие котировки не создают ложный сигнал в подготовленных тестах. Повтор одного запуска не создаёт второе задание доставки, а сбой доставки не запускает повторный анализ. Качество сигналов и частота ложных срабатываний измеряются отдельно; успешный Run не доказывает полезность сигнала для торговли
## 4. «Капитал под цель»
@@ -148,9 +160,9 @@
Каждое срабатывание создаёт отдельный Run с новым входным снимком либо явно указанным режимом получения свежих данных. После создания ExecutionSpec не меняется. Данные, полученные внутри Run, сохраняются как артефакты с датами и источниками. Сравнение с историей использует явно разрешённую ссылку на предыдущий успешный результат, а не неограниченную общую память агентов
Для мониторинга исходный вариант — overlapPolicy=skip и misfirePolicy=coalesce: занятое расписание пропускает срабатывание, после простоя выполняется максимум один пропущенный запуск. Точная семантика задана в [API расписаний](api/runs-api.md). Плагин хранит состояние мониторинга в пределах tenant и экземпляра агента; повтор не должен дважды продвигать отметку обработки. Это требование к реализации финансовых плагинов, а не новая гарантия диспетчера
Для периодических обзоров исходный вариант — overlapPolicy=skip и misfirePolicy=coalesce: занятое расписание пропускает срабатывание, после простоя выполняется максимум один пропущенный запуск. Точная семантика задана в [API расписаний](api/runs-api.md). Поиск краткоживущих сигналов использует misfirePolicy=skip, как указано в третьем сценарии. Плагин хранит состояние мониторинга в пределах tenant и экземпляра агента; повтор не должен дважды продвигать отметку обработки. Это требование к реализации финансовых плагинов, а не новая гарантия диспетчера
Результат доступен в истории запусков. Уведомления во внешние каналы потребуют отдельного плагина и разрешения; наличие расписания само по себе не означает отправку сообщений. Если данные недоступны, отчёт показывает проблему, а отзыв connection приостанавливает расписание согласно общему контракту
Результат доступен в истории запусков. Для третьего сценария плагин уведомлений и разрешение канала обязательны до включения доставки; для остальных уведомления опциональны. Наличие расписания само по себе не означает отправку сообщений. Если данные недоступны, отчёт показывает проблему, а отзыв connection приостанавливает расписание согласно общему контракту
## Связь с реализацией платформы