Voting Power Matters? 能量需要恢复满么?

in #cn7 years ago (edited)


Image Credit: Pixabay.com

We all know that each 100% vote costs your 2% voting power, and every 24 hours, your voting power restores 20%. This means that you can vote 10 times at 100% one day and the voting power will remain the same the next day.

The question comes: Given a 30 days period, and approximately 60% voting power at the day 1, is there a much bigger gain to restore your voting power to 100% (wait 2 days) ?

I always thought there is not much difference in terms of total curation earnings until today.. I wrote a VBScript that reveals the truth.

The first strategy, just vote 10 times 100% per day every day in the 30 days' period. Assume 10K SP 100% gives 1 SBD. And suppose the 10 votes are done in a row (the VP restored during upvotes can be ignored)

Function Strategy1(ByVal sp, ByVal vp, ByVal days)
    income = 0
    While days > 0
        For i = 1 To 10
            income = income + sp * vp / 10000
            vp = vp - 0.02
        Next    
        vp = vp + 0.2
        days = days - 1
    Wend 
    Strategy1 = income
End Function 

The second strategy, let's wait a few days before the VP is restored, adding a parameter rest in the unit of days.

Function Strategy2(ByVal sp, ByVal vp, ByVal days, ByVal rest)
    days = days - rest
    vp = vp + 0.2 * rest  ' 1 day restores 20%
    If vp > 1 Then
        vp = 1  ' voting power can only be maximum 100%
    End If 
    income = 0
    
    While days > 0
        For i = 1 To 10
            income = income + sp * vp / 10000
            vp = vp - 0.02
        Next    
        vp = vp + 0.2
        days = days - 1
    Wend 
    Strategy2 = income
End Function

In my case, I have 10K SP so let's assume these values:

steempower = 10000
votingpower = 0.6
daysofcuration = 30
restoredays = 2

So the simulation gives:

WScript.Echo ("Strategy 1 Max Income = " & Strategy1(steempower, votingpower, daysofcuration))
WScript.Echo ("Strategy 2 Max Income = " & Strategy2(steempower, votingpower, daysofcuration, restoredays))


Strategy 1 Max Income = 152.999999999999
Strategy 2 Max Income = 254.799999999999

This is a BIGGGGGGGGG difference! The lower voting power, longer periods, the bigger difference! So.... you might consider letting your upvoting robot take a few days' rest...

Correction @tumutanzi told me my understanding was not exactly right. The 2% loss is to the current VP, so instead of vp = vp - 0.02 the correct version is vp = vp * 0.98.

So the correct version to emulate steemit curator is (you can vote 11 times per day)

Function Strategy1(ByVal sp, ByVal vp, ByVal days)
    income = 0
    While days > 0
        For i = 1 To 11
            income = income + sp * vp / 10000
            vp = vp * 0.98
        Next    
        vp = vp + 0.2
        If (vp > 1) Then
            vp = 1
        End If 
        days = days - 1
    Wend 
    Strategy1 = income
End Function 

Function Strategy2(ByVal sp, ByVal vp, ByVal days, ByVal rest)
    days = days - rest
    vp = vp + 0.2 * rest
    If vp > 1 Then
        vp = 1
    End If 
    income = 0
    
    While days > 0
        For i = 1 To 11
            income = income + sp * vp / 10000
            vp = vp * 0.98
        Next    
        vp = vp + 0.2
        If (vp > 1) Then
            vp = 1
        End If      
        days = days - 1
    Wend 
    Strategy2 = income
End Function

And this gives totally different results,

steempower = 10000
votingpower = 0.6
daysofcuration = 30
restoredays = 2

WScript.Echo ("Strategy 1 Max Income = " & Strategy1(steempower, votingpower, daysofcuration))
WScript.Echo ("Strategy 2 Max Income = " & Strategy2(steempower, votingpower, daysofcuration, restoredays))

It indicates there is NOT much difference at all!

Strategy 1 Max Income = 279.67590316366
Strategy 2 Max Income = 278.976108950286


Image Credit: Pixabay.com


虽然说小鱼的点赞策略就是喜欢的点,因为SP少点赞收益没有多少区别,但是现在 @justyy 已经有超过1万的SP 了,所以今天想了一下这么一个问题。

我们都知道,一次100%点赞消耗能量 2%,一天恢复20%的能量相当于一天中你可以点满10次。那么问题就是,假设30天时间内,你一天点10次,最大收益是多少?

为了简化分析模型,我们假设1万SP能量全满点赞收益是1 SBD,那么如果初始能量只有60%,我们是不是需要等恢复了90%甚至是全满后再点这样效果会好一点呢?

我本来以为没啥区别,直到今天晚上无聊随便写了段VBScript代码来分析,结果让我很吃惊。

第一种策略,从第一天就开始点满10次,假设这10次都是一下子点完,两次点赞间的能量恢复可以忽略不计,那么我们可以用以下代码来模拟:

Function Strategy1(ByVal sp, ByVal vp, ByVal days)
    income = 0
    While days > 0
        For i = 1 To 10
            income = income + sp * vp / 10000
            vp = vp - 0.02
        Next    
        vp = vp + 0.2
        days = days - 1
    Wend 
    Strategy1 = income
End Function 

第二种策略,多加了一个参数,先休息几天,恢复恢复能量,然后再点。

Function Strategy2(ByVal sp, ByVal vp, ByVal days, ByVal rest)
    days = days - rest
    vp = vp + 0.2 * rest  ' 每天恢复20%
    If vp > 1 Then
        vp = 1  ' 能量最多恢复到100%
    End If 
    income = 0
    
    While days > 0
        For i = 1 To 10
            income = income + sp * vp / 10000
            vp = vp - 0.02
        Next    
        vp = vp + 0.2
        days = days - 1
    Wend 
    Strategy2 = income
End Function

我有1万SP,那么假定这些值。

steempower = 10000
votingpower = 0.6
daysofcuration = 30
restoredays = 2

跑一下程序看看结果:

WScript.Echo ("Strategy 1 Max Income = " & Strategy1(steempower, votingpower, daysofcuration))
WScript.Echo ("Strategy 2 Max Income = " & Strategy2(steempower, votingpower, daysofcuration, restoredays))


Strategy 1 Max Income = 152.999999999999
Strategy 2 Max Income = 254.799999999999

太意外了,你的VP越低,统计时间越长,效果差别就越大,OMG,还是先让机器人缓几天吧,至少点赞比率先降一降,等恢复了差不多了这样每天保持10次点赞 点完能量保持在80%左右,这样是最优的。

错啦错啦 @tumutanzi 告诉我,我的理解有问题, 2%的损失不是 vp = vp - 0.02 而是针对当前VP能量,所以应该是vp = vp * 0.98.

程序更正一下,每天可以点11次,点10次能量满的话就会浪费:

Function Strategy1(ByVal sp, ByVal vp, ByVal days)
    income = 0
    While days > 0
        For i = 1 To 11
            income = income + sp * vp / 10000
            vp = vp * 0.98
        Next    
        vp = vp + 0.2
        If (vp > 1) Then
            vp = 1
        End If 
        days = days - 1
    Wend 
    Strategy1 = income
End Function 

Function Strategy2(ByVal sp, ByVal vp, ByVal days, ByVal rest)
    days = days - rest
    vp = vp + 0.2 * rest
    If vp > 1 Then
        vp = 1
    End If 
    income = 0
    
    While days > 0
        For i = 1 To 11
            income = income + sp * vp / 10000
            vp = vp * 0.98
        Next    
        vp = vp + 0.2
        If (vp > 1) Then
            vp = 1
        End If      
        days = days - 1
    Wend 
    Strategy2 = income
End Function

假定以下值:

steempower = 10000
votingpower = 0.6
daysofcuration = 30
restoredays = 2

WScript.Echo ("Strategy 1 Max Income = " & Strategy1(steempower, votingpower, daysofcuration))
WScript.Echo ("Strategy 2 Max Income = " & Strategy2(steempower, votingpower, daysofcuration, restoredays))

这结果显示,没啥区别,不得不说,这系统设计的真巧妙。是我没弄清楚,丢人了(捂脸)

Strategy 1 Max Income = 279.67590316366
Strategy 2 Max Income = 278.976108950286

@justyyhttps://justyy.com 的博主,在 @tumutanzi 大哥 的介绍下加入 STEEMIT,写些帖子挣些小钱养家糊口。


@justyy 也是CN 区的点赞机器人,对优质内容点赞,只要代理给 @justyy 每天收利息(年化率14.6%)并能获得一次至少2倍(VP 200%+)的点赞,大鱼 @htliao 都加入了这个计划(530 SP)表示支持。

  1. cn区最低保障系统 上线了!
  2. cn区低保计划(鼓励新人)真的适合你么?

最佳点赞策略
Steemit Upvoting Strategy


SteemIt SP Delegation Tool 简易SP代理工具
Steemit 在线工具和API接口
SteemIt Tools and APIs

Sort:  

你可能搞错了……在任何情况下,点赞十次不可能消耗掉20%的能量。

哪里错了?

多谢,程序已经改正,你说得对,没啥区别。

如果你的初始VP是60%,你一天点11次是消耗不了20%的能量,也就是到不了40%,而系统会恢复20%,那么点完24小时后,你的能量会是多于60%,再过几天,你的能量就是100%了。

问题的关键,是你每天要消耗掉20%的能量,这者是最最最关键的问题,因此,你模拟点多少次,本身是没有什么意义的。

我再告诉你,就你的起始条件,60%点赞能量,假设每次全能量全力度点是1美元价值,30天最多能产生多少点赞价值?答案是,330美元。希望你能想明白。

是的,但一般人不会去算这个能量却很容易知道一天点几次。
所以这个程序模拟的意义就在于 告诉我想知道的答案:和初始能量无关。

大神,这是什么编程语言啊?

了解了,原来是一个很古老但是windows下很方便使用的脚本语言,厉害!

@cryptohustlin has voted on behalf of @minnowpond. If you would like to recieve upvotes from minnowponds team on all your posts, simply FOLLOW @minnowpond.

To receive an upvote send 0.25 SBD to @minnowpond with your posts url as the memo
To receive an reSteem send 0.75 SBD to @minnowpond with your posts url as the memo
To receive an upvote and a reSteem send 1.00SBD to @minnowpond with your posts url as the memo

看起来十分厉害的样子。

请看修正之后的,我理解有错,已经改好了。

@alchemage has voted on behalf of @minnowpond. If you would like to recieve upvotes from minnowponds team on all your posts, simply FOLLOW @minnowpond.

To receive an upvote send 0.25 SBD to @minnowpond with your posts url as the memo
To receive an reSteem send 0.75 SBD to @minnowpond with your posts url as the memo
To receive an upvote and a reSteem send 1.00SBD to @minnowpond with your posts url as the memo

差距这么大。。。。

你的VP越低,统计时间越长

这个统计时间是什么意思啊?

请看修正之后的,我理解有错,差距不大。

额。。。你之前写的和我之前理解是一样的。。
原来是这样的,那要是没什么区别,可是60%voting power的时候没有100%voting power的时候点赞钱多啊。。。我再想想。

这是看30天的结果,程序不会骗人,可以换种方式理解,系统每天给你 20%的水,你喝完就是了。

Hi, @justyy,

I'm a PSA bot for @spaminator. This is the first time I’ve seen you use the #steemit tag.

Tags help the community find relevant content.

This tag, is meant to be used when posting on topics directly related to Steemit, the website, itself.

There has been reports of people abusing it.

Some curators will immediately down vote irrelevant content.

Please use only relevant tags.

More info on Tags Abuse & Tag Spam

I only comment once per tag, happy steeming!

Thanks for the advice.. Sure.. this post is related to Steemit... but not so much.. But to avoid hassle, I have removed the tag. Thanks again!

@royrodgers has voted on behalf of @minnowpond. If you would like to recieve upvotes from minnowponds team on all your posts, simply FOLLOW @minnowpond.

        To receive an upvote send 0.25 SBD to @minnowpond with your posts url as the memo
        To receive an reSteem send 0.75 SBD to @minnowpond with your posts url as the memo
        To receive an upvote and a reSteem send 1.00SBD to @minnowpond with your posts url as the memo

Calling @originalworks :)
img credz: pixabay.com
Nice, you got a 8.0% @minnowbooster upgoat, thanks to @justyy
Want a boost? Minnowbooster's got your back!

The @OriginalWorks bot has determined this post by @justyy to be original material and upvoted it!

ezgif.com-resize.gif

To call @OriginalWorks, simply reply to any post with @originalworks or !originalworks in your message!
For more information, Click Here!
Special thanks to @reggaemuffin for being a supporter! Vote him as a witness to help make Steemit a better place!

这看到最后,是没有明确结论了吗?

结论就是没有啥区别: 能量不用回满了再点,一天点10-11下即可。

Coin Marketplace

STEEM 0.17
TRX 0.15
JST 0.027
BTC 60654.57
ETH 2343.25
USDT 1.00
SBD 2.48