Bitcoin Forum
May 05, 2024, 04:03:33 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
1714881814
Hero Member
*
Offline Offline

Posts: 1714881814

View Profile Personal Message (Offline)

Ignore
1714881814
Reply with quote  #2

1714881814
Report to moderator
Transactions must be included in a block to be properly completed. When you send a transaction, it is broadcast to miners. Miners can then optionally include it in their next blocks. Miners will be more inclined to include your transaction if it has a higher transaction fee.
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!