Am I the only one who sees a problem with yesterday's "average"?
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 12:14
According to the Market Data page here are the stats for yesterday. Volume in Lindens: 7,353,253 Average L/$: 988.46 This would suggest that volume in USD would have been $7,439.10. I guess that is possible but that is about 70%-75% lower than usual. Typically the volume in USD is around $25,000 and the lowest day we have had in the last 30 days besides yesterday is April 17th with apx $19,897.79 spent on Lindens. This would be an extremely low volume. There are a few explanations: - Yesterdays volume in USD was actually $7.5K.
- I'm misunderstanding what LL means by average.
- There is a problem with the algorithm.
I put a post in 2nd Life Answers, but I haven't gotten a response yet. Any thoughts?
_____________________
imakehuddles.com/wordpress/
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 12:20
You're misunderstanding the algorithm. The quoted average is actually a volume-weighted average. That is,
Average = SUM(N(p) * p) / SUM(N(p))
Average = SUM(Number sold at a given price * that price) / total number sold
You can invert this formula (by making an assumption about the daily average) to get the amount sold at the outlying rate. If you do that, you'll find that yesterday's USD trade amount is well within normal bounds.
Hope this makes sense!
|
Svar Beckersted
Registered User
Join date: 14 Apr 2006
Posts: 783
|
05-05-2006 12:20
Keiki,
I think the average is caused by the 71312 max rate number which I believe to be a data input error.
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 12:26
As a followup, examining the average, high, and volume for yesterday it looks like somebody accidentally sold L$71312 for a rate of L$71312/US$. If you remove this trade from the total, you'll find ~$24k in transactions occured yesterday, in line with current trends.
|
Svar Beckersted
Registered User
Join date: 14 Apr 2006
Posts: 783
|
05-05-2006 12:34
Ricky,
Do you actually think someone sold L$71312 for a rate of L$71312/US$?
|
prak Curie
----------
Join date: 4 Jun 2004
Posts: 346
|
05-05-2006 12:37
Outliers are fun and all but don't they typically get removed so that graphs and such stay usable? Why is LindenX not using the median?
_____________________
-prak
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 12:38
From: Svar Beckersted Ricky,
Do you actually think someone sold L$71312 for a rate of L$71312/US$? Looks like it. They probably absentmindedly entered the same number in both boxes and confirmed without thinking about it.
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 12:41
From: prak Curie Outliers are fun and all but don't they typically get removed so that graphs and such stay usable? Why is LindenX not using the median? I think volume-weighted average is a more useful overall measure than median to gauge the market behaviour, but they should definitely cull any trades more than, say, 3 sigma above the mean. Maybe a volume-weighted interquartile mean or something. Clip the highest and lowest 25% of trades and take the weighted average of the rest...
|
Svar Beckersted
Registered User
Join date: 14 Apr 2006
Posts: 783
|
05-05-2006 12:43
Ouch, that's a $229 USD error at todays rate.
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 13:01
From: Ricky Zamboni You're misunderstanding the algorithm. The quoted average is actually a volume-weighted average. That is,
Average = SUM(N(p) * p) / SUM(N(p))
Average = SUM(Number sold at a given price * that price) / total number sold
You can invert this formula (by making an assumption about the daily average) to get the amount sold at the outlying rate. If you do that, you'll find that yesterday's USD trade amount is well within normal bounds.
Hope this makes sense! Alright here are some guesses of how much was bought at each price. This is obviously not precise at all, but you will get the idea: Lindens Price Dollars 3000000 299 10033.44 2000000 300 6666.67 1000000 301 3322.26 1000000 302 3311.26 300000 71312 4.21 ------------------------------------------------- 7300000 312.8 23337.84 So let's say that roughly 7M lindens were sold range of 299-302 and then some bonehead put up 300,000 Lindens at 71312. The average would be around 312.8 by your formulas. These numbers seem closer to what probably happened yesterday and it would give us a radically different Average. Another way to look at your formula would be this: Average * Number Sold = sum( Number sold at given price * that price ) 0.0010117 $/L * 7353253 = $7439.10 So the sum of all orders yesterday by this average is $7,439.10. What am I missing, Ricky?
_____________________
imakehuddles.com/wordpress/
|
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
|
05-05-2006 13:49
You're using the average to calculate the US$'s that changed hands.
But I rather strongly suspect there was 1 trade at the 73k rate - it shifted the average up (means are strong biased by extreme outliers and that's VERY extreme)
If you discount that datum, and assume everything else went at a more typical mean value (say $305) you'll get the US$ much closer to the normal trading rates.
And for Ricky - the problem with your three sigma cut off is that there's an underlying assumption about normal distributions in calculating that value. LindeX values I strongly suspect don't have this - there is a clear minimum that probably acts as a total cut off with higher values trailing away. Giving us mean, mode, median, skew, either quartiles or dectiles would be good - so we can see the distibutions more clearly.
|
prak Curie
----------
Join date: 4 Jun 2004
Posts: 346
|
05-05-2006 13:50
From: Svar Beckersted Ouch, that's a $229 USD error at todays rate. Only if it wasn't quickly repurchased with an alt.
_____________________
-prak
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 14:05
From: Eloise Pasteur If you discount that datum, and assume everything else went at a more typical mean value (say $305) you'll get the US$ much closer to the normal trading rates. That is what I'm saying! The average as stated on the Market Data page is wrong. The Average could not have been 988.46. What they are reporting as the average price, could not possibly have been the average that someone paid to buy lindens yesterday. Sometimes I wonder if people even read other people's posts before they respond.
_____________________
imakehuddles.com/wordpress/
|
Svar Beckersted
Registered User
Join date: 14 Apr 2006
Posts: 783
|
05-05-2006 14:12
From: prak Curie Only if it wasn't quickly repurchased with an alt. So if somebody wanted they could sell to themselves just to skew the daily statistics?
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 14:13
From: Keiki Lemieux That is what I'm saying! The average as stated on the Market Data page is wrong. The Average could not have been 988.46. What they are reporting as the average price, could not possibly have been the average that someone paid to buy lindens yesterday. 988.46 is the volume-weighted average. Assume L$71,000 were sold at L$71,000/US$ and L$7,000,000 were sold at L$300/US$. The volume-weighted average is: Weighted average = (71,000 * 71,000 + 7,000,000 * 300) / (7,000,000 + 71,000) = 1,009.90. This rough calculation is very close to the quoted average of 988.46. As you can see, a small number of outliers can significantly skew the mean.
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 14:23
From: Ricky Zamboni 988.46 is the volume-weighted average. Assume L$71,000 were sold at L$71,000/US$ and L$7,000,000 were sold at L$300/US$. The volume-weighted average is:
Weighted average = (71,000 * 71,000 + 7,000,000 * 300) / (7,000,000 + 71,000) = 1,009.90.
This rough calculation is very close to the quoted average of 988.46. As you can see, a small number of outliers can significantly skew the mean. Thank you, you provided numbers. Here is the problem with your calculation, and it is probably the problem with their algorithm. You shouldn't be multiplying the price in L/$ times the number of lindens. You should be multiplying the price in $/L time the number of lindens: ( 71,000 L * 0.000014084507 $/L + 7,000,000 L * 0.003333333333 $/L ) / (7,000,000 L + 71,000 L ) = 0.003300004714 $/L or 303.03 L/$
_____________________
imakehuddles.com/wordpress/
|
Ricky Zamboni
Private citizen
Join date: 4 Jun 2004
Posts: 1,080
|
05-05-2006 14:40
From: Keiki Lemieux Thank you, you provided numbers. Here is the problem with your calculation, and it is probably the problem with their algorithm. You shouldn't be multiplying the price in L/$ times the number of lindens. You should be multiplying the price in $/L time the number of lindens:
( 71,000 L * 0.000014084507 $/L + 7,000,000 L * 0.003333333333 $/L ) / (7,000,000 L + 71,000 L ) = 0.003300004714 $/L
or
303.03 L/$ I disagree. The algorithm (and my numbers) are correct. What you're calculating above isn't a weighted average of trade prices -- it's an effective exchange rate based on the USD value of the trades that took place over the course of the day. A useful measure, but not quite the same thing. <math>Formally, what we want to do is calculate the first moment of the price distribution. That is, the integral of the probability of a price occuring times the price itself. If the L$ exchange rate is given by k, and the probability of a trade occuring at a price point is p(k), then we want to calculate integral_from_0_to_infinity(P(k)*k). For discrete trades, this reduces to the sum I quoted in my previous post. </math>
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 15:07
I understand your math Ricky.
Tell me what multiplying Lindens times Lindens/$ equals?
1000 Lindens * 300 Lindens / USD = 300,000 Lindens ^ 2 / USD
What are Lindens ^ 2 / USD?
----------------
1000 Lindens * 0.003333333 USD / Lindens = 3.33 USD
That is a meaningful number.
-----------------
Ok, one more stab at this from another angle. Let's say I buy 100 shares of stock at $10 / share. And then later I buy 100 shares of stock at $20 / share. What is the average I paid? $15 per share is the obvious right answer. Here is the math:
( 100 shares * $10/share + 100 shares * $20/share ) / ( 100 shares + 100 shares ) = $15.00
However you want me to use shares/$ instead of $/share for the price:
( 100 shares * 0.1 shares/$ + 10 shares * 0.05 shares/$ ) / ( 100 shares + 100 shares ) = 0.075 shares per / dollar (or $13.33/share)
Now if I bought 100 shares at $10 and 100 shares at $20 and my broker told me that I paid an average of $13.33 per share. I don't think I would ever use that broker again.
_____________________
imakehuddles.com/wordpress/
|
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
|
05-05-2006 15:43
Both measures are valuable and valid.
I have to say Ricky's explanation of the mean says precisely what I would expect it to say - and given I teach maths including stats as my RL living in part I'd like to think I know what I'm talking about.
So the calculation of the average price is following a well established (if weak for data sets with extreme outliers) rule for such calculations. This is why seeing just a mean price is always dangerous - and why I asked for such a range of different data about the data - *any* descriptive stats have the effect of giving us a "nice" single number to talk about rather than the whole data pool, which is easier to deal with, but it is also prone to various weaknesses (the outlier distorting the mean, multi-modal data and issues with local maxima etc.).
|
Lee Ludd
Scripted doors & windows
Join date: 16 May 2005
Posts: 243
|
05-05-2006 15:51
From: Ricky Zamboni You're misunderstanding the algorithm. The quoted average is actually a volume-weighted average. That is, Average = SUM(N(p) * p) / SUM(N(p)) Average = SUM(Number sold at a given price * that price) / total number sold You can invert this formula (by making an assumption about the daily average) to get the amount sold at the outlying rate. If you do that, you'll find that yesterday's USD trade amount is well within normal bounds. Hope this makes sense! It makes perfect sense, and so does Average = SUM(Number of items sold at price p/item * p/item) / total of items sold. and here Average is just the average price of a single item. In a later post you use the formula Average = SUM(Number sold at price p/itm * p/dollar) / total number sold. and I agree this is a weighed average too. What does this Average mean, and why would anybody want to know it?
|
Jonas Pierterson
Dark Harlequin
Join date: 27 Dec 2005
Posts: 3,660
|
05-05-2006 16:26
I have a problem with yesterdays average  I still can't buy 1000 lindens for a dollar
_____________________
Good freebies here and here I must protest. I am not a merry man! - Warf, ST: TNG, episode: Qpid You killed my father. Prepare to die. - Inigo Montoya, The Princess Bride You killed My father. Your a-- is mine! - Hellboy
|
Keiki Lemieux
I make HUDDLES
Join date: 8 Jul 2005
Posts: 1,490
|
05-05-2006 16:29
One last example:
On Monday you buy 100,000L at 300L/$ and on Tuesday you buy 100,000L at 100,000L/$. What is the average you paid?
-----------
By my method:
200,000 shares bought $334.33 dollars spent ( $333.33 + $1.00 )
The average I paid was: 598.21 L/$.
-----------
By Ricky's method:
( 100,000 * 300 + 100,000 * 100,000 ) / ( 100,000 + 100,000 ) = 50,150 L/$
-----------------
So your telling me that when I buy 200,000 shares for $334.33, I paid an average of 50,150L/$? Does that make any sense at all? Cause if you bought 200,000 shares at 50,150L/$ it would cost $3.99.
_____________________
imakehuddles.com/wordpress/
|
Svar Beckersted
Registered User
Join date: 14 Apr 2006
Posts: 783
|
05-05-2006 16:40
From: Jonas Pierterson I have a problem with yesterdays average  I still can't buy 1000 lindens for a dollar The average was 988 try 987 and see if that works.
|
Francis Chung
This sentence no verb.
Join date: 22 Sep 2003
Posts: 918
|
05-05-2006 21:37
*disclaimer: I come from a math background, not an economics background I looked at the calculations that Ricky posted, and as far as I can tell, it does not represent anything meaningful. However, I'm not an economist, so I looked up what those folks call "volume-weighted average price (VWAP)" The forumula that Ricky posted is correct, however, I believe that the interpretation of it is a bit wonky. The *price* should be "cost per unit". NOT L$/USD. That's the reciprocal of what the meaning of price is in the non-lindenverse. We should be using USD/L$. Where Ricky put in "300 L$/USD", for it to be consistent with what the economists call VWAP, he should put "0.0033333333 USD/L$". With this interpretation of VWAP, both Keiki's and Ricky's explanations are consistent. If the Lindens are indeed using "L$/USD" and calling it the price in their VWAP calculations, then I believe their algorithm is bugged.
_____________________
-- ~If you lived here, you would be home by now~
|
mcgeeb Gupte
Jolie Femme @}-,-'-,---
Join date: 17 Sep 2005
Posts: 1,152
|
05-05-2006 21:46
From: prak Curie Only if it wasn't quickly repurchased with an alt. If said person did sold 71K Lindens for only a dollar the odds of them getting back in quick enough are slim to none buying it back.
|