Replace Bittrex references with ccxt exchange class

This commit is contained in:
enenn 2018-02-03 21:45:18 +01:00
parent 9f35d74e1d
commit 7be34310f5
3 changed files with 20 additions and 21 deletions

View File

@ -1,11 +1,11 @@
# pragma pylint: disable=missing-docstring, W0212, line-too-long, C0103
import logging
import ccxt
import math
from unittest.mock import MagicMock
import pandas as pd
from freqtrade import exchange, optimize
from freqtrade.exchange import Bittrex
from freqtrade.optimize import preprocess
from freqtrade.optimize.backtesting import backtest, generate_text_table, get_timeframe
import freqtrade.optimize.backtesting as backtesting
@ -47,7 +47,7 @@ def test_get_timeframe(default_strategy):
def test_backtest(default_strategy, default_conf, mocker):
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
data = optimize.load_data(None, ticker_interval=5, pairs=['ETH/BTC'])
data = trim_dictlist(data, -200)
@ -60,7 +60,7 @@ def test_backtest(default_strategy, default_conf, mocker):
def test_backtest_1min_ticker_interval(default_strategy, default_conf, mocker):
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
# Run a backtesting for an exiting 5min ticker_interval
data = optimize.load_data(None, ticker_interval=1, pairs=['UNITTEST/BTC'])

View File

@ -3,10 +3,10 @@
import os
import json
import logging
import ccxt
import uuid
from shutil import copyfile
from freqtrade import exchange, optimize
from freqtrade.exchange import Bittrex
from freqtrade.optimize.__init__ import make_testdata_path, download_pairs,\
download_backtesting_testdata, load_tickerdata_file, trim_tickerlist, file_dump_json
@ -49,7 +49,7 @@ def test_load_data_30min_ticker(default_conf, ticker_history, mocker, caplog):
mocker.patch('freqtrade.optimize.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file = 'freqtrade/tests/testdata/UNITTEST_BTC-30.json'
_backup_file(file, copy_file=True)
@ -65,7 +65,7 @@ def test_load_data_5min_ticker(default_conf, ticker_history, mocker, caplog):
mocker.patch('freqtrade.optimize.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file = 'freqtrade/tests/testdata/ETH_BTC-5.json'
_backup_file(file, copy_file=True)
@ -81,7 +81,7 @@ def test_load_data_1min_ticker(default_conf, ticker_history, mocker, caplog):
mocker.patch('freqtrade.optimize.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file = 'freqtrade/tests/testdata/ETH_BTC-1.json'
_backup_file(file, copy_file=True)
@ -97,7 +97,7 @@ def test_load_data_with_new_pair_1min(default_conf, ticker_history, mocker, capl
mocker.patch('freqtrade.optimize.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file = 'freqtrade/tests/testdata/MEME/BTC-1.json'
_backup_file(file)
@ -116,7 +116,7 @@ def test_testdata_path():
def test_download_pairs(default_conf, ticker_history, mocker):
mocker.patch('freqtrade.optimize.__init__.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file1_1 = 'freqtrade/tests/testdata/MEME_BTC-1.json'
file1_5 = 'freqtrade/tests/testdata/MEME_BTC-5.json'
@ -158,7 +158,7 @@ def test_download_pairs_exception(default_conf, ticker_history, mocker, caplog):
mocker.patch('freqtrade.optimize.__init__.download_backtesting_testdata',
side_effect=BaseException('File Error'))
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
file1_1 = 'freqtrade/tests/testdata/MEME_BTC-1.json'
file1_5 = 'freqtrade/tests/testdata/MEME_BTC-5.json'
@ -177,7 +177,7 @@ def test_download_pairs_exception(default_conf, ticker_history, mocker, caplog):
def test_download_backtesting_testdata(default_conf, ticker_history, mocker):
mocker.patch('freqtrade.optimize.__init__.get_ticker_history', return_value=ticker_history)
mocker.patch.dict('freqtrade.main._CONF', default_conf)
exchange._API = Bittrex({'key': '', 'secret': ''})
exchange._API = ccxt.binance({'key': '', 'secret': ''})
# Download a 1 min ticker file
file1 = 'freqtrade/tests/testdata/XEL_BTC-1.json'

View File

@ -2,7 +2,6 @@
import os
import pytest
from sqlalchemy import create_engine
from freqtrade.exchange import Exchanges
from freqtrade.persistence import Trade, init, clean_dry_run_db
@ -120,7 +119,7 @@ def test_update_with_bittrex(limit_buy_order, limit_sell_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
assert trade.open_order_id is None
assert trade.open_rate is None
@ -147,7 +146,7 @@ def test_calc_open_close_trade_price(limit_buy_order, limit_sell_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'something'
@ -169,7 +168,7 @@ def test_calc_close_trade_price_exception(limit_buy_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'something'
@ -182,7 +181,7 @@ def test_update_open_order(limit_buy_order):
pair='ETH/BTC',
stake_amount=1.00,
fee=0.1,
exchange=Exchanges.BITTREX,
exchange='binance',
)
assert trade.open_order_id is None
@ -204,7 +203,7 @@ def test_update_invalid_order(limit_buy_order):
pair='ETH/BTC',
stake_amount=1.00,
fee=0.1,
exchange=Exchanges.BITTREX,
exchange='binance',
)
limit_buy_order['type'] = 'invalid'
with pytest.raises(ValueError, match=r'Unknown order type'):
@ -216,7 +215,7 @@ def test_calc_open_trade_price(limit_buy_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'open_trade'
trade.update(limit_buy_order) # Buy @ 0.00001099
@ -233,7 +232,7 @@ def test_calc_close_trade_price(limit_buy_order, limit_sell_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'close_trade'
trade.update(limit_buy_order) # Buy @ 0.00001099
@ -254,7 +253,7 @@ def test_calc_profit(limit_buy_order, limit_sell_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'profit_percent'
trade.update(limit_buy_order) # Buy @ 0.00001099
@ -288,7 +287,7 @@ def test_calc_profit_percent(limit_buy_order, limit_sell_order):
pair='ETH/BTC',
stake_amount=0.001,
fee=0.0025,
exchange=Exchanges.BITTREX,
exchange='binance',
)
trade.open_order_id = 'profit_percent'
trade.update(limit_buy_order) # Buy @ 0.00001099