Перейти к содержимому

Глава 186: VQE-оптимизация портфеля

Введение — Вариационный квантовый решатель собственных значений для оптимизации портфеля

Оптимизация портфеля лежит в основе количественных финансов. С тех пор как Гарри Марковиц представил Современную теорию портфеля в 1952 году, практики стремились найти оптимальное распределение активов, которое максимизирует доходность при заданном уровне риска. Классическая оптимизация среднего-дисперсии хорошо работает для небольших портфелей, но по мере роста числа активов комбинаторная сложность задачи взрывается — особенно при введении дискретных ограничений, таких как лимиты кардинальности (максимальное число удерживаемых активов), минимальные размеры лотов или бинарные решения включения/исключения.

Вариационный квантовый решатель собственных значений (VQE) — это гибридный квантово-классический алгоритм, изначально разработанный для нахождения энергий основного состояния молекулярных гамильтонианов в квантовой химии. Однако его структура естественно отображается на задачи комбинаторной оптимизации, включая оптимизацию портфеля. VQE принадлежит к семейству Вариационных квантовых алгоритмов (VQA), которые считаются одними из наиболее перспективных кандидатов для достижения практического квантового преимущества на NISQ-устройствах ближайшего поколения.

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

В этой главе мы реализуем классическую симуляцию алгоритма VQE на Rust, применим её к оптимизации криптовалютного портфеля с использованием реальных рыночных данных Bybit и сравним результаты с традиционными подходами к оптимизации.

Математические основы

Задача оптимизации портфеля

Для $n$ активов с вектором ожидаемой доходности $\boldsymbol{\mu} \in \mathbb{R}^n$ и ковариационной матрицей $\Sigma \in \mathbb{R}^{n \times n}$ классическая оптимизация среднего-дисперсии Марковица ищет веса $\mathbf{w} \in \mathbb{R}^n$, решающие:

$$\min_{\mathbf{w}} \quad \gamma , \mathbf{w}^T \Sigma , \mathbf{w} - \mathbf{w}^T \boldsymbol{\mu}$$

при ограничениях $\sum_i w_i = 1$ и $w_i \geq 0$, где $\gamma$ — параметр неприятия риска.

Формулировка QUBO

Для отображения на квантово-совместимую форму мы дискретизируем веса. Каждый вес $w_i$ кодируется с помощью $K$ бинарных переменных:

$$w_i = \sum_{k=0}^{K-1} \frac{2^k}{2^K - 1} x_{i,k}, \quad x_{i,k} \in {0, 1}$$

Это преобразует непрерывную оптимизацию в задачу квадратичной бинарной оптимизации без ограничений (QUBO):

$$\min_{\mathbf{x}} \quad \mathbf{x}^T Q , \mathbf{x}$$

где $Q$ кодирует целевую функцию и ограничения (через штрафные члены). Матрица QUBO $Q$ строится как:

$$Q = \gamma , \tilde{\Sigma} - \text{diag}(\tilde{\boldsymbol{\mu}}) + \lambda \left( A^T A - 2 , \mathbf{1}^T A \right)$$

Здесь $\tilde{\Sigma}$ и $\tilde{\boldsymbol{\mu}}$ — ковариация и доходность, переформулированные в бинарном кодировании, а $\lambda$ — штрафной множитель, обеспечивающий бюджетное ограничение $\sum_i w_i = 1$.

Преобразование QUBO в гамильтониан Изинга

QUBO преобразуется в гамильтониан Изинга подстановкой $x_i = (1 - z_i)/2$, где $z_i \in {-1, +1}$ — спиновые переменные. Результирующий гамильтониан имеет вид:

$$H = \sum_{i} h_i Z_i + \sum_{i<j} J_{ij} Z_i Z_j + C$$

где $Z_i$ — операторы Паули-Z, $h_i$ — локальные поля, $J_{ij}$ — силы связи, а $C$ — константный сдвиг. Основное состояние $H$ — собственное состояние с наименьшим собственным значением — соответствует оптимальному бинарному назначению и, следовательно, оптимальному портфелю.

Анзац VQE

Алгоритм VQE использует параметризованную квантовую схему $U(\boldsymbol{\theta})$ для подготовки пробного состояния $|\psi(\boldsymbol{\theta})\rangle = U(\boldsymbol{\theta}) |0\rangle^{\otimes n}$. Мы используем аппаратно-эффективный анзац, состоящий из слоёв однокубитных вентилей вращения ($R_y$, $R_z$), за которыми следуют запутывающие вентили CNOT:

$$U(\boldsymbol{\theta}) = \prod_{\ell=1}^{L} \left[ \prod_{i} R_y(\theta_{i,\ell}^y) R_z(\theta_{i,\ell}^z) \cdot \text{CNOT-layer} \right]$$

Цикл оптимизации VQE:

  1. Подготовить $|\psi(\boldsymbol{\theta})\rangle$ с помощью схемы-анзаца
  2. Измерить математическое ожидание $\langle \psi(\boldsymbol{\theta}) | H | \psi(\boldsymbol{\theta}) \rangle$
  3. Передать энергию классическому оптимизатору (например, COBYLA, Нелдер-Мид)
  4. Обновить $\boldsymbol{\theta}$ и повторить до сходимости

Квантовое преимущество за пределами Марковица

Классическая оптимизация Марковица с непрерывными весами эффективно решается с помощью квадратичного программирования. Так в чём же помогает квантовый подход?

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

Реальная оптимизация портфеля часто включает ограничения, делающие задачу NP-трудной:

  • Ограничения кардинальности: удерживать не более $k$ из $n$ активов
  • Минимальные размеры позиций: если актив удерживается, его доля не менее определённого минимума
  • Лимиты секторной экспозиции: не более указанного процента в любом секторе
  • Пороги транзакционных издержек: бинарные решения покупки/продажи с фиксированными затратами

При $n$ активах и $K$-битной дискретизации пространство поиска составляет $2^{nK}$ — экспоненциально по числу активов и точности. Для 50 активов с 3-битной точностью это $2^{150} \approx 10^{45}$ возможностей.

Почему VQE перспективен

  1. Квантовая суперпозиция позволяет анзацу исследовать экспоненциально много комбинаций портфеля одновременно.
  2. Запутанность позволяет схеме эффективно захватывать корреляции между распределениями активов.
  3. Вариационная структура делает VQE устойчивым к шуму — критическое преимущество на оборудовании ближайшего поколения.
  4. Гибридная архитектура использует классические оптимизаторы для настройки параметров, а квантовое оборудование обрабатывает экспоненциальное пространство состояний.

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

Обзор реализации

Наша реализация на Rust моделирует алгоритм VQE классически. Основные компоненты:

1. Арифметика комплексных чисел

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

2. Матрицы Паули и квантовые вентили

Однокубитные матрицы Паули $I, X, Y, Z$ представлены как комплексные матрицы 2x2. Вентили вращения строятся из матричных экспонент:

  • $R_x(\theta) = \cos(\theta/2) , I - i \sin(\theta/2) , X$
  • $R_y(\theta) = \cos(\theta/2) , I - i \sin(\theta/2) , Y$
  • $R_z(\theta) = \cos(\theta/2) , I - i \sin(\theta/2) , Z$

3. Моделирование вектора состояния

Мы представляем $n$-кубитное квантовое состояние как $2^n$-мерный комплексный вектор. Применение вентилей выполняется построением полной $2^n \times 2^n$ матрицы через тензорные произведения и матрично-векторное умножение.

4. Преобразование QUBO в Изинга

Функция qubo_to_ising принимает матрицу QUBO и возвращает локальные поля $h_i$, связи $J_{ij}$ и константный сдвиг.

5. Ожидание гамильтониана

Функция expectation_value вычисляет $\langle \psi | H | \psi \rangle$, суммируя вклады от каждого члена Паули-Z и связей Z-Z.

6. Цикл оптимизации VQE

Мы используем оптимизатор Нелдер-Мида (метод нисходящего симплекса) — безградиентный метод, подходящий для зашумлённых целевых функций.

7. Построение портфеля

После сходимости VQE оптимальная бинарная строка извлекается измерением конечного состояния. Бинарная строка декодируется обратно в веса портфеля.

Оптимизация криптопортфеля на Bybit

Мы применяем VQE-оптимизатор к портфелю из четырёх основных криптовалют, торгуемых на Bybit:

АктивТикерРоль
BitcoinBTC/USDTСредство сбережения, относительно низкая волатильность
EthereumETH/USDTПлатформа смарт-контрактов
SolanaSOL/USDTВысокопроизводительный L1
BNBBNB/USDTТокен биржи

Конвейер данных

  1. Получить дневные данные свечей (kline) через публичный API Bybit
  2. Вычислить дневные логарифмические доходности для каждого актива
  3. Оценить вектор средней доходности и ковариационную матрицу
  4. Построить матрицу QUBO с параметром неприятия риска $\gamma = 0.5$

Конфигурация VQE

  • Кубиты: 8 (2 бита на вес актива для 4 активов)
  • Слоёв анзаца: 2
  • Параметры: 32 угла вращения
  • Оптимизатор: Нелдер-Мид, 500 итераций
  • Штрафной множитель: $\lambda = 2.0$ для бюджетного ограничения

Сравнение результатов: классический vs квантово-вдохновлённый

Мы сравниваем три стратегии:

1. Равновесный эталон

Каждый актив получает 25% аллокации. Это наивный базовый уровень.

2. Классическая среднее-дисперсия (аналитическая)

Решение непрерывной оптимизации Марковица с помощью обращения матрицы.

3. VQE квантово-вдохновлённый (дискретный)

Запуск симуляции VQE с 2-битной дискретизацией. Веса ограничены кратными $1/3$.

Типичные результаты

СтратегияBTCETHSOLBNBДоходностьРискШарп
Равные веса0.250.250.250.25БазовыйБазовыйБазовый
Классич. MVВарьируетсяВарьируетсяВарьируетсяВарьируетсяВышеНижеЛучший
VQE Дискретный0.330.330.000.33СопоставимыйЧуть вышеХороший

VQE-подход находит хорошие дискретные аллокации, близко аппроксимирующие непрерывный оптимум. Дискретизация естественно создаёт форму регуляризации — предотвращая экстремальные аллокации, возникающие из ошибок оценки ковариационной матрицы.

Ключевые выводы

  1. VQE естественно отображается на оптимизацию портфеля через QUBO-кодирование дискретизированных задач среднего-дисперсии. Основное состояние соответствующего гамильтониана Изинга кодирует оптимальные веса портфеля.

  2. Формулировка QUBO нативно обрабатывает дискретные ограничения, что делает её идеальной для реальных портфельных задач с ограничениями кардинальности, минимальными размерами позиций и бинарными решениями включения/исключения.

  3. Классическая симуляция VQE служит квантово-вдохновлённой эвристикой, которая валидирует подход и обеспечивает путь миграции на квантовое оборудование.

  4. Дизайн анзаца критически важен — слишком мелкий, и схема не может выразить оптимальное состояние; слишком глубокий, и оптимизация страдает от бесплодных плато.

  5. Для криптопортфелей на Bybit VQE-подход создаёт осмысленные дискретные аллокации, захватывающие основную структуру непрерывного оптимума.

  6. Rust обеспечивает отличную платформу для квантового моделирования — его производительность и система типов хорошо подходят для численно-интенсивных операций линейной алгебры.

  7. Разрыв между квантовым обещанием и текущей реальностью остаётся значительным, но алгоритмическая база зрелая. Когда появятся отказоустойчивые квантовые компьютеры, те же формулировки QUBO/VQE перенесутся напрямую.