Jump to content
polym0rph

Расчет комиссий биткоин

Recommended Posts

Всем привет!

 

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

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

 

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

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

 

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

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

 

Ссылка на прототип - https://bits.media/bitcoin-fee/

 

 

Версия 1:

Скрытый текст

 

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

 

Bitcoin-fee.png

 

 

Версия 2:

Скрытый текст

 

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

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

 

изображение.png

 

 

 

Share this post


Link to post
Share on other sites

@polym0rph , отлично, написал про утилиту в нашем топике про поиск оптимальной комиссии. 
Пока что с припиской, что это прототип.

Share this post


Link to post
Share on other sites

@polym0rph в целом очень правильное начинание. Все расчеты комиссий, что я видел, по качеству были от "не очень" до "совсем плохо".

6 часов назад, polym0rph сказал:

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

Т е формула (mid+min)/2/2+mid ? Средняя комиссия - по мемпулу, в последнем блоке или в нескольких последних блоках? Тот же вопрос про минимальную?

Воронку можно вверх ногами развернуть.

 

Ох. Вот сейчас (09:10 МСК) bits.media рекомендует 4-7 сатоши за байт:

621618352_Screenshotfrom2020-12-2909-09-58.thumb.png.9702cb8473ee356aa1b6b00a80cb49aa.png

И это при том, что в мемпуле 4.7 Мб транзакций с комиссией > 7 сат/байт и уже более 10 часов транзакции с комиссией <10 сат/байт не проходят совсем (если не считать "льготников"):

1610342952_Screenshotfrom2020-12-2909-10-53.thumb.png.19a74f6ede017fe9ca4b585c828fcf98.png

 

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
9 часов назад, sankopolo сказал:

Т е формула (mid+min)/2/2+mid ?

Нет, не min а max там должно быть. Остальное верно.

 

9 часов назад, sankopolo сказал:

Средняя комиссия - по мемпулу, в последнем блоке или в нескольких последних блоках? Тот же вопрос про минимальную?

В блоках особо не имеет смысла считать что было. Так что все расчеты по текущему мемпулу.

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

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

9 часов назад, sankopolo сказал:

Воронку можно вверх ногами развернуть.

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

9 часов назад, sankopolo сказал:

Ох. Вот сейчас (09:10 МСК) bits.media рекомендует 4-7 сатоши за байт:

 

7 часов назад, Graf34 сказал:

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

Это пример как страница может выглядеть для обсуждения. Я специально писал - "Пока не закончим разработку просьба не относиться к рекомендациям как к достоверным. Ссылку на утилиту нигде в меню не выносим специально, это можно сказать черновая версия в процессе разработки. " и нигде ссылку на эту страницу не давал, кроме этого топика. Сейчас только к сайту прикрутили, там еще не набрались данные, да и не факт что все стабильно будет работать тут, когда наберутся. Не надо ориентироваться на эти значения! Я напишу, когда эта штука будет стабильно работать. Пока только обсуждение какие данные и как лучше выводить, чтобы это было всем удобнее и нагляднее.
 

Share this post


Link to post
Share on other sites

Можно добавить параметр - расчетная комиссия для попадания в первый блок при 1 час задержке блоков.

Share this post


Link to post
Share on other sites
17 minutes ago, polym0rph said:

формула (mid+min)/2/2+mid

Но минимум по мемпулу уже давно единица и не меняется? Тогда получается (mid+min)/2/2+mid=1.25*mid+0.25*min=1.25*mid+0.25 ?

 

Не верится мне в такие формулы... Большая часть мемпула никак не влияет на возможность попадания в блок в короткосроке - скажем, за 6 блоков. Реально влияет только 5-10 мб "верхушка". Может, попробовать оценивать по ней?

 

Я хочу сказать, что сделать хороший рекомендатор комиссий - реально сложно. Хотя бы потому, что никакая разумная комиссия не гарантирует попадание в первый (или даже первые 6) блоков. Максимум, что можно достоверно посчитать - при такой комиссии вероятность попадания в первый блок будет примерно p_1, во второй - примерно p_2 и т д. Но кому из пользователей нужна эта куча вероятностей и что он будет с ней делать?

12 hours ago, polym0rph said:

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

Кстати, эта проблема на 95% решается включением replace-by-fee в кошельке - у транзакции можно будет менять легко комиссию на лету.

Share this post


Link to post
Share on other sites
1 час назад, 2222 сказал:

Можно добавить параметр - расчетная комиссия для попадания в первый блок при 1 час задержке блоков.

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

 

1 час назад, sankopolo сказал:

Не верится мне в такие формулы

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

В формуле у нас используется max и mid. Они уже позволяют более адекватно оценить вероятность попасть в ближайшие блоки.

 

1 час назад, sankopolo сказал:

Кстати, эта проблема на 95% решается включением replace-by-fee в кошельке - у транзакции можно будет менять легко комиссию на лету.

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

Share this post


Link to post
Share on other sites

Может как-то графически отображать тенденцию к росту или снижению комиссии? Например, красная стрелка вверх - в последних блоках комса росла, зеленая вниз - снижалась.

Share this post


Link to post
Share on other sites

@vernichter  Как вариант график средней комиссии добавить. Чтобы пользователи могли сами интерпретировать тенденцию.

Share this post


Link to post
Share on other sites
17 hours ago, polym0rph said:

Как вариант график средней комиссии добавить.

График минимальной комиссии в блоке был бы очень неплох. А ещё лучше - пятый (третий, десятый) процентиль, чтобы убрать "льготников".

Это будет график необходимой комиссии для попадания в блок.

Share this post


Link to post
Share on other sites

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

Если увидите любые аномалии - пишите.

Ну и по внешнему виду по-прежнему предложения принимаются, сейчас понятно что это черновой вариант все еще.

Share this post


Link to post
Share on other sites

Так, при 120+Мб транзакций в мемпуле сервак начинает не справляться с обработкой в реалтайме, там все транзакции отдельно обрабатываются. Похоже надо что-то оптимизировать.

Share this post


Link to post
Share on other sites

Обновили страницу https://bits.media/bitcoin-fee/

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

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

Работает весьма стабильно сейчас уже, прошлые подвисания все вылечили. Есть еще что шлифовать, но в целом уже рабочий инструмент, как мне кажется. Что скажете?

Share this post


Link to post
Share on other sites

Обновили страницу https://bits.media/bitcoin-fee/

 

Вместо сатоши/Кбайт сделали BTC/Кбайт, т.к. это значение в Bitcoin Core, удобнее сверяться.

 

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

 

Добавили значение в баксах по средней комиссии, которую сейчас платят люди. То есть буквально по текущему срезу мемпула берется сумма всех комиссий и делится на количество транзакций.

 

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

 

изображение.png

 

UPD:
При скачках удачи бывает так, что комиссий оказывается и у халявщиков даже больше, чем нужно
изображение.png

 

Share this post


Link to post
Share on other sites

@polym0rph , спасибо большое! Реально удобная штука!!!!

Только у вас там ашиппки:

"платят отправители за свои трензакции"

 

"

Share this post


Link to post
Share on other sites

@Dmitrii Storm Спасибо, сейчас поправим.

Share this post


Link to post
Share on other sites

У вас один из самых удобных калькуляторов, спасибо!

Share this post


Link to post
Share on other sites

Обновили код утилиты, ускорили обработку транзакций в несколько раз. По идее ничего отвалиться не должно)

Share this post


Link to post
Share on other sites
7 часов назад, polym0rph сказал:

Обновили код утилиты, ускорили обработку транзакций в несколько раз. По идее ничего отвалиться не должно)

 

Шик-блеск-красота!

 

Такое предложение:

возможно на бочке мем-пула сделать зарубки? Например, сбоку где-то обозначить, что в апреле 2020 было на  максимуме, условно, 350 МБайт.

А то смотришь на цифру 132 Мб и не понимаешь, это много или мало. Не с чем сравнить.

В порядке бреда, конечно.

 

А так - отличный инструмент! Спасибо!

Share this post


Link to post
Share on other sites

Поломалась шайтан-машина

2134270579_.thumb.png.acf9eb9a499075bc3acbe38d74a34b9c.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Topics

    • Биткоин или недвижимость?

      Аренда упала потому что у людей нет денег, а покупка выросла потому что ипотеку дают всем подряд, покупать под сдачу уже почти нет смысла,  разве что в надежде на краткосрочный дальнейший рост пузыря цен покупки 

      in Экономика

    • Ark Invest купила биткоин на $12 млн во время снижения курса

      Еще одна компания сообщила о покупках биткоина при падении курса ниже $30 000. Инвестиционная фирма Ark Invest купила 450 000 акций фонда Grayscale Bitcoin Trust (GBTC) по $25 за акцию. Таким образом, общий объем инвестиций составил около $12 млн. Это уже не первое вложение компании в биткоин при достижении $30 000. В прошлый раз объем закупок был еще больше — 1 млн акций. В целом под управлением Ark Invest находятся активы на $52 млрд   Под руководством Кэти Вуд (Cathie Wood) Ark

      in Новости криптовалют

    • Инвестиционная группа Ротшильдов за II квартал утроила вложения в биткоин

      Компания Rothschild Investment Corp, управляющая активами на сумму более $1 млрд, с апреля втрое увеличила вложения в биткоин через фонд Grayscale GBTC. Благодаря отчету в Комиссию по ценным бумагам и биржам США (SEC) стало известно, что компания владеет 141 405 акций Grayscale Bitcoin Trust (GBTC). При этом в апрельском отчете количество акций составляло 38 346 штук. Учитывая, что каждая акция GBTC равняется 0.000939767 BTC, получается, что группа Ротшильдов владеет 132.8 BTC. По текущем

      in Новости криптовалют

    • Glassnode: институциональный спрос на биткоин остается слабым

      Purpose Bitcoin ETF столкнулся со снижением притока институционального капитала, а фонд Grayscale Bitcoin Trust (GBTC) продолжает торговаться с заметным дисконтом. Согласно отчету Glassnode, Purpose Bitcoin ETF, один из первых одобренных канадскими регуляторами биржевых продуктов на биткоин, на этой неделе продемонстрировал замедление чистого притока капитала после периода относительно высокого спроса в мае и июне.   «Неделя завершилась самым большим чистым оттоком капитала в 90

      in Новости криптовалют

    • Сложность сети биткоин

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

      in Биткоин

×
×
  • Create New...