I noted in reports about Sammy’s trial that Programmer Wang used the Py randomizer to generate the official daily trading volume. As an old Pythoner I was curious to see what was happening.
Here’s the trick as shown and analyzed by BitMEX.
The code is dense and “one-liner” to make it harder to read, unlike Satoshi’s wonderfully clear and straightforward C++ in the original Bitcoin code. Still, the randomizer itself is clear. Start with the actual daily volume of trades, and then wiggle it up or down by a random amount to get the number used in the public report of volume.
Why would you want to do this? One possible reason is to prevent competitors from tracking your actual trends so they couldn’t frontrun your trading. This wouldn’t be necessary if all of your bets were made by customers, because those are effectively random anyway. This type of hiding would be necessary if some of your trading was intentional and internal, which in fact was the case.
Later after rereading: A better reason would be to make the intentional trading LOOK LIKE random real customers! This is exactly how I use the Py randomizer in scripts to control animation. I form the movements with strict math, then add a random fuzz to make them look more natural. Here’s an example from a rainmaker:
for OneDrop in scene.Actors():
TryName = OneDrop.Name()
if TryName[:4] == 'Drop': # Eliminate anything that isn't a drop
newX = (random.random() * 2.0 - 1.0) * CloudXscale
newZ = (random.random() * 2.0 - 1.0) * CloudZscale
newY = (random.random() * CloudYscale) + CloudYscale
# Drops are parented to cloud, so Y=0 is base of cloud. Ranging positive
# by height of cloud gives us a starting box same size as actual area but
# sitting above the cloud instead of below.
OneDrop.ParameterByCode(poser.kParmCodeASCALE).SetValue(0.2 + (random.random()*0.1) )
OneDrop.ParameterByCode(poser.kParmCodeXTRAN).SetValue(newX)
OneDrop.ParameterByCode(poser.kParmCodeYTRAN).SetValue(newY)
OneDrop.ParameterByCode(poser.kParmCodeZTRAN).SetValue(newZ)
Serendipity alert: Sammy is a rainmaker.
= = = = =
Semirelevant gripe: I’m tired of people calling Sammy the ultimate nerd. He’s not a nerd, he’s the ultimate con man. A con is an actor first and foremost. He studies the sucker coldly and objectively, then adopts the personality and jargon needed to steal max money from this sucker. Sammy can be a nerd or a sports fan or a suited-up banker, depending on the weak point of the sucker.
Programmer Wang IS the ultimate nerd. No strategy, no acting, no games. Doesn’t talk until asked a direct question, and then gives a straightforward direct answer. Like querying a database.
