So you're new to Steem and you've heard people talking about "curation" this and "rewards" that - but what's all this about the mysterious Voting Power? Apparently you lose it if you vote too much, but then you get it back, and you can look it up on Steemstats and Steemd.com, but how does it actually work?
Think of your voting power as a big tank of water. Every time you vote, a valve at the bottom of the tank pops open and squirts out some power. The fuller the tank, the more power squirts out the valve. The amount of power that squirts out the valve is one of the things that determines how powerful your vote is. (The other is your Steem Power, which you can look up in your wallet and is a completely separate thing.)
If you vote and vote and vote without stopping, it's like leaving the valve open, and it won't take long before your tank is empty.
Fortunately for you, there is a steady drip of power coming back into your tank! This drip refills your tank at the same rate, always, no matter what.
What happens to the drip if your tank is full? The drip gets wasted! Think of it like the tank just overflows if it's full; all that voting power just dripping down the sides going to no purpose.
(with formulas, code references, and general jolliness!)
Down to brass tacks. Here is the complete formula for voting power (if you don't want to parse this formula yourself, I'll walk you through it in a minute):
where my variables are (times are given in seconds, powers are numbers between 0 and 100)
If you're just a regular Joe like me (with less than 30,000 SP) and you don't get to set your vote weight, the formula simplifies to this because w=1:
Let me walk you through this.
So how much is each vote worth? The formula for how much power gets applied to each vote is this:
If we didn't have that silly 1/100, the answer would be "exactly a 200th of your voting power gets applied to each vote."
Here is a list of code references for each of the components of this:
A month ago I posted this question about voting power, and got exactly 0 replies. So since I really wanted to know, and nobody would tell me, I ran on over to github, grabbed the Steem source code, and over the course of a pair of international flights for my trip to the Netherlands, I figured it out. I freaking figured it out. (You should be pretty impressed with me, because I don't actually speak C++. So I was wading through mostly-uncommented code in a language I don't even know...)
I'm Philip N. Brown, a PhD student in electrical engineering at UCSB. I'm the author of the popular Game Theory of Steem series, and currently I'm Editor-In-Chief of the Lost Content Digest. Follow me if you enjoy my work!
[Edit note: My original formulas had an error that I have since corrected. The 100T/Tw used to be T/Tw; the problem was a units mismatch. I have p in units of percentage points, but T/Tw is a fraction between 0 and 1. To make sure we're adding like units, I needed to multiply the T/Tw by 100.]