Обновить
256K+

Криптовалюты

Деньги 2.0

61,24
Рейтинг
Сначала показывать
Порог рейтинга

Что не так с DeFi и почему там до сих пор происходят взломы

Со стороны DeFi выглядит как будущее финансов: кошелёк вместо банка, смарт-контракт вместо посредника, а код вместо правил “по договорённости”.

Но в реальности DeFi это не одно приложение, а связка протоколов, смарт-контрактов, пулов ликвидности, оракулов, мостов, токенов управления и внешних интерфейсов. Пользователь видит кнопку Swap или Deposit, но под капотом может запускаться целая цепочка вызовов между контрактами. И чем больше таких зависимостей, тем больше поверхность атаки.

Одна из главных проблем - composability. В DeFi протоколы часто строятся друг поверх друга: lending-протокол использует один токен, DEX даёт ликвидность, оракул поставляет цену, мост переносит актив между сетями, а поверх всего этого работает ещё один интерфейс. Это удобно для разработки, но опасно для безопасности. Ошибка в одном элементе может стать проблемой для всей цепочки.

Отдельный риск - смарт-контракты. В традиционной системе подозрительную операцию можно остановить, откатить или вручную проверить. В DeFi логика другая: если транзакция валидна и контракт позволяет выполнить действие, сеть его выполнит. Поэтому баг в коде, ошибка в проверке прав, неправильная работа с балансами или уязвимость в математике протокола могут стоить не “небольшого сбоя”, а сразу миллионов долларов.

При этом атаки давно не сводятся к классическому “взлому”. Часто злоумышленник не ломает сервер, а использует экономическую механику протокола. Например, через flash loan можно взять огромный объём ликвидности в рамках одной транзакции, временно исказить цену в пуле, повлиять на расчёт залога или ликвидации, а затем вернуть заём до завершения блока. Формально всё может пройти по правилам контракта, но результат будет разрушительным.

Большая зона риска - оракулы. DeFi-протоколам нужно откуда-то получать цены активов. Если протокол берёт цену из слабого источника, например из тонкого пула с низкой ликвидностью, этой ценой можно манипулировать. Дальше начинается цепочка: неверная цена → неправильная оценка залога → ошибочная ликвидация или вывод средств.

Ещё одна больная точка - кроссчейн-мосты. Мосты соединяют разные сети и часто хранят или контролируют большие объёмы ликвидности. Это делает их идеальной целью. Проблема в том, что мост должен одновременно доверять событиям в одной сети и корректно выпускать или разблокировать активы в другой. Любая ошибка в валидации сообщений, подписях, мультисиге или логике relayer-ов может привести к катастрофе.

Есть и governance-риск. Многие DeFi-протоколы управляются через DAO и governance-токены. На практике это означает, что изменение параметров протокола, обновление контрактов или управление казной может зависеть от голосований, делегатов и концентрации токенов. Если управление плохо защищено, атакующий может повлиять не на код напрямую, а на правила игры.

Парадокс DeFi в том, что он создавался как trustless-система, где не нужно доверять посредникам. Но на практике пользователь всё равно доверяет: аудитам, разработчикам, оракулам, мостам, мультисигам, фронтенду, governance-механике и экономической модели протокола.

То есть доверие не исчезло. Оно просто переехало из банка в инфраструктуру.

Именно поэтому DeFi до сих пор остаётся одновременно самой интересной и самой уязвимой частью крипторынка. Чем больше открытости, автоматизации и связности между протоколами, тем сложнее сделать систему безопасной не только на уровне кода, но и на уровне экономики, ликвидности и пользовательского сценария.

Теги:
+4
Комментарии1

Почему у Bitcoin несколько типов адресов и в чём их отличие

Большинство пользователей просто копируют Bitcoin-адрес и отправляют средства, не особо задумываясь, почему одни адреса начинаются на 1A1zP1..., другие на 3J98t1..., а третьи выглядят как длинный набор символов вроде bc1qw508....

На практике это не “разные виды биткоина”, а результат эволюции самой сети Bitcoin. Каждый новый формат адресов появлялся как попытка решить конкретные проблемы: высокие комиссии, ограниченную пропускную способность, сложность транзакций или недостаточную эффективность сети.

Самые старые Bitcoin-адреса - это Legacy-адреса. Обычно они начинаются на 1. Это первый массовый формат адресов в сети Bitcoin, который использовался ещё задолго до появления современных обновлений. Главный минус таких адресов сегодня - менее эффективная структура транзакций, из-за чего комиссии обычно выше.

Позже появился формат SegWit. Чаще всего такие адреса начинаются на 3. Его главная задача была довольно практичной: уменьшить размер транзакций и снизить нагрузку на сеть. Благодаря этому комиссии стали ниже, а сама сеть - эффективнее. По сути, SegWit стал одним из самых важных обновлений Bitcoin за последние годы.

Следующий этап - Native SegWit или Bech32. Именно эти адреса начинаются на bc1. Сейчас они считаются более современным вариантом для обычных переводов. Такие адреса занимают меньше места в блоке, ещё сильнее снижают комиссии и лучше подходят для современной инфраструктуры Bitcoin. Именно поэтому всё больше кошельков и сервисов по умолчанию используют формат bc1.

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

Из-за этого сегодня в сети одновременно существуют сразу несколько форматов адресов. Старые варианты никуда не исчезли, потому что Bitcoin очень осторожно относится к совместимости: сеть должна продолжать работать даже с кошельками и сервисами прошлых поколений.

Именно поэтому один пользователь может отправлять BTC на адрес формата 1A1zP1..., другой на 3J98t1..., а третий на bc1qw508... - и все они всё равно работают внутри одной сети Bitcoin.

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

Теги:
+1
Комментарии2

Почему биткоин-миксеры вообще появились и почему вокруг них столько споров

Одна из самых популярных иллюзий о Bitcoin – это “анонимная криптовалюта”. На практике Bitcoin скорее наоборот: это один из самых прозрачных финансовых инструментов. Все транзакции навсегда остаются в публичном блокчейне, а история движения средств, связи между адресами и сами переводы могут анализироваться годами спустя. Именно из-за этой прозрачности вообще появились биткоин-миксеры.

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

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

Проблема в том, что инструменты приватности быстро начали использовать не только обычные пользователи. Миксеры стали активно применять скамеры, ransomware-группы, взломщики и схемы по отмыванию средств. Именно здесь и начался главный конфликт вокруг подобных сервисов. С одной стороны, приватность - нормальный запрос для любой финансовой системы. С другой - те же инструменты оказались удобны для сокрытия происхождения украденных средств. История с Tornado Cash только усилила этот спор и превратила его уже не просто в крипто-дискуссию, а в глобальный вопрос о границе между приватностью и контролем.

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

Теги:
0
Комментарии1

Почему стейблкоинов так много и чем они отличаются

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

Самый понятный тип это фиатно-обеспеченные стейблкоины. Они привязаны к обычной валюте, чаще всего к доллару. Примеры: USDT, USDC, TUSD, USDP. Их плюс простая логика, высокая ликвидность, удобство для переводов и торговли. Минус - приходится доверять эмитенту и его резервам.

Есть криптообеспеченные стейблкоины. Классический пример - DAI, но сейчас важно учитывать, что его экосистема постепенно мигрирует в USDS. Такие модели интересны тем, что они ближе к DeFi и меньше зависят от банковской системы, но зато сложнее устроены и сильнее зависят от состояния залога и рыночной ликвидности.

Есть товарно-обеспеченные стейблкоины, например PAXG и XAUT. Они привязаны не к доллару, а к золоту. Такой формат подходит тем, кто хочет держать в токене не валюту, а реальный актив.

Отдельная категория - это алгоритмические стейблкоины: FRAX, AMPL, sUSD. Их цена удерживается не резервами в классическом смысле, а через алгоритмы, стимулы и автоматическую балансировку. Это самая рискованная и спорная модель, потому что при потере доверия ломается и сама стабильность.

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

Если совсем коротко: все стейблкоины выглядят одинаково снаружи, но внутри это разные механизмы - фиат, крипта, товар или алгоритм.

Теги:
-1
Комментарии0

Как выбрать безопасный криптообменник: краткий чек-лист без иллюзий

Когда пользователи ищут обменник, чаще всего смотрят на курс. Если цифра выглядит лучше - значит “выгодно”. Проблема в том, что безопасность почти никогда не видна на первом экране. И именно поэтому ошибки чаще происходят не после обмена, а в момент выбора.

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

1. Прозрачность условий

Если итоговая сумма становится понятна только в процессе или “после подтверждения”, это плохой сигнал. В нормальном сценарии пользователь заранее понимает, сколько спишется и сколько придёт.

2. Предсказуемость курса

Важно не только число на экране, а то, фиксируется ли курс и в какой момент. Если итог может “поплыть” без понятных правил, то это уже зона риска.

3. Комиссии и скрытые потери

Даже при хорошем курсе итог может ухудшаться за счет комиссии сети, внутренней комиссии сервиса или спреда. Сравнивать нужно не витрину, а результат.

4. Скорость и тип обработки

Автоматическая обработка и понятные статусы - нормальный сценарий. Если процесс завязан на ручные действия и “ожидание оператора”, появляется дополнительная неопределенность.

5. Поведение интерфейса

Странные редиректы, неожиданные шаги, изменение условий по ходу оформления - всё это чаще сигнал не про дизайн, а про риск.

6. Требования по ходу процесса

Если дополнительные проверки или ограничения появляются внезапно на финальном шаге, это ломает сценарий и повышает вероятность проблем.

7. Лимиты и ограничения

Несовпадение суммы с правилами сервиса - частая причина ситуаций “деньги отправлены, но не зачислены”. Эти вещи лучше проверять до, а не после.

8. Отзывы и агрегаторы

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

9. История сервиса и цифровой след

Полезно посмотреть, как сервис выглядел раньше и как менялся со временем. Если сайт появился недавно, часто меняет формат работы или почти не имеет истории - это дополнительный фактор риска. 

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

10. Риск транзакции и предварительная проверка

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

11. Поддержка и реакция

Важно не наличие чата, а то, как быстро и по делу отвечают. Это становится критичным, если что-то пошло не по плану.

12. Тестовый прогон

Если сервис новый или сумма чувствительная, небольшая тестовая операция почти всегда дешевле, чем разбираться с последствиями. Если упростить, безопасный обмен - это не тот, где “лучший курс”, а тот, где весь процесс предсказуем: от ввода суммы до финального зачисления.

И наоборот: чем больше в сценарии сюрпризов, тем выше шанс, что проблема возникнет не в блокчейне, а ещё до него.

Теги:
0
Комментарии0

Почему цена почти доходит до TP, но разворачивается

Будущее это вероятностная функция от прошлого. ATR это чистая функция от прошлого. Разница в том, что в вероятностной функции есть коэфициент случайности и точно прогнозировать можно только лучший и худший случай

Именно по этому цена не доходит до TP, если высчитать его на индикаторах. Либо TP слишком низкий и не окупает fees. Верным решением для вероятностной функции будет прогнозировать лучший и худший случай на лету

//@version=5
strategy("Стратегия с TP по ATR")

...

tpPrice    = entryPrice + atrMultTP * atr // Это не работает

Выходить из позиции при просадке PNL на заранее известный процент статистически предсказуемо.

listenActivePing(async ({ symbol, data }) => {
  const peakProfitDistance = await getPositionHighestProfitDistancePnlPercentage(symbol);
  const currentProfit = await getPositionPnlPercent(symbol);

  if (currentProfit < 0) {
    return;
  }

  if (peakProfitDistance < TRAILING_TAKE) {
    return;
  }

  await commitClosePending(symbol, {
    id: "unknown",
    note: str.newline(
      "# Позиция закрыта по trailing take",
    ),
  });
});

Тут есть разница: в отличие от классического trailing take где выход из позиции ставится на цену, которая каждый раз разная, отклонение PnL - постоянная величина

Теги:
+6
Комментарии0

Что проверять перед любым крипто-переводом: короткий anti-fail чеклист

Большая часть проблем с крипто-переводами возникает не из-за “сложности блокчейна”, а из-за слишком бытовых ошибок.

Не ту сеть выбрали. Скопировали адрес, но не сверили хвост. Забыли про memo/tag. Отправили “впритык”, а после комиссии сумма стала ниже минимального порога. Итог всегда один: деньги вроде бы отправлены, но дальше начинается нервный квест. Парадокс в том, что большинство таких ошибок можно поймать за 30–60 секунд до отправки.

Ниже короткий anti-fail чеклист, который реально стоит прогонять перед любым крипто-переводом, особенно если сервис новый, сумма чувствительная или вы работаете в спешке.

Первое: сеть.

USDT в ERC-20, TRC-20, BEP-20 и других сетях визуально выглядит как “тот же USDT”, но на практике это разные маршруты. Ошибка здесь одна из самых дорогих и самых частых.

Второе: адрес.

Недостаточно просто вставить адрес в поле. Стоит хотя бы сверить первые и последние символы. Ошибки буфера, подмена адреса вредоносным ПО и банальная спешка - классика.

Третье: связка “актив + сеть”.

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

Четвёртое: комиссия и итоговая сумма.

Если перевод идёт “впритык”, комиссия может сделать сумму ниже минимального порога зачисления. На экране кажется, что всё ок, а по факту деньги зависают или требуют ручной разбор.

Пятое: минимальная сумма зачисления.

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

Шестое: memo, tag или дополнительный идентификатор.

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

Седьмое: тестовый перевод.

Самый скучный совет, но самый дешёвый. Если сервис новый, сеть непривычная или сумма ощутимая, то сначала лучше отправить небольшую часть, а уже потом основную сумму.

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

Теги:
+4
Комментарии0

Почему “лучший курс” часто оказывается самой дорогой ошибкой

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

Логика понятна: если в одном месте курс выше, а в другом ниже, значит выгоднее там, где цифра выглядит лучше. На практике именно здесь и начинается одна из самых частых ошибок.

Проблема в том, что «лучший курс» почти никогда не существует отдельно от условий, по которым этот курс вообще доступен. Пользователь видит красивую цифру, но не всегда замечает всё, что идёт рядом: комиссии, скрытые ограничения, ручную обработку, задержки, минимальные суммы, требования к верификации, плавающий итог или просто неочевидный порядок расчёта.

В итоге человек выбирает не самый выгодный сценарий, а самый привлекательный заголовок.

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

Иногда «лучший курс» ломается на комиссии, которая появляется позже. Иногда на спреде между заявленным и финальным расчётом. Иногда на том, что деньги приходят дольше, чем ожидалось, и пользователь теряет не на цифре, а на времени.

Есть и более неприятный сценарий: курс сам по себе хороший, но путь к нему слишком хрупкий. Например, заявка обрабатывается вручную, окно фиксации короткое, правила обновляются в процессе, а любое отклонение по сумме или времени уже меняет итог.

С точки зрения интерфейса всё выглядит честно: цифра показана. Но с точки зрения пользователя это часто превращается в когнитивную ловушку. Он уже увидел «выгоднее» и перестал смотреть на остальное.

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

Именно здесь появляется главный парадокс: иногда курс чуть хуже на старте, но итоговая операция оказывается выгоднее, быстрее и спокойнее. А иногда «лучший курс» на экране это просто самый дорогой способ ошибиться.

Если смотреть шире, проблема не в самом курсе. Проблема в том, что пользователь принимает решение по одному параметру в сценарии, где значимы сразу пять или шесть.

Поэтому «лучший курс» в цифровых переводах — это не гарантия выгоды, а всего лишь одна из переменных. И без контекста она часто работает против самого пользователя.

Теги:
Всего голосов 4: ↑1 и ↓30
Комментарии0

Почему KYC воспринимается как препятствие, а не как защита

KYC это одна из самых раздражающих частей любого финтех- или криптосервиса.

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

С точки зрения пользователя это выглядит просто: «Я хочу сделать операцию, почему вы тормозите процесс?»

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

И в какой-то момент вопрос уже не в удобстве. Вопрос в выживании.

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

Чаще всего пользователь сталкивается с KYC тогда, когда уже психологически считает операцию почти завершённой. Он выбрал сумму, дошёл до нужного шага, настроился на результат и только потом внезапно получает требование загрузить документы. В этот момент это воспринимается не как мера безопасности, а как подмена условий в последний момент.

Отсюда и главный конфликт: сервис считает, что защищает процесс, а пользователь считает, что его просто остановили на финише.

На практике раздражает не только сам факт проверки, а четыре вещи.

Первая – внезапность. Если KYC появляется слишком поздно, это почти всегда вызывает негатив.

Вторая – неопределённость. Пользователь не понимает, зачем это нужно именно сейчас, сколько это займёт времени и что будет дальше.

Третья – ощущение недоверия. Особенно если интерфейс подаёт проверку сухо, без нормального объяснения.

Четвёртая – несоответствие ожиданию. Человек пришёл за быстрым действием, а получил сценарий, похожий на банковскую бюрократию, только без банковской репутации.

Именно поэтому один и тот же KYC может восприниматься по-разному в разных сервисах. Где-то пользователь проходит его спокойно, а где-то уходит с раздражением ещё до завершения.

Парадокс в том, что сам по себе KYC не убивает доверие. Его убивает плохой сценарий вокруг него. Если сервис заранее объясняет, в каких случаях может потребоваться проверка, не прячет это до последнего шага, показывает понятную логику и не превращает процесс в чёрный ящик, уровень негатива заметно ниже. Пользователь всё ещё не любит KYC, но хотя бы понимает, почему это происходит.

Если же проверка возникает внезапно, без контекста и без понятных сроков, она воспринимается как ловушка. Даже если с точки зрения комплаенса всё сделано правильно.

Поэтому KYC сегодня – это уже не только юридическая или антифрод-задача. Это ещё и продуктовая задача. Сервису недостаточно просто «включить проверку». Ему нужно встроить её так, чтобы она не ломала доверие быстрее, чем защищала бы бизнес.

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

Теги:
Всего голосов 5: ↑3 и ↓2+3
Комментарии4

7 вещей, которые нужно проверить перед любым крипто-переводом

Криптопереводы давно стали обычной частью цифровых финансов. Но, в отличие от банковских приложений, здесь одна ошибка может стоить не комиссии, а всей суммы. Проблема в том, что деньги часто теряются не из-за взломов, не из-за блокчейна и не из-за “скама”, а из-за вполне бытовых вещей: не ту сеть выбрали, не заметили важное поле, поспешили, не сверили адрес. Вот что действительно стоит проверить перед отправкой.

Первое — сеть. Один и тот же актив может существовать в нескольких сетях. Например, USDT можно отправить через ERC-20, TRC-20, BEP-20 и другие варианты. На экране это выглядит как тот же токен, но по факту это разные маршруты. Ошибка здесь — одна из самых дорогих.

Второе — адрес. Недостаточно просто скопировать его и вставить. Стоит хотя бы сверить первые и последние символы. Ошибки в буфере, невнимательность или банальная спешка — классика.

Третье — актив и сеть должны совпадать одновременно. Многие проверяют только монету или только сеть, а ошибка обычно возникает именно в связке.

Четвёртое — комиссия и итоговая сумма. Особенно если перевод идёт “впритык”. Иногда пользователь уверен, что отправляет нужную сумму, а после комиссии оказывается ниже минимального порога.

Пятое — минимальная сумма зачисления. Во многих сервисах слишком маленький перевод может прийти в сеть, но не зачислиться автоматически. И человек просто сидит и ждёт, не понимая, что произошло.

Шестое — memo, tag или дополнительный идентификатор, если он нужен. Для некоторых активов одного адреса недостаточно. Если забыть это поле, перевод может пройти, но деньги не будут привязаны к аккаунту без ручной поддержки.

Седьмое — тестовый перевод. Самый скучный совет, но самый дешёвый способ не потерять крупную сумму. Если сервис новый, сеть новая или сумма чувствительная — сначала лучше отправить небольшую часть.

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

Теги:
Всего голосов 6: ↑4 и ↓2+2
Комментарии2

Написал небольшой микросервис на FastAPI, помогающий взаимодействовать с блокчейном Litecoin для принятия платежей. Сервис напрямую подключается к любой ноде на протоколе ElectrumX.

Список нод можно взять здесь: https://1209k.com/bitcoin-eye/ele.php?chain=ltc
Либо же можно захостить свою ноду, но пока нам будет достаточно удалённой.

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

Можем взглянуть на исходный код и перейдём к обзору функционала.
https://github.com/CryptoWrapAPI/litecoin-wallet-rpc

Для начала нужно получить свой ключ к блокчейну, проще говоря, сид-фразу.
Но не каждая сид фраза подойдёт, вкратце, нужна сид фраза стандарта BIP39.
Такую сид фразу можно сгенерировать с помощью new_wallet.py

Для этого нам понадобится Python версии 3.12, потому что библиотека bip_utils пока что поддерживает только эту версию.

Mnemonic string: 
rather nasty bright aisle craft spare blood room village resource special region winter gesture despair slender tiger wall state fashion grass trophy crack monster

Master key (bytes): 865fcb279555a25bf50e2e33d37ef68b363b3eb322a68456609526f80be28a7e
Master key (extended): zprvAWgYBBk7JR8GkiSjUUwyhei9mSTEMd5ENS9xywYxsf6WLuFvq9eJjE7eFCjw3sT4AreK7cRiBgF4x8CiL5sPUhwZA3rBhFbKD1poA3iWQCg
Master key (WIF): T7ZBZxkT8ebmYHyz1vHdG9G4of2UPJm2hVky1x19kX2xtQSKKCu4

Далее для деривации (создания отдельных адресов для принятия платежей) нам понадобится extended мастер-ключ.

Отправляем его вместе с account index и address index на эндпоинт /derive (запустим тест python tests/test_derive.py)

Индексы мы можем представить как координаты адреса по оси X и Y

============================================================
TEST: Address Derivation
============================================================
XPRV: zprvAWgYBBk7JR8GkiSj...
Account index: 0
Address index: 0

Status: 200
Response:
{
  "address": "ltc1qt25zdkgj4shgyp4xw770hsjtdph6kn70zz8h06",
  "account_index": 0,
  "address_index": 0,
  "chain": "external"
}

✓ Derived address: ltc1qt25zdkgj4shgyp4xw770hsjtdph6kn70zz8h06
============================================================

Теперь этот адрес кошелька можно отправить клиенту нашего сервиса.

Чтобы проверить, поступил ли платеж, мы можем обратиться к методу get_history
https://electrumx.readthedocs.io/en/latest/protocol-methods.html#blockchain-scripthash-get-history

// В этом примере адрес начинается с tltc1 вместо ltc1 
// Потому что это testnet блокчейн :)
// Сменить testnet/mainnet можно в .env

  "tltc1qayq6ppmzztpgy354r45lkp8vjdafnhtf0yhutm": {
    "transactions": [
      {
        "tx_hash": "6803c0769c89e2cd9bbbda1d1e8715c5b11c1e69f8f9a7d46c1cd6adc2103c6a",
        "height": 4672171
      },
      {
        "tx_hash": "10bdb766e7c8a42e468862a97b10260955fafe7a0fcd219f025b4dd105077e5e",
        "height": 4672208
      }
    ],
    "count": 2,
    "timestamp": "2026-04-10T01:23:37.448442+00:00"
  }

Мы видим две транзакции, height здесь - это номер блока, в который включена транзакция, если она всё ещё находится в мемпуле (ожидает подтверждения майнерами), то мы увидим -1 или 0.

Частота блоков в Litecoin составляет ~2 минуты. То есть примерно через 2 минуты транзакция будет включена в цепочку блоков.

Узнать детали транзакции можно с помощью эндпоинта /transactions
Там будет подробное описание транзакции, включая все "входы" и "выходы", количество отправленных монет, комиссию сети, заплаченную отправителем и так далее.

На этом у меня всё, спасибо за внимание!

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Анализ истории сделок на предмет перекоса шортистов/лонгистов

Ссылка на GitHub

В backtest-kit модуль volume-anomaly используется как источник в графе сигналов - параллельно с GARCH. Если GARCH отвечает на вопрос «достаточно ли ожидаемое движение», то volume-anomaly отвечает на вопрос «является ли прямо сейчас статистически необычным моментом в микроструктуре рынка».

Пример кода

import { sourceNode, outputNode } from '@backtest-kit/graph';
import { predict } from 'volume-anomaly';
import { getCandles } from 'backtest-kit';

const ANOMALY_CONFIDENCE = 0.75;
const N_TRAIN  = 1200; // обучающее окно — должно быть без аномалий
const N_DETECT = 200;  // окно детекции

const reversalSource = sourceNode(
  async (symbol) => {
    // Важно: recent не должен пересекаться с historical
    const all        = await getAggregatedTrades(symbol, N_TRAIN + N_DETECT);
    const historical = all.slice(0, N_TRAIN);  // старые сделки — baseline
    const recent     = all.slice(N_TRAIN);     // новые — без overlap

    return predict(historical, recent, ANOMALY_CONFIDENCE);
    // {
    //   anomaly:    true,
    //   confidence: 0.81,
    //   direction:  'long' | 'short' | 'neutral',
    //   imbalance:  0.61,
    // }
 },
);

const entrySignal = outputNode(
  async ([reversal, ...]) => {
    if (!reversal.anomaly) return null;
    if (reversal.direction === 'neutral') return null;

    const position = reversal.direction; // 'long' | 'short'

    return {
      id: randomString(),
      position,
      priceTakeProfit: ...
      priceStopLoss: ...
      minuteEstimatedTime: 60,
    };
  },
  reversalSource,
  ...
);

Ключевые детали

  • Hawkes Process - кластеризация ордеров

  • CUSUM- сдвиг buy/sell дисбаланса относительно исторической нормы

  • BOCPD- смена режима: момент когда распределение дисбаланса само меняется

Как использовать

Классическая проблема DCA - ты усредняешься в падающий нож. Цена идёт против, ты докупаешь, а она продолжает падать. volume-anomaly заточен именно под это: докупать не по расписанию или по сетке уровней, а только когда ордерфлоу показывает разворот агрессии.

Теги:
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

О прогнозе нейтрального тренда актива

Ссылка на GitHub

Две полоски - лучший и худший случай, его можно прогнозировать
Две полоски - лучший и худший случай, его можно прогнозировать

В backtest-kit GARCH используется как один из источников в графе сигналов. Идея: вход открывается только если GARCH-канал достаточно широк, чтобы TP и SL уместились с запасом над комиссиями.

Например, этим можно законтрить боковик, который был на BTCUSDT в Феврале 2024

  • 5–10 февраля, 73% нейтральных баров

  • 11–16 февраля, 63% нейтральных баров

  • 19–24 февраля, 75% нейтральных баров

  • 26–29 февраля, 69% нейтральных баров

Пример кода

import { sourceNode, outputNode } from '@backtest-kit/graph';
import { predict } from 'garch';
import { getCandles } from 'backtest-kit';

const CANDLES_FOR_GARCH = 300;
const GARCH_CONFIDENCE = 0.6827; // ±1σ

const garchSource = sourceNode(
  Cache.fn(
    async (symbol) => {
      const candles = await getCandles(symbol, '8h', CANDLES_FOR_GARCH);
      return predict(candles, '8h', null, GARCH_CONFIDENCE);
    },
    { interval: '8h', key: ([symbol]) => symbol },
  ),
);

const entrySignal = outputNode(
  async ([trend, volume]) => {
    // Пропускаем если модель не сошлась
    if (!volume.reliable) return null;

    // Проверяем что до границ канала достаточно места
    const upperDiff = percentDiff(trend.close, volume.upperPrice);
    const lowerDiff = percentDiff(trend.close, volume.lowerPrice);

    if (upperDiff < TAKE_PROFIT_PERCENT) return null;
    if (lowerDiff < STOP_LOSS_PERCENT) return null;

    // TP и SL по границам GARCH-канала
    const tp = trend.position === 'long' ? volume.upperPrice : volume.lowerPrice;
    const sl = trend.position === 'long' ? volume.lowerPrice : volume.upperPrice;

    return { position, priceOpen: trend.close, priceTakeProfit: tp, priceStopLoss: sl };
  },
  trendSource,
  garchSource,
);

GARCH здесь не генерирует направление. Он отвечает только на вопрос «достаточно ли ожидаемое движение». Направление приходит от другого источника (это может быть Pine Script через @backtest-kit/pinets или LLM через @backtest-kit/ollama)

Ключевые детали

  • Parkinson estimator для per-candle RV: (1/4ln2) · ln(H/L)² — в ~5× эффективнее squared returns

  • Log-normal bands: P·exp(±z·σ) — не линейное приближение, правильное маппирование в ценовое пространство

  • reliable: true когда: оптимизатор сошёлся + persistence < 0.999 + Ljung-Box p ≥ 0.05

  • Оптимизация: multi-start Nelder-Mead, GARCH — 4 рестарта, NoVaS — 7 (11-мерная задача)

  • 932 теста, включая ground-truth тест с синтетическими данными известной волатильности

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Ближайшие события

Добавил поддержку типов System.UInt128 и System.Int128 в основную web3-библиотеку для шарпистов/дотнетчиков,— Nethereum. Уже ушло в master, так что если активно используете Nethereum для работы с протоколами, где широко представлены 128-битные типы в событиях/параметрах/результатах вызова функции и страдаете от избыточного потребления памяти BigInteger, то можно уже переключаться на версию из master (для сборки необходим nuget.exe). Особенно это актуально для AAVE, Balancer и Velodrome/Aerodrome (в последних не забывайте использовать packed-кодирование при работе с роутером).

Сейчас обсуждаем с мейнтейнером Хуаном Бланко повышение производительности и снижение потребления памяти при кодировании/декодировании целых чисел в Nethereum, после чего я подготовлю ещё один Pull Request с реализацией и ориентировочно всё эти изменения войдут в следующий релиз.

Если есть идеи, что ещё можно было бы сделать/улучшить, присоединяйтесь к обсуждению в Discord проекта (на английском/испанском) или в issues в репозитории на github.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Сложность майнинга биткоина снизилась на 11,16%. Это самое существенное изменение с момента обвала рынка после запрета майнинга в Китае в 2021 году.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Стажёр криптобиржи Bithumb случайно сделал 240 человек миллионерами — он по ошибке отправил им биткоины вместо корейских вон.

Клиенты платформы могли купить наборы Random Box, из которых могли выпасть 2000–50000 вон, но случилась небольшая ошибка: когда сотрудники начали рассылку призов, кто‑то случайно изменил воны (KRW за $1,35) на BTC. В итоге из 700 покупателей Random Box 240 открыли их и получили по 2000 ВТС на свои кошельки. Получатели бросились их продавать. Из‑за массового оттока крипты, курс BTC внутри биржи временно улетел на 10% ниже глобальной. Биржа попыталась вернуть всё на место, но счастливчики успели вывести 3 млрд вон.

В результате при распределении эирдропа биткоин на Bithumb просел на 10% относительно других рынков. Bithumb является второй крупнейшей криптобиржей Южной Кореи.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Основатель Binance написал, что «снова стал бедным». В прошлый раз он писал это, когда биткоин упал с примерно $67 тысяч до около $30 тысяч.

Тем временем биткоин обвалился на 54% относительно своего октябрьского пика 2025 года. Сегодня биткоин рухнул сразу на 14% за сутки. Аналитики Stifel прогнозируют обвал биткоина до $38 тыс.

Теги:
Всего голосов 2: ↑2 и ↓0+3
Комментарии0

Малазийские власти изъяли 1069 машин для майнинга биткойнов и уничтожили их с помощью катка. По утверждению следствия, это оборудование позволило украсть электроэнергии на $2 млн, его уничтожили по решению суда.

Теги:
Рейтинг0
Комментарии8

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

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии3

Пятого ноября все модельки, в рамках эксперимента Alpha Arena ушли в минус (Пост), шестого ноября, с проекта удалили эти данные и закрыли сезон бенчмарка третьим ноября, пока две модельки еще были в небольшом плюсе:

Выводы очевидны

Теги:
Всего голосов 3: ↑2 и ↓1+2
Комментарии3