Matthias
acb1b50924
[ccxt] fix unsupported fiat failures ( #620 )
...
* prepare to support FIAT/Crypto trading
* Don't fail fiat-convert for unsupported stake currencies
* remove commented code
* Add BNB to cryptomap
* Fix test-failure
* related to random execution as fee was not properly mocked if this is
one of the first tests
2018-04-21 23:20:12 +02:00
Matthias Voppichler
a140748b5a
Merge branch 'feat/objectify-ccxt' into cxxt_obj_sellfix
2018-04-21 22:39:22 +02:00
Matthias
23e989d31f
Fix tests run in random order ( #599 )
...
* allow tests to run in random mode
* Fix random test mode for fiat-convert
* allow random test execution in persistence
* fix pep8 styling
* use "usefixtures" to prevent pylint "unused parameter" message
* add pytest-random-order to travis
2018-04-21 21:21:50 +02:00
gcarq
f4077a51c1
log hyperopt progress to stdout instead to the logger
2018-04-21 20:52:01 +02:00
gcarq
403f59ef45
use native python logger
2018-04-21 20:47:06 +02:00
Matthias Voppichler
06d230279c
Fix tests
2018-04-21 20:05:39 +02:00
Matthias Voppichler
47748bc6f7
adjust tests for fee_open and fee_close
2018-04-21 19:55:48 +02:00
gcarq
09fb4ea584
add mocks for exchange.get_fee
2018-04-21 19:39:18 +02:00
Matthias Voppichler
7f4c70827a
Test get_amount_lots
2018-04-21 13:33:29 +02:00
Matthias Voppichler
f69e8458f4
Add tests for update_real_amount
2018-04-21 13:33:29 +02:00
Matthias Voppichler
1d43dc229b
refactor tests of get_real_amount
2018-04-21 13:33:29 +02:00
Matthias Voppichler
11d8f7d522
add get_real_amount and tests
2018-04-21 13:33:29 +02:00
Samuel Husso
78bafee39d
download_backtest: fix imports and travis
2018-04-19 09:44:45 +03:00
Samuel Husso
66866ff260
fix travis
2018-04-19 09:06:56 +03:00
Samuel Husso
1dcd7e747e
partial fix for download testdate
2018-04-19 09:01:34 +03:00
Samuel Husso
42c0d7c7c3
Merge pull request #603 from enenn/ccxt-objectify-pr3_1
...
[3/3] Add support for multiple exchanges with ccxt (objectified version)
2018-04-18 15:23:33 +03:00
enenn
488210915a
Flak8 fixes...
2018-04-15 13:11:17 +02:00
enenn
f1d406b1e6
Fix possible race condition during testing
...
Order would sometimes fail to sell during tests,
probably because time between current time and creation was 0
2018-04-15 12:50:47 +02:00
enenn
89ed2e0127
Get mocked exhange buy return value from existing fixture
2018-04-15 12:48:02 +02:00
enenn
53b1f8d3a4
Add a 4th pair to testing dynamic whitelist generation
2018-04-15 12:20:49 +02:00
enenn
cc5991d269
Fixturize fee MagicMock object in tests
2018-04-15 12:09:12 +02:00
Michael Egger
b8184e4fdd
Merge pull request #602 from xmatthias/obj_ccxt_test_formatms
...
Add test for format_ms_time
2018-04-13 00:44:25 +02:00
Matthias Voppichler
37dee02e1c
Add comment and extract magic number to variable
2018-04-12 19:32:14 +02:00
enenn
2765a065a7
Use UNITTEST/BTC pair instead of ETH/BTC pair for load_data tests
2018-04-12 19:21:40 +02:00
enenn
94287d66a8
Flake8 fixes
2018-04-12 18:16:27 +02:00
enenn
838bd5824e
Mock validate_pairs
2018-04-12 18:16:26 +02:00
enenn
a650072fe0
Edit signal handler tests to work on windows as well
2018-04-12 18:16:26 +02:00
enenn
91b2092d55
Remove ticker_history_api and ticker_history_without_bv from conftest.py
2018-04-12 18:16:25 +02:00
enenn
cba8745164
Update exchange validate_pairs and related tests
2018-04-12 18:16:19 +02:00
enenn
c3d00a8825
Change ticker format to ccxt in backtesting and optimize tests
2018-04-12 18:14:33 +02:00
enenn
261522446e
Change to ccxt ticker format in test_analyze.py
2018-04-12 18:07:45 +02:00
enenn
a86104d0fe
Update backtesting and hyperopt tests to use default_config and mock validate_pairs
...
Use default_config from conftest.py instead of user supplied config in user_data/hyperopt_conf
Mock validate pairs so tests don't fail if pairs don't exist/are removed from exchanges
2018-04-12 18:07:45 +02:00
enenn
4ac2afacfa
Use global backtest instance for backtesting tests
2018-04-12 18:07:45 +02:00
enenn
07c655cf41
Use os.path.join for file paths
2018-04-12 18:07:45 +02:00
enenn
a9ba0981c7
Use exchange id for Trade and exchange name for RPC
2018-04-12 18:07:44 +02:00
enenn
7a074f21bd
Remove duplicate result pytest fixture
2018-04-12 18:07:44 +02:00
enenn
fef8a4c978
Update tests related to whitelist
2018-04-12 18:07:44 +02:00
enenn
12a84cc30b
Mock fee during testing as 0.0025
...
Ensures profit calculations does not vary if exchange fees change, which can cause tests to fail
2018-04-12 18:07:44 +02:00
enenn
0ae5b75f33
Update order structure to ccxt generic structure instead of bittrex specific
2018-04-12 18:07:43 +02:00
enenn
4810d87044
Change buy/sell return value in tests
2018-04-12 18:07:43 +02:00
enenn
0b71f7186c
Replace 'get_wallet_health' and 'get_markets_summaries'
...
Both are now covered by 'get_markets'
2018-04-12 18:07:43 +02:00
Matthias Voppichler
d03f58417b
Fix timezone dependency in test
2018-04-11 20:19:13 +02:00
Matthias Voppichler
7123985325
Add test for format_ms_time
2018-04-10 20:10:20 +02:00
enenn
7eb5138276
Update 8m historical unittest data.
...
8m.json.gz should be a copy of 1m.json, 8m.json should be empty
2018-04-09 20:25:26 +02:00
enenn
d50445108e
Fix issue where datetime string was converted to timestamp with timezone dependent offset
2018-04-08 13:12:55 +02:00
enenn
65c5a0b308
Remove comment from donwload_backtest_data.py
2018-04-08 13:11:36 +02:00
enenn
ce3603f84f
Change ticker_interval from 5 to 5m in default strategy
2018-04-07 21:31:52 +02:00
Matthias
a26cdceb4b
Fix tests run in random order ( #599 )
...
* allow tests to run in random mode
* Fix random test mode for fiat-convert
* allow random test execution in persistence
* fix pep8 styling
* use "usefixtures" to prevent pylint "unused parameter" message
* add pytest-random-order to travis
2018-04-07 20:06:53 +02:00
enenn
21468d72d3
Fix pair order in test_rpc.py
2018-04-07 20:01:06 +02:00
enenn
4f4cb3698e
Revert editing health in conftest.py
2018-04-07 17:05:44 +02:00
enenn
21c5282eb1
Change backtest data from bittrex format to ccxt format
2018-04-07 16:58:26 +02:00
enenn
db46ad6502
Change ticker interval from minutes as integer to string (1m, 5m, 1h,...)
2018-04-07 16:57:47 +02:00
enenn
616006caf8
Replace 'ETH/BTC' with 'UNITTEST/BTC' to fix adx not generating if ETH/BTC ticker history is too short
2018-04-07 16:55:18 +02:00
enenn
cbc0b81d2e
Rename ticker history files from "BTC_XXX-1.json" to "XXX_BTC-1m.json"
2018-04-07 16:52:09 +02:00
enenn
c1c6ed6ed7
Replace 'BTC_XXX' with 'XXX/BTC' for pairs and 'XXX_BTC' for files
2018-04-07 16:51:50 +02:00
enenn
1f75636e56
[1/3] Add support for multiple exchanges with ccxt (objectified version) ( #585 )
...
* remove obsolete helper functions and make _state a public member.
* remove function assertions
* revert worker() changes
* Update pytest from 3.4.2 to 3.5.0
* Adapt exchange functions to ccxt API
Remove get_market_summaries and get_wallet_health, add exception handling
* Add NetworkException
* Change pair format in constants.py
* Add tests for exchange functions that comply with ccxt
* Remove bittrex tests
* Remove Bittrex and Interface classes
* Add retrier decorator
* Remove cache from get_ticker
* Remove unused and duplicate imports
* Add keyword arguments for get_fee
* Implement 'get_pair_detail_url'
* Change get_ticker_history format to ccxt format
* Fix exchange urls dict, don't need to initialize exchanges
* Add "Using Exchange ..." logging line
2018-04-06 10:57:08 +03:00
Matthias Voppichler
0203a48f3e
use local config-object for check_exchange
...
fix AttributeError: 'NoneType' object has no attribute 'get' when
starting the bot.
2018-04-04 22:05:17 +02:00
Michael Egger
9019f6492f
define constants on module level ( #596 )
2018-04-02 16:42:53 +02:00
Michael Egger
5420bb9f6d
Merge pull request #594 from xmatthias/obj_ccxt_conv
...
Conversion script for Ticker history data
2018-03-31 17:58:00 +02:00
Matthias Voppichler
a4906c477e
Add handling for gzip files
2018-03-30 23:30:23 +02:00
Gerald Lonlas
7cafd1f17e
Update exchange unit tests
2018-03-30 13:52:25 -07:00
Gerald Lonlas
3d2c6a22a3
Fix test_validate_pairs()
2018-03-30 13:31:13 -07:00
Gerald Lonlas
052404ffbd
Check if the exchange is supported
2018-03-30 13:14:35 -07:00
gcarq
24aa6a1679
adapt test_download_backtesting_testdata
2018-03-29 20:17:11 +02:00
gcarq
3775fdf9c7
change column order assertions
2018-03-29 20:16:46 +02:00
gcarq
872bbadded
add test_load_custom_strategy()
2018-03-27 18:29:51 +02:00
gcarq
157f7da8ce
remove obsolete assertions
2018-03-27 16:32:58 +02:00
gcarq
a356edb117
implement '--strategy-path' argument
2018-03-27 16:32:58 +02:00
gcarq
5fb6fa38aa
apply __slots__ to resolver and reintroduce type conversations
2018-03-27 16:32:58 +02:00
gcarq
280886104c
strategy: remove unneeded population methods in resolver
2018-03-27 16:32:58 +02:00
gcarq
b254ff9b41
Merge 'develop' into feature/enhance-strategy-resolving
2018-03-26 16:23:25 +02:00
Samuel Husso
0a32d38ad9
exchange: fix get_ticker_history test
2018-03-26 09:24:50 +03:00
Samuel Husso
3069a422e9
Conftest: use coins that we know are in bittrex, added a new conf for ccxt unittest
2018-03-26 09:24:22 +03:00
gcarq
611bb52d1f
log hyperopt progress to stdout instead to the logger
2018-03-25 22:57:40 +02:00
gcarq
f374a062e1
remove freqtrade/logger.py
2018-03-25 21:43:00 +02:00
gcarq
fa7f74b4bc
use native python logger
2018-03-25 21:43:00 +02:00
gcarq
3f8d7dae39
make name a required argument and add fallback to getEffectiveLevel
2018-03-25 21:42:03 +02:00
gcarq
6b47c39103
remove invalid mock
2018-03-25 15:12:39 +02:00
gcarq
3cee94226f
fix flake8 warnings
2018-03-25 15:12:39 +02:00
gcarq
a38c2121cc
adapt tests
2018-03-25 15:12:39 +02:00
gcarq
b4d2a3f495
refactor StrategyResolver to work with class names
2018-03-25 15:12:39 +02:00
gcarq
ca9c5edd39
rename Strategy into StrategyResolver
2018-03-25 15:12:39 +02:00
Matthias Voppichler
b07ee26e08
Revert testing exchange to bittrex
2018-03-25 12:57:59 +02:00
Matthias Voppichler
ae803474f9
switch rpc_telgram to new style and make it pass
2018-03-24 20:59:25 +01:00
Matthias Voppichler
0a068db285
Switch rpc_test to new currency style
2018-03-24 20:59:09 +01:00
Matthias Voppichler
32222ae6ef
Fix tests in acl_pair
2018-03-24 20:42:51 +01:00
Matthias Voppichler
82a2144296
change format of health fixture and get_market_summaries fixture
2018-03-24 20:36:33 +01:00
Matthias Voppichler
22ef860312
Change freqbottest currencies
2018-03-24 20:32:15 +01:00
Matthias Voppichler
a6587b209f
freqtradebot_tests - change currency to new format
2018-03-24 20:11:42 +01:00
Matthias Voppichler
609c1eee55
fix persistance tests
2018-03-24 20:03:31 +01:00
gcarq
9df5e09a82
remove function assertions
2018-03-21 18:50:18 +01:00
gcarq
9559f50eec
remove obsolete helper functions and make _state a public member.
2018-03-21 18:50:18 +01:00
Samuel Husso
14d16d573c
Remove bittrex related interface code and tests
2018-03-21 19:31:15 +02:00
gcarq
d2aea7bdc1
optimize imports
2018-03-20 19:50:04 +01:00
gcarq
967bf417df
Merge branch 'develop' into feature/objectify
2018-03-19 19:10:19 +01:00
Matthias
b67257db35
replace pymarketcap with coinmarketcap ( #562 )
...
* replace pymarketcap with coinmarketcap
* fix tests to use coinmarketcap instead of pymarketcap
* use arraypos 0
* update setup.py from pymarketcap to coinmarketcap
* Add test to check for unsupported Crypto currency
2018-03-19 18:40:40 +01:00
Matthias
94caf82ab2
Fix test_dataframe when ran standalone ( #546 )
...
* Fix dataframe test when ran standalone
* Fix standalone tests in hyperopt and optimize tests
2018-03-19 18:30:14 +01:00
Matthias
a99c8c4046
replace pymarketcap with coinmarketcap ( #562 )
...
* replace pymarketcap with coinmarketcap
* fix tests to use coinmarketcap instead of pymarketcap
* use arraypos 0
* update setup.py from pymarketcap to coinmarketcap
* Add test to check for unsupported Crypto currency
2018-03-18 00:42:24 +01:00
Gérald LONLAS
e6732e01e1
Use ticker_interval defined in Strategy() instead of a mix between strategy and config file ( #540 )
2018-03-15 23:48:22 +01:00
Matthias
e907c48438
Fix test_dataframe when ran standalone ( #546 )
...
* Fix dataframe test when ran standalone
* Fix standalone tests in hyperopt and optimize tests
2018-03-15 23:37:34 +01:00
Gerald Lonlas
173b640b34
Increase Hyperopt() code coverage
2018-03-05 22:36:15 -08:00
Gerald Lonlas
a8fd7a69ab
Increase Configuration._load_config_file() code coverage
2018-03-05 19:57:45 -08:00
Gerald Lonlas
ea7b25766b
Increase Hyperopt() code coverage
2018-03-05 00:35:42 -08:00
Gerald Lonlas
1d43e04725
Increase FreqtradeBot() code coverage
2018-03-05 00:11:13 -08:00
Gerald Lonlas
ba664c4341
Increase Configuration._load_hyperopt_config() code coverage
2018-03-04 23:12:34 -08:00
Gerald Lonlas
aa22585d40
Add unit test for misc.common_datearray()
2018-03-04 23:05:44 -08:00
Gerald Lonlas
d685646446
Arguments(): Change private methods to public
2018-03-04 17:51:57 -08:00
Gerald Lonlas
25d0e5f942
Merge commit '4dca84817eb1b62047a9e4d282254392ea978e44' into feature/objectify
2018-03-04 02:06:40 -08:00
Gerald Lonlas
c52e688979
Fix unit tests in test_arguments.py and test_configuration.py
2018-03-04 00:58:20 -08:00
Gerald Lonlas
5a6f6c7138
Merge commit 'd13d6736b92ebfed1e172b60c77029e6c10b29a6' into feature/objectify
2018-03-04 00:51:49 -08:00
Gerald Lonlas
722ed48d9d
Merge commit 'e3d222912dfd775b7456a44d6d6055430711f251' into feature/objectify
2018-03-04 00:51:22 -08:00
Gerald Lonlas
38510d4b03
Merge commit '1134c81aad049d4357c8f299ffc801218f3d9574' into feature/objectify
2018-03-03 17:26:06 -08:00
Gerald Lonlas
84759073d9
Refactor Configuration() to apply common configurations all the time and to remove show_info
2018-03-03 13:43:14 -08:00
Gerald Lonlas
0632cf0f44
Merge commit 'aa7aeb046ef72412cadd094666efc8e4c503ef2d' into feature/objectify
2018-03-02 23:28:36 -08:00
Gerald Lonlas
bbb1a31fda
Merge commit 'c5400b6c37c7de64a86c9db39a4d0fa9169b35f6' into feature/objectify
2018-03-03 10:01:06 +08:00
Gerald Lonlas
390501bac0
Make Pylint Happy chapter 1
2018-03-03 09:33:54 +08:00
Gerald Lonlas
6148f98980
Fix Telegram unit test when using an internet connection
2018-03-03 09:33:54 +08:00
Gerald Lonlas
8bd0f4d0d7
Remove ugly pprints
2018-03-03 09:33:54 +08:00
Gerald Lonlas
bc8ca491cd
Minor updates
2018-03-03 09:33:54 +08:00
Gerald Lonlas
6ef7b7d93d
Complete Backtesting and Hyperopt unit tests
2018-03-03 09:33:54 +08:00
Gerald Lonlas
f4ec073099
Move RPC and Telegram to classes
2018-03-03 09:33:54 +08:00
Gerald Lonlas
766ec5ad0f
Update unit tests to be compatible with this refactoring
...
Updated:
- test_acl_pair to be compatible with FreqtradeBot() class
- test_default_strategy.py to be compatible with Analyze() class
2018-03-03 09:33:54 +08:00
Gerald Lonlas
383fb6d20e
Add a class Arguments to manage cli arguments passed to the bot
2018-03-03 09:33:54 +08:00
Gerald Lonlas
1d251d6151
Move Backtesting to a class and add unit tests
2018-03-03 09:33:54 +08:00
Gerald Lonlas
db67b10605
Remove Singleton from Strategy()
2018-03-03 09:33:54 +08:00
Gerald Lonlas
4da033c7a2
Refactor main.py
...
- Update, clean, and improve code coverage on main.py
- Move bot trading logic into Freqtradebot() class
- Move unit tests to test_freqtradebot, add more coverage tests
2018-03-03 09:33:54 +08:00
Gerald Lonlas
a8b8ab20b7
Move Analyze to a class
2018-03-03 09:33:54 +08:00
Gerald Lonlas
e025dc0dba
Keep in misc file only tool functions
2018-03-03 09:33:54 +08:00
Gerald Lonlas
89e3729955
Add a Configuration class that generate the Bot config from Arguments
2018-03-03 09:33:54 +08:00
Gerald Lonlas
3b9e828fa4
Add a class Logger to manage the logging messages
...
This class will evolve later to support color logging. For now
it is used to not repeat the logging configuration everywhere.
2018-03-03 09:33:54 +08:00
Gerald Lonlas
cf753d5c40
Add a Enum class State that contains Bot running states
2018-03-03 09:33:54 +08:00
Gerald Lonlas
314ab0a84f
Add a Constants class that contains Bot constants
2018-03-03 09:33:54 +08:00
Janne Sinivirta
bf54692efb
use log_has helper in tests
2018-02-24 22:18:19 +02:00
Janne Sinivirta
76c5cdc6e3
more minor tweaks to log messages
2018-02-24 20:30:16 +02:00
Janne Sinivirta
646d1f7316
better log message for outdated history
2018-02-24 19:25:08 +02:00
Janne Sinivirta
160af91f9a
improving log messages
2018-02-24 18:58:57 +02:00
Janne Sinivirta
cf013140a6
add went_up and went_down helpers
2018-02-13 11:37:59 +02:00
Samuel Husso
e3d222912d
Merge pull request #511 from gcarq/hyperopt_selectable_spaces
...
Allow selecting Hyperopt search space
2018-02-12 08:28:24 +02:00
Janne Sinivirta
b1230b27b7
adjust unit test to match new --spaces format
2018-02-11 19:22:13 +02:00
Janne Sinivirta
2ce03ab1b5
make Strategy store roi and stoploss values as numbers to avoid later casting
2018-02-11 15:25:30 +02:00
Janne Sinivirta
f14d6249e0
allow selecting hyperopt searchspace
2018-02-09 20:59:06 +02:00
kryofly
12a19e400f
tests: more backtesting testing ( #496 )
...
* tests: more backtesting testing
* tests: hyperopt
* tests: document kludge
* tests: improve test_dataframe_correct_length
* tests: remove remarks
2018-02-08 21:49:43 +02:00
Janne Sinivirta
0454b4c8d5
remove unnecessary Decimal construction
2018-02-06 21:37:11 +02:00
Janne Sinivirta
8c7b29734e
use date info to calculate trade durations
2018-02-06 11:34:00 +02:00
Gérald LONLAS
d24cd89304
Remove Strategy fallback to default strategy ( #490 )
...
* Remove Strategy fallback to default strategy
2018-02-02 11:01:09 +02:00
Samuel Husso
d5435a9962
Merge pull request #487 from gcarq/pyup-update-pytest-3.3.2-to-3.4.0
...
Update pytest to 3.4.0
2018-02-01 08:21:45 +02:00
kryofly
9f6aedea47
telegram refactor 1/ ( #389 )
...
* telegram refactor 1/
move out freqcode from telegram
* telegram refactor 2/
move out rpc_trade_status
* telegram refactor 3/
move out rpc_daily_profit
* telegram refactor /4
move out rpc_trade_statistics
* 5/
* rpc refactor 6/
* rpc refactor 7/
* rpc refactor 8/
* rpc refactor 9/
* rpc refactor 10/
cleanups
two tests are broken
* fiat
* rpc: Add back fiat singleton usage
* test: rpc_trade_statistics
Test that rpc_trade_statistics can handle trades that lacks
trade.open_rate (it is set to None)
* test: rpc_forcesell
Also some cleanups
* test: telegram.py::init
* test: telegram test_cleanup and test_status
* test rcp cleanup
2018-02-01 08:05:23 +02:00
Janne Sinivirta
45975c9677
set capturing level
2018-01-31 19:37:38 +02:00
Gerald Lonlas
cac2f2b58b
Wrong assert condition
2018-01-29 23:04:28 -08:00
Gerald Lonlas
524290d678
Fix backtesting ticker interval download
2018-01-29 22:51:29 -08:00