Author Topic: Half-baked Elements of Bitshares 2.0 [first read]  (Read 13940 times)

0 Members and 1 Guest are viewing this topic.

Offline Method-X

  • Hero Member
  • *****
  • Posts: 1131
  • VIRAL
    • View Profile
    • Learn to code
  • BitShares: methodx
Overall I think this is many shades of awesome.

But the high transaction fees concern me too. If you think about average Joe potentially using it to do his shopping, then saying it compares well to traditional electronic payment methods is irrelevant - because average joe doesn't pay those fees, the merchant does.Convincing someone to pay $0.20 per transaction or buy a subscription and still pay fees on every purchase is a hard sell compared to something which appears to them to be completely free. Since this hypothetical average Joe probably doesn't care about decentralization or disintermediating the banks and won't use things like the bond market or dynamic account permissions, there is very little benefit to this person to make up for the high fees.

This update potentially has everything in place for Bitshares to be used as a financial services platform by businesses and investors, but as a payment platform (which price stable currencies should be ideal for) I don't see any target market. Crypto-enthusiasts won't flock to it en masse because they like the idea of a coin possibly appreciating in value over time and don't like perceived centralization. But non crypto-enthusiasts don't have any real reason to want to use it either.

What are the benefits for somebody using BitUSD over Paypal and real USD, or bank account and debit card?

There needs to be enough advantages to overcome the fees and lack of convenient things like ATMs in every neighbourhood, or it doesn't matter how many people are trying to market it, people won't be interested.

BitUSD and other market pegged assets will likely be used in the same ways bitcoin is currently used. Prediction markets, gambling, buying "alternative" items, etc. It won't spread to mom and dad until a decade of more out. Please note that I'm not encouraging these activities, I'm just being brutally logical.

Offline monsterer

There is not a price feed for every possible combination of assets.   Even if there was a "price feed" there may not be a market.

Is it possible you've thrown the baby out with the bathwater here? You could restrict bonds to MPAs, and have them black swan to the collateral in the worst case where there wasn't sufficient market depth.
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline bytemaster

Fees for creating and canceling orders are set separately.   So it is possible that canceling orders could be free.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline Stan

  • Hero Member
  • *****
  • Posts: 2908
  • You need to think BIGGER, Pinky...
    • View Profile
    • Cryptonomex
  • BitShares: Stan
Overall I think this is many shades of awesome.

But the high transaction fees concern me too. If you think about average Joe potentially using it to do his shopping, then saying it compares well to traditional electronic payment methods is irrelevant - because average joe doesn't pay those fees, the merchant does.Convincing someone to pay $0.20 per transaction or buy a subscription and still pay fees on every purchase is a hard sell compared to something which appears to them to be completely free. Since this hypothetical average Joe probably doesn't care about decentralization or disintermediating the banks and won't use things like the bond market or dynamic account permissions, there is very little benefit to this person to make up for the high fees.

This update potentially has everything in place for Bitshares to be used as a financial services platform by businesses and investors, but as a payment platform (which price stable currencies should be ideal for) I don't see any target market. Crypto-enthusiasts won't flock to it en masse because they like the idea of a coin possibly appreciating in value over time and don't like perceived centralization. But non crypto-enthusiasts don't have any real reason to want to use it either.

What are the benefits for somebody using BitUSD over Paypal and real USD, or bank account and debit card?

There needs to be enough advantages to overcome the fees and lack of convenient things like ATMs in every neighbourhood, or it doesn't matter how many people are trying to market it, people won't be interested.

Well, one way is to use one transaction to load a debit card and then make all your mini-payments from that.
Such cards are one of the fastest ways to get merchant and user adoption because they already work everywhere.
Anything said on these forums does not constitute an intent to create a legal obligation or contract of any kind.   These are merely my opinions which I reserve the right to change at any time.

Offline bytemaster

The lender may purchase an option separately (not implemented yet).    If a lender has an option and the interest covers the cost of the option then there is no risk to the lender.   For now the lender must provide the option themselves and thus is exposed to option risk.

Why can't you make the blockchain enforce the contract fully via the same margin call mechanism the bitAssets use?

There is not a price feed for every possible combination of assets.   Even if there was a "price feed" there may not be a market. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline monsterer

The lender may purchase an option separately (not implemented yet).    If a lender has an option and the interest covers the cost of the option then there is no risk to the lender.   For now the lender must provide the option themselves and thus is exposed to option risk.

Why can't you make the blockchain enforce the contract fully via the same margin call mechanism the bitAssets use?
My opinions do not represent those of metaexchange unless explicitly stated.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline bytemaster


2. The bond market is clearly not well thought and developed. It will take far more features to actually work and work well.

Why? – Put yourself in the lenders shoes. You will require collateral equal to the loan amount + interest+ some amount to guarantee for negative price movement of the collateral. So if you are lending bitUSD and accepting say BTS as collateral you will ask for 100% + interest + some% to insure yourself if BTS goes down during the term of the loan. So say 125% of the loan amount in BTS at the current BTS/bitUSD price.

I really like all announcements except for this one. I'm always for a secure investment method, and I initially thought bonds would provide just that. however, the risk is completely with the lender it seems.

what about the Yield system? will this be gone with 2.0?

The lender may purchase an option separately (not implemented yet).    If a lender has an option and the interest covers the cost of the option then there is no risk to the lender.   For now the lender must provide the option themselves and thus is exposed to option risk. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline theoretical

I would like clarification on whether the rate that is pulled from the reserve pool is set by delegates or hard coded (or maybe it is set by delegates but with a hard-coded upper limit?).

TLDR:  Set by delegates, but with a hard-coded upper limit of 17 / 4294967296 of the reserve pool's value per second, with daily compounding.

I wrote the code which actually implements this, and was heavily involved in its design, so I can answer this question.  (In fact the image xeroc posted in this thread is based on a design diagram I drew on a white board.)

The upper limit on witness plus worker pay is equal to a fraction of the reserve pool.  Here's part of the get_max_budget() function:

Code: [Select]
   int64_t dt = (now - dpo.last_budget_time).to_seconds();

   share_type reserve = core.burned(*this) + core_dd.accumulated_fees;

   fc::uint128_t budget_u128 = reserve.value;
   budget_u128 *= uint64_t(dt);
   budget_u128 *= GRAPHENE_CORE_ASSET_CYCLE_RATE;
   //round up to the nearest satoshi -- this is necessary to ensure
   //   there isn't an "untouchable" reserve, and we will eventually
   //   be able to use the entire reserve
   budget_u128 += ((uint64_t(1) << GRAPHENE_CORE_ASSET_CYCLE_RATE_BITS) - 1);
   budget_u128 >>= GRAPHENE_CORE_ASSET_CYCLE_RATE_BITS;

It sets an upper bound on the budget equal to the reserve pool times a hardcoded factor of 17 / 2**32 per day.  Since we know the initial float (2.5 billion) and initial reserve (1.2 billion), this is enough information to calculate the annual monetary inflation with your favorite calculator (e.g. a Python shell):

Code: [Select]
>>> (1 - (1 - (17. / 2**32 * 60 * 60 * 24)) ** (365*1)) * 1.2e9 / 2.5e9
0.0563356758462306

It is a little tricky to get the compounding exactly right in the above computation (intraday is non-compounding, daily is compounding).  That number's returned from get_max_budget(), let's look at what happens to that number next:

Code: [Select]
      share_type available_funds = get_max_budget( now );

      share_type witness_budget = gpo.parameters.witness_pay_per_block.value * blocks_to_maint;
      witness_budget = std::min( witness_budget, available_funds );
      available_funds -= witness_budget;

      fc::uint128_t worker_budget_u128 = gpo.parameters.worker_budget_per_day.value;
      worker_budget_u128 *= uint64_t(time_to_maint);
      worker_budget_u128 /= 60*60*24;

      share_type worker_budget;
      if( worker_budget_u128 >= available_funds.value )
         worker_budget = available_funds;
      else
         worker_budget = worker_budget_u128.to_uint64();
      available_funds -= worker_budget;

      share_type leftover_worker_funds = worker_budget;
      pay_workers( leftover_worker_funds );
      available_funds += leftover_worker_funds;

      // available_funds is money we could spend, but don't want to.
      // we simply let it evaporate back into the reserve.
   }

gpo.parameters is the list of parameters under the delegates' control.  So the delegates set the witness pay per block and the total worker budget per day, to get a daily budget with two line items (witnesses and workers).  This delegate-set budget is restricted based on available_funds which is initially the result of get_max_budget(), and reduced by the amount spent on each line item as it is processed.  Witness are paid first, workers are paid second, and any leftover goes into the reserve.

Where I've used the word "daily" I actually mean "per maintenance block."  The maintenance block frequency will initially be daily, but it is one of the delegate-settable parameters.
BTS- theoretical / PTS- PZxpdC8RqWsdU3pVJeobZY7JFKVPfNpy5z / BTC- 1NfGejohzoVGffAD1CnCRgo9vApjCU2viY / the delegate formerly known as drltc / Nothing said on these forums is intended to be legally binding / All opinions are my own unless otherwise noted / Take action due to my posts at your own risk

Offline Permie

  • Hero Member
  • *****
  • Posts: 606
  • BitShares is the mycelium of the financial-earth
    • View Profile
  • BitShares: krimduss
I was just thinking about the high fees issue again when going for my run this morning. I really think consumer fees this high will harm the chances of mass market appeal, but at the same time I really do like the referral program.

Would it be possible to force shopping carts to use a kind of pending transaction, and to place all of the fees on the person initiating the transaction, allowing the consumer to approve or deny it at no charge?

Under a system like that a person going to their wallet and making a transfer would still pay a fee, but a person going to a shop and clicking buy at the checkout to make a transaction would not pay a fee - the merchant would pay instead. I really think moving the cost burden from the consumer to the merchant would get rid of a massive barrier in the way of average Joe public adopting this technology, whilst potentially still maintaining the required level of total fees paid.

Cryptocurrencies like Bitcoin already massively favour the merchant over the consumer, and the result of this is lots of merchants starting to use it but not so many consumers. But on the other hand, favouring the consumer may not reduce the number of merchants getting involved. Many retailers have mark ups of 50-200%. I don't think payment processing fees are a major cost burden on most retailers, but acquiring and keeping customers is. If consumers want to use Bitshares then merchants will come on board to get that extra business. Since the cost to them would still be comparable to the cost of credit cards or paypal, I don't see how that would be a problem. Also, the referral program already ads a potential extra level of monetization to merchants' checkouts, because they can add a link for people to create an account if they don't use Bitshares already.

An additional benefit of re-balancing fees towards merchants rather than consumers may be that referring a merchant account would be a lot profitable than referring a consumer, possibly allowing people to make money from marketing merchants solutions or on-boarding new retailers.
I've been thinking that supermarkets can present a QR code at checkout, that downloads the user a BitShares wallet with a gift amount of bitUSD or a supermarket couponUIA.
The supermarket can market to customers in-person and has multiple incentives to do so.
Referral fees, UIA fees, UIA competitions (e.g all UIA holders with 100 points or more get a free basket of shopping) and they can accept bitUSD at face value, and then immediately sell it on the DEX for the premium.

The supermarket may even choose to partner with popular brand names that stock their stores. The brand issues a UIA that can be QR scanned from a box of cereal etc.
An existing bts user can just scan the QR and get the UIA, and a new bts customer is directed to make a new account.
Both the supermarket and product brands benefit from BitShares customers so they can work together to encourage adoption.
JonnyBitcoin votes for liquidity and simplicity. Make him your proxy?
BTSDEX.COM

Offline fav

  • Hero Member
  • *****
  • Posts: 4278
  • No Pain, No Gain
    • View Profile
    • Follow Me!
  • BitShares: fav

2. The bond market is clearly not well thought and developed. It will take far more features to actually work and work well.

Why? – Put yourself in the lenders shoes. You will require collateral equal to the loan amount + interest+ some amount to guarantee for negative price movement of the collateral. So if you are lending bitUSD and accepting say BTS as collateral you will ask for 100% + interest + some% to insure yourself if BTS goes down during the term of the loan. So say 125% of the loan amount in BTS at the current BTS/bitUSD price.

I really like all announcements except for this one. I'm always for a secure investment method, and I initially thought bonds would provide just that. however, the risk is completely with the lender it seems.

what about the Yield system? will this be gone with 2.0?

Offline profitofthegods

  • Full Member
  • ***
  • Posts: 108
    • View Profile
I was just thinking about the high fees issue again when going for my run this morning. I really think consumer fees this high will harm the chances of mass market appeal, but at the same time I really do like the referral program.

Would it be possible to force shopping carts to use a kind of pending transaction, and to place all of the fees on the person initiating the transaction, allowing the consumer to approve or deny it at no charge?

Under a system like that a person going to their wallet and making a transfer would still pay a fee, but a person going to a shop and clicking buy at the checkout to make a transaction would not pay a fee - the merchant would pay instead. I really think moving the cost burden from the consumer to the merchant would get rid of a massive barrier in the way of average Joe public adopting this technology, whilst potentially still maintaining the required level of total fees paid.

Cryptocurrencies like Bitcoin already massively favour the merchant over the consumer, and the result of this is lots of merchants starting to use it but not so many consumers. But on the other hand, favouring the consumer may not reduce the number of merchants getting involved. Many retailers have mark ups of 50-200%. I don't think payment processing fees are a major cost burden on most retailers, but acquiring and keeping customers is. If consumers want to use Bitshares then merchants will come on board to get that extra business. Since the cost to them would still be comparable to the cost of credit cards or paypal, I don't see how that would be a problem. Also, the referral program already ads a potential extra level of monetization to merchants' checkouts, because they can add a link for people to create an account if they don't use Bitshares already.

An additional benefit of re-balancing fees towards merchants rather than consumers may be that referring a merchant account would be a lot profitable than referring a consumer, possibly allowing people to make money from marketing merchants solutions or on-boarding new retailers.

Offline zhangweis

  • Sr. Member
  • ****
  • Posts: 305
    • View Profile


What I understand of "burn" is that burnt BTS are gone and will never come back again. But in proposed BTS 2.0, the fee goes to a pool and can later come back to circuit and I don't think it's a "burn". This means the estimated final supply grows (again) to 3.7 billion from estimated 3.0 billion even if it's locked in pool.
Weibo:http://weibo.com/zhangweis

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12922
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
I do wish I am unnecessarily worried on all fronts in this thread - aka all fees are adjustable and reasonable; there is now way to dump/ distribute to the workers the 1.2Bill BTS from the 'reserve fund' in 1 just week instead of at 5BTS/sec clip max; we do have way to decide what % to burn; the bonds work like charm; etc etc.
I don't know which parameters in the end be defined but the delegates but I recall BM saying that his intentions are to have them ALL be defined by delegates and thus shareholder approval.
That includes the percentage of takeouts from the reserve fund aswell as the pay of witnesses and workers ...
see this:


Offline tonyk

  • Hero Member
  • *****
  • Posts: 3308
    • View Profile
Now this is pure optimism... I wish you are right, but I have not read anything confirming that different [deeply thought out and reasoned] fees for different transactions are coming to BTS. Are they?
In the hangout yesterday BM claimed there will be about 30 fees that have to be defined by delegates (maybe I misheard it and he meant 13 .. not sure)

Cool!

I do wish I am unnecessarily worried on all fronts in this thread - aka all fees are adjustable and reasonable; there is now way to dump/ distribute to the workers the 1.2Bill BTS from the 'reserve fund' in 1 just week instead of at 5BTS/sec clip max; we do have way to decide what % to burn; the bonds work like charm; etc etc.
Lack of arbitrage is the problem, isn't it. And this 'should' solves it.

Offline profitofthegods

  • Full Member
  • ***
  • Posts: 108
    • View Profile
Overall I think this is many shades of awesome.

But the high transaction fees concern me too. If you think about average Joe potentially using it to do his shopping, then saying it compares well to traditional electronic payment methods is irrelevant - because average joe doesn't pay those fees, the merchant does.Convincing someone to pay $0.20 per transaction or buy a subscription and still pay fees on every purchase is a hard sell compared to something which appears to them to be completely free. Since this hypothetical average Joe probably doesn't care about decentralization or disintermediating the banks and won't use things like the bond market or dynamic account permissions, there is very little benefit to this person to make up for the high fees.

This update potentially has everything in place for Bitshares to be used as a financial services platform by businesses and investors, but as a payment platform (which price stable currencies should be ideal for) I don't see any target market. Crypto-enthusiasts won't flock to it en masse because they like the idea of a coin possibly appreciating in value over time and don't like perceived centralization. But non crypto-enthusiasts don't have any real reason to want to use it either.

What are the benefits for somebody using BitUSD over Paypal and real USD, or bank account and debit card?

There needs to be enough advantages to overcome the fees and lack of convenient things like ATMs in every neighbourhood, or it doesn't matter how many people are trying to market it, people won't be interested.