Remove get_market_summaries
This commit is contained in:
parent
a11c24b286
commit
508342e42b
@ -171,18 +171,15 @@ def get_order(order_id: str) -> Dict:
|
|||||||
return _API.get_order(order_id)
|
return _API.get_order(order_id)
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: reimplement, not part of ccxt
|
||||||
def get_pair_detail_url(pair: str) -> str:
|
def get_pair_detail_url(pair: str) -> str:
|
||||||
return _API.get_pair_detail_url(pair)
|
return ""
|
||||||
|
|
||||||
|
|
||||||
def get_markets() -> List[dict]:
|
def get_markets() -> List[dict]:
|
||||||
return _API.fetch_markets()
|
return _API.fetch_markets()
|
||||||
|
|
||||||
|
|
||||||
def get_market_summaries() -> List[Dict]:
|
|
||||||
return _API.public_get_marketsummaries()['result']
|
|
||||||
|
|
||||||
|
|
||||||
def get_name() -> str:
|
def get_name() -> str:
|
||||||
return _API.name
|
return _API.name
|
||||||
|
|
||||||
|
@ -132,27 +132,3 @@ class Exchange(ABC):
|
|||||||
Returns all available markets.
|
Returns all available markets.
|
||||||
:return: List of all available pairs
|
:return: List of all available pairs
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@abstractmethod
|
|
||||||
def get_market_summaries(self) -> List[Dict]:
|
|
||||||
"""
|
|
||||||
Returns a 24h market summary for all available markets
|
|
||||||
:return: list, format: [
|
|
||||||
{
|
|
||||||
'MarketName': str,
|
|
||||||
'High': float,
|
|
||||||
'Low': float,
|
|
||||||
'Volume': float,
|
|
||||||
'Last': float,
|
|
||||||
'TimeStamp': datetime,
|
|
||||||
'BaseVolume': float,
|
|
||||||
'Bid': float,
|
|
||||||
'Ask': float,
|
|
||||||
'OpenBuyOrders': int,
|
|
||||||
'OpenSellOrders': int,
|
|
||||||
'PrevDay': float,
|
|
||||||
'Created': datetime
|
|
||||||
},
|
|
||||||
...
|
|
||||||
]
|
|
||||||
"""
|
|
||||||
|
@ -469,13 +469,13 @@ def gen_pair_whitelist(base_currency: str, key: str = 'BaseVolume') -> List[str]
|
|||||||
:return: List of pairs
|
:return: List of pairs
|
||||||
"""
|
"""
|
||||||
|
|
||||||
summaries = sorted(
|
pairs = sorted(
|
||||||
(s for s in exchange.get_market_summaries() if s['MarketName'].endswith(base_currency)),
|
(s['symbol'] for s in exchange.get_markets() if s['quote'] == base_currency),
|
||||||
key=lambda s: s.get(key) or 0.0,
|
key=lambda s: s.get(key) or 0.0,
|
||||||
reverse=True
|
reverse=True
|
||||||
)
|
)
|
||||||
|
|
||||||
return [s['MarketName'].replace('-', '_') for s in summaries]
|
return pairs
|
||||||
|
|
||||||
|
|
||||||
def cleanup() -> None:
|
def cleanup() -> None:
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
from freqtrade.main import refresh_whitelist, gen_pair_whitelist
|
from freqtrade.main import refresh_whitelist, gen_pair_whitelist
|
||||||
|
|
||||||
|
|
||||||
# whitelist, blacklist, filtering, all of that will
|
# whitelist, blacklist, filtering, all of that will
|
||||||
# eventually become some rules to run on a generic ACL engine
|
# eventually become some rules to run on a generic ACL engine
|
||||||
# perhaps try to anticipate that by using some python package
|
# perhaps try to anticipate that by using some python package
|
||||||
@ -25,59 +26,78 @@ def whitelist_conf():
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
def get_market_summaries():
|
|
||||||
return [{
|
|
||||||
'MarketName': 'BTC-TKN',
|
|
||||||
'High': 0.00000919,
|
|
||||||
'Low': 0.00000820,
|
|
||||||
'Volume': 74339.61396015,
|
|
||||||
'Last': 0.00000820,
|
|
||||||
'BaseVolume': 1664,
|
|
||||||
'TimeStamp': '2014-07-09T07:19:30.15',
|
|
||||||
'Bid': 0.00000820,
|
|
||||||
'Ask': 0.00000831,
|
|
||||||
'OpenBuyOrders': 15,
|
|
||||||
'OpenSellOrders': 15,
|
|
||||||
'PrevDay': 0.00000821,
|
|
||||||
'Created': '2014-03-20T06:00:00',
|
|
||||||
'DisplayMarketName': ''
|
|
||||||
}, {
|
|
||||||
'MarketName': 'BTC-ETH',
|
|
||||||
'High': 0.00000072,
|
|
||||||
'Low': 0.00000001,
|
|
||||||
'Volume': 166340678.42280999,
|
|
||||||
'Last': 0.00000005,
|
|
||||||
'BaseVolume': 42,
|
|
||||||
'TimeStamp': '2014-07-09T07:21:40.51',
|
|
||||||
'Bid': 0.00000004,
|
|
||||||
'Ask': 0.00000005,
|
|
||||||
'OpenBuyOrders': 18,
|
|
||||||
'OpenSellOrders': 18,
|
|
||||||
'PrevDay': 0.00000002,
|
|
||||||
'Created': '2014-05-30T07:57:49.637',
|
|
||||||
'DisplayMarketName': ''
|
|
||||||
}, {
|
|
||||||
'MarketName': 'BTC-BLK',
|
|
||||||
'High': 0.00000072,
|
|
||||||
'Low': 0.00000001,
|
|
||||||
'Volume': 166340678.42280999,
|
|
||||||
'Last': 0.00000005,
|
|
||||||
'BaseVolume': 3,
|
|
||||||
'TimeStamp': '2014-07-09T07:21:40.51',
|
|
||||||
'Bid': 0.00000004,
|
|
||||||
'Ask': 0.00000005,
|
|
||||||
'OpenBuyOrders': 18,
|
|
||||||
'OpenSellOrders': 18,
|
|
||||||
'PrevDay': 0.00000002,
|
|
||||||
'Created': '2014-05-30T07:57:49.637',
|
|
||||||
'DisplayMarketName': ''
|
|
||||||
}]
|
|
||||||
|
|
||||||
|
|
||||||
def get_markets():
|
def get_markets():
|
||||||
return [{'symbol': 'ETH/BTC', 'base': 'ETH', 'quote':'BTC', 'active': True},
|
return [
|
||||||
{'symbol': 'TKN/BTC', 'base': 'TKN', 'quote':'BTC', 'active': True},
|
{
|
||||||
{'symbol': 'BLK/BTC', 'base': 'BLK', 'quote':'BTC', 'active': True}]
|
'id': 'ethbtc',
|
||||||
|
'symbol': 'ETH/BTC',
|
||||||
|
'base': 'ETH',
|
||||||
|
'quote': 'BTC',
|
||||||
|
'active': True,
|
||||||
|
'precision': {
|
||||||
|
'price': 8,
|
||||||
|
'amount': 8,
|
||||||
|
'cost': 8,
|
||||||
|
},
|
||||||
|
'lot': 0.00000001,
|
||||||
|
|
||||||
|
'limits': {
|
||||||
|
'amount': {
|
||||||
|
'min': 0.01,
|
||||||
|
'max': 1000,
|
||||||
|
},
|
||||||
|
'price': 500000,
|
||||||
|
'cost': 500000,
|
||||||
|
},
|
||||||
|
'info': '',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'id': 'tknbtc',
|
||||||
|
'symbol': 'TKN/BTC',
|
||||||
|
'base': 'TKN',
|
||||||
|
'quote': 'BTC',
|
||||||
|
'active': True,
|
||||||
|
'precision': {
|
||||||
|
'price': 8,
|
||||||
|
'amount': 8,
|
||||||
|
'cost': 8,
|
||||||
|
},
|
||||||
|
'lot': 0.00000001,
|
||||||
|
|
||||||
|
'limits': {
|
||||||
|
'amount': {
|
||||||
|
'min': 0.01,
|
||||||
|
'max': 1000,
|
||||||
|
},
|
||||||
|
'price': 500000,
|
||||||
|
'cost': 500000,
|
||||||
|
},
|
||||||
|
'info': '',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'id': 'blkbtc',
|
||||||
|
'symbol': 'BLK/BTC',
|
||||||
|
'base': 'BLK',
|
||||||
|
'quote': 'BTC',
|
||||||
|
'active': True,
|
||||||
|
'precision': {
|
||||||
|
'price': 8,
|
||||||
|
'amount': 8,
|
||||||
|
'cost': 8,
|
||||||
|
},
|
||||||
|
'lot': 0.00000001,
|
||||||
|
|
||||||
|
'limits': {
|
||||||
|
'amount': {
|
||||||
|
'min': 0.01,
|
||||||
|
'max': 1000,
|
||||||
|
},
|
||||||
|
'price': 500000,
|
||||||
|
'cost': 500000,
|
||||||
|
},
|
||||||
|
'info': '',
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def get_markets_empty():
|
def get_markets_empty():
|
||||||
@ -114,8 +134,6 @@ def test_refresh_whitelist_dynamic(mocker):
|
|||||||
mocker.patch.dict('freqtrade.main._CONF', conf)
|
mocker.patch.dict('freqtrade.main._CONF', conf)
|
||||||
mocker.patch.multiple('freqtrade.main.exchange',
|
mocker.patch.multiple('freqtrade.main.exchange',
|
||||||
get_markets=get_markets)
|
get_markets=get_markets)
|
||||||
mocker.patch.multiple('freqtrade.main.exchange',
|
|
||||||
get_market_summaries=get_market_summaries)
|
|
||||||
# argument: use the whitelist dynamically by exchange-volume
|
# argument: use the whitelist dynamically by exchange-volume
|
||||||
whitelist = ['TKN/BTC', 'ETH/BTC']
|
whitelist = ['TKN/BTC', 'ETH/BTC']
|
||||||
refreshedwhitelist = refresh_whitelist(
|
refreshedwhitelist = refresh_whitelist(
|
||||||
|
Loading…
Reference in New Issue
Block a user