1) Oracles in the real world
Conversation
Sorry SBF, but I'm going to have to disagree with you here on a core point
You NEVER want your SC to rely on a single exchange as its price oracle, it doesn't offer enough market coverage and is vulnerable to manipulation
Even a simple median across exchanges isn't enough
4
2
62
Replying to
Er I agree with you on that -- it's much better to do something like what FTX does (take an index and bound all data points at 30bps away from the median).
The "it all comes down to an API feed" really meant "some function of some set of API feeds"
1
5
Taking a simple median across exchanges doesn't really provide an adequate market coverage either though because it doesn't take into account volume consolidation or new exchanges popping up
It's more nuanced than just you need to trust the APIs, it's about data quality
2
16
It just scares me when you say things like this (linked tweet) because if projects are really going to be using serum as their only source of price data...
1
11
Replying to
To be clear:
1) I think they should use a sanitized version of it
2) Serum is on-chain. That makes it *way* different from the cases you cite; a lot of the problems you might worry about go away (at least for other projects on Solana).
3
6
to be clear there are still a lot of nuances here but many of your points don't really apply to on-chain oracles that you can trade against composably in real time with small fees.
1
3
Having the data being generated on-chain doesn't necessarily mean it's trustworthy
There have been numerous incidents involving DEX-based price oracles that led to millions in user funds getting lost
Promoting their usage is just downright dangerous in my opinion
1
8
Replying to
1) I think this is very different on Ethereum vs Solana. When it takes minutes to trade on a DEX and lots of tx's fail, you can't reliably hedge; that's way easier on Serum.
2) A lot of this is solved using EWMAs. E.g. mid(last, bid, offer), bounded by 5% away from 5m EWMA.
(2) means that you'd need to sustain a bad price for minutes in order to have a significant attack, and anyone could trade against your (bad) orders on the DEX in seconds; that makes it *way* harder to attack.
1
2
again, this isn't perfect, and you prob want to add a bunch of other sanity checks, but I do think that this ends up being way more safe than most current DEX-based oracles
1
3
Show replies
This Tweet was deleted by the Tweet author. Learn more
As are oracles on Ethereum layer 2, the issue here isn't the speed of the underlying blockchain, it's the market coverage and tamper resistant of the oracle price feed
1
6
Show replies

