🤖 [DEXBot] Маркет-мейкинг: инструкция по использованию

Содержание:

1. Вступление

2. Инструкция по установке

3. Типы работников

  • Ступенчатые ордера
  • Относительные ордера
  • "Царь Горы"

4. Создание работника


Вступление

Прежде всего, мы хотели бы поприветствовать вас в рядах сообщества DEXBot!

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

Проект DEXBot родился из спора группы людей со всего мира о способах повышения ликвидности на децентрализованных рынках. Идея бесплатного ПО с открытым исходным кодом для торговли (точнее, инструмента для маркет-мейкинга) оказалась довольно популярной. Основной задачей DEXBot является повышение ликвидности, и он делает это. DEXBot можно использовать на любом рынке на базе блокчейна Graphene.


Инструкция по установке

Для начала скачайте последнюю версию бота:

https://github.com/graphene-blockchain/DEXBot/releases

Убедитесь, что вы загрузили файл, подходящий для вашей операционной системы – его название будет содержать «win64» и иметь расширение «.zip».

После этого извлеките файл в желаемую папку и откройте приложение «DEXBot-gui» двойным кликом. DEXBot запустит процесс установки, и по ее завершении на экране появится окно, запрашивающее у вас пароль кошелька (wallet password).

image.png
Этот экран не запрашивает пароль вашего блокчейн-кошелька. DEXBot создает файл (кошелек), который защищает ваши ключи с помощью шифрования. Позже вам нужно будет ввести ключи, чтобы DEXBot мог вносить изменения в блокчейн, что и обеспечивает защиту этих ключей. Выберите адекватный пароль. Затем вы попадёте на панель инструментов DEXBot, где вам нужно создать работника. Пожалуйста, прочтите раздел «Типы работников», прежде чем переходить к разделу «Создание работника».

image.png


Типы работников

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

Ступенчатые ордера (SO)

image.png

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

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

image.png

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

Рассмотрим некоторые особенности SO-работников:

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

SO-работников можно запускать в одностороннем порядке. Если пользователь начинает со всего одним активом, DEXBot разместит ордера ближе к рыночной цене и будет ждать, пока какой-либо из них заполнится. Получаемая прибыль будет использоваться для добавления ордеров на другую сторону, пока стратегия не станет полностью сбалансирована (в соответствии с конфигурацией).

У SO есть 5 различных режимов стратегии, таких как:

Режим горы (Mountain) концентрирует средства ближе к центру диапазона (вокруг спреда), уменьшая объем к внешним границам. Он приносит больше прибыли «прямо сейчас» и ускоряет её получение, однако не очень хорош, если цена значительно отклоняется к границам диапазона.

image.png

Режим долины (Valley), очевидно, является противоположностью режима горы и предназначен для начального разгона рынка или для использования на рынке с высокой волатильностью. Он дает небольшую прибыль, если цена остается там, где он был запущен, но при этом способен противостоять огромным изменениям и любит волатильность, так как крупные ордера выполняются ближе к границам выбранного диапазона.

image.png

В режиме (Buy Slope) размер ордера фиксирован в базовом активе (BASE) на всём диапазоне. Независимо от цены (котируемого актива – QUOTE) ордера будут иметь одинаковый размер и приносить одинаковую прибыль. Этот режим имеет смысл, только если вы начинаете с гораздо большим количеством базового актива по сравнению с котируемым. Вся прибыль будет получена в котируемом активе.

Режим (Sell Slope) является полной противоположностью режима Buy Slope. Размер ордеров фиксируется в котируемом активе. Вы можете добиться того же, используя Buy Slope, но поменяв местами базовый и котируемый активы.

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

Относительные ордера (Relative Orders)

image.png

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

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

Эта стратегия требует, чтобы DEXBot постоянно был онлайн.

Для стратегий RO существует набор разных параметров и различные способы их оформления. Они сводятся к следующему:

Спред

Спред – это расстояние между размещаемыми ордерами на покупку и продажу.

Фиксированный спред. Пользователь может ввести желаемый спред и отменить выбор опции «динамический спред».

Динамический спред устанавливает зависимость вашего спреда от рыночного – он меняется каждый раз, когда создаются новые ордера, и имеет несколько доступных опций, таких как «глубина рынка». Если для параметра «Глубина рынка» установлено значение «0», спред будет рассчитываться по ближайшим ордерам на покупку и продажу в стакане, в противном случае спред будет рассчитываться по требуемой глубине биржевого стакана. «Коэффициент динамического спреда» выражает размер вашего спреда относительно рыночного в процентном соотношении; если ввести значение менее 100%, вы получите спред, меньший, чем текущий рыночный спред.

Центральная цена

Центральная цена рассматривается как справочная цена для размещения собственных ордеров.

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

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

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

Размер ордера

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

Относительный размер ордера зависит от того, сколько актива у вас есть. 10% означает, что он выделит 10% от имеющегося у вас базового актива и 10% от вашего котируемого актива. Это помогает поддерживать сбалансированность резервов активов, так как при накоплении какого-либо одного актива размер ваших ордеров будет увеличиваться (с этой стороны), а при их выполнении это поможет перебалансировать резервы.

Опция сброса

Эта функция нужна, когда вы хотите, чтобы DEXBot перевыставил размещаемые ордера.

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

Изменение цены будет следить за центральной рыночной ценой, и если она изменится больше, чем на желаемое значение, это вызовет сброс ордеров.

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

"Царь Горы" (The King Of The Hill Strategy)

image.png
Эта стратегия заключается в стремлении быть “Царём Горы” (ЦГ) – всегда иметь самую высокую заявку на покупку и/или самую низкую заявку на продажу. ЦГ может использоваться только с ордерами на покупку, только с ордерами на продажу, или и с ордерами на покупку, и на продажу – в зависимости от конфигурации.

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

Параметры работника

Режимы ЦГ: "Покупки и Продажи", "Только Покупки", "Только Продажи"

Нижняя граница: Самая низкая цена, по которой работник должен выставлять заявки на продажу. Этот DEXBot-работник не будет выставлять заявки на продажу ниже данной цены.

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

Количество (BASE): Фиксированный размер ордеров на покупку, если не включена опция "Относительный размер ордера".

Количество (QUOTE): Фиксированный размер ордеров на продажу, если не включена опция "Относительный размер ордера".

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

Игнорировать Ордера на Покупку Меньше: Работник будет игнорировать ордера на покупку, размер которых меньше, чем значение данного параметра. Если пороговое значение не выставлено, то в его качестве будет использоваться размер ордеров на покупку самого работника, и он будет игнорировать ордера, размеры которых меньше его собственных.

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

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

Когда использовать Царя Горы

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

У ЦГ есть 3 режима: только покупки, только продажи и покупки+продажи. Режим Покупок+Продаж может использоваться схоже со стратегией Относительных Ордеров – со спредом, который всегда будет чуть ниже, чем у ближайшего наилучшего конкурента.


Создание работника

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

На панели инструментов DEXBot выберите «Добавить работника» (“Add Worker”), затем вы увидите следующее окно:

image.png
Прежде чем выбрать свою стратегию и ввести необходимые «Параметры работника» (“Worker Parameters”), вам нужно будет ввести адрес своего кошелька (аккаунта) и приватный активный ключ. Вы можете найти свой приватный активный ключ на DEX в разделе «права доступа», как показано ниже; убедитесь, что вы находитесь во вкладке «действующие права доступа» (активные разрешения), а не «права доступа владельца» или “мемо-ключ”. Нажмите на ваш публичный ключ, как показано ниже:

image.png
После нажатия на ваш публичный ключ вы увидите окно «Просмотр приватного ключа», как показано ниже, где вы можете раскрыть свой ключ, нажав «Показать». Вам будет предложено ввести пароль, если вы еще не вошли в систему. Для данной демонстрации я использовал RuDEX, однако процесс должен быть таким же и на других интерфейсах DEX, например в кор кошельке Graphene.

image.png

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

Нативные активы Graphene, т.н. смарткойны и кор актив, вводятся в следующем формате:

USD, GPH

Так как блокчейн Graphene используют шлюзы, они, как правило, добавляют к активам свой префикс, чтобы пользователи знали, какой актив был выпущен какой биржей, например:

RUDEX.BTC, RUDEX.ETH, RUDEX.USDT, XCHNG.TRX, XCHNG.USDT, XCHNG.VIZ

ПРИМЕЧАНИЕ: Вы можете ввести название в раскрывающемся списке базовых активов.

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

image.png

Я надеюсь, что это руководство дало вам всю необходимую информацию, а если вам нужна дополнительная поддержка, пожалуйста, присоединяйтесь к нам в Телеграм по ссылке: RU_DEX


Десктоп приложение с открытым исходным кодом под Linux, Windows, MacOS


Чаты сообщества в Telegram:
https://t.me/RU_DEX (рус)
https://t.me/graphene_dex (eng)


   
В ожидании ответов...
Станьте первым, кто начнёт обсуждение!