Pages:
Author

Topic: Price discovery - page 3. (Read 3681 times)

reg
sr. member
Activity: 463
Merit: 250
June 11, 2013, 06:33:03 AM
#10
If the idea is to have a price that is quoted, as the price of bitcoin, then the best option is to just do an average of averages.

For instance, if you have 10 different exchanges, you sample the price at each exchange on the hour, and average the price, having sliced the top and bottom prices from the sum.

This formula would be accurate enough to give info, but not too accurate to cause caching or logging issues. Anything more would be taken directly from the exchange being used to trade from.

If someone wanted to create a 30 day average price, they could from the figure created every hour, but for the rawest useful global number, I think this might work!



+1 I also think this would work and it is a good idea to get a closer approximation as to the tradeable value of a bitcoin. reg.
legendary
Activity: 1288
Merit: 1000
Enabling the maximal migration
June 11, 2013, 06:26:56 AM
#9
If the idea is to have a price that is quoted, as the price of bitcoin, then the best option is to just do an average of averages.

For instance, if you have 10 different exchanges, you sample the price at each exchange on the hour, and average the price, having sliced the top and bottom prices from the sum.

This formula would be accurate enough to give info, but not too accurate to cause caching or logging issues. Anything more would be taken directly from the exchange being used to trade from.

If someone wanted to create a 30 day average price, they could from the figure created every hour, but for the rawest useful global number, I think this might work!


I thought about using a simple average, but didn't for two reasons:

1. The rate should be affected by the volume at each exchange. This makes it much less prone to manipulation and is a more accurate reading of where the trades are happening.
2. It provides a fluid transition mechanism for new exchanges to come on board without having to abruptly switch from one exchange to another. As their volume increases, so does their influence on the price and if one goes down, the rest carry the weight until its back up (if it comes back up).
sr. member
Activity: 294
Merit: 250
You are a geek if you are too early to the party!
June 11, 2013, 06:12:14 AM
#8
If the idea is to have a price that is quoted, as the price of bitcoin, then the best option is to just do an average of averages.

For instance, if you have 10 different exchanges, you sample the price at each exchange on the hour, and average the price, having sliced the top and bottom prices from the sum.

This formula would be accurate enough to give info, but not too accurate to cause caching or logging issues. Anything more would be taken directly from the exchange being used to trade from.

If someone wanted to create a 30 day average price, they could from the figure created every hour, but for the rawest useful global number, I think this might work!

legendary
Activity: 1288
Merit: 1000
Enabling the maximal migration
June 11, 2013, 05:49:13 AM
#7
Monsterer - can you clarify why this wouldn't represent the actual tradeable value of the currency? The idea was not to make it artificially smooth, its just a byproduct when you are incorporating more data.

A 30 day weighted average will be extraordinarily laggy. You can't really escape it completely by reducing the time-frame, lag will always be present. So its highly likely that (since bitcoin is so volatile) the weighted average indicates one price, whereas the actual trade-able value on the exchanges is nowhere near since (for example) someone just dumped 20k BTC an hour ago.

I suggest reviewing historical data and computing the average based on that, then compare that average to the actual traded price at the time to give you an idea just how bad/good this idea is.

Cheers, Paul.

Ah sorry if my original post wasn't clear, but I'm not using a 30 day weighted average price. I'm using the realtime price. The aggregate price is then weighted based on the volume that the exchange does over a 30 day time period. This ensures that the price is both real time and weights the most influential exchanges' price accordingly.
legendary
Activity: 1008
Merit: 1007
June 11, 2013, 05:42:14 AM
#6
Monsterer - can you clarify why this wouldn't represent the actual tradeable value of the currency? The idea was not to make it artificially smooth, its just a byproduct when you are incorporating more data.

A 30 day weighted average will be extraordinarily laggy. You can't really escape it completely by reducing the time-frame, lag will always be present. So its highly likely that (since bitcoin is so volatile) the weighted average indicates one price, whereas the actual trade-able value on the exchanges is nowhere near since (for example) someone just dumped 20k BTC an hour ago.

I suggest reviewing historical data and computing the average based on that, then compare that average to the actual traded price at the time to give you an idea just how bad/good this idea is.

Cheers, Paul.
legendary
Activity: 1288
Merit: 1000
Enabling the maximal migration
June 11, 2013, 05:32:26 AM
#5
You're going to have a problem when the weighted average doesn't represent the actual trade-able value of the currency.

IMO there is no point trying to fake a consistent price, you'll just have to wait for the currency to mature enough that the difference between value on different exchanges gets arbitraged away.

Cheers, Paul.

Monsterer - can you clarify why this wouldn't represent the actual tradeable value of the currency? The idea was not to make it artificially smooth, its just a byproduct when you are incorporating more data.
full member
Activity: 182
Merit: 100
1Kgyk4nQSzb3Pm9E9vWiGVyJ6jpPwripKf
June 11, 2013, 05:28:45 AM
#4
I like this as an idea. I have nothing at all against mtgox but i think bitcoin is decentralized and it is getting to the point where a price should be more decentralized. It is a weakness and make bitcoin more vulnerable to manipulation.
good idea.
legendary
Activity: 1176
Merit: 1011
June 11, 2013, 05:22:58 AM
#3
+1 for MtGox not being the default for everything. People should be aware there are plenty of alternatives. More competition and diversity = more decentralization, which just makes sense with the Bitcoin philosophy in mind.
legendary
Activity: 1008
Merit: 1007
June 11, 2013, 05:21:25 AM
#2
You're going to have a problem when the weighted average doesn't represent the actual trade-able value of the currency.

IMO there is no point trying to fake a consistent price, you'll just have to wait for the currency to mature enough that the difference between value on different exchanges gets arbitraged away.

Cheers, Paul.
legendary
Activity: 1288
Merit: 1000
Enabling the maximal migration
June 11, 2013, 05:12:07 AM
#1
I for one am sick and tired of using mtgox's price as the default price for everything. This is a vulnerability and a weakness that can and should be fixed for a decentralized system. In order to take bitcoin's price discovery to the next level I propose that we use an algorithm which is based on the price of multiple exchanges which weights the price according to volume. I built a very simple formula which weights the real-time price based on the 30 day volume. You can see it for yourself here (its an open office .ods file):

http://www.filedropper.com/pricediscovery1

This example could easily be extrapolated all USD exchanges and eventually to aggregate the total numbers by incorporating numerous currencies.

Questions for the community:

1. Is 30 days the best volume time set to use?
2. Is there another data piece which should be included?
3. What else am I missing?

If enough people here agree with me that this is something useful and should be implemented, I will put up a bounty for a site to incorporate the data in realtime (and eventually offer API support).

Thanks for your consideration

edited for clarification
Pages:
Jump to: