Процесс обмена. Децентрализованные криптовалютные площадки, как правило, используют атомарные свопы для автоматического обмена одной криптовалюты на другую. Сделки осуществляются в соответствии с концепцией PLUG & PLAY, то есть все происходит здесь и сейчас, без необходимости подключать к платформе криптовалютный кошелек или переводить на депозит биржи нужную сумму.
При торговле на DEX нет посредников
Криптовалютная биржа при таком обмене выступает площадкой, где стороны встречаются, договариваются об условиях обмена и проводят транзакцию. Это происходит с помощью
торговых ордеров, в которых пользователи указывают торговую пару и курс, после чего система автоматически сопоставляет эти данные с другими ордерами и, если выявлено соответствие, проводит сделку (или сделки).
Если обмен по выбранной торговой паре не может быть осуществлен посредством атомарных свопов, биржа может провести транзакцию, используя двустороннее условное депонирование. Это осуществляется с помощью смарт-контракта, который принимает активы обеих сторон и затем проводит обмен.
Как создать скрипт децентрализованного обменника криптовалют
Наём компании-разработчика
Если есть желание создать обменник, который будет максимально соответствовать заявленным заказчиком требованиям, то лучшим решением будет разработка софта при помощи компании на аутсорсе. Итогом станет уникальное решение, качественное функционирование которого будет гарантировать фирма-исполнитель.
Готовое программное обеспечение
Нет ничего проще и в то же время удобнее, чем решение «из коробки», которое достаточно просто выбрать и купить. Впоследствие компания-разработчик собственными силами проводит установку, настройку и тестирование. Ещё более простой путь – покупка готовой площадки и её ребрендинг (переименование).
White label решения
Адаптация готового продукта под конкретный бренд довольно часто является превосходным решением. Криптобиржа на типовой базе, как правило, становится либо временной альтернативой, либо дополнительной услугой для клиентов. Основная деятельность покупателя подобного продукта не связана с криптовалютой, но тематика довольно близка. Наличие криптовалютной площадки диктуется трендами и спросом.
Данный подход экономит деньги и время разработки, так как скрипт, по сути, уже создан, а его реализация — это действия по установке, настройке и тестированию. При этом, в отличие от покупки готового продукта, настройка в white label решениях довольно широкая, благодаря чему можно создать продукт, который будет выделяться среди конкурентов.
Разработка внутри компании
Создать программное обеспечение для централизованной криптовалютной биржи можно и внутри компании. Для этого нужно найти хороших специалистов, купить оборудование, арендовать (выделить) помещение и организовать процесс разработки. Все это весьма обременительно и далеко не всегда оправдано, особенно если важны скорость и гарантия качества.
На что обратить внимание при разработке
Торговый движок
Движок – ядро создаваемой биржи. Именно он связывает покупателей с продавцами. Это основа любой криптовалютной биржи. Торговый движок собирает всю информацию, элементы и функции площадки в один механизм для того, чтобы:
- сопоставлять ордера для поиска контрагентов;
- инициализировать смарт-контракты обмена активами;
- осуществлять расчет остатков.
Скорость и производительность биржи зависят именно от торгового механизма. Как правило, платформы используют лимит и рыночные ордера, дабы гарантировать высокий уровень производительности.
Некоторые системы в угоду продвинутым трейдерам позволяют размещать ордера стоп-лимит и стоп-лосс.
Для создания торгового движка нужны углубленные навыки программирования и понимание блокчейн-технологий, то есть создавать его — это долго и дорого. Но здесь можно сэкономить, если использовать софт с открытым кодом, который выкладывают на GeekHub. Правда, не факт, что это программное обеспечение будет качественным и надежным.
Атомарные свопы
Под атомарными свопами подразумевают разновидность одноранговых операций обмена виртуальными активами без участия третьих лиц, в том числе обменников. Обычно с их помощью люди меняют одну криптовалюту на другую, но могут быть варианты с обменом данными, сертификатами и прочим.
Пример атомарного свопа для обмена биткоинов на эфир
По своей природе это смарт-контракты, которые
работают с двумя блокчейнами и используют для обмена протокол Lightning Network. Внутри таких контрактов либо алгоритм с параллельным одновременным обменом, либо алгоритм, использующий двустороннее условное депонирование.
Преимущества атомарных свопов:
- Цена. Атомарные свопы используют Lightning Network, поэтому транзакционные комиссии таких операций очень низкие. Например, одного доллара хватит для сотен операций с биткоинами в Lightning Network. Тогда как комиссия при обычной биткоин-транзакции составляет 25 центов (12 февраля 2019 года).
- Децентрализация. Атомарные операции запускают непосредственные участники сделки, и в них никто не может вмешаться или отменить.
- Скорость. Если не учитывать время для ожидания подтверждения транзакции для закрытия контракта, то можно сказать, что операция обмена осуществляется практически мгновенно.
- Легкость. Чем меньше участников, тем проще сделка.
- Безопасность. Шанс того, что данные украдут, минимален, поскольку информация идёт напрямую от клиента к клиенту без посредников в лице централизованной биржи или третьей стороны.
Тем не менее, присутствует и ряд если не недостатков, то моментов, на которые необходимо обратить внимание. Прежде всего, для осуществления обмена с применением атомарных свопов криптовалюты должны быть основаны на блокчейнах, которые используют один и тот же алгоритм хеширования (например, SHA-256).К тому же валюты должны быть совместимыми с HTLC и другими программируемыми функциями. К тому же некоторые исследователи беспокоятся о проблеме приватности: атомарные стволы вполне реально отследить в блокчейне, благодаря чему технически грамотный человек без проблем может связать адреса пользователя между собой.
Книга заказов
Децентрализованные площадки, как правило, не любят использовать стандартные книги заказов, вместо этого они используют Distributed hash table (DHT). Как и в случае с децентрализованным блокчейном, информация в таких книгах заказов шифруется и распределяется между узлами экосистемы. Следовательно, чтобы ее изменить или украсть, нужно найти и взломать большую часть этих узлов.
Особенности книг заказов на DHT:
- Децентрализация. Используют систему независимых, физически разделенных узлов, которые контролируются пользователями, а не какой-то централизованной структурой (сервером).
- Масштабируемость. Сеть одинаково эффективно работает как с тысячей, так и с миллионом узлов.
- Отказоустойчивость. Система в целом будет работать, даже если многие из ее узлов отключатся, будут постоянно подключаться/отключаться или выдавать ошибки.
Пользовательский интерфейс
Это то, как пользователь видит вашу биржу. Интерфейс должен быть удобным, отказоустойчивым и приятным внешне. Пользователь должен с первого взгляда понять, как осуществить торговую операцию, что для этого нужно сделать и как получить доступ к другим функциям.
Пример элементов пользовательского интерфейса DEX
При разработке пользовательского интерфейса нужно ориентироваться на такие правила:
- Логичное и последовательное предоставление информации, что уменьшит когнитивное напряжение пользователя и облегчит знакомство с системой и ее использование.
- Сведение к минимуму потенциальных ошибок пользователей. При этом должна быть возможность быстро откатить все действия назад и совершить их повторно.
- Все иконки и кнопки должны быть стандартизированы, то есть означать одно и то же в разных разделах и запускать одинаковые действия (вперед, назад, отменить, купить и тому подобное).
- Эстетичность и минимализм.
Платежные инструменты
Это необязательный модуль, поскольку
скрипт для децентрализованного обмена криптовалютами работает напрямую с кошельками пользователей. Однако для увеличения охвата аудитории и оборота на площадке нужно подумать об обмене виртуальных активов на фиатные деньги и наоборот. Для этого необходимо наладить партнерские отношения с банками и платежными сервисами.
Выбор конкретных платежных сервисов должен зависеть от географии:
- Северная Америка: PayPal, 2Checkout, Simplify Commerce, Stripe, WorldPay, SagePay, Amazon Payments.
- Латинская Америка: 2Checkout, PayU Latam, Mercado Pago, Pagseguro, WorldPay.
- Европейский Союз: SecurionPay, Skrill, Stripe, Amazon Pay, PayPal.
- Азия: 2Checkout, Paypal, Skrill, WorldPay, Alipay, UnionPay, Tenpay.
- СНГ: PayPal, WebMoney, Qiwi, Yandex.Money, Robokassa.
- Африка: MyGate, SagePay, Ingenico, WafaCash, Skrill.
Для подключения платежных сервисов MasterCard, VISA, American Express нужно обратиться в местный банк и заключить с ним соответствующий договор.
Внутренний мессенджер
В случае, если биржа ориентируется не только на автоматические обменные операции, но и на прямые сделки между пользователями, то добавить компонент, обеспечивающий общение в реальном времени, более чем необходимо.
Для обеспечения полномасштабного общения мессенджер должен быть вштым в скрипт, то есть не быть буфером между платформой и почтой либо автономными мессенджерами. Остальные требования к мессенджеру – децентрализованный способ обмена сообщениями и независимость от блокчейн-сетей.
Панель администратора
Нужна для управления ресурсом и настройки переменными конфигурациями обмена.
К возможностям этого рабочего инструмента нужно добавить такие функции:
- Возможность вручную пополнять счета в случае проблем с поддержкой и билетов.
- Управление листингом торговых пар.
- Расширение списка криптовалют.
- Изменение торговых сборов.
- Средства арбитража.
Ликвидность
Децентрализованные биржи не заставляют пользователей переводить деньги на депозиты площадки, создавая таким образом пулы ликвидности, поэтому у таких площадок есть проблемы со скоростью обработки транзакций.
Эту проблему решают двумя способами:
- Дилинговый центр — модуль, создающий «искусственный» курс по выбранным торговым парам. Делая ставки по этим торговым парам, трейдеры играют против биржи.
- Внешний пул ликвидности — интерфейс API, который подключает площадку к другим биржам (например, Kraken) или поставщикам ликвидности.
Во втором случае ваша биржа принимает
заявку на покупку/продажу криптовалюты и отправляет ее внешнему поставщику ликвидности, который ее и обработает. Это ускорит операции обмена, но немного увеличит их стоимость, так как поставщику ликвидности нужно будет платить комиссию.
Каналы поддержки клиентов
Служба поддержки клиентов – это не просто механизм ликвидации проблем с пользователями, которые нередко обладают сложным характером либо недостаточно опытны для квалифицированного обращения с биржей. Это также инструмент для апгрейда собственной платформы, поскольку никто не подскажет, что требуется добавить, убрать или улучшить лучше, чем сам клиент. Персонал обеспечивает обратную связь (желательно – круглосуточно), отвечает на жалобы, одобряет или отвергает запросы KYC и так далее.
Для поддержки можно как использовать исключительно живых операторов, так и гибридную систему: с простыми вопросами разбирается нейросеть в виде бота, а в случае сложных вопросов она переключает пользователя на оператора.
Потенциальные затраты и усилия
Даже по самым скромным оценкам запуск биржи криптовалют обойдётся очень недешево. Даже при условии найма программистов из стран постсоветского пространства, Африки или Азии, что, как правило, подразумевает намного меньшие затраты на производство, сроки (даже при наличии у специалиста должной квалификации) варьируются от пары месяцев до полугода, а по финансовым расходам – от 50 000 до 240 000 евро в Европе и от 65 000 до 310 000 долларов в США. Ниже представлен более детальный разбор с учётом затрат на работу каждого конкретного специалиста.
