Author Topic: Witness pay in BitShares 2.0  (Read 3507 times)

0 Members and 1 Guest are viewing this topic.

Offline Thom

Private Bitassets have feeds too.  All ops need fees to prevent spam.

This is not a valid concern, unless you are worried about witnesses spamming the network, as only voted in witnesses can publish feeds.

I say eliminate the feed fees completely. It's easy to monitor the feed publish frequency, and if a witness starts to update so often it is considered DoS they are harming rather than helping the ecosystem and should be voted out, just as if they miss too many blocks.

Please explain why you wish to increase your feed publish rate so much puppies. It's not like you're the only one publishing prices. Plus, most are getting their info from the same source and right now most are processing that info with the same algorithm, so it is highly redundant to increase your feeds. On average we publish feeds every 2 minutes.

How often does the input info change? Does yahoo publish in real time what the market is doing?

Yahoo really isn't the source I'm worried about.  As far as I know they are only used to get fiat and commodity prices.  I'm less worried about the current yen dollar ratio or the current price of silver.  If greater concern is the USD price of Btc and the Btc price of bts.  These can change rapidly. 

Even though someone is publishing a feed every 2 minutes we use the mean of all published feeds to determine the Blockchain feed price.  We are not simply using the last published feed.   So if the price changes 10% in ten minutes it will still take us an hour to fully adjust, and almost as long to even get close. 

If everyone else feels that an hours lag is acceptable then I am fine with it, but I know we could do better.

First BM set me straight in today's mumble regarding the non-exclusivity of witnesses being able to publish feeds, so spamming can be an issue. That being the case the obvious way to combat that is raise witness pay to compensate, so that feed fees effectively are zero cost to witnesses.

Some may say they already are, if witnesses are willing to accept less pay. Of course, but THAT is essentially asking witnesses to work for free, and that is not good for several reasons.

One thing that isn't discussed too much on this topic is server costs. That actually has a fair amount of variability, and is also up to each witness to establish for themselves, not only with their choice of VPS providers but also how many nodes to setup. How are witnesses supposed to make such decisions if they can't reliably determine their net pay? The costs are determinant, but withdrawal vesting and bugs there is a certain level of uncertainty.

I need to decide before 11/2/2015 if I will renew some of my seed node VPS servers, since they are billed monthly. Other seed nodes I use are billed hourly so they can be managed basically in real time. Those VPS providers charge more than the smaller, monthly based providers do. Diversity in geolocations is important but so is diversity in providers.

In general I don't feel these issues are discussed nearly enough. That was true in 1.0 and I believe it is still true in 2.0.

Another issue not discussed very much is reputation vs. real work identity. I just watched a video that addresses that head on and is worth watching, I strongly encourage it: https://www.youtube.com/watch?v=cZzXEa9kpnE. That video makes a strong case that tying real world identities to online identities is not necessary to establish a reliable and trustworthy reputation, a position I completely agree with. That's one reason I do not support Identibit, tho I do recognize their right to develop a blockchain that is so contrary to the core values BitShares was built on. It's a classic example of a dilemma.

Getting back to witness pay and feed fees. @puppies - if the published feed prices are aggregated as you indicate doesn't that reduce the impact of your feed rate? Moreover, you didn't really address the source of feeds issue I raised directly, tho you did indirectly by saying your focus and concern is not on the mainstream markets but rather crypto markets, namely the BTC | BTS market. That is a good point, b/c those markets are open 24/7/365. Even so, how often does the source change? Although there may be a lag, it is definitely more of a real time source of data. In that respect your point of a 1 hour update period due to the way feeds are aggregated which is built into (the wallet / openledger?) is clearly a valid concern, tho I'm not sure increasing your feed frequency is the best way to address it, or even that it is an effective means to address it. 
« Last Edit: October 23, 2015, 06:57:51 pm by Thom »
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: https://bitsharestalk.org/index.php/topic,23902.0.html

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
Private Bitassets have feeds too.  All ops need fees to prevent spam.

This is not a valid concern, unless you are worried about witnesses spamming the network, as only voted in witnesses can publish feeds.

I say eliminate the feed fees completely. It's easy to monitor the feed publish frequency, and if a witness starts to update so often it is considered DoS they are harming rather than helping the ecosystem and should be voted out, just as if they miss too many blocks.

Please explain why you wish to increase your feed publish rate so much puppies. It's not like you're the only one publishing prices. Plus, most are getting their info from the same source and right now most are processing that info with the same algorithm, so it is highly redundant to increase your feeds. On average we publish feeds every 2 minutes.

How often does the input info change? Does yahoo publish in real time what the market is doing?

Yahoo really isn't the source I'm worried about.  As far as I know they are only used to get fiat and commodity prices.  I'm less worried about the current yen dollar ratio or the current price of silver.  If greater concern is the USD price of Btc and the Btc price of bts.  These can change rapidly. 

Even though someone is publishing a feed every 2 minutes we use the mean of all published feeds to determine the Blockchain feed price.  We are not simply using the last published feed.   So if the price changes 10% in ten minutes it will still take us an hour to fully adjust, and almost as long to even get close. 

If everyone else feels that an hours lag is acceptable then I am fine with it, but I know we could do better.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline BunkerChainLabs-DataSecurityNode

Why would any witnesses be overly concerned with their level of profitability at this early juncture when we're trying to get the system up and running?  Wouldn't they be more concerned with establishing themselves as good, reliable witnesses so they will be in a position to profit handsomely in the not-too-distant future? 

As for the specific issue of the feed publishing fees, ultimately these are going to be a very small cost relative to witness income, no?

they currently account for roughly 34% of total income for a witness at the current rate of updates that witnesses update... which is not as much as it should be as this thread has said.

You want witnesses to profit because otherwise they are going to cut corners an be susceptible to other influences.
+-+-+-+-+-+-+-+-+-+-+
www.Peerplays.com | Decentralized Gaming Built with Graphene - Now with BookiePro and Sweeps!
+-+-+-+-+-+-+-+-+-+-+

Offline tbone

  • Hero Member
  • *****
  • Posts: 632
    • View Profile
  • BitShares: tbone2
Why would any witnesses be overly concerned with their level of profitability at this early juncture when we're trying to get the system up and running?  Wouldn't they be more concerned with establishing themselves as good, reliable witnesses so they will be in a position to profit handsomely in the not-too-distant future? 

As for the specific issue of the feed publishing fees, ultimately these are going to be a very small cost relative to witness income, no?

Offline BunkerChainLabs-DataSecurityNode

I agree this needs to be addressed. The fees are set due to the space they take in the system.. but its the witnesses that themselves are providing that space and paying for it. Taking more out in fees on the witnesses is almost like a double tax on them to provide resources to the network and making the position no longer profitable. Without a profit motive, this creates other potential issues.

There are many ways this can be handled. I think reducing the fee is a good start... possibly even eliminating it for now.. for the very reason I stated.. its a double tax on witnesses because they are the ones already paying for the infrastructure.
+-+-+-+-+-+-+-+-+-+-+
www.Peerplays.com | Decentralized Gaming Built with Graphene - Now with BookiePro and Sweeps!
+-+-+-+-+-+-+-+-+-+-+

Offline Thom

Private Bitassets have feeds too.  All ops need fees to prevent spam.

This is not a valid concern, unless you are worried about witnesses spamming the network, as only voted in witnesses can publish feeds.

I say eliminate the feed fees completely. It's easy to monitor the feed publish frequency, and if a witness starts to update so often it is considered DoS they are harming rather than helping the ecosystem and should be voted out, just as if they miss too many blocks.

Please explain why you wish to increase your feed publish rate so much puppies. It's not like you're the only one publishing prices. Plus, most are getting their info from the same source and right now most are processing that info with the same algorithm, so it is highly redundant to increase your feeds. On average we publish feeds every 2 minutes.

How often does the input info change? Does yahoo publish in real time what the market is doing?
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: https://bitsharestalk.org/index.php/topic,23902.0.html

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
Private Bitassets have feeds too.  All ops need fees to prevent spam.

Isn't there a whitelist to allow feed production on private bitassets? 

Whos preventing me from issuing a private bitasset and DOSing the network?

If that is the concern do you think 2bts is enough to deter this attack after they already paid the registration fee for their asset.

Ultimately I just want to see witnesses producing feeds more often.  I see two ways of accomplishing this. 

First of all we could reduce the fee so that witnesses can afford to publish more often.  This unfortunately reduces the price of a spam attack as well.

Or we could raise the pay of witnesses with the expectation that they increase feed production.  This requires that we hold our witnesses accountable.  Something we have not yet proven we are capable of.

I am open to any and all other ideas.

I would also like to say that I have no problem paying 2880bts a month to publish feeds.  My issue is that I would like to publish every 6 minutes as opposed to 60, and I do have a problem paying 28800bts a month to publish feeds.

If everyone else thinks once an hour is enough I will gladly let it go.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline fav

  • Administrator
  • Hero Member
  • *****
  • Posts: 4278
  • No Pain, No Gain
    • View Profile
    • Follow Me!
  • BitShares: fav
Current witness fess cover the costs, if I understand this correctly. and that's exactly the purpose of a witness

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12920
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Private Bitassets have feeds too.  All ops need fees to prevent spam.

Isn't there a whitelist to allow feed production on private bitassets? 

Whos preventing me from issuing a private bitasset and DOSing the network?

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
Private Bitassets have feeds too.  All ops need fees to prevent spam.

Isn't there a whitelist to allow feed production on private bitassets? 

Regardless the current fee structure on pricefeeds is leading to an inferior product.   Our peg would be better if all witness published feeds every ten minutes or so.  The issue is that at this price that would cost $70 a month.  That's a third of current witness pay. 
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline sittingduck

  • Sr. Member
  • ****
  • Posts: 246
    • View Profile
Private Bitassets have feeds too.  All ops need fees to prevent spam.

Offline Thom

Thanks puppies. I have thought about the 80% fee rebate before, but you're right I did leave it out of the figures here, so thanks for bringing that into the discussion.

I think it makes a great deal of sense to reduce or even eliminate fees for feeds. Don't know how the fees are coded, whether they are completely individualized or belong to a grouping, thereby making it impossible to change one transaction fee without affecting another one in that group.

Frankly I don't know what BM was thinking regarding feed fees. I just don't see the wisdom in charging a fee to provide a necessary function. It's like charging a fee to start a witness or seed node, or to unlock a wallet. Why not have a fee for when the code opens the blockchain database?

Feeds are essential for BitAssets to exist. They should be considered to be "internal ooverhead" and any costs associated with them should be factored into others fees, such as the transactions related to BitAssets. It makes no sense to me at all for witnesses, who should be neutral parties with the minimum possible bias or political agenda should even have control over feed parameters other than feed info source and publishing frequency.

If it is necessary for parameters like the short queeze ratio to change dynamically based on market conditions perhaps there should be a separate role for feed publishers. IMO that makes a great deal of sense, as the knowledge required for operating a witness and a feed are totally different; one is completely technical in nature the other competely economic. Merging them both into a single entity called a "witness" may save some cost, but architecturally it doesn't make logical sense.
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: https://bitsharestalk.org/index.php/topic,23902.0.html

Offline puppies

  • Hero Member
  • *****
  • Posts: 1659
    • View Profile
  • BitShares: puppies
one thing you missed Thom is 80% cash back on fees.  fees should be 14400 * 0.2 = 2880.  So pay is 43200 - 2880 = 40320. 40320 * 0.004 = 161.28

I don't quite understand why fees to publish feeds are so high.  I would like to see them reduced so witnesses can begin publishing every few minutes, or anytime there is a large change.  I think that raising witness pay would be an inferior solution as there are already witnesses that are not publishing feeds, and this would just incentivize that behavior further.
https://metaexchange.info | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Offline Thom

It's. 1.5 bts per block.  That was mentioned by bm, but is also very visible on the Blockchain.  Please don't withdraw any witness pay until we know the issue is fixed.  It is possible that you will cause a fork if you do.

Get_vesting_balance will show your available balance in satoshis.  Divide by 100000 to find available balance.

What? You must be kidding right? When was this ever discussed? Your post is now several days old, is it still valid? References would certainly be nice to see.

Secondly, our pay is nowhere near $300 / month given the feed costs. DSN and I talked about  this for quite awhile on Telegram last night. Taking feed fees into consideration we're not even close to the $300 / month Bytemaster said would be the initial witness pay level.

I've made 2 withdrawals, the first Sunday and the second last night . I took out 1000 BTS at a wack until I got an error. Both Sunday and last night the most I could extract was 5000 BTS. According to get_global_properties of the cli wallet witness pay is 15 BTS per block not 1.5: "witness_pay_per_block": 150000. Perhaps that's a bug, but everywhere else a BTS balance is seen you drop 4 zeros to get the true BTS value not 5 as would be required for the pay rate to be 1.5 BTS per block.

86400 seconds in a day * 30 days = 2592000 seconds in a month.
2592000 / 3 = 864000 blocks in a month (for all witnesses, no blocks missed at all, a block generated every 3 seconds)
864000 / 30 witness = 28800 per witness per month, assuming no missed blocks

28800 blocks * 1.5 BTS per block = 43200 BTS - gross witness pay per month
20 BTS to publish each price feed * 24 (publish once per hour) = 480 BTS per day * 30 days = 14400 cost of feeds for the month

43200 BTS gross witness pay
-14400 BTS feed costs
------------------------------------------
28800 BTS net witness pay per month
* $0.004 / BTS
------------------------------------------
$115.20 USD net monthly witness pay
- server costs for 1 VPS
~$50
------------------------------------------
$65.20 USD pay

Tack on fees for seed nodes or backup witnesses and you can wind up upside down.

This needs to be fixed.

What is the best way to go about it? What level of witness pay should be set? Bytemaster said initially it would be $300 / month but as you can see from the figures above that is NOT the way it is. He probably set that rate based on 17 witnesses not 30, but ask yourself, who was the 1 person that had enough votes to vote these 30 witnesses in? He may not have voted in all 30, but I can almost guarantee he voted in more than 17.

At this point your witnesses are subsidizing the network. Bytemaster has said that should not be, but here we are.

Cutting down on the number of witnesses is one way to increase pay for those that remain, as would lowering the transaction fees for price feeds.

We should be open to looking at all ideas, but the current situation is not good and something needs to be done about it.



Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: https://bitsharestalk.org/index.php/topic,23902.0.html

Offline pc

  • Hero Member
  • *****
  • Posts: 1530
    • View Profile
    • Bitcoin - Perspektive oder Risiko?
  • BitShares: cyrano
Not sure how this is supposed to be, but I noticed that currently my delegate pay vests after only a few seconds, not after a day.

Code: [Select]
get_vesting_balances cyrano
[...{
    "id": "1.13.35",
    "owner": "1.2.28788",
    "balance": {
      "amount": 610650000,
      "asset_id": "1.3.0"
    },
    "policy": [
      1,{
        "vesting_seconds": 86400,
        "start_claim": "1970-01-01T00:00:00",
        "coin_seconds_earned": "52747200000000",
        "coin_seconds_earned_last_update": "2015-10-18T07:32:06"
      }
    ],
    "allowed_withdraw": {
      "amount": 610650000,
      "asset_id": "1.3.0"
    },
    "allowed_withdraw_time": "2015-10-18T07:32:48"
  }]

Notice that allowed_withdraw.amount == balance.amount. balance.amount increases when I sign a block, and a few seconds later allowed_withdraw.amount adjusts accordingly.
Bitcoin - Perspektive oder Risiko? ISBN 978-3-8442-6568-2 http://bitcoin.quisquis.de