2
Подписаться
410
Подписчики

Надежный способ быстро разбогатеть на криптовалюте? Правда из популярных постов на Zhihu и реальные результаты тестирования.

Создано: 2026-01-08 15:11:50, Обновлено: 2026-01-23 10:48:21
comments   2
hits   275

[TOC]

Надежный способ быстро разбогатеть на криптовалюте? Правда из популярных постов на Zhihu и реальные результаты тестирования.

Источник: Казалось бы, прекрасная мечта об арбитраже.

Недавно я наткнулся на пост на Zhihu с очень заманчивым заголовком: «Надежный способ быстро разбогатеть в мире криптовалют: от 3000U до 12000U за три месяца».

Я просто рассмеялся. Стабильный? Быстро разбогатеть? Сочетание этих двух слов обычно означает одно из двух: либо это мошенничество, либо вы человек, который еще не сталкивался с «черным лебедем».

Однако, будучи разработчиком количественных торговых стратегий, я все же не смог удержаться и, увидев описание этой стратегии, заглянул внутрь.

Согласно этой теории, утверждается следующее:

  1. BTC — лидер в мире криптовалют.Колебания его цены определенно сильнее, чем у его более мелких аналогов (ETH, SOL и т. д.).
  2. Бычий рынок началсяБиткоин стремительно растёт → Откройте длинную позицию по BTC и короткую по ETH → Получите прибыль от разницы в цене.
  3. Медвежий рынок наступилЦена BTC резко падает → Открытие короткой позиции по BTC + открытие длинной позиции по ETH → По-прежнему верный способ получить прибыль от разницы цен.

Надежный способ быстро разбогатеть на криптовалюте? Правда из популярных постов на Zhihu и реальные результаты тестирования.

Прочитав это, я погрузился в глубокие размышления…

Кажется, возможно, вероятно, надежда, желание, может быть, в этом есть какой-то смысл?

Первая версия кода: Наивное начало

Итак, без лишних слов, давайте откроем платформу количественной оценки изобретателей и начнём!

Простейшая логика:

// 伪代码
if (btcChange > 2%) {
    开多 1手 BTC
    开空 1手 ETH
}

Закончив писать код, я уверенно нажал на кнопку тестирования, и затем…

Первый бэктест

Мы теряем деньги одну за другой.

Наблюдая за стремительным падением кривой доходности акций, я впал в глубокое сомнение в собственных силах.

Код второго издания: Научное хеджирование

В чём заключалась проблема? Искусство хеджирования с использованием коэффициента бета.

Если спокойно об этом подумать, проблема очевидна:

1 лот BTC ≠ 1 лот ETH

В настоящее время BTC стоит 100 000 долларов, в то время как ETH стоит всего около 3000 долларов. Если вы используете соотношение 1:1 для хеджирования, это не хеджирование, а потеря денег.

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

  • Соотношение цен:BTC/ETH ≈ 30:1
  • Разница волатильностиКорреляция доходности между двумя
  • Номинальная стоимость контрактаБессрочный контракт OKX в BTC равен 0,01 BTC, а бессрочный контракт в ETH равен 0,1 ETH.

Полная реализация бета-хеджирования

Этот код является основным вычислительным механизмом стратегии, который полностью реализует расчет коэффициента Бета ETH относительно BTC. Коэффициент Бета здесь представляет собой два ключевых элемента информации: соотношение базовых цен и корреляцию волатильности, которые напрямую определяют долю, которую необходимо хеджировать.

// 计算ETH相对BTC的Beta系数
function calculateBeta(btcRecords, ethRecords, lookback) {
    // 数据不足时的降级处理
    if (btcRecords.length < lookback + 1 || ethRecords.length < lookback + 1) {
        Log("⚠️ K线数据不足,使用当前价格比作为默认Beta")

        let btcPrice = btcRecords[btcRecords.length - 1].Close
        let ethPrice = ethRecords[ethRecords.length - 1].Close
        let defaultBeta = btcPrice / ethPrice

        betaInfo.currentBeta = defaultBeta
        betaInfo.correlation = 0
        betaInfo.priceRatio = defaultBeta
        betaInfo.returnBeta = 1.0
        betaInfo.lastUpdate = new Date().toLocaleString()

        Log("  默认Beta =", _N(defaultBeta, 2), "| 价格比:", _N(btcPrice, 0), "/", _N(ethPrice, 0))
        return defaultBeta
    }

    let btcReturns = []
    let ethReturns = []
    let priceRatios = []

    // 第一步:计算日收益率 + 历史价格比
    for (let i = btcRecords.length - lookback; i < btcRecords.length; i++) {
        // 日收益率 = (今日收盘 - 昨日收盘) / 昨日收盘
        let btcRet = (btcRecords[i].Close - btcRecords[i-1].Close) / btcRecords[i-1].Close
        let ethRet = (ethRecords[i].Close - ethRecords[i-1].Close) / ethRecords[i-1].Close

        btcReturns.push(btcRet)
        ethReturns.push(ethRet)

        // 记录每天的价格比
        let ratio = btcRecords[i].Close / ethRecords[i].Close
        priceRatios.push(ratio)
    }

    // 第二步:计算历史平均价格比
    let avgPriceRatio = priceRatios.reduce((a, b) => a + b, 0) / priceRatios.length

    // 第三步:计算价格比的波动性
    let priceRatioVariance = 0
    for (let i = 0; i < priceRatios.length; i++) {
        let diff = priceRatios[i] - avgPriceRatio
        priceRatioVariance += diff * diff
    }
    priceRatioVariance /= (priceRatios.length - 1)
    let priceRatioStd = Math.sqrt(priceRatioVariance)
    let priceRatioCv = priceRatioStd / avgPriceRatio  // 变异系数

    // 第四步:计算收益率的均值
    let btcMean = btcReturns.reduce((a,b) => a+b, 0) / btcReturns.length
    let ethMean = ethReturns.reduce((a,b) => a+b, 0) / ethReturns.length

    // 第五步:计算协方差和方差
    let covariance = 0
    let btcVariance = 0
    let ethVariance = 0

    for (let i = 0; i < btcReturns.length; i++) {
        let btcDiff = btcReturns[i] - btcMean
        let ethDiff = ethReturns[i] - ethMean
        covariance += btcDiff * ethDiff
        btcVariance += btcDiff * btcDiff
        ethVariance += ethDiff * ethDiff
    }

    covariance /= (btcReturns.length - 1)
    btcVariance /= (btcReturns.length - 1)
    ethVariance /= (ethReturns.length - 1)

    // 第六步:计算收益率Beta
    // Beta = Cov(ETH, BTC) / Var(BTC)
    let returnBeta = covariance / btcVariance

    // 第七步:计算相关系数
    // 相关系数 = Cov(ETH, BTC) / (Std(BTC) × Std(ETH))
    let correlation = covariance / Math.sqrt(btcVariance * ethVariance)

    // 第八步:最终Beta = 历史平均价格比 × 收益率Beta
    let finalBeta = avgPriceRatio * returnBeta

    // 第九步:限制Beta范围,避免极端值
    let minBeta = avgPriceRatio * 0.5
    let maxBeta = avgPriceRatio * 2.0
    finalBeta = Math.max(minBeta, Math.min(maxBeta, finalBeta))

    // 第十步:获取当前价格比
    let currentBtcPrice = btcRecords[btcRecords.length - 1].Close
    let currentEthPrice = ethRecords[ethRecords.length - 1].Close
    let currentPriceRatio = currentBtcPrice / currentEthPrice

    // 更新Beta信息到全局
    betaInfo.currentBeta = finalBeta
    betaInfo.correlation = correlation
    betaInfo.returnBeta = returnBeta
    betaInfo.avgPriceRatio = avgPriceRatio
    betaInfo.currentPriceRatio = currentPriceRatio
    betaInfo.priceRatioStd = priceRatioStd
    betaInfo.priceRatioCv = priceRatioCv
    betaInfo.lastUpdate = new Date().toLocaleString()

    return finalBeta
}

Основные функции и логика

  1. Проверка и обработка данных, а также анализ их деградации.Проверьте, достаточно ли исторических данных; если нет, используйте соотношение текущих цен напрямую, чтобы гарантировать постоянную работоспособность стратегии.
  2. Расчет рядов доходностиПреобразование данных о ценах в доходность исключает влияние абсолютных значений цены, что делает активы, торгующиеся по разным ценам, сопоставимыми.
  3. Основные вычисления для статистического анализа
    • Ковариация: Измеряет направление и силу корреляции между доходностью BTC и ETH.
    • дисперсия: Измеряет волатильность самой доходности BTC.
    • Доходность БетаCov(ETH,BTC) / Var(BTC)Это указывает на чувствительность доходности ETH к изменениям доходности BTC.
    • Коэффициент корреляцииСтандартизированная ковариация отражает степень линейной корреляции.
  4. Комплексный бета-синтезИтоговый коэффициент Бета = Историческое среднее соотношение цен × Коэффициент Бета доходности. Этот коэффициент учитывает как разницу в цене базового актива (например, BTC в 30 раз дороже ETH), так и разницу в волатильности (например, волатильность ETH в 0,8 раза выше, чем у BTC). Например, если соотношение цен равно 30, а коэффициент Бета доходности равен 0,8, то итоговый коэффициент Бета равен 24, что означает, что для хеджирования 1 BTC требуется 24 ETH.
  5. Механизмы контроля рискаУстановите разумные ограничения на значение бета-коэффициента, чтобы предотвратить расчет необоснованных коэффициентов хеджирования из-за краткосрочных экстремальных рыночных условий.

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

// 计算对冲张数
function calculateHedgeAmount(beta) {
    let btcCoinAmount = config.btcCoinAmount  // 0.1 BTC
    let ethCoinAmount = btcCoinAmount * beta  // ETH数量 = 0.1 × Beta

    // 转换成合约张数
    let btcContracts = Math.floor(btcCoinAmount / contractInfo.btcCtVal)
    btcContracts = Math.max(1, btcContracts)  // 至少1张

    let ethContracts = Math.floor(ethCoinAmount / contractInfo.ethCtVal)
    ethContracts = Math.max(1, ethContracts)

    // 实际开仓的币数
    let actualBtcCoins = btcContracts * contractInfo.btcCtVal
    let actualEthCoins = ethContracts * contractInfo.ethCtVal

    Log("🎯 对冲计算 | Beta:", _N(beta, 3),
        "\n  BTC: ", _N(actualBtcCoins, 4), "币 =", btcContracts, "张 (CtVal:", contractInfo.btcCtVal, ")",
        "\n  ETH: ", _N(actualEthCoins, 4), "币 =", ethContracts, "张 (CtVal:", contractInfo.ethCtVal, ")",
        "\n  实际比例:", _N(actualEthCoins / actualBtcCoins, 3))

    return {
        btc: btcContracts,
        eth: ethContracts,
        btcCoins: actualBtcCoins,
        ethCoins: actualEthCoins,
        beta: beta
    }
}

Ключевые этапы преобразования

  1. Определите размер базовой позицииУстановите базовое значение в BTC (например, 0,1) в зависимости от конфигурации, которое будет служить «якорем» для всего хеджирующего портфеля.
  2. Теоретический расчет стоимости монетыТеоретическое количество ETH = Базовое количество BTC × Коэффициент бета.
  3. конвертация номинальной стоимости контрактаНаиболее важным практическим шагом является деление теоретического количества монет на «стоимость контракта» (CtVal) каждого контракта. Например, один контракт BTC может представлять 0,01 BTC, а один контракт ETH — 0,1 ETH, таким образом получая количество контрактов.
  4. ИнтеграцияОкругление в меньшую сторону гарантирует, что сделки совершаются целыми контрактами, как минимум, одним контрактом. Одновременно с этим, доля фактически совершенных сделок рассчитывается в обратном порядке для последующих точных расчетов прибыли и убытков.

Логика открытия и закрытия

В этом разделе рассматриваются реализация стратегии и контроль рисков, преобразование рассчитанного плана хеджирования в реальные торговые операции и управление рисками. Логика входа иллюстрируется здесь на примере длинной позиции; короткую позицию можно понять аналогичным образом.

Проектирование условий срабатыванияСистема использует двойное условие: рост цены BTC > 2% и рост цены BTC > рост цены ETH. Это обеспечивает достаточную волатильность рынка и сохранение ожидаемой зависимости относительной силы.

// BTC涨 > 2% 且涨幅大于ETH → 开多BTC + 开空ETH
if (btcChange > 0.02 && btcChange > ethChange) {
    let amounts = calculateHedgeAmount(beta)

    // 先开BTC多单
    let btcOrder = createMarketOrder(config.btcSymbol, "buy", amounts.btc)
    if (!btcOrder) {
        Log("❌ BTC开多失败")
        return null
    }

    // 再开ETH空单
    let ethOrder = createMarketOrder(config.ethSymbol, "sell", amounts.eth)
    if (!ethOrder) {
        Log("❌ ETH开空失败,回滚BTC")
        createMarketOrder(config.btcSymbol, "closebuy", amounts.btc)
        return null
    }

    Log("🟢 开仓完成 | Beta:", _N(beta, 3))
}

Атомарное выполнение транзакцийИсполнение происходит последовательно и включает механизм отката. Сначала открывается длинная позиция в BTC; в случае успеха открывается короткая позиция в ETH. Если ордер на ETH не срабатывает, немедленно закрывается существующая длинная позиция в BTC, чтобы обеспечить целостность позиции и избежать одностороннего риска.

Ниже приведена демонстрация логики закрытия:

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

  • Прибыль/убыток по длинной позиции в BTC = (текущая цена - цена открытия) × количество удерживаемых BTC
  • Прибыль/убыток по короткой позиции по ETH = (цена открытия - текущая цена) × количество удерживаемых ETH

Настройки пороговых значений контроля рисковОценивается общая эффективность портфеля, и устанавливаются асимметричные линии фиксации прибыли (+3%) и стоп-лосса (-1%) для достижения положительного ожидаемого значения.

// 按币数计算盈亏
function checkClose(pos, btcTicker, ethTicker) {
    let btcPnlUsd, ethPnlUsd

    if (pos.type === 'long_btc_short_eth') {
        // BTC多单盈亏 = (当前价 - 开仓价) × 币数
        btcPnlUsd = (btcTicker.Last - pos.btcPrice) * pos.btcCoinAmount
        // ETH空单盈亏 = (开仓价 - 当前价) × 币数
        ethPnlUsd = (pos.ethPrice - ethTicker.Last) * pos.ethCoinAmount
    } else {
        btcPnlUsd = (pos.btcPrice - btcTicker.Last) * pos.btcCoinAmount
        ethPnlUsd = (ethTicker.Last - pos.ethPrice) * pos.ethCoinAmount
    }

    let totalPnlUsd = btcPnlUsd + ethPnlUsd
    let totalCost = pos.btcPrice * pos.btcCoinAmount + pos.ethPrice * pos.ethCoinAmount
    let totalPnlPct = totalPnlUsd / totalCost

    // 止盈: +3%
    if (totalPnlPct >= 0.03) {
        return {close: true, reason: '✅止盈', pnl: totalPnlPct, pnlUsd: totalPnlUsd}
    }
    // 止损: -1%
    if (totalPnlPct <= -0.01) {
        return {close: true, reason: '🛑止损', pnl: totalPnlPct, pnlUsd: totalPnlUsd}
    }

    return {close: false, pnl: totalPnlPct, pnlUsd: totalPnlUsd}
}

Тест был перепроверен, и результаты оказались…

Второй бэктест

Кривая наконец-то пошла вверх!

Анализ данных для тестирования стратегии бэктестинга

С октября 2025 года по январь 2026 года, примерно 3 месяца:

Результаты деятельности фонда

  • Начальный капитал: 50 000 долларов США
  • Итоговая сумма собственного капитала: 51 095 долларов США.
  • Общая доходность: приблизительно 2,2%
  • Максимальная просадка: Держитесь в разумных пределах.

Статистика транзакций

  • Количество возможностей для фиксации прибыли: 6
  • Количество стоп-лосс ордеров: 14
  • Процент выигрышей: 30%

Истинный вывод

После тщательного тестирования на исторических данных эта стратегия была подтверждена:

✅ Теоретически осуществимые части:

  1. Действительно, бета-хеджирование может снизить односторонний риск.
  2. Изменение соотношения цен создает возможности для арбитража.
  3. Стоп-лосс и тейк-профит могут защитить прибыль.

⚠️ Реальные проблемы:

  1. Низкая доходностьРентабельность составила всего 30%, а совокупная доходность за три месяца — 2,2%, что далеко от заявленной в публикации четырехкратной доходности.
  2. Возможностей открыть вакансию немного.Порог в 2% ограничивает частоту открытия позиций.
  3. Комиссии за транзакциюЧастое открытие и закрытие позиций приведет к тому, что значительная часть прибыли будет поглощена.
  4. Риск проскальзыванияРезультаты реальной торговли могут быть хуже, чем результаты тестирования на исторических данных.
  5. Экстремальные рыночные условияЕсли одновременно произойдет скачок/снижение стоимости BTC и ETH, механизм хеджирования потерпит неудачу.

🔍 Области для оптимизации:

  1. Многовалютная ротацияОн может хеджировать не только ETH, но и SOL, BNB и т.д.
  2. Динамическая убыльКорректировка пороговых значений входа в зависимости от волатильности
  3. Остановить потерю охлажденияНе открывайте новую позицию сразу после размещения стоп-лосса.
  4. Хеджирование волатильности ДельтаПомимо коэффициента бета цены, можно также рассмотреть хеджирование волатильности.
  5. Управление деньгамиДинамическая корректировка коэффициента достаточности капитала для каждой открытой позиции.

В заключение: значение количественного анализа.

В этом и заключается привлекательность количественной торговли:

Начните с идеи → Напишите код для её реализации → Проведите тестирование для проверки → Оптимизируйте и улучшите

Стратегия, изложенная в той статье на Zhihu, была разумной, но дьявол кроется в деталях:

  • Без бета-хеджирования это просто ставка на направление движения цены.
  • Без механизма контроля рисков это все равно что бегать голым.
  • Без проверки на исторических данных это всего лишь пустые мечты.

Настоящая количественная торговля предполагает проверку каждой идеи данными, реализацию каждой стратегии с помощью кода и запись каждой сделки.

Если у вас есть идея, вам следует её проверить.

Код находится в конце статьи. Можете смело запускать, изменять и оптимизировать его самостоятельно.

Если вам интересно, я могу продолжить писать позже:

  • Стратегии хеджирования на основе дельты волатильности
  • Внедрение многовалютной ротации
  • Оптимизация управления фондами и контроля рисков.

Не стесняйтесь ставить лайки, оставлять комментарии и просить больше обновлений!

📝Исходный код статьи (параметры стратегии можно гибко задавать в разделе параметров в начале исходного кода; торговая логика оптимизирована).Двусторонняя стратегия хеджирования бета-коэффициента


Отказ от ответственности

Данная статья предназначена исключительно для обучения и обмена информацией и не является инвестиционной рекомендацией.

P.S.: В мире криптовалют нет гарантированного способа быстро разбогатеть; есть только управление рисками и постоянная оптимизация.