100% SP vs 50:50 Which one is better? Does the haircut matter?

Repository

https://github.com/steemit/steem

Introduction

Which one is better, 100% SP or 50% SBD: 50% SP? Does the haircut matter?

(TLDR: Roughly, 1: They're equivalent. 2: Doesn't matter)

Most people know that 50:50 is usually better especially when feed price was close to $1, but SBD was actually traded at much higher than 1 USD in the exchanges.

But now we're in the middle of the haircut (i.e., 1 SBD no longer guarantees 1 USD worth's STEEM), and many people seem to misunderstand which option is better now.

Unlike the explanation in @aggroed's recent post 100% powered up and its comment, I found that the two options are almost equivalent. (In fact, it's not that simple. Keep reading the main part or at least conclusion if you're interested in the detail.) Of course, I agree with @aggroed that 100% power-up helps STEEM price :) Sorry that I forgot to set 100% SP option for this post. I'll do next time.

Despite their equivalence,

  • 50:50 may still be better
    • considering liquidity benefit (who knew STEEM price comes down here?)
  • 100% power-up might still be better
    • due to rounding you may get 0.001 SP more
    • if you'll power-up anyway after receiving the reward.
    • you may get more votings :) Go for STEEM POWER! (actually this effect may not be negligible in these gloomy days)
    • may help keeping STEEM from going further down. If you're a whale (or if most people choose 100% option), that may affect the market price :)

Scope

Comparison between 100% SP vs 50% SBD: 50% SP for author reward under the recent haircut situation. I will show that they're equivalent by comparing the two options with raw block data. I'll also explain this with the Steem blockchain source code.

While the short answer is simple (they're equivalent regardless of the haircut), the details are not so simple. For those who're interested, I will give more detailed comparison.

Results

Method 1: Data analysis

Here is one of my recent author rewards with 50:50 option (12/9/2018 2pm) https://steemd.com/kr/@blockchainstudio/-2-40-utopianio--1543759120755

  • Current feed price is $0.40/STEEM on steemd.com or more accurately, 0.401 as follow:
  • Using this feed price, if you convert SBD to STEEM, you'll get the almost identical STEEM/SP for both options.

    Well, there seems to be 0.001 STEEM difference in this case due to rounding as I mentioned.

However, note that it is still possible that the amount you could've got with 100% SP option, 2 X 5.099 SP, might also have been 10.197 SP (not 10.198 SP) due to another rounding, which turns out to be true!!! as shown in 'author_rewards 10,197' (milli SP) on steemdb.com below.

In any case, the possible difference due to rounding is almost negligible, so the two options are almost equivalent. The difference isn't significant at all like "$7.5 vs $10" as in the aggroed's comment below:

https://steemit.com/money/@aggroed/100-powered-up#@aggroed/re-silvertop-re-aggroed-100-powered-up-20181208t160448672z

Two options may have different STU (Steem Token Unit)?

Well, you may still wonder if they might have a different STU from the beginning. That's a good point! And I've found that they're also identical. If you don't believe that, here it is :)

https://steemd.com/kr/@blockchainstudio/-2-40-utopianio--1543759120755
total_payout_value : 4.095 SBD is the author reward for the author (You can easily check this with steemit.com as below):

My author reward for the above post is in block #28,413,949. So I've picked one author reward with 100% SP option around that block. First one is 50:50 (mine in the above), the second one is 100% SP.

  • 50:50
{'_id': 'c34ec14fc9443f9d2b2fa872fe83ae88416ead55',
 'author': 'blockchainstudio',
 'block_num': 28413949,
 'permlink': '-2-40-utopianio--1543759120755',
 'sbd_payout': {'amount': '20', 'nai': '@@000000013', 'precision': 3},
 'steem_payout': {'amount': '5048', 'nai': '@@000000021', 'precision': 3},
 'timestamp': datetime.datetime(2018, 12, 9, 13, 58, 42, tzinfo=<UTC>),
 'trx_id': '0000000000000000000000000000000000000000',
 'trx_num': 0,
 'type': 'author_reward',
 'vesting_payout': {'amount': '10262057924',
                    'nai': '@@000000037',
                    'precision': 6}}

My recent post in the above. Again, if I chose 100% option instead, I'd have received 10.197 SP which is equivalent to the total amount that I received.

  • 100% SP
{'_id': 'aa3a9249ffed86b44501aa64d5c6a2a2c9d3df1c',
 'author': 'jpphotography',
 'block_num': 28413952,
 'permlink': 'asian-sunday-ginkaku-ji-in-autumn---kyoto-japan',
 'sbd_payout': {'amount': '0', 'nai': '@@000000013', 'precision': 3},
 'steem_payout': {'amount': '0', 'nai': '@@000000021', 'precision': 3},
 'timestamp': datetime.datetime(2018, 12, 9, 13, 58, 51, tzinfo=<UTC>),
 'trx_id': '0000000000000000000000000000000000000000',
 'trx_num': 0,
 'type': 'author_reward',
 'vesting_payout': {'amount': '15039882020',
                    'nai': '@@000000037',
                    'precision': 6}}


Post with 100% SP option

As you can see in the above, vesting_payout is 15039882020 (mvest), which is exactly 7.473 SP, as shown in the above!

STEEM/VEST ~= 0.0004969 (from steemd.com) you can access the historical value on https://steemdb.com/api/props)

Finally, 7.473 SP * feed price, you will get $3.001 SBD, again which is equivalent, as shown in the above. Done!

(Advanced) Wait a second, what about rshares?

Impressive, who are you? :) Well, you may still wonder if the same vote can have different rshares depending on the options. But they're the same and it can be easily checked on steemd.com

Method 2: Source code analysis

Here I'll explain each step with the source code briefly (See Method 1 for detailed explanation).

(After subtracting beneficiary's stake), shares are divided here depending on your option (100 or 50:50).

https://github.com/steemit/steem/blob/7ebe3f8bddf9e58c943618f55136db6330dd95a0/libraries/chain/database.cpp#L1828-L1829

As you can see, there is no trick, just plain division depending on the options you chose.

SBD is created by created_sbd() based on current feed price which already took the haircut into account!

https://github.com/steemit/steem/blob/7ebe3f8bddf9e58c943618f55136db6330dd95a0/libraries/chain/database.cpp#L1068-L1076

As you can see on https://api.steemjs.com/get_feed_history, current_median_history is already haircut. (which is very inconsistent with that all other historical values are non-haircut, which created 1% SBD printing bug that I explained here: https://steemit.com/utopian-io/@blockchainstudio/why-sbd-print-rate-is-still-1-despite-the-haircut-bug-report-explanation-and-suggestions)

So, regardless of the options you chose, they are converted the same way, so their values are equivalent.

(Advanced) What about rshares?

What if they have different rshares for the same vote depending on the options?

In fact, post reward is internally calculated in rshares in the beginning.

https://github.com/steemit/steem/blob/7ebe3f8bddf9e58c943618f55136db6330dd95a0/libraries/chain/database.cpp#L1783
rshares can easily be found at steemd.com too.

But the options do not affect the rshares.

Conclusion

The two options (100 and 50:50) are almost equivalent regardless of the haircut.

But there are some benefits in each option.

  • 50:50 may still be better
    • considering liquidity benefit (who knew STEEM price comes down here?)
  • 100% power-up might still be better
    • due to rounding you may get 0.001 SP more
    • you may get more votings :) Go for STEEM POWER! (actually this effect may not be negligible in these gloomy days)
    • if you'll power-up anyway after receiving the reward.
    • may help keeping STEEM from going further down. If you're a whale (or if most people choose 100% option), that may affect the market price :)
Advanced conclusion: When one is better than the other?

Let's forget about the minute benefits in the above, then when one can be better than the other?

Most people remember that 50:50 is better when SBD is actually traded at much higher than $1 but the feed price is still close to $1. That's the main principle.

100% SP is better when the feed price is higher than the market price. But, this is unlikely.
  • Why unlikely?

It's due to arbitrage via conversion. If the feed price is higher than the market price, that means you can receive more STEEMs from conversion than the amount you can get by selling SBD in the market. Of course, there's uncertainty, since the conversion takes 3.5 days. But anyway, the arbitrage opportunity cannot sustain long (unless Steemit is really eager to burn SBD by giving some incentive).

While the market is very volatile these days, the feed price is close to the market price more or less.

So you can benefit from 100% SP if you're very lucky to have higher feed price than the market price after 7 days you choose the option :) Of course, strictly speaking, if you convert with 50:50 option, and the feed price after another 3.5 days are even higher, then 50:50 is again better.

So which one is actually better? It's not that simple at all. All I can say for sure is it's very uncertain :) It isn't something that you can predict. Maybe the day will come again? SBD is traded at much higher than 1 USD? :) Then, choose 50:50.

Otherwise, I'd rather say they're virtually the same :) Just choose 50:50 if you need some STEEM, or 100% SP if you wanna fast power-up!

Tools and Scripts

  • Steem Python library to get raw block information.
  • Getting raw blocks is so simple (library doc has an example), so I don't include the script (unless there's a request from utopian-io).

Relevant Links and Resources

Proof of Authorship

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now