Bitcoin Forum
May 05, 2024, 07:32:15 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Маркетмейкер с плавающим спредом  (Read 203 times)
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 06, 2021, 08:26:34 AM
Last edit: March 13, 2021, 02:32:24 PM by imhoneer
 #1

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

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

Посмотрите на картинку, это обычный велосипедный механический счетчик расстояния:



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

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

Однако, если мы пойдем с вами в любой банк, то увидим там обменник не с одной, а с двумя ценами, тоже самое есть и на бирже.
Разница между этими ценами и называется спред. Спред выполняет важную функцию, он не только помогает обменнику зарабатывать, ведь обменник продает нам  по более дорогой цене ASK, а покупает у нас по более дешевой BID, но и показывает состояние рынка.
Если спред  узкий, то рынок ведет себя спокойно и там нет неопределенности в цене, такая цена устраивает, как покупателей, так и продавцов.

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

Просто представьте, что кто-то по ошибке загрузил большую сумму крипты на продажу в обменник типа Uniswap, цена скажем просела с 1000 до 500. В то время, как у остальных этого не было и цена где-то в пределах 900-1000. Вот тут и появляются арбитражеры, которые видят, что могут у этого обменника купить дешевле по 500 и продать другим уже за 1000.

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

Давайте сразу перейдем к скриншоту и я буду всё объяснять с расчетами:



В нашем обменнике применяется также классическое ценообразование с коэффициентом:
 k=ETH*USDC=1,000*1,000,000=1,000,000,000

В отличие от комиссии на обмен у Uniswap 0.03% мы применяем более меньшую комиссию в 0.01%, плюс минимальный спред также в 0.01% (посмотрите на начальные цены BID=1000 и ASK=1010).

Как вы видите из расчетов у нас в обменнике было 1,000.00 эфира ETH и вот кто-то решил продать для нашего обменика эфира ETH равную всему нашему запасу. Давайте теперь подсчитаем курс по которому мы купим этот эфир у него:

- для начала подсчитаем сколько у нас всего будет эфира, после покупки:
1,000+1,000=2,000.00 ETH;

- подсчитаем сколько всего должно получиться стейблкоинов с таким новым количеством эфира:
USDC=k/ETH=1,000,000,000/2,000=500,000.00 USDC;

- теперь подсчитаем сколько денег у нас пойдет на покупку 1,000 ETH:
1,000,000-500,000=500,000.00 USDC;

- теперь подсчитаем курс по которому пройдет данная сделка, а это количество стейблкоинов, которые мы хотим потратить на покупку эфира, разделить на количество покупаемого эфира:
500,000/1,000=500.00.

Теперь посмотрите наш скриншот , строка с зеленой 1,000.00. Зеленый цвет означает покупку 1,000.00 эфира ETH, далее столбец в этой строке USDC означает сколько денег у нас должно остаться, а именно 500,000.00, чуть вправо число 500,000.00 это разница между первоначальным значением USDC и текущим, а фактически означающим сколько денег и идет на покупки этих эфиров.

Теперь обратите внимание в этой строке на столбец BID, там значение 500.00 это и есть наш вычисленный курс.

Таким образом до текущего момента всё это работало одинаково, как и у обменников типа Uniswap.

Однако Вы видите в этой строке и столбец с ценой ASK. Первоначально он был равен 1010.00, а теперь стал 757.50.
Цена ASK – это цена по которой вам обменник продает эфиры. После резкого падения цены, курс BID – покупки эфиров этим обменником рухнул на 50%, а вот уже курс продажи эфиров ASK этим обменником рухнул только на 25%.

Такая ситуация со спредом дает нам следующее: если мы будет опять покупать эфиры, то будем вести отчет от цены BID, а вот если мы будем продавать эфиры, то будем вести отчет от цены BID, но продавать по цене ASK.

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

Давайте теперь подсчитаем данные по продаже этих 500 эфиров:

- для начала подсчитаем сколько у нас всего будет эфира, после продажи:
2,000-500=1,500.00 ETH;

- подсчитаем сколько всего должно получиться стейблкоинов с таким новым количеством эфира:
USDC=k/ETH=1,000,000,000/1,500=666,666.67 USDC;

- теперь подсчитаем сколько денег у нас пойдет на продажу 500 ETH:
666,666.67-500,000=166,666.67 USDC;

- теперь подсчитаем курс по которому пройдет данная сделка, а это количество стейблкоинов, которые мы хотим потратить на покупку эфира разделить на количество покупаемого эфира:
166,666.67/500=333.33.

И так мы видим, что курс продажи эфира намного меньше, чем наш курс покупки эфира, поэтому цену BID не меняем, а оставляем прежней 500, а вот продаем мы по цене ASK и именно по этой цене и видит человек продажу ему эфиров и пока скажем так внутренний расчетный курс не перебьет цену ASK по ней и продаем.

В этой строке прошу обратить внимание впрво, на красное выделенное число 378,750.00 это именно столько денег нам принесет продажа по цене ASK.

Теперь сравните, продажа эфира, как у Uniswap, нам принесла бы только 166,666.67 USDC в то же время продажа по нашей модели по цене ASK принесет 378,750.00 USDC.

Теперь, чтобы наши расчеты не сбивались, то мы считаем, что наш обменник продал только на сумму 166,666.67 USDC, а остальная сумма (крайняя справа выделенная красным) 212,083.33 уйдет на дивиденды.

Продажа второй партии 500 эфиров, пройдет аналогичным образом. Обратите внимание, что спред изменился, наша цена продажи ASK не изменилась, а вот цена BID подтянулась до значения 666.67. Излишки денег опять ушли на дивиденды.

Теперь обратите внимание на продажу следующей партии 500 эфиров, здесь уже внутренний курс перебил цену ASK и стал 2,000, тогда мы подтянули цену ASK к цене BID добавили 0.01% и получили новую цену ASK, по которой и продали эти 500 эфиров. Излишки денег опять отправили на дивиденды.

Также хочу пояснить одну вещь, в модели этого обменника важен порядок прохождения заявок. Условно прошла заявка на продажу нам большой суммы эфиров, курсы стали BID=500 и ASK=757,50. Если проходит ещё одна заявка на продажу нам эфиров, то есть получается 2 заявки подряд на продажу нам эфира, то спред схлопывается до своего минимального значения допустим уже становиться после 500 и последующей еще продажи, следующим  BID=450.00 и ASK=450.05. В данном случае важен принцип: лучше лишний раз схлопнуть спред до минимального, чем потерять на обороте. Так как если цены станут не выгодны, обмен прекратиться и надо будет ждать момента, когда цены выйдут из диапазона и они существенно изменится, чтобы наши цены были снова выгодны или хотя бы адекватны рынку.

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

В скриншоте приведены 3 модели:

- Обменник с комиссией 0.1% от суммы обмена;
- Обменник с комиссией 0.3% от суммы обмена, пример Uniswap;
- Обменник с комиссией 0.1% от суммы обмена плюс плавающий спред;

Вот результаты и подсчет при курсе расчета ETH/USDC=2000:

- Обменник с комиссией 0.1% от суммы обмена принес  3,767.50 USDC;
- Обменник с комиссией 0.3% от суммы обмена, пример Uniswap,принес 10,500.00 USDC;
- Обменник с комиссией 0.1% от суммы обмена плюс плавающий спред, принес 271,267.50 USDC;

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




         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
1714894335
Hero Member
*
Offline Offline

Posts: 1714894335

View Profile Personal Message (Offline)

Ignore
1714894335
Reply with quote  #2

1714894335
Report to moderator
Be very wary of relying on JavaScript for security on crypto sites. The site can change the JavaScript at any time unless you take unusual precautions, and browsers are not generally known for their airtight security.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 10, 2021, 11:55:28 AM
 #2

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



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
Vtools
Full Member
***
Offline Offline

Activity: 411
Merit: 135


View Profile WWW
March 13, 2021, 02:01:40 PM
 #3

Фактически такой обменник, как в темноте нащупывает цену.

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



В отличие от комиссии на обмен у Uniswap 0.03%

Кстати, у тебя в тексте комиссия унисвопа указана 0,03%  хотя на самом деле она у них 0,3%
А вот в принскринах(видимо в расчетах) - нормальная.
Подправь плиз.

Restart of the TERA project in 2022
Web ܀ ANN ܀ Discord ܀ Telegram ܀ Twitter
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 13, 2021, 03:04:01 PM
 #4


Кстати, у тебя в тексте комиссия унисвопа указана 0,03%  хотя на самом деле она у них 0,3%
А вот в принскринах(видимо в расчетах) - нормальная.
Подправь плиз.

Спасибо, что указали, где ошибся. Уже исправил.



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

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

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

Суть вот в чем:

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

2. Основная наша цена которая подчиняется начальной формуле ценообразования к=ETH*USDC - это цена BID, а вот цена ASK - она двигается за этой ценой, как хвостик. В случает падения условно цены BID на 50% вниз, она падает только на 25%. Также в случае схлопывания спреда, по какой либо причине, она все равно привязывается к цене BID+0.1%. В случае, если цена BID в расчетах начинает превышать цену ASK, то происходит, то что цена BID становиться, как получилась в расчетах, а вот цена ASK привязывается к цене BID+0.1%.


Таким образом при минимальном спреде, наш обменник зарабывает на самом спреде 0.1% и плюс комиссия 0.1%. Что в итоге дает при минимальном раскладе 0.2% с тразакции ( у Uniswap напомню 0.3%), а вот если произошла раздвижка спреда, то обменники типа Uniswap не зарабатывают, а теряют деньги на арбитражерах, а вот наш обменник именно, что и зарабатывает.


Ну сравните сами, если брать расчеты и это получились результаты за сутки (примеры с комиссией 0.1% не беру):

Вот результаты и подсчет при курсе расчета ETH/USDC=2000:

- Обменник с комиссией 0.3% от суммы обмена, пример Uniswap,принес 10,500.00 USDC;
- Обменник с комиссией 0.1% от суммы обмена плюс плавающий спред, принес 271,267.50 USDC;

У нас начальный капитал был всего при курсе ETH/USDC=1000, тогда 1,000*ETH+USDC=1,000*1,000+1,000,000=2,000,000 USDC.


Смотрим прибыльность в процентах за сутки и за 365 дней:

- Обменник с комиссией 0.3% от суммы обмена, пример Uniswap,принес за сутки 10,500.00/2,000,000*100=0.525%, за 365 дней 0.525*365=191.625%;

- Обменник с комиссией 0.1% от суммы обмена плюс плавающий спред, принес за сутки 271,267.50/2,000,000*100=13.56%, за 365 дней 13.56*365=4,949.4%;


Сравните разницу по прибыльности такого пула, а я напомню, что при минимальном спреде здесь человек платит 0.2% от тразакции, а не 0.3%, как у Uniswap.





         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
Vtools
Full Member
***
Offline Offline

Activity: 411
Merit: 135


View Profile WWW
March 14, 2021, 12:46:24 PM
 #5


Мне интересна тема AMM, но я опять прошу прощения я ничего не понял.
Но сразу скажу что у меня есть уже опыт - я недавно создал DeFi, который совмещает с собой стейблкоин (USD) и Своп. Своп классический - аналогичен uniswap, поэтому я думаю что хорошо представляю как  работает uniswap. В нем AMM - стандартный. Добавлены только варианты защиты от манипуляций курсом.

Вот пример работы этого свопа:

Quote
Обмен
Смарт-контракт содержит резервы ликвидности TERA и USD, и сделки совершаются непосредственно против этих резервов. Цены устанавливаются автоматически с помощью механизма маркет-мейкера (x*y=k), который поддерживает общие резервы в относительном равновесии. Обмен ведется в предположении постоянства значения TeraSwapPool * USDSwapPool = Invariant. Этот инвариант не изменяется и остается практически одной и той же константой при всех обменах (комиссия незначительно влияет на инвариант), существенно он изменяется только при добавлении или удалении ликвидности.

Обмен Тера на USD

При таком обмене увеличивается TeraSwapPool и уменьшается USDSwapPool

var AmountFee=AmountTera*KFee;
var Invariant=TeraSwapPool * USDSwapPool;
var TeraSwapPoolNew = TeraSwapPool + AmountTera;
var USDSwapPoolNew = Invariant/(TeraSwapPoolNew - AmountFee);
var USDOut = USDSwapPool - USDSwapPoolNew;

TeraSwapPool = TeraSwapPoolNew;
USDSwapPool = USDSwapPoolNew;

Более подробно в документации (RUS: https://docs.google.com/document/d/1iTp9gjpwa4KTqkh1TCy_-kccPdTDFDH2uSD-vWgZqQs/edit?usp=sharing )



Обратная операция фактически симметрична, поэтому не буду приводить.  Таким образом я хочу сказать что нет никакой цены ASK или BID. Есть только движение по кривой x*y=k


P.S.
Кстати мне еще ОЧЕНЬ интересна тема про манипуляции курсом на AMM (для создания защит от них). Какие вы знаете (особенно те которые не вошли в документ указанный выше)?



Restart of the TERA project in 2022
Web ܀ ANN ܀ Discord ܀ Telegram ܀ Twitter
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 15, 2021, 01:32:21 PM
Last edit: March 15, 2021, 01:45:28 PM by imhoneer
 #6


Мне интересна тема AMM, но я опять прошу прощения я ничего не понял.
Но сразу скажу что у меня есть уже опыт - я недавно создал DeFi, который совмещает с собой стейблкоин (USD) и Своп. Своп классический - аналогичен uniswap, поэтому я думаю что хорошо представляю как  работает uniswap. В нем AMM - стандартный. Добавлены только варианты защиты от манипуляций курсом.

Вот пример работы этого свопа:

Quote
Обмен
Смарт-контракт содержит резервы ликвидности TERA и USD, и сделки совершаются непосредственно против этих резервов. Цены устанавливаются автоматически с помощью механизма маркет-мейкера (x*y=k), который поддерживает общие резервы в относительном равновесии. Обмен ведется в предположении постоянства значения TeraSwapPool * USDSwapPool = Invariant. Этот инвариант не изменяется и остается практически одной и той же константой при всех обменах (комиссия незначительно влияет на инвариант), существенно он изменяется только при добавлении или удалении ликвидности.

Обмен Тера на USD

При таком обмене увеличивается TeraSwapPool и уменьшается USDSwapPool

var AmountFee=AmountTera*KFee;
var Invariant=TeraSwapPool * USDSwapPool;
var TeraSwapPoolNew = TeraSwapPool + AmountTera;
var USDSwapPoolNew = Invariant/(TeraSwapPoolNew - AmountFee);
var USDOut = USDSwapPool - USDSwapPoolNew;

TeraSwapPool = TeraSwapPoolNew;
USDSwapPool = USDSwapPoolNew;

Более подробно в документации (RUS: https://docs.google.com/document/d/1iTp9gjpwa4KTqkh1TCy_-kccPdTDFDH2uSD-vWgZqQs/edit?usp=sharing )



Обратная операция фактически симметрична, поэтому не буду приводить.  Таким образом я хочу сказать что нет никакой цены ASK или BID. Есть только движение по кривой x*y=k


P.S.
Кстати мне еще ОЧЕНЬ интересна тема про манипуляции курсом на AMM (для создания защит от них). Какие вы знаете (особенно те которые не вошли в документ указанный выше)?


Ну вот, для Вас это представляет практический интерес поэтому и давайте поговорим предметно к вашему обменнику.

Вы привели уже работающую модель Uniswap, которую можно форкнуть и сделать сразу для себя. Моя же модель пока не существует в реальности, поэтому её я и предлагаю в этой теме.

Защита от манипуляций, а также больших неопределенностей ситуации - это раздвижка спреда.

Я уже писал, как это в моей модели.

Просто представьте, что у Вас резко просел курс в вашем обменнике скажем с 1000 до 500. Ваша терра подешевела на 50% одним рывком. С одной стороны сейчас это хорошо, ведь стоило терра 1000, а Вы купили её за 500.

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

Если в остальных обменниках цена просто просела с 1000 до 900, а у Вас с 1000 до 500. То кто на этом заработает, все, но только не ваш обменник. Так как условно у Вас купят по 500 и продадут в другом месте за 900.

Теперь Вы видите, что ваш обменник не зарабатывает, а теряет деньги.

У меня же при аналогичной ситуации было бы так. Цена покупки ещё терры была 500 (как и в вашем случае), далее у Вас цена продажи терры тоже была бы 500, а вот у меня благодаря спреду была бы уже 750.

То есть Вы видите разницу, да при таком резком спаде арбитражерам было бы ещё выгодно покупать у меня по 750 и продавать за 900, но я бы уже зарабатывал, так как мы купили за 500, а продаем за 750 минимум.

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


Теперь по поводу ваших решений по ссылке:

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

У Вас обменник живет в первую очередь с объема операций, какая заморозка монет, это просто не допустимо.


Quote
Одностороннее пополнение пулов

Этот вопрос актуален при пополнения ликвидности в одностороннем режиме выбора пула - когда выбирается только USD или только TERA. При больших суммах и немедленном применении пула равновесие может значительно нарушиться.

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


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


P.S.Только сейчас обратил внимание, что у Вас там не совсем обменник, а попытка создать стейблкоин, тогда Вам тоже ко мне, но уже сюда    
Стейблкоин со страховкой. Grin




         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 25, 2021, 12:56:09 PM
 #7

И так в мире DeFi произошли изменения и Uniswap назвала дату запуска третьей версии протокола.

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

Для начала я прошу Вас перейти к калькулятору комиссии на этой странице Introducing Uniswap V3

Он находится под абзацем:

Quote
The tool below calculates the capital efficiency gains of a concentrated liquidity position (centered around the current price) relative to allocating capital across the entire price curve.

И там сразу ваше депо (Liquidity Deposit Value, Value of paired tokens) начинается с 15000$.

Даже тот условный пример, если ничего не трогать показывает, что если мы зададим промежуток для ликвидности от цены Эфира 1200$ до 2800$ при текущей 1820$, то комиссия будет всего лишь в 5.25 раза больше, чем была до этого.

Видны следующие недостатки:

1. Вы видите, что не так всё красиво, как заявлено.

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

3. Здесь уже надо думать, какой диапазон задать, а это надо иметь квалификацию трейдера или инвестора.


Я приводил примерные расчеты и сравнивал свой вариант с вариантом Uniswap, так вот мой вариант дает на всём диапазоне, без всякой концентрированной ликвидности своим инвесторам примерно в 25.8 раз больше комиссии, чем у Uniswap.



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
andy_pelevin
Legendary
*
Offline Offline

Activity: 2223
Merit: 1123


Altcoinlog


View Profile
March 26, 2021, 10:51:07 AM
 #8

....
3. Здесь уже надо думать, какой диапазон задать, а это надо иметь квалификацию трейдера или инвестора.
....

Квалификация нужна в любом деле, а уж в финансовые дела без квалификации вообще лучше не соваться...

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

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

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


█████████████████████████████████████████████
█████████████████████`````███████████████████
████████████████████```````██████████████████
███████████████████````````█████████████████
██████████████████```███`````████████████████
█████████████████```█████`````███████████████
████████████████```███████`````██████████████
███████████████```█████████`````█████████████
██████████████```````````````````████████████
█████████████```█████████████`````███████████
████████████```███████████████`````██████████
███████████```█████████████████`````█████████
██████████```███████████████████`````████████
████████`````███████████████████```````██████
█████████████████████████████████████████████
gdgdgdg
Altcoin
КАК НАСТРОИТЬ МАЙНИНГ?
ИНСТРУКЦИЯ

| OK   VKONTAKTE
| TWITTER   TELEGRAM
| FACEBOOK    INSTAGRAM


[/center
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 27, 2021, 07:52:26 AM
 #9


Продавцы ликвидности получают свой % от торговых комиссий и движения курсов...

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



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
JohnSilver
Sr. Member
****
Offline Offline

Activity: 1026
Merit: 280


🇧🇬 Crypto Since MMXIII


View Profile
March 27, 2021, 09:47:28 PM
 #10

Quote
У меня же при аналогичной ситуации было бы так. Цена покупки ещё терры была 500 (как и в вашем случае), далее у Вас цена продажи терры тоже была бы 500, а вот у меня благодаря спреду была бы уже 750.

Плохая новость и везде просело резко до 500... Будем продавать по 750 или что?

ПС: Еще хуже – у нас упало до 500, а везде до скажем 600 – наша цена ни на покупки, ни на продажи актуальна...
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 28, 2021, 07:54:17 AM
 #11


1. Плохая новость и везде просело резко до 500... Будем продавать по 750 или что?

2. Еще хуже – у нас упало до 500, а везде до скажем 600 – наша цена ни на покупки, ни на продажи актуальна...

И так по пунктам:

1. Если везде упало до 500$, а у нас продажа по 750$, то конечно по такой цене не будут у нас покупать, но у нас цена 500$ для закупок. Это значит, что нам ещё могут продать эфира и тем самым ещё больше уменьшив цену. Далее у нас произойдет вторая сделка подряд в одном направлении, а значит спред схлопнится до значений BID+0.1%.

Условно у нас было BID=500$ и ASK=750$, мы купили ещё немного эфира следующей сделкой и цена BID ещё немного уменьшилась и стала скажем BID=497$, а вот наш спред сразу же схлопнулся и стал равен после этого ASK=BID+0.1%=497.50$.


2. Почему это хуже. Упала у нас цена закупки эфира BID и она стала 500$, в то время в других местах закупают эфир по 600$. Ничего страшного, у нас значит будет актуальна цена ASK=750$, где мы продаем эфир. Каждая продажа эфира будет происходить по цене ASK и подтягивать вверх цену BID, пока она не станет актуальной и начнутся и сделки по цене BID, либо эта цена BID продолжит расти и превысит значения ASK, тем самым его обновив и схлопнув спред.


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



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
JohnSilver
Sr. Member
****
Offline Offline

Activity: 1026
Merit: 280


🇧🇬 Crypto Since MMXIII


View Profile
March 28, 2021, 10:32:47 AM
 #12

Quote
... после этого ASK=BID+0.1%=497.50$

Ну, тогда арбитражник настрочит сделку на 1 сатоши чтобы спред схлопнулся и приходим до стандартном ММ Унисвапа.
imhoneer (OP)
Legendary
*
Offline Offline

Activity: 2548
Merit: 1511



View Profile
March 29, 2021, 05:57:15 AM
 #13

Quote
... после этого ASK=BID+0.1%=497.50$

Ну, тогда арбитражник настрочит сделку на 1 сатоши чтобы спред схлопнулся и приходим до стандартном ММ Унисвапа.

В блокчейне этот арбитражник не один находится, плюс не забываем, что сейчас комиссия в эфире 3$-5$. Поэтому фактически чередование сделок подряд будет близко к случайному. Плюс мы ничего не теряем при схлопывании спреда, даже этим арбитражником. Так как он его схлопнет для того, чтобы у нас купить эфир, а после покупки как цена BID, так и цена ASK увеличатся. Таким образом даже при схлопывании спреда мы получим 0.1% от комиссии сделки и плюс 0.1% от спреда (ведь продаем мы по цене BID+0.1%), которые в итоге дадут 0.2%, что не так и мало по сравнению с Uniswap у которого 0.3%.



         ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▄      
        █  █▀▀▀▀▀▀▀█  █        
       ▄▀▀▀▀▄     ▄▀▀▀▀▄      
▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄
█ ▄▀▀▀▀▀▀▀▀▀ ▄▄▄▄▄ ▀▀▀▀▀▀▀▀▀▀ █
█ ▀        ▄▀ ▄ ▄ ▀▄          █
█▄▄▄      █   █▀█   █      ▄▄▄█
 █  ▀▀▀▄▄▄█   █▀▀▄  █▄▄▄▀▀▀  █
 █        █   █▄▄█  █        █
 █         ▀▄ ▀ ▀ ▄▀         █
 █           ▀▀▀▀▀         █ █
 █ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀ █
 ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀
    ▀▀                   ▀▀  



Arbitrum Balance
/



             ▄▄████▄▄
         ▄▄████████████▄▄
      ▄██████████ █████████▄
█▀█▄▄▄███████████ █▀█▀██████
▀▀▀         ▀████      ▀████
▀▀▀▀▀▀▀▀█▀▀▄    █ ████  ████
     ▄▄▄ ▀▄ ▀▀▀▀█        ███
     █▄█   ▀▀▀▀▀█ █████  ███
▄▄▄▄▄▄▄▄█▄▄▄▄▄▄▄█       ▄██
   ▄▄▄     ▄█████ █▄█▄████
   █▄█▀▀▀▀███████ ██████▀
            ▀████████▀▀
              ▀▀██▀▀

           


imhoneer investment fund
/


   ▄▄███████████████▄▄
 ▄█████████████████████▄
▄██████████████▀▀███████▄
████████████▀▀    ███████
█████████▀▀   ▄   ███████
██████▀▀     █    ███████
████▀       █     ███████
█████▄▄   ▄█      ███████
████████ ██▄      ███████
▀████████ ▀▄███▄▄███████▀
 ▀█████████████████████▀
   ▀▀███████████████▀▀


Telegram-канал @imho_idea
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!