Skip to content
Snippets Groups Projects
Commit ca5f7b42 authored by crokkon's avatar crokkon
Browse files

price/market fix for custom nodes

add missing `blockchain_instance` parameters to `super()` calls in
`Price` and `Market`.
parent cef0fb16
No related branches found
No related tags found
2 merge requests!5Taken current version of master branch in the https://github.com/holgern/beem,!4Original changes pushed to master at https://github.com/holgern/beem
...@@ -76,22 +76,25 @@ class Market(dict): ...@@ -76,22 +76,25 @@ class Market(dict):
if kwargs.get("steem_instance"): if kwargs.get("steem_instance"):
blockchain_instance = kwargs["steem_instance"] blockchain_instance = kwargs["steem_instance"]
elif kwargs.get("hive_instance"): elif kwargs.get("hive_instance"):
blockchain_instance = kwargs["hive_instance"] blockchain_instance = kwargs["hive_instance"]
self.blockchain = blockchain_instance or shared_blockchain_instance() self.blockchain = blockchain_instance or shared_blockchain_instance()
if quote is None and isinstance(base, str): if quote is None and isinstance(base, str):
quote_symbol, base_symbol = assets_from_string(base) quote_symbol, base_symbol = assets_from_string(base)
quote = Asset(quote_symbol, blockchain_instance=self.blockchain) quote = Asset(quote_symbol, blockchain_instance=self.blockchain)
base = Asset(base_symbol, blockchain_instance=self.blockchain) base = Asset(base_symbol, blockchain_instance=self.blockchain)
super(Market, self).__init__({"base": base, "quote": quote}) super(Market, self).__init__({"base": base, "quote": quote},
blockchain_instance=self.blockchain)
elif base and quote: elif base and quote:
quote = Asset(quote, blockchain_instance=self.blockchain) quote = Asset(quote, blockchain_instance=self.blockchain)
base = Asset(base, blockchain_instance=self.blockchain) base = Asset(base, blockchain_instance=self.blockchain)
super(Market, self).__init__({"base": base, "quote": quote}) super(Market, self).__init__({"base": base, "quote": quote},
blockchain_instance=self.blockchain)
elif base is None and quote is None: elif base is None and quote is None:
quote = Asset(self.blockchain.backed_token_symbol, blockchain_instance=self.blockchain) quote = Asset(self.blockchain.backed_token_symbol, blockchain_instance=self.blockchain)
base = Asset(self.blockchain.token_symbol, blockchain_instance=self.blockchain) base = Asset(self.blockchain.token_symbol, blockchain_instance=self.blockchain)
super(Market, self).__init__({"base": base, "quote": quote}) super(Market, self).__init__({"base": base, "quote": quote},
blockchain_instance=self.blockchain)
else: else:
raise ValueError("Unknown Market config") raise ValueError("Unknown Market config")
...@@ -775,7 +778,7 @@ class Market(dict): ...@@ -775,7 +778,7 @@ class Market(dict):
data = r.json()["bitcoin"] data = r.json()["bitcoin"]
prices['coingecko'] = { prices['coingecko'] = {
'price': float(data['usd']), 'price': float(data['usd']),
'volume': float(data['usd_24h_vol'])} 'volume': float(data['usd_24h_vol'])}
except KeyError as e: except KeyError as e:
log.info(str(e)) log.info(str(e))
...@@ -843,7 +846,7 @@ class Market(dict): ...@@ -843,7 +846,7 @@ class Market(dict):
data = r.json()["steem"] data = r.json()["steem"]
prices['coingecko'] = { prices['coingecko'] = {
'price': float(data['btc']), 'price': float(data['btc']),
'volume': float(data['btc_24h_vol'])} 'volume': float(data['btc_24h_vol'])}
except KeyError as e: except KeyError as e:
log.info(str(e)) log.info(str(e))
...@@ -914,7 +917,7 @@ class Market(dict): ...@@ -914,7 +917,7 @@ class Market(dict):
data = r.json()["hive"] data = r.json()["hive"]
prices['coingecko'] = { prices['coingecko'] = {
'price': float(data['btc']), 'price': float(data['btc']),
'volume': float(data['btc_24h_vol'])} 'volume': float(data['btc_24h_vol'])}
except KeyError as e: except KeyError as e:
log.info(str(e)) log.info(str(e))
...@@ -928,4 +931,3 @@ class Market(dict): ...@@ -928,4 +931,3 @@ class Market(dict):
def hive_usd_implied(self): def hive_usd_implied(self):
"""Returns the current HIVE/USD market price""" """Returns the current HIVE/USD market price"""
return self.hive_btc_ticker() * self.btc_usd_ticker() return self.hive_btc_ticker() * self.btc_usd_ticker()
...@@ -455,7 +455,8 @@ class Order(Price): ...@@ -455,7 +455,8 @@ class Order(Price):
isinstance(base, dict) and isinstance(base, dict) and
"sell_price" in base "sell_price" in base
): ):
super(Order, self).__init__(base["sell_price"]) super(Order, self).__init__(base["sell_price"],
blockchain_instance=self.blockchain)
self["id"] = base.get("id") self["id"] = base.get("id")
elif ( elif (
isinstance(base, dict) and isinstance(base, dict) and
...@@ -465,10 +466,12 @@ class Order(Price): ...@@ -465,10 +466,12 @@ class Order(Price):
super(Order, self).__init__( super(Order, self).__init__(
Amount(base["min_to_receive"], blockchain_instance=self.blockchain), Amount(base["min_to_receive"], blockchain_instance=self.blockchain),
Amount(base["amount_to_sell"], blockchain_instance=self.blockchain), Amount(base["amount_to_sell"], blockchain_instance=self.blockchain),
blockchain_instance=self.blockchain
) )
self["id"] = base.get("id") self["id"] = base.get("id")
elif isinstance(base, Amount) and isinstance(quote, Amount): elif isinstance(base, Amount) and isinstance(quote, Amount):
super(Order, self).__init__(None, base=base, quote=quote) super(Order, self).__init__(None, base=base, quote=quote,
blockchain_instance=self.blockchain)
else: else:
raise ValueError("Unknown format to load Order") raise ValueError("Unknown format to load Order")
...@@ -513,6 +516,7 @@ class FilledOrder(Price): ...@@ -513,6 +516,7 @@ class FilledOrder(Price):
super(FilledOrder, self).__init__( super(FilledOrder, self).__init__(
Amount(order["open_pays"], blockchain_instance=self.blockchain), Amount(order["open_pays"], blockchain_instance=self.blockchain),
Amount(order["current_pays"], blockchain_instance=self.blockchain), Amount(order["current_pays"], blockchain_instance=self.blockchain),
blockchain_instance=self.blockchain
) )
if "date" in order: if "date" in order:
self["date"] = formatTimeString(order["date"]) self["date"] = formatTimeString(order["date"])
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment