mirror of
https://github.com/freqtrade/freqtrade.git
synced 2024-09-21 01:51:12 +00:00
Merge pull request #8865 from freqtrade/online_test_trade_history
Online test trade history
This commit is contained in:
commit
dacbcdb710
|
@ -354,7 +354,7 @@ def _download_trades_history(exchange: Exchange,
|
||||||
trades = []
|
trades = []
|
||||||
|
|
||||||
if not since:
|
if not since:
|
||||||
since = int((datetime.now() - timedelta(days=-new_pairs_days)).timestamp()) * 1000
|
since = int((datetime.now() - timedelta(days=new_pairs_days)).timestamp()) * 1000
|
||||||
|
|
||||||
from_id = trades[-1][1] if trades else None
|
from_id = trades[-1][1] if trades else None
|
||||||
if trades and since < trades[-1][0]:
|
if trades and since < trades[-1][0]:
|
||||||
|
|
|
@ -43,6 +43,7 @@ EXCHANGES = {
|
||||||
'hasQuoteVolumeFutures': True,
|
'hasQuoteVolumeFutures': True,
|
||||||
'leverage_tiers_public': False,
|
'leverage_tiers_public': False,
|
||||||
'leverage_in_spot_market': False,
|
'leverage_in_spot_market': False,
|
||||||
|
'trades_lookback_hours': 4,
|
||||||
'private_methods': [
|
'private_methods': [
|
||||||
'fapiPrivateGetPositionSideDual',
|
'fapiPrivateGetPositionSideDual',
|
||||||
'fapiPrivateGetMultiAssetsMargin'
|
'fapiPrivateGetMultiAssetsMargin'
|
||||||
|
@ -98,6 +99,7 @@ EXCHANGES = {
|
||||||
'timeframe': '1h',
|
'timeframe': '1h',
|
||||||
'leverage_tiers_public': False,
|
'leverage_tiers_public': False,
|
||||||
'leverage_in_spot_market': True,
|
'leverage_in_spot_market': True,
|
||||||
|
'trades_lookback_hours': 12,
|
||||||
},
|
},
|
||||||
'kucoin': {
|
'kucoin': {
|
||||||
'pair': 'XRP/USDT',
|
'pair': 'XRP/USDT',
|
||||||
|
@ -640,7 +642,21 @@ class TestCCXTExchange:
|
||||||
assert isinstance(funding_fee, float)
|
assert isinstance(funding_fee, float)
|
||||||
# assert funding_fee > 0
|
# assert funding_fee > 0
|
||||||
|
|
||||||
# TODO: tests fetch_trades (?)
|
def test_ccxt__async_get_trade_history(self, exchange: EXCHANGE_FIXTURE_TYPE):
|
||||||
|
exch, exchangename = exchange
|
||||||
|
if not (lookback := EXCHANGES[exchangename].get('trades_lookback_hours')):
|
||||||
|
pytest.skip('test_fetch_trades not enabled for this exchange')
|
||||||
|
pair = EXCHANGES[exchangename]['pair']
|
||||||
|
since = int((datetime.now(timezone.utc) - timedelta(hours=lookback)).timestamp() * 1000)
|
||||||
|
res = exch.loop.run_until_complete(
|
||||||
|
exch._async_get_trade_history(pair, since, None, None)
|
||||||
|
)
|
||||||
|
assert len(res) == 2
|
||||||
|
res_pair, res_trades = res
|
||||||
|
assert res_pair == pair
|
||||||
|
assert isinstance(res_trades, list)
|
||||||
|
assert res_trades[0][0] >= since
|
||||||
|
assert len(res_trades) > 1200
|
||||||
|
|
||||||
def test_ccxt_get_fee(self, exchange: EXCHANGE_FIXTURE_TYPE):
|
def test_ccxt_get_fee(self, exchange: EXCHANGE_FIXTURE_TYPE):
|
||||||
exch, exchangename = exchange
|
exch, exchangename = exchange
|
||||||
|
|
Loading…
Reference in New Issue
Block a user