Author Topic: Price Feed Review  (Read 25018 times)

0 Members and 1 Guest are viewing this topic.

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1917
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
only got round to accessing my feed script today just now.

My feed was actually the highest just now without changing anything a few hours later...I know we all wish BTS never moved down but guess what...it does....are we gonna have this discussion and people calling hard-working witnesses names EVERY time BTS moves down? Let me know so I can be prepared. It's crypto...it's volatile...it goes up and and it goes down. I don't like it either but it happens.

Still... I disabled the outlier CoinEgg component of the feed as it seems untrustworthy. Feed now 4% above median

I don't think the higher feed price, the better, feed price should reflect the real market price. as feed price will have direct impact some operation, such as margin call, borrowing, force settlement.

it is not easy to judge what is "real market", but at least we can have some principles:

first, it is to get DEX price plus with smartcoin premium/discount as a reference, this is the most important reference.

second, it's not good to get average price of too long period and feed, an average of 5 min should be fine.
Email:bitcrab@qq.com

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12920
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
Of course you need to have reasonable configuration. But surely, if a single witness publishes a feed that is 5% (or more) away from feed price, the proxy should at least be notified.

Unvoting a witnesses can be justified when the last feed was older than 2 days, or when he doesn't follow consensus when it comes to MSSR or MCR.

I wrote this code in my spare time, as usual ..
I can't imagine what logic can be used to implement disapprove witness automaticly based on the feed price.
it's unresponsoble to vote witness automaticly by proxy, if somebody did this, please let me know.
BTW, did this development pay by worker income?

While we are at it, I started working on a python project that is supposed to automatically disapprove (unvote) witnesses that provide inaccurate feeds (relative to price feed) here:

https://github.com/xeroc/witness-monitor

Any development resources to improve that would be welcome.

Offline zhouxiaobao

Most of the trading volume in the CEX is fake, and the trading volume in the DEX is already more than the actual trading volume in many CEX.The actual price of the DEX  should be taken into account in the feed price.

Offline binggo

  • Hero Member
  • *****
  • Posts: 2365
  • 世间太多瘪犊子
    • View Profile

Again, our feeds are not every second. It's a price snap shot taken within some specific period 20-40 minutes (2 in your case)

The feed price should provid within 5 minutes, within 3 minutes more better.

The pirce from specific period 20-40 minutes is a fake price.

BTS is a DEX, not MakerDao.

Offline sahkan

  • Sr. Member
  • ****
  • Posts: 247
    • View Profile
    • BitShares DEX
Time: UTC 9th May 12:15





Warning:delegate-1.lafona, sahkan-bitshares, witness-hiblockchain, zapata42-witness, xeldal at the time feed a 2%+ lower price than reasonable.

Again, our feeds are not every second. It's a price snap shot taken within some specific period 20-40 minutes (2 in your case) so it's an unreasonable statement based on some snapshot in time. price feeds should average out to a true price among all witnesses. Look at the screen shots later on, my price happen to be 2% above on the other side of that price medium is that a warning also?

And when will GDEX start feeding all prices? Should be unvoted  by proxies until it does.

Offline alt

  • Hero Member
  • *****
  • Posts: 2821
    • View Profile
  • BitShares: baozi
I can't imagine what logic can be used to implement disapprove witness automaticly based on the feed price.
it's unresponsoble to vote witness automaticly by proxy, if somebody did this, please let me know.
BTW, did this development pay by worker income?

While we are at it, I started working on a python project that is supposed to automatically disapprove (unvote) witnesses that provide inaccurate feeds (relative to price feed) here:

https://github.com/xeroc/witness-monitor

Any development resources to improve that would be welcome.

Offline clockwork

  • Committee member
  • Sr. Member
  • *
  • Posts: 376
    • View Profile
  • BitShares: clockwork
only got round to accessing my feed script today just now.

My feed was actually the highest just now without changing anything a few hours later...I know we all wish BTS never moved down but guess what...it does....are we gonna have this discussion and people calling hard-working witnesses names EVERY time BTS moves down? Let me know so I can be prepared. It's crypto...it's volatile...it goes up and and it goes down. I don't like it either but it happens.

Still... I disabled the outlier CoinEgg component of the feed as it seems untrustworthy. Feed now 4% above median

Offline ioex

  • Sr. Member
  • ****
  • Posts: 201
    • View Profile
Please tell me @clockwork This is not the first time.


@clockwork this guy is also a Committee,please unvote this bad guy!

Offline yamtt

  • Full Member
  • ***
  • Posts: 135
    • View Profile
Please tell me @clockwork This is not the first time.

« Last Edit: May 09, 2019, 02:45:53 pm by yamtt »

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1917
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
While we are at it, I started working on a python project that is supposed to automatically disapprove (unvote) witnesses that provide inaccurate feeds (relative to price feed) here:

https://github.com/xeroc/witness-monitor

Any development resources to improve that would be welcome.

that's great.

I also would like to have one tool to provide convenience to voters to estimate witnesses' work.

say, integrate all the price feed data from each witness to a candle chart, with modified DEX price, that will also help a lot.
Email:bitcrab@qq.com

Offline xeroc

  • Board Moderator
  • Hero Member
  • *****
  • Posts: 12920
  • ChainSquad GmbH
    • View Profile
    • ChainSquad GmbH
  • BitShares: xeroc
  • GitHub: xeroc
While we are at it, I started working on a python project that is supposed to automatically disapprove (unvote) witnesses that provide inaccurate feeds (relative to price feed) here:

https://github.com/xeroc/witness-monitor

Any development resources to improve that would be welcome.

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1917
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Time: UTC 9th May 12:15





Warning:delegate-1.lafona, sahkan-bitshares, witness-hiblockchain, zapata42-witness, xeldal at the time feed a 2%+ lower price than reasonable.
« Last Edit: May 09, 2019, 12:22:09 pm by bitcrab »
Email:bitcrab@qq.com

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1917
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Time: UTC 9th May, 19:30

at the time in in huobi BTS price is 0.0507 USDT, USDT OTC price is 6.85 CNY fiat, then 1USDT = 1.004USD, 1BTS = 0.0509USD
this value is consistent to DEX price.






Warning: xeldal feed a price of 0.0496USD, 2.6%+ lower than the reasonable price, please review your price feeding script.
« Last Edit: May 09, 2019, 11:47:53 am by bitcrab »
Email:bitcrab@qq.com

Offline bitcrab

  • Committee member
  • Hero Member
  • *
  • Posts: 1917
    • View Profile
  • BitShares: bitcrab
  • GitHub: bitcrab
Fixed. High volume but huge spread in CoinEgg causing huge different in witnesses' price feed.

Compare trading price/volume at different exchanges:


Orderbook in CoinEgg:


this remind us that it's important to filter out the data which is inconsistent with real market, "the price feed should not conflict with the DEX price plus an bitCNY premium/discount offset" can be a good reference in judging the data from CEXs.
Email:bitcrab@qq.com

Offline ljk424

  • Sr. Member
  • ****
  • Posts: 347
    • View Profile
  • BitShares: ljk424
Fixed. High volume but huge spread in CoinEgg causing huge different in witnesses' price feed.

Compare trading price/volume at different exchanges:


Orderbook in CoinEgg:

coinegg?are you  kidding us?