Глава 197: Гибридные квантово-классические вычисления для трейдинга
1. Введение
Перспективы квантовых вычислений для финансовых приложений вызвали огромный интерес, однако текущая эра шумных квантовых устройств промежуточного масштаба (NISQ) ставит фундаментальную проблему: автономные квантовые компьютеры слишком подвержены ошибкам и слишком ограничены в количестве кубитов, чтобы самостоятельно решать реальные торговые задачи. Гибридная квантово-классическая парадигма решает это ограничение напрямую, объединяя сильные стороны обеих вычислительных моделей в единый практический конвейер.
В гибридной квантово-классической системе классический компьютер выполняет задачи, в которых он преуспевает — загрузку данных, предобработку, управление циклом оптимизации и принятие окончательных решений — в то время как квантовый процессор берёт на себя специфические подзадачи, где квантовая механика предлагает потенциальное преимущество: исследование экспоненциально больших пространств признаков, сэмплирование из сложных распределений или выполнение определённых операций линейной алгебры более эффективно. Классический компьютер оркестрирует рабочий процесс, делегирует целевые вычисления квантовому устройству, собирает результаты и интегрирует их в более широкую структуру машинного обучения или оптимизации.
Для трейдинга эта парадигма особенно привлекательна, поскольку финансовые рынки генерируют огромные объёмы классических данных, которые необходимо очистить, нормализовать и преобразовать в признаки, прежде чем любая модель — квантовая или классическая — сможет их обработать. В то же время комбинаторная сложность оптимизации портфеля, многомерные корреляции между активами и нелинейная динамика ценовых движений — это именно те задачи, где квантовые подпрограммы могут дать преимущество. Рассматривая квантовый процессор как специализированный ускоритель в классическом конвейере, гибридные подходы могут приносить практическую пользу уже сегодня, а не ожидая отказоустойчивых квантовых компьютеров, до создания которых могут пройти годы.
В этой главе исследуются архитектура, математика и реализация гибридных квантово-классических систем для трейдинга. Мы строим полный конвейер на Rust, который получает рыночные данные в реальном времени с Bybit, выполняет классическую генерацию признаков, пропускает признаки через параметризованную квантовую схему для преобразования и использует классический слой постобработки для генерации торговых сигналов. Параметры квантовой схемы оптимизируются с помощью алгоритма стохастической аппроксимации с одновременным возмущением (SPSA) — безградиентного оптимизатора, хорошо подходящего для шумных ландшафтов, характерных для квантовых вычислений.
2. Архитектура
Гибридная квантово-классическая архитектура следует трёхэтапному конвейерному паттерну, который чётко разделяет ответственность между классическими и квантовыми компонентами.
2.1 Классическая предобработка
Первый этап работает полностью на классическом оборудовании. Сырые рыночные данные — свечи OHLCV, снимки стакана заявок, потоки сделок — загружаются и преобразуются в компактный вектор признаков, подходящий для квантовой обработки. Этот этап включает:
- Нормализация данных: Масштабирование признаков в диапазон [0, pi] или [-pi, pi] для углового кодирования в квантовых вентилях
- Снижение размерности: Сжатие многомерных пространств признаков до соответствия доступному количеству кубитов. Можно использовать PCA, автоэнкодеры или простой отбор признаков
- Генерация признаков: Вычисление технических индикаторов (RSI, MACD, полосы Боллинджера), доходностей, мер волатильности и кросс-активных корреляций
- Окна: Организация данных временных рядов в окна фиксированной длины для последовательной обработки
Выход этого этапа — вектор вещественных чисел с размерностью, соответствующей входной ёмкости квантовой схемы (количество кубитов, умноженное на глубину кодирования).
2.2 Слой квантовой схемы
Второй этап выполняется на квантовом процессоре (или его классическом симуляторе). Параметризованная квантовая схема — также называемая вариационным анзацем — преобразует классический вектор признаков в квантовое состояние, манипулирует этим состоянием через обучаемые вентили и выдаёт результаты измерений. Схема имеет три подкомпонента:
- Кодирование данных: Классические признаки кодируются в квантовое состояние с помощью вращательных вентилей (RX, RY, RZ). Каждое значение признака становится углом вращательного вентиля, применяемого к одному кубиту. Это иногда называют угловым кодированием или амплитудным кодированием в зависимости от стратегии
- Вариационные слои: Параметризованные вентили (вращения и запутывающие операции типа CNOT) создают запутанность между кубитами и вводят обучаемые параметры. Несколько слоёв чередующихся вращений и запутывающих вентилей увеличивают выразительность схемы
- Измерение: Все кубиты измеряются в вычислительном базисе. Результаты измерений собираются за несколько прогонов для оценки математических ожиданий
Квантовая схема действует как нелинейный преобразователь признаков. Запутывая кубиты, кодирующие различные рыночные признаки, схема может неявно вычислять корреляции и взаимодействия высших порядков, которые потребовали бы экспоненциально много членов при классическом полиномиальном расширении признаков.
2.3 Классическая постобработка
Третий этап берёт результаты квантовых измерений — обычно математические ожидания операторов Паули-Z на каждом кубите — и подаёт их в классическую модель для финального предсказания. Это может быть как простой линейный классификатор, так и сложная нейронная сеть. Классический постпроцессор:
- Интерпретирует статистику измерений как преобразованные признаки
- Применяет обучаемый линейный или нелинейный слой для генерации торговых сигналов
- Вычисляет функцию потерь (например, перекрёстную энтропию для предсказания направления)
- Передаёт градиенты или значения потерь обратно оптимизатору
2.4 Цикл оптимизации
Оптимизатор находится за пределами трёхэтапного конвейера и итеративно настраивает обучаемые параметры как в квантовой схеме, так и в классическом слое постобработки. Для квантовых параметров предпочтительны безградиентные оптимизаторы, такие как COBYLA или SPSA, поскольку квантовые градиенты дорого вычислять (требуется правило сдвига параметров) и они по своей природе шумные. Цикл оптимизации повторяется до сходимости или исчерпания вычислительного бюджета.
+------------------+ | Классическая | Сырые данные ---->| Предобработка |------+ +------------------+ | v +------------------+ | | Квантовая |<-----+ | Схема | +------------------+ | v +------------------+ | Классическая | | Постобработка |----> Предсказание +------------------+ | v +------------------+ | Оптимизатор |----> Обновление параметров | (SPSA/COBYLA) | +------------------+3. Математические основы
3.1 Вариационные квантовые схемы
Вариационная квантовая схема (VQC) параметризована вектором theta из R^p, где p — количество обучаемых углов вращения. Схема реализует унитарную операцию U(theta) над n-кубитной системой. Для входных признаков x из R^n, закодированных через карту признаков S(x), квантовое состояние равно:
|psi(x, theta)> = U(theta) S(x) |0>^nКарта признаков S(x) обычно использует кодирование произведением вращений:
S(x) = tensor_product_{i=1}^{n} RY(x_i)где RY(alpha) = [[cos(alpha/2), -sin(alpha/2)], [sin(alpha/2), cos(alpha/2)]].
Вариационный анзац U(theta) состоит из L слоёв, каждый из которых содержит однокубитные вращения и двухкубитные запутывающие вентили:
U(theta) = product_{l=1}^{L} W_l(theta_l) V_lгде W_l содержит параметризованные вращения RY и RZ, а V_l содержит вентили CNOT в лестничной или полносвязной конфигурации.
3.2 Функция стоимости и математические ожидания
Выход схемы получается путём измерения математических ожиданий наблюдаемых. Для измерения Паули-Z на кубите i:
f_i(x, theta) = <psi(x, theta)| Z_i |psi(x, theta)>Эти математические ожидания, ограниченные интервалом [-1, 1], служат преобразованными признаками. Финальное предсказание:
y_hat = sigma(w^T f(x, theta) + b)где sigma — сигмоидная функция, w и b — классические параметры, а f — вектор математических ожиданий.
Функция стоимости для бинарной классификации (например, предсказания направления цены) — бинарная перекрёстная энтропия:
L(theta, w, b) = -1/N sum_{i=1}^{N} [y_i log(y_hat_i) + (1 - y_i) log(1 - y_hat_i)]3.3 Оптимизатор SPSA
Алгоритм стохастической аппроксимации с одновременным возмущением (SPSA) оценивает градиент, используя всего два вычисления функции за итерацию, независимо от числа параметров. Это делает его идеальным для квантовых схем, где каждое вычисление функции требует многократного запуска схемы.
На итерации k SPSA:
- Генерирует случайный вектор возмущения Delta_k, где каждая компонента равна +1 или -1 с равной вероятностью
- Вычисляет стоимость при theta_k + c_k * Delta_k и theta_k - c_k * Delta_k
- Оценивает градиент как:
g_k = (L(theta_k + c_k * Delta_k) - L(theta_k - c_k * Delta_k)) / (2 * c_k) * Delta_k^{-1}- Обновляет параметры: theta_{k+1} = theta_k - a_k * g_k
Последовательности a_k = a / (k + A)^alpha и c_k = c / k^gamma выбираются для выполнения условий сходимости. Типичные значения: alpha = 0.602, gamma = 0.101.
3.4 Бесплодные плато
Критической проблемой вариационных квантовых схем является феномен бесплодных плато: с ростом числа кубитов градиент функции стоимости убывает экспоненциально. Для случайной параметризованной схемы на n кубитах:
Var[partial L / partial theta_i] in O(1 / 2^n)Это означает, что для больших схем оптимизатор видит по существу плоский ландшафт и не может найти направление спуска. Стратегии смягчения включают:
- Мелкие схемы: Ограничение глубины до O(log n) слоёв
- Локальные функции стоимости: Использование функций стоимости, зависящих от наблюдаемых с малым числом кубитов, а не от глобальных свойств
- Структурированные анзацы: Использование архитектур схем, вдохновлённых задачей, а не случайных
- Инициализация параметров: Старт с параметров, производящих состояния, близкие к решению
- Послойное обучение: Обучение одного слоя за раз перед обучением полной схемы
Для торговых приложений с 4-8 кубитами бесплодные плато пока не являются серьёзной проблемой, но осведомлённость об этом явлении важна для масштабирования.
4. Торговые приложения
4.1 Квантово-усиленное извлечение признаков
Наиболее практичное непосредственное применение — использование квантовой схемы как нелинейного преобразователя признаков. Классические признаки (доходности, волатильность, RSI) кодируются в квантовое состояние, обрабатываются через запутывающие вентили и измеряются. Результаты измерений фиксируют корреляции и нелинейности, которые классическая линейная модель пропустила бы.
Этот подход работает, потому что n-кубитная схема с L слоями запутывающих вентилей может неявно представлять функции в пространстве признаков размерности до 2^n, что значительно превышает возможности классического полиномиального расширения признаков при том же числе параметров.
В трейдинге это ценно для:
- Обнаружения неочевидных корреляций между техническими индикаторами
- Улавливания смены режимов через паттерны квантовой интерференции
- Создания компактных, выразительных представлений признаков из многомерных рыночных данных
4.2 Квантовые слои в нейронных сетях
Квантовая схема может заменить один или несколько слоёв в классической нейронной сети. Результирующая «одетая квантовая схема» получает преимущества от выразительной мощности обеих парадигм:
- Классические слои обрабатывают начальное извлечение признаков и финальную классификацию
- Квантовый слой выполняет преобразование в экспоненциально большом гильбертовом пространстве
- Обратное распространение через классические слои стандартно; квантовые параметры используют SPSA или правило сдвига параметров
Этот паттерн особенно подходит для сценариев, где набор данных мал (квантовые схемы хорошо обобщают с малым числом параметров) или где подозреваются специфические нелинейные зависимости.
4.3 Гибридная оптимизация портфеля
Оптимизация портфеля — нахождение весов активов, максимизирующих доходность при заданном уровне риска — может быть сформулирована как задача квадратичной бинарной оптимизации без ограничений (QUBO). Гибридный подход:
- Классическая предобработка: Оценка ковариационных матриц, ожидаемых доходностей и ограничений на исторических данных
- Квантовая подпрограмма: Использование вариационного квантового солвера собственных значений (VQE) или QAOA для нахождения приближённых решений QUBO
- Классическая постобработка: Округление и уточнение квантового решения, применение реальных ограничений (транзакционные издержки, лимиты позиций) и исполнение сделок
Для небольших портфелей (до ~20 активов на текущем оборудовании) это может исследовать пространство решений более эффективно, чем классические эвристики.
5. Паттерны проектирования
5.1 Когда использовать квантовые, а когда классические компоненты
Используйте квантовые компоненты, когда:
- Задача имеет комбинаторную структуру (выбор портфеля, маршрутизация ордеров)
- Нелинейные взаимодействия признаков важны, но число признаков соответствует количеству кубитов
- Набор данных достаточно мал, чтобы преимущество квантового обобщения имело значение
- Необходимо сэмплирование из сложных вероятностных распределений
Оставайтесь на классических вычислениях, когда:
- Объём данных велик и требует эффективной пакетной обработки
- Пространство признаков низкоразмерно и хорошо изучено
- Требования к задержке ниже времени выполнения квантовой схемы
- Задача хорошо решается существующими классическими методами
5.2 Стратегии кодирования данных
Угловое кодирование отображает каждый признак в один угол вращательного вентиля. Один кубит на признак. Простое и эффективное для NISQ-устройств.
Амплитудное кодирование отображает 2^n признаков в амплитуды n кубитов. Более компактное, но требует сложных схем подготовки состояния.
Базисное кодирование отображает бинарные признаки в состояния вычислительного базиса. Эффективно для дискретных переменных.
Для трейдинга рекомендуется начинать с углового кодирования, потому что:
- Признаки естественно вещественнозначные (цены, доходности, индикаторы)
- Количество релевантных признаков (4-8) соответствует доступному количеству кубитов
- Схемы подготовки состояния неглубокие, что снижает шум
5.3 Интерпретация измерений
Квантовые измерения дают вероятностные результаты. Для получения надёжных математических ожиданий схему необходимо запускать много раз (прогонов). Количество прогонов определяет точность:
- 100 прогонов: грубые оценки, быстрая итерация при разработке
- 1000 прогонов: разумная точность для большинства торговых приложений
- 10000 прогонов: высокая точность, но медленно на реальном квантовом оборудовании
При симуляции точные математические ожидания могут быть вычислены без сэмплирования, что является подходом, используемым в нашей реализации на Rust.
6. Пошаговый разбор реализации
Наша реализация на Rust предоставляет полный гибридный квантово-классический конвейер для трейдинга. Ключевые компоненты:
6.1 Симуляция квантовой схемы
Мы симулируем параметризованную квантовую схему, используя представление вектора состояния. Каждый кубит представлен 2-элементным комплексным вектором, а многокубитные состояния формируются через тензорные произведения. Схема применяет:
- Кодирующие вентили RY: Каждый входной признак кодируется как угол Y-вращения на одном кубите
- Вариационные слои: Параметризованные вращения RY, за которыми следуют запутывающие вентили CNOT
- Измерение: Математические ожидания Паули-Z на каждом кубите вычисляются аналитически из вектора состояния
Структура QuantumLayer управляет параметрами схемы и предоставляет метод forward, который принимает классические признаки и возвращает математические ожидания.
6.2 Классические слои
ClassicalPreprocessor нормализует входные признаки в диапазон [0, pi], используя min-max масштабирование, подходящее для углового кодирования. ClassicalPostprocessor применяет линейное преобразование с последующей сигмоидной активацией для получения вероятностного выхода.
6.3 Оптимизатор SPSA
SPSAOptimizer реализует алгоритм SPSA с настраиваемыми гиперпараметрами. Он поддерживает расписания скорости обучения и возмущения и предоставляет метод step, выполняющий одну итерацию оптимизации.
6.4 Сквозное обучение
Структура HybridModel объединяет все компоненты и предоставляет методы train и predict. Обучение итерирует по набору данных, вычисляя прямые проходы через весь конвейер и обновляя параметры через SPSA.
// Упрощённый паттерн использования:let model = HybridModel::new(num_features, num_qubits, num_layers);model.train(&features, &labels, num_epochs);let predictions = model.predict(&test_features);6.5 Ключевые детали реализации
Арифметика комплексных чисел: Квантовые состояния требуют операций с комплексными числами. Мы реализуем минимальную структуру Complex с операциями умножения, сложения и модуля.
Тензорные произведения: Многокубитные состояния вычисляются через произведения Кронекера индивидуальных состояний кубитов. Для n кубитов вектор состояния имеет 2^n комплексных амплитуд.
Вентили CNOT: Управляемый вентиль NOT работает на полном 2^n-мерном векторе состояния, переключая целевой кубит при условии, что управляющий кубит находится в состоянии |1>.
Математическое ожидание Паули-Z: Для кубита i мы суммируем |амплитуда|^2 для базисных состояний, где кубит i равен |0> (вклад +1), и вычитаем сумму для состояний, где кубит i равен |1>.
7. Интеграция с Bybit
Реализация получает реальные рыночные данные из публичного API Bybit. Структура BybitClient предоставляет методы для:
- Получения данных OHLCV (kline) для любой торговой пары и таймфрейма
- Парсинга JSON-ответа в структурированные данные свечей
- Вычисления технических признаков: доходности, волатильность (скользящее стандартное отклонение), RSI и отношение скользящей средней
Используемый эндпоинт API:
GET https://api.bybit.com/v5/market/kline?category=linear&symbol=BTCUSDT&interval=60&limit=200Это возвращает часовые свечи без необходимости аутентификации, что делает его подходящим для исследований и бэктестинга.
Признаки, вычисляемые из сырых данных свечей:
- Логарифмические доходности: ln(close_t / close_{t-1})
- Волатильность: Скользящее стандартное отклонение доходностей за 10 периодов
- RSI: 14-периодный индекс относительной силы, нормализованный в [0, 1]
- Отношение SMA: Цена закрытия, делённая на 20-периодную простую скользящую среднюю, отражающее тренд
Эти четыре признака естественно отображаются на 4-кубитную квантовую схему, обеспечивая наглядную демонстрацию гибридного конвейера.
8. Ключевые выводы
-
Гибридный подход практичен уже сегодня: Хотя автономные квантовые вычисления для трейдинга остаются перспективными, гибридные квантово-классические конвейеры можно строить и тестировать прямо сейчас с использованием квантовых симуляторов и развёртывать на реальном квантовом оборудовании по мере его развития.
-
Архитектура имеет значение: Паттерн «сэндвича» классический-квантовый-классический чётко разделяет ответственность. Классические компоненты обрабатывают инженерию данных и принятие решений; квантовые компоненты обеспечивают нелинейное преобразование признаков.
-
SPSA незаменим: Безградиентные оптимизаторы, такие как SPSA, критически важны для оптимизации квантовых параметров, поскольку квантовые градиенты дороги и шумны. Стоимость двух вычислений за итерацию делает SPSA уникально подходящим для этой задачи.
-
Начинайте с малого: С 4-8 кубитами и 2-3 вариационными слоями гибридные модели уже могут демонстрировать значимое извлечение признаков. Масштабирование за пределы этого требует тщательного внимания к бесплодным плато и глубине схемы.
-
Кодирование данных — это проектное решение: Угловое кодирование обеспечивает простейшее и наиболее робастное отображение финансовых признаков в квантовые состояния. Амплитудное кодирование более компактно, но сложнее в подготовке.
-
Квантовое преимущество зависит от задачи: Не каждая торговая задача выигрывает от квантовых подпрограмм. Комбинаторная оптимизация (выбор портфеля) и нелинейное извлечение признаков — наиболее перспективные ближайшие приложения.
-
Симуляция обеспечивает разработку: Классическая симуляция квантовых схем позволяет полностью разрабатывать, тестировать и валидировать гибридные торговые системы без доступа к квантовому оборудованию. Реализация на Rust в этой главе работает полностью на классическом оборудовании.
-
Интеграция с существующими системами: Гибридный подход разработан для встраивания в существующую торговую инфраструктуру. Квантовая схема — это просто ещё один преобразователь признаков или оптимизатор в конвейере — она не требует замены всей системы.
Область квантового машинного обучения для трейдинга быстро развивается. Понимая гибридную парадигму и создавая практические реализации сегодня, трейдеры и квант-разработчики позиционируют себя для использования квантового преимущества по мере улучшения оборудования. Ключ — в определении конкретных подпрограмм, где квантовая обработка добавляет ценность, и в проектировании чистых интерфейсов между классическими и квантовыми компонентами.