gcarq
a76ed88496
Merge branch 'feat/objectify-ccxt' into feature/catch-exchange-errors
2018-05-02 20:03:13 +02:00
Anton
24ab1b5be5
Fix review comments, documenation update
2018-05-01 00:27:05 +03:00
Samuel Husso
842b0c2270
Exchange: fix missing comma and typehinting per PR comments
2018-04-29 18:55:43 +03:00
Anton
a127e1db07
Fix case with empty dict
2018-04-28 01:40:48 +03:00
Anton
2267a420a4
Fix codestyle
2018-04-28 00:30:42 +03:00
Anton
82ea56c8fd
Fix review comments. Add support of datetime timeganges
2018-04-28 00:16:34 +03:00
Michael Egger
ecaf6b763c
Merge pull request #623 from xmatthias/cxxt_obj_sellfix
...
[cxxt][1/2] fix fee calculation in binance
2018-04-26 19:58:24 +02:00
Matthias Voppichler
0987af910e
remove indicator name from comment
2018-04-25 20:03:32 +02:00
Matthias Voppichler
2e1124af1a
remove unnecessary .keys()
2018-04-25 14:00:25 +02:00
Anton
2fe7812e20
Fix codestyle
2018-04-25 10:32:58 +03:00
Matthias Voppichler
8bd9ed1543
fix flake8
2018-04-25 09:13:56 +02:00
Matthias Voppichler
72c17e29c0
Add test for "no trades found" case
2018-04-25 09:08:02 +02:00
Matthias Voppichler
483415cd65
Add fee entry to DRY_ORDER dict as defined by ccxt
2018-04-25 09:03:32 +02:00
Matthias Voppichler
98669a3d62
remove duplicate log entry, fix key-error
2018-04-25 09:01:21 +02:00
Matthias Voppichler
9c2115c917
refactor get_real_amount
2018-04-25 08:52:08 +02:00
Matthias Voppichler
f6ecd8e514
Add pytest fixture for real_amount test
2018-04-25 08:51:31 +02:00
Anton
6675120324
Add time range support to download_backtest_data
2018-04-25 02:11:07 +03:00
Matthias Voppichler
ab6589d573
Fix comment and improve log message
2018-04-24 19:43:08 +02:00
Matthias Voppichler
9e94778fd7
simplify check for presence of list
2018-04-24 19:42:41 +02:00
Matthias Voppichler
2968347062
fix flake8
2018-04-23 20:32:46 +02:00
Matthias Voppichler
9450b76414
improve style of import in test
2018-04-23 20:08:58 +02:00
Matthias Voppichler
d2608cbf13
improve check when not to run
2018-04-23 20:06:00 +02:00
Matthias Voppichler
f580fbb91d
remove maybe_update_amount and tests
2018-04-23 20:03:10 +02:00
gcarq
9b0fbbdc14
cancel_order: pass all positional arguments
2018-04-23 16:58:52 +02:00
gcarq
aa213a3640
cancel_order: handle InvalidOrder exception
2018-04-23 16:58:32 +02:00
gcarq
baeeaa777d
get_balance: handle case if currency is not in response
2018-04-23 16:57:18 +02:00
gcarq
20af4bae7c
retrier: raise initial exception instead of OperationalException
2018-04-23 16:56:35 +02:00
gcarq
5baab91bb5
catch TemporaryError for buy/sell in _process()
2018-04-22 20:28:39 +02:00
gcarq
4c49229b77
catch DependencyExceptions while selling
2018-04-22 20:27:34 +02:00
Matthias Voppichler
93a7c46977
optimize to only do network calls if necessary
2018-04-22 19:37:24 +02:00
gcarq
bc2bd7fe1e
add retrier decorator to all exchange functions except buy/sell
2018-04-22 17:28:49 +02:00
Matthias Voppichler
a70958da41
test modify-logic
2018-04-22 11:05:23 +02:00
Samuel Husso
9f1544978d
tests: use only coins that most likely are going to be in bittrex
2018-04-22 11:29:21 +03:00
Matthias Voppichler
f838ba2a9b
remove fee column from bot
2018-04-22 10:04:30 +02:00
Samuel Husso
de8db9293c
exchange: extract ccxt init to its own function (so that we can init ccxt from the scripts)
2018-04-22 10:57:48 +03:00
Samuel Husso
fded8e5117
move download_backtest_data to scripts
2018-04-22 10:56:49 +03:00
Matthias Voppichler
be95d699d2
only update if open_fee is set
2018-04-22 09:13:02 +02:00
gcarq
9ab4953472
fix backtesting testsuite
2018-04-22 00:21:03 +02:00
gcarq
bbe3bc4423
catch ccxt.ExchangeError and retry
2018-04-22 00:20:15 +02:00
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 Voppichler
573b6b8e15
Remove unused line
2018-04-21 22:35:17 +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
Matthias Voppichler
990f8a996b
log in case of error
2018-04-21 21:01:53 +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
Samuel Husso
001d7443da
Merge pull request #618 from gcarq/feature/add-get_fee-mocks
...
add mocks for exchange.get_fee
2018-04-21 21:26:22 +03:00
Matthias Voppichler
ce90ee4ac2
have backtesting use fee_open and fee_close
2018-04-21 20:05:49 +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
Matthias Voppichler
a620aa8352
add columns fee_open and fee_close, update value
2018-04-21 19:47:08 +02:00
gcarq
09fb4ea584
add mocks for exchange.get_fee
2018-04-21 19:39:18 +02:00
gcarq
3997b6038d
let cctx handle rate limits
2018-04-21 19:11:29 +02:00
Luis Felipe Díaz Chica
954c6e8c15
Write log when trying to sell opened trades ( #608 )
2018-04-21 18:44:57 +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
02f0f22621
fix comment
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
c7d1a767f7
add get_trades_for_order
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
gcarq
1332ab397f
fix reference before assignment
2018-04-21 10:19:12 +03: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
Matthias Voppichler
bb7b2cdfd5
Disable dynamic whitelist
...
Revert regression introduced in refactoring for objectify
(cherry picked from commit 5bd7954
)
2018-04-12 18:35:35 +02:00
enenn
94287d66a8
Flake8 fixes
2018-04-12 18:16:27 +02:00
enenn
1678518cd4
Add dry_run=True to config during backtesting
2018-04-12 18:16:26 +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
6115fb08c0
Remove get_fee_maker/taker and add argument to get_fee instead
2018-04-12 18:16:25 +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
0c8ecf2b1f
Add 'get_tickers' function to exchange and use it for dynamic whitelists
2018-04-12 18:07:44 +02:00
enenn
5fc8250ee4
Add 'exchange_has' function to check if exchange supports specific API call
...
Catch ccxt.NotSupported exception instead of checking beforehand
2018-04-12 18:07:44 +02:00
enenn
e42403fecc
Change date to timestamp conversion method in backtesting
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
2f40e23dcc
don't check negated if both trees are handled
2018-03-31 17:28:54 +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
Matthias Voppichler
5bd79546ab
Disable dynamic whitelist
...
Revert regression introduced in refactoring for objectify
2018-03-30 22:38:09 +02: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
Gerald Lonlas
96b2210c0f
Change deprecated logger.warn by warning
2018-03-30 12:11:06 -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
fee8d0a2e1
refactor get_timeframe
2018-03-29 20:16:25 +02:00
gcarq
702402e1fe
simplify download_backtesting_testdata
2018-03-29 20:15:32 +02:00
gcarq
4f2d3dbb41
parse_ticker_dataframe: use as_index=False to keep date column
2018-03-29 20:14:43 +02:00
gcarq
02aacdd0c8
parse_ticker_dataframe: group dataframe by date
2018-03-29 17:12:49 +02:00
gcarq
872bbadded
add test_load_custom_strategy()
2018-03-27 18:29:51 +02:00
gcarq
6a12591248
change strategy override condition
2018-03-27 18:20:15 +02:00
gcarq
df57c32076
only override strategy if other than DEFAULT
2018-03-27 18:15:49 +02:00
gcarq
f78044da6d
fix method docs
2018-03-27 16:32:58 +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
99e890bc99
simplify resolver constructor
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
Janne Sinivirta
1cec06f808
Merge pull request #578 from gcarq/feature/enhance-strategy-resolving
...
enhance strategy resolving
2018-03-27 12:44:33 +03:00
Janne Sinivirta
85a81b18a3
Merge pull request #586 from xmatthias/obj_backtest_pr2
...
fix backtest --export format
2018-03-27 12:43:52 +03:00
Matthias Voppichler
a182cab27f
fix backtest --export format
...
reverts regression introduced in c623564
2018-03-26 20:28:51 +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
Samuel Husso
1b4c1980c2
exchange: capitalize class name
2018-03-26 09:23:42 +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
bd2a6467fe
adapt argument description and metavar
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
6e5c14a95b
fix mutable default argument
2018-03-25 15:12:39 +02:00
gcarq
ca9c5edd39
rename Strategy into StrategyResolver
2018-03-25 15:12:39 +02:00
Matthias Voppichler
f51ef1a791
refactor format_ms_time to misc.py
2018-03-25 13:38:50 +02:00
Matthias Voppichler
016232a8e9
Revert OHLVC dataformat to ccxt format
...
* Also fixes backtesting - but data must be refreshed for now as no
conversation is happening yet
2018-03-25 13:32:46 +02:00
Matthias Voppichler
dbb0a6261f
don't raise exceptions from get_ticker_history
2018-03-25 13:03:21 +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
gcarq
3f4261ad1e
use correct return_code if an error occured
2018-03-24 20:56:27 +01:00
gcarq
4c97ee45dd
return None if subcommand has been executed
2018-03-24 20:55:10 +01:00
gcarq
9d443b8bd8
fix reference before assignment
2018-03-24 20:54:46 +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
Matthias Voppichler
ab6e32f6bb
have backtest and dry-mode working
...
partially revert d20e3f79be
- Changing the
OHLVC format should not be done at this time
2018-03-24 19:51:40 +01:00
Matthias Voppichler
85af68d807
ccxt - make backtesting work
2018-03-24 19:45:23 +01:00
Samuel Husso
eb4ac73b78
remove last bittrex references so that bot is runnable
2018-03-22 08:29:52 +02:00
gcarq
b8f322d8f6
revert worker() changes
2018-03-21 19:27:30 +01:00
Samuel Husso
d20e3f79be
analyze to use the ccxt OHLCV format
...
setup: remove bittrex and add requirement to ccxt
freqtradebot: update market summaries to ccxt format
2018-03-21 19:57:58 +02: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
40a0689183
exhcange now uses ccxt in dry_run, update config
2018-03-21 19:40:16 +02:00
Samuel Husso
14d16d573c
Remove bittrex related interface code and tests
2018-03-21 19:31:15 +02:00
gcarq
a5c62b5c10
rpc/rpc.py: fix indentation
2018-03-20 19:50:04 +01:00
gcarq
f6df7df9bf
modify args typehints
2018-03-20 19:50:04 +01:00
gcarq
33ddc540cf
don't shadow built-in name tuple
2018-03-20 19:50:04 +01:00
gcarq
7078bc00bd
rpc: apply correct typehints; remove redundant parentheses
2018-03-20 19:50:04 +01:00
gcarq
d2aea7bdc1
optimize imports
2018-03-20 19:50:04 +01:00
gcarq
d8689e5045
set correct typehint; remove unused argument
2018-03-20 19:48:03 +01:00
gcarq
5327533188
optimize: set correct typehints
2018-03-20 19:48:03 +01:00
gcarq
5532cedcdd
get_signal: remove redundant parentheses
2018-03-20 19:48:03 +01:00
gcarq
ed71340a90
arguments: apply missing typehints
2018-03-20 19:48:03 +01:00
gcarq
1074415d30
remove invalid typehint from ctor
2018-03-20 19:48:03 +01:00
gcarq
90be78b283
CryptoFiat: inherit from object explicitly
2018-03-20 19:48:03 +01:00
gcarq
2de63133ae
indicator_helpers: apply correct typehints
2018-03-20 19:48:03 +01:00
gcarq
31e2aa0f38
misc: apply missing typehints
2018-03-20 19:48:03 +01:00
gcarq
cae7be4447
add fee param to function doc
2018-03-20 19:48:03 +01:00
gcarq
a6a38735b1
backtesting: only respect max_open_trades with realistic_simulation
2018-03-20 19:38:33 +01:00
gcarq
93931eb32b
fix typo in _generate_text_table
2018-03-19 23:05:12 +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
Michael Egger
fd44c0e59e
allow max_open_trades to be zero ( #561 )
2018-03-17 10:40:50 +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
0bb7cc8ab5
Hyperopt: fix 'Ran out of input' error
2018-03-05 20:49:45 -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
152c4483c8
Configuration() sends a msg to user when config file not found
2018-03-04 20:22:40 -08:00
Gerald Lonlas
d685646446
Arguments(): Change private methods to public
2018-03-04 17:51:57 -08:00
Gerald Lonlas
de468c6fc8
Fix wrong realistic_simulation implementation in Hyperopt
2018-03-04 02:31:25 -08:00
Gerald Lonlas
25d0e5f942
Merge commit '4dca84817eb1b62047a9e4d282254392ea978e44' into feature/objectify
2018-03-04 02:06:40 -08:00
Gerald Lonlas
6fcc173489
Merge commit '35c51c73f713bfdb81bd84721f3dceab0c19e819' into feature/objectify
2018-03-04 01:33:39 -08:00
Gerald Lonlas
bb1e38f584
Merge commit '8eed9c08a6cffdd7c6b43fa3db2c3e08d1657f43' into feature/objectify
2018-03-04 01:01:19 -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
2001c20426
Merge commit '028700d86f130d5c3cbfef4e422dc701340f58c9' into feature/objectify
2018-03-04 00:53:27 -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
3ba365ceb2
Merge commit 'fecd9f830ec4e8e9d5d1f3a70310d42bbe3f274a' into feature/objectify
2018-03-03 09:39:27 +08:00
Gerald Lonlas
390501bac0
Make Pylint Happy chapter 1
2018-03-03 09:33:54 +08:00
Gerald Lonlas
d274f13480
Remove Memory profiler in Backtesting
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
3e89b9685d
remove unnecessary detail from log message
2018-02-24 19:28:51 +02:00
Janne Sinivirta
646d1f7316
better log message for outdated history
2018-02-24 19:25:08 +02:00
Janne Sinivirta
67ad9e9351
simplify some error message statements
2018-02-24 19:19:43 +02:00
Janne Sinivirta
160af91f9a
improving log messages
2018-02-24 18:58:57 +02:00
Janne Sinivirta
5e73f3431c
log how old the last received tick is
2018-02-24 16:59:20 +02:00
Samuel Husso
35c51c73f7
Merge pull request #518 from gcarq/cleaning_up_backtesting
...
Cleaning up backtesting/hyperopt
2018-02-18 10:18:00 +02:00
Janne Sinivirta
fac122891f
remove stoploss parameter from backtest, it is loaded from strategy
2018-02-17 11:14:03 +02:00
Janne Sinivirta
d1bdbcd273
Fix wrong duration calculation in hyperopting
2018-02-16 22:08:20 +02:00
Janne Sinivirta
bf72b5bc37
make args available for optimizer and use them instead of guessing from params
2018-02-16 14:00:12 +02:00
Janne Sinivirta
ec8bf82695
combine shared backtest/hyperopt flags
2018-02-15 15:23:49 +02:00
Janne Sinivirta
f64c8cc9ce
realistic should be False by default and enabled with a --realistic-simulation flag
2018-02-15 13:11:17 +02:00
Samuel Husso
028700d86f
Merge pull request #517 from gcarq/fix-backslash-again
...
Correctly join paths in ticker loading
2018-02-15 10:38:37 +02:00
Janne Sinivirta
a1ba57186b
correctly join paths and debug log the found results
2018-02-15 08:59:02 +02:00
Janne Sinivirta
459611516c
enable stochastic and fisherRSI in default strategy
2018-02-14 13:02:31 +02:00
Janne Sinivirta
340ab0214b
add generic fishers inverse transformation with smoothing
2018-02-14 10:17:43 +02:00
Janne Sinivirta
178d1ed423
add ehlers super smoother
2018-02-14 10:16:53 +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
3e07d41fa9
remove mention of sell space
2018-02-12 07:01:51 +02:00
Janne Sinivirta
b1230b27b7
adjust unit test to match new --spaces format
2018-02-11 19:22:13 +02:00
Janne Sinivirta
fe28addb51
specify allowed values for --spaces flag
2018-02-11 19:17:04 +02:00
Janne Sinivirta
9bcdc8e14b
remove unnecessary condition
2018-02-11 15:25:30 +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
5190cd507e
start with simpler condition
2018-02-11 14:37:12 +02:00
Janne Sinivirta
2dd2f31431
remove repeated condition
2018-02-11 14:31:37 +02:00
Janne Sinivirta
dc105d5eae
better names for row variables
2018-02-11 14:24:19 +02:00
Janne Sinivirta
c62356438a
loop over arrays instead of dataframes
2018-02-11 14:18:57 +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
bf46f2e50d
short circuit check for roi threshold
2018-02-06 21:37:11 +02:00
Janne Sinivirta
4760dd699d
remove surprisingly slow logging line
2018-02-06 21:37:11 +02:00
Janne Sinivirta
22c48d5cef
use faster time diff
2018-02-06 21:37:11 +02:00
Janne Sinivirta
0454b4c8d5
remove unnecessary Decimal construction
2018-02-06 21:37:11 +02:00
Janne Sinivirta
5c02f0983d
let Strategy hold a sorted roi map
2018-02-06 21:37:11 +02:00
Janne Sinivirta
a28ffcbcf7
remove slow unnecessary table scan
2018-02-06 21:21:47 +02:00
Janne Sinivirta
a071571eac
switch to faster short circuiting condition
2018-02-06 12:13:12 +02:00
Janne Sinivirta
5cf2dd79f2
don't reset index if not needed
2018-02-06 11:34:01 +02:00
Janne Sinivirta
cf7c6d2e9c
switch to properly using dates as indexes, makes date based searching and slicing a lot faster
2018-02-06 11:34:00 +02:00
Janne Sinivirta
8c7b29734e
use date info to calculate trade durations
2018-02-06 11:34:00 +02:00
Janne Sinivirta
fecd9f830e
use substitution in argparse
2018-02-04 15:48:41 +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
Janne Sinivirta
0a42a0e814
Merge pull request #479 from gcarq/fix/issue-478
...
Fix Backtesting / Hyperopt ticker_interval download
2018-01-31 17:15:47 +02:00
Janne Sinivirta
5b71d5f3a1
Merge pull request #488 from jblestang/fixing_bug_in_backtesting_causing_to_much_sells
...
Fixing bug in backtesting preventing sell events to be executed
2018-01-31 16:42:02 +02:00
Jean-Baptiste LE STANG
07b7828f39
Fixing bug in backtesting causing to much sells
2018-01-31 07:59:45 +01:00
Jean-Baptiste LE STANG
d53d4b808b
Fixing buy and sell order
2018-01-30 09:38:24 +01:00
Gerald Lonlas
d313eb812d
Forgot one args.ticker_interval
2018-01-29 23:07:54 -08:00
Gerald Lonlas
cac2f2b58b
Wrong assert condition
2018-01-29 23:04:28 -08:00
Gerald Lonlas
321e3ede30
Fix hyperopt ticker interval download
2018-01-29 22:53:28 -08:00
Gerald Lonlas
524290d678
Fix backtesting ticker interval download
2018-01-29 22:51:29 -08:00
Samuel Husso
990a609afd
test_analyze: update dataframe magic len check so that test pass
2018-01-30 07:26:00 +02:00
Samuel Husso
271e11e065
update backtesting data for the latest market craze
2018-01-30 07:01:44 +02:00
Jean-Baptiste LE STANG
0d04da3158
Removing unecessary buy condition when sell_profit_only
2018-01-29 13:33:49 +01:00
Jean-Baptiste LE STANG
94172091ae
Refactoring the sell conditions evaluation to share the function with backtesting
2018-01-29 10:10:19 +01:00
Janne Sinivirta
21b142df40
Merge pull request #453 from ermakus/fix_usdt_balance
...
Fix usdt balance
2018-01-29 08:48:38 +02:00
Janne Sinivirta
a5155b3b20
Merge pull request #465 from gcarq/fix/increase_test_coverage
...
Fix/increase test coverage
2018-01-29 08:47:26 +02:00
Anton Ermak
807c067701
More test coverage
2018-01-29 10:55:42 +07:00
Gérald LONLAS
b8af493b56
Merge pull request #459 from rybolov/develop
...
Read .gzip files in testdata/
2018-01-28 19:27:36 -08:00
Michael Smith
e438422a22
test_optimize.py:
...
Added spaces for flake8 compliance.
2018-01-29 11:21:01 +08:00
Michael Smith
b8f2341998
BTC_UNITEST-8.json:
...
Added to test gzip loading before .json file.
2018-01-29 10:25:24 +08:00
Michael Smith
4799e1ed44
tests/optimize/test_optimize.py:
...
Added test for gzip ticker file.
BTC_UNITEST-8.json.gz:
Added to test gzip loading.
2018-01-29 10:22:55 +08:00
Michael Smith
e3b295cecc
tests/optimize/test_optimize.py:
...
Added test for gzip ticker file.
BTC_UNITEST-8.json.gz:
Added to test gzip loading.
2018-01-29 10:22:34 +08:00
Gerald Lonlas
20af5049af
Thanks Flake8
2018-01-28 16:34:38 -08:00
Gerald Lonlas
3e777a9d87
Add unit test in misc.py to cover datesarray_to_datetimearray()
2018-01-28 16:25:15 -08:00
Gerald Lonlas
36fa5b827d
Add unit test on rpc_telegram.py
2018-01-28 16:18:10 -08:00
Gerald Lonlas
7ab2498544
Increase test coverage on optimize.py
2018-01-28 15:33:57 -08:00
Gerald Lonlas
df453803ce
Increase test coverage on rpc_telegram.py
2018-01-28 15:29:26 -08:00
Gerald Lonlas
fd9c62d1c4
Increase test coverage on strategy.py
2018-01-28 15:16:22 -08:00
Gerald Lonlas
25ab08f422
Fix Flake8 warning
2018-01-28 15:03:54 -08:00
Gerald Lonlas
d85b56a2bd
Add unit test for test_file_dump_json()
2018-01-28 14:38:30 -08:00
Gerald Lonlas
2bccaa31c9
Increase pylint score on misc.py
2018-01-28 14:28:28 -08:00
Gerald Lonlas
45a34be2ac
Add more unittest for trim_tickerlist() method
2018-01-28 14:20:20 -08:00
Gerald Lonlas
9f8539f13e
Remove unused code on Strategy interface
2018-01-28 13:21:25 -08:00
Michael Smith
f66958c34f
optimize/__init__.py:
...
Added support for gzip ticker data files if they exist.
2018-01-28 21:57:25 +08:00
Michael Smith
b44adaa5ab
Added support in /optimize for gzip ticker data files if they exist.
2018-01-28 21:52:27 +08:00
Jean-Baptiste LE STANG
cf4d25d547
Fixing wrong 'old dataframe detection mechanism' for long tickers( > 30 minutes)
2018-01-28 14:40:02 +01:00
Anton Ermak
45239724c6
Skip convert if balance is zero
2018-01-28 16:15:23 +07:00
Janne Sinivirta
bb470d0aea
Merge pull request #451 from gcarq/pyup-update-python-bittrex-0.2.2-to-0.3.0
...
Update python-bittrex to 0.3.0
2018-01-28 11:14:57 +02:00
Samuel Husso
40a78970e1
flake: remove requests as we dont use it
2018-01-28 11:09:03 +02:00
Anton Ermak
81ed7627bf
Unit test
2018-01-28 16:08:43 +07:00
Samuel Husso
8be94c4af4
remove custom timeout as the latest bittrex package version implemented it
2018-01-28 11:03:19 +02:00
Janne Sinivirta
9090715ae5
Merge branch 'develop' of github.com:gcarq/freqtrade into develop
2018-01-28 10:46:33 +02:00
Janne Sinivirta
a6a479f7aa
balances to min roi hyperopt settings
2018-01-28 10:46:22 +02:00
Gerald Lonlas
d824816880
Increase pylint score on test files
2018-01-28 00:28:41 -08:00
Gerald Lonlas
776dd4a0d5
Increase pylint score on strategy
2018-01-27 21:26:57 -08:00
Gerald Lonlas
67c6c380e1
Increase pylint score for fiat_convert
2018-01-27 18:23:08 -08:00
Janne Sinivirta
022fedb5d2
Merge pull request #416 from kryofly/plot_profit
...
Plot profit
2018-01-27 14:02:48 +02:00
Janne Sinivirta
67ddb2e7f8
lower precision for most search space variables
2018-01-27 09:51:06 +02:00
Janne Sinivirta
67995a2f49
remove unnecessary else statements
2018-01-26 19:02:26 +02:00
Janne Sinivirta
1eebbebed1
fix assert order
2018-01-26 19:02:25 +02:00
Janne Sinivirta
a5690e707d
remove unused parameters
2018-01-26 19:02:25 +02:00
Janne Sinivirta
0ff56c6e8d
use uppercase constant
2018-01-26 18:54:15 +02:00
Janne Sinivirta
e14007ced4
sort imports
2018-01-26 18:52:39 +02:00
Janne Sinivirta
42919e8864
give type hint for _CONF
2018-01-26 18:49:14 +02:00
Janne Sinivirta
5505845c6f
remove unused method parameter
2018-01-26 18:48:53 +02:00
Janne Sinivirta
95ab7c84bc
remove unnecessary else
2018-01-26 18:41:41 +02:00
Janne Sinivirta
f33923c784
fix typings for hyperopt code
2018-01-26 18:32:45 +02:00
Janne Sinivirta
a7a7c37121
add day counter to timeframe
2018-01-26 18:32:45 +02:00
Janne Sinivirta
b7e297ebda
remove unused loop variable
2018-01-26 11:50:00 +02:00
kryofly
fe2f779c47
Merge branch 'develop' into plot_profit
2018-01-26 10:07:48 +01:00
Gerald Lonlas
0baffd94a4
Fix test_clean_dry_run_db failing test
2018-01-25 21:05:10 -08:00
Janne Sinivirta
4fe6ae0bae
fix search space for min ROI
2018-01-25 22:32:46 +02:00
Janne Sinivirta
42087c9bfe
let hyperopt optimize ROI table
2018-01-25 11:12:00 +02:00
Janne Sinivirta
5007165908
add search space for ROI table
2018-01-25 09:34:26 +02:00
Janne Sinivirta
7dc63c06e7
Merge pull request #356 from kryofly/test_coverage
...
Test coverage
2018-01-25 09:31:06 +02:00
kryofly
30ca078cec
test: use pytest fixture
2018-01-24 11:05:27 +01:00
kryofly
a14d9d35c7
tests: run backtest single
2018-01-24 10:32:52 +01:00
Samuel Husso
c968b904de
Merge pull request #429 from gcarq/fix/issue-385
...
Fix dry_run db issue when open_order_id already exist
2018-01-24 07:25:26 +02:00
Janne Sinivirta
c400d15ed1
rip out hyperopt things from strategy, add indicator populating to hyperopt
2018-01-23 16:56:12 +02:00
Janne Sinivirta
a6cbc1ba16
Merge pull request #400 from gcarq/feature/custom_strategy
...
Allow custom strategy files
2018-01-23 15:25:18 +02:00
Samuel Husso
b11fe2f814
Merge pull request #424 from gcarq/feat/telegram-sell-msg
...
Feat/telegram sell msg
2018-01-23 10:59:05 +02:00
Gerald Lonlas
f4298a7323
Fix dry_run db issue when open_order_id exist
2018-01-22 23:23:29 -08:00
Samuel Husso
93bd63cfbe
get rid of / replacements, minor edit to outgoing msg
2018-01-23 08:55:22 +02:00
Gerald Lonlas
e220ad5389
Remove useless USDT_BTC filename conversion
2018-01-22 21:40:07 -08:00
Gerald Lonlas
41aa8f18fb
Add ticker_interval support in strategy class
2018-01-22 20:51:39 -08:00
Gerald Lonlas
5eb7aa07a1
Update bot version to 0.16.0
...
This commit is major core upgrade and introduce breaking change.
2018-01-22 20:51:39 -08:00
Gerald Lonlas
eac6e05392
Fix error when config does not have stoploss
2018-01-22 20:51:39 -08:00
Gerald Lonlas
3e8088d99c
Avoid hyperopt to fail if a guard was removed from SPACE but still defined in populate_buy_trend()
2018-01-22 20:51:39 -08:00
Gerald Lonlas
1c7da95fed
Move hyperopt_trials.pickle to user_data/
2018-01-22 20:51:39 -08:00
Gerald Lonlas
baae374899
Move hyperopt_conf.py into user_data/
2018-01-22 20:51:39 -08:00
Gerald Lonlas
be75522507
Fix flake8
2018-01-22 20:51:39 -08:00
Gerald Lonlas
dfd61bbf1d
Implement More triggers and guards from PR#394
2018-01-22 20:51:39 -08:00
Gerald Lonlas
c46d78b4b9
Decouple strategy from analyse.py
2018-01-22 20:51:39 -08:00
Janne Sinivirta
f7e979f3ba
Merge pull request #423 from gcarq/feature/Crypto2Fiat_Singleton
...
Convert CryptoToFiatConverter into a Singleton
2018-01-22 16:24:19 +02:00
Samuel Husso
757a46ab12
ticker_interval as int (instead of string)
2018-01-22 10:39:26 +02:00
Samuel Husso
bce6a7be61
rebase develop and update tests
2018-01-22 09:39:11 +02:00
Samuel Husso
6abbf45042
Update tests to reflect new selling msg
2018-01-22 09:36:56 +02:00
Samuel Husso
ddd62277c2
add total amount of trades to /status
2018-01-22 09:36:56 +02:00
Samuel Husso
bd356f3eb4
when selling, show more information about the trade in the message
2018-01-22 09:36:56 +02:00
kryofly
aec481b6b3
tests: 100% cov bittrex.py
2018-01-22 08:30:00 +01:00
Gerald Lonlas
28b1ecb109
Convert CryptoToFiatConverter into a Singleton
...
Result in a speed up of the unittest from 60s to 4s
Because it cost time to load Pymarketcap() every time we create
a CryptoToFiatConverter, it worth it to change it into a
Singleton.
2018-01-21 16:41:59 -08:00
Jean-Baptiste LE STANG
c0d3ac5534
With a better unit test thanks @glonlas
2018-01-21 15:02:41 +01:00
Jean-Baptiste LE STANG
960d088deb
Fixing the 'BV' key being missing for USDT
2018-01-21 15:02:41 +01:00
kryofly
19ef682250
Merge branch 'develop' into plot_profit
2018-01-21 14:13:08 +01:00
kryofly
6171be4f46
Use dates on plot profit/dataframe
...
* plot_dataframe also support --timerange
* Both default to tkinter as matplotlib plotting backend
2018-01-21 13:44:30 +01:00
Gerald Lonlas
ad2a5f1717
Remove optimize.load_data() that is called twice
2018-01-20 15:35:13 -08:00
Gerald Lonlas
998081785e
Fix the issue get_signal() missing 1 required positional argument: Interval
2018-01-20 15:05:01 -08:00
kryofly
e94e6292e9
Merge branch 'develop' into test_coverage
2018-01-20 22:01:03 +01:00
Gérald LONLAS
d2371b5bac
Merge pull request #391 from jblestang/support_multiple_ticker
...
Support multiple tickers
2018-01-20 11:02:42 -08:00
Jean-Baptiste LE STANG
f1efaffe81
with fXXXXX8
2018-01-20 19:30:47 +01:00
Jean-Baptiste LE STANG
36797cda30
Merge branch 'develop' into support_multiple_ticker
2018-01-20 19:25:47 +01:00
Jean-Baptiste LE STANG
081d3932b6
Fixing bug report #406 + unit test
2018-01-20 14:44:13 +01:00
kryofly
cf266a67ad
Merge branch 'develop' into test_coverage
2018-01-20 10:06:53 +01:00
kryofly
8bbe8a7f95
Merge branch 'develop' into plot_profit
2018-01-20 08:33:28 +01:00
Janne Sinivirta
a3f84d9f21
Merge pull request #409 from gcarq/feature/add_num_trade_daily
...
Add number of trades in /daily command
2018-01-20 08:23:50 +02:00
Gerald Lonlas
fb110ccfd2
Add number of trades in /daily command
2018-01-19 22:14:31 -08:00
kryofly
e3088647fc
Merge branch 'develop' into test_coverage
2018-01-19 08:40:40 +01:00
kryofly
9d75b63a6e
Merge branch 'develop' into plot_profit
2018-01-19 07:26:04 +01:00
kryofly
4a9e1cb345
Merge branch 'develop' into backtest-export
2018-01-19 07:02:38 +01:00
Gérald LONLAS
14d16f2574
Merge pull request #357 from kryofly/timeperiod
...
Timeperiod
2018-01-18 20:26:44 -08:00
Gérald LONLAS
98f808326f
Merge pull request #395 from jblestang/fix_signal_overlaps
...
Fix signal overlaps
2018-01-18 19:47:55 -08:00
Janne Sinivirta
6cafa9120c
Merge pull request #392 from stephendade/timeoutfix3
...
Order timeouts - added exception catching and rpc messaging
2018-01-18 10:18:48 +02:00
Jean-Baptiste LE STANG
c9e1fd3fc4
Merge branch 'develop' into support_multiple_ticker
2018-01-17 21:29:36 +01:00
kryofly
423b251467
tests: speed up backtests
2018-01-17 18:19:39 +01:00
toto
b34621fadf
fixing default ticker_interval
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
42a135fbd9
fix typo in API Bittrex
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
8e5de365a5
Ticker in the conf is now an enum string
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
658d16c2cd
really fixing this stuff ...
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
3a4ff4c76c
fixing a duplicated unit test without config
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
7b292d5ca3
backtesting takes its ticker_interval from the config file, else from the command line options
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
2509ce030d
Refreshing pair of only selected ticker_interval
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
15189c28ed
fixing pep8 compliance
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
a0df566b2b
fix unitest file for 30 minutes ticker
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
e2e2005567
Adding 30 minutes, 1 hour, 1 day tickers
2018-01-17 13:52:14 +01:00
Jean-Baptiste LE STANG
0d709847ee
Fixing the doc and and the default value of sell_profit_only to False
2018-01-17 11:31:26 +01:00
Stephen Dade
04be438b35
Better exception handling for check_handle_timedout
2018-01-17 19:51:27 +11:00
toto
5723039637
fXXXXXXk8
2018-01-16 21:21:43 +01:00
toto
6dd48fb820
Adding unitest
2018-01-16 21:18:43 +01:00
toto
12ffbf5047
- get_signal to return both SELL and BUY signal
...
- _process modified so that we do not sell if we would buy afterwards
- execute_sell modified so that that min_roi_reached is not executed if we would buy afterwards
Veuillez saisir le message de validation pour vos modifications. Les lignes
2018-01-16 20:22:15 +01:00
Janne Sinivirta
c670ccfd37
add trigger +DI crossed above -DI
2018-01-16 18:52:06 +02:00
Janne Sinivirta
8896b39231
add heikenashi reversal bullish trigger to hyperopt
2018-01-16 18:52:06 +02:00
Janne Sinivirta
ce963aae58
add macd < 0 guard to hyperopt
2018-01-16 18:52:06 +02:00
Janne Sinivirta
dc01807b3c
switch ema5 trigger to ema3 cross trigger
2018-01-16 18:52:06 +02:00
Janne Sinivirta
fadac5fe4a
remove too aggressive trigger
2018-01-16 18:52:06 +02:00
Janne Sinivirta
99260735ae
remove broken bbands trigger from hyperopt. add two working bbands triggers
2018-01-16 18:52:06 +02:00
Janne Sinivirta
3e1a70bbb2
enable correct bollinger bands
2018-01-16 18:52:06 +02:00
Janne Sinivirta
fd3568d48f
Merge pull request #393 from gcarq/balancing_hyperopt_2
...
Balancing hyperopt objective
2018-01-16 18:21:50 +02:00
Janne Sinivirta
501be8a3bc
adjust the hyperopt objective function to emphasize profit and allow more variation in trade counts
2018-01-16 16:36:50 +02:00
Janne Sinivirta
38fe7ec7cd
adjust default target values for hyperopt
2018-01-16 16:35:48 +02:00
Stephen Dade
01e10014bb
Order timeouts - added exception catching and rpc messaging
2018-01-16 22:21:05 +11:00
kryofly
0e58ab7e01
more advanced use of --timerange
2018-01-16 00:15:49 +01:00
kryofly
71bb348698
rename --timeperiod to --timerange
2018-01-15 21:49:06 +01:00
Anton Ermak
5db04b15e7
Balance Estimated BTC - fix test
2018-01-15 12:08:56 +07:00
Anton Ermak
dd9ab5264d
Estimated BTC and fiat value for balance
2018-01-15 12:08:42 +07:00
Janne Sinivirta
ec7bfba8df
add comment about checking the new total profit logging
2018-01-14 13:11:19 +02:00
Janne Sinivirta
f1e176d35c
log total profit in percentages also
2018-01-14 13:10:25 +02:00
Janne Sinivirta
92241baade
log the loss value
2018-01-14 13:09:39 +02:00
kryofly
f61012097c
Merge branch 'develop' into timeperiod
2018-01-14 10:23:54 +01:00
kryofly
3277e491f1
support download for multiple testdata sets
2018-01-13 17:40:59 +01:00
kryofly
fc2e8b321f
test for bittrex to reach 100% cov again
2018-01-13 14:29:16 +01:00
kryofly
a62a5f814a
main returns integer instead of sys.exit
2018-01-13 13:16:40 +01:00
kryofly
53447e7ef5
test cleanup
2018-01-13 12:52:02 +01:00
Jean-Baptiste LE STANG
f7a44d1cec
Fixing the ticker analysis with null value
2018-01-13 09:50:02 +01:00
Gerald Lonlas
3087ca0823
Update freqtrade version
2018-01-12 22:56:39 -08:00
kryofly
d4008374f6
backtest export: include enter,exit dates
2018-01-12 22:12:00 +01:00
kryofly
48432abff1
remove two-letter options
2018-01-12 19:48:52 +01:00
kryofly
167483f777
plot profit: filter multiple pairs, misc fixes
2018-01-12 19:18:31 +01:00
kryofly
98cf986934
misc options parsing split up
2018-01-12 11:55:58 +01:00
kryofly
05f5a1b0ee
Merge branch 'develop' into test_coverage
2018-01-11 19:49:33 +01:00
kryofly
153e11f045
Merge branch 'develop' into timeperiod
2018-01-11 19:45:47 +01:00
kryofly
4781a23809
Merge branch 'develop' into backtest-export
2018-01-11 19:40:42 +01:00
kryofly
ed47ee4e29
backtest export json2
2018-01-11 19:14:11 +01:00
kryofly
27769f0301
uncomplex backtest
2018-01-11 17:45:41 +01:00
kryofly
feb5da0c35
file_dump_json
2018-01-11 15:49:04 +01:00
Samuel Husso
3a902289f1
testdata path to use os.path.join ( #360 )
2018-01-11 12:58:06 +01:00
Anton Ermak
0d0737d1f6
Resolve conflict
2018-01-11 13:36:56 +07:00
Anton Ermak
bb91fdbaf9
oops, print removed
2018-01-11 13:26:49 +07:00
Anton Ermak
11cbb9188b
Set timeout for bittrex only
2018-01-11 12:24:05 +07:00
Janne Sinivirta
c11102cf4a
another run of autopep8
2018-01-11 07:08:56 +02:00
Janne Sinivirta
02fcbbb6d2
few flake8 fixes
2018-01-11 07:08:56 +02:00
Janne Sinivirta
0d6051e6f9
formatting
2018-01-11 07:08:56 +02:00
Janne Sinivirta
6a433282dc
fix literal comparison
2018-01-11 07:08:56 +02:00
Janne Sinivirta
64530c6196
remove unused variables
2018-01-11 07:08:56 +02:00
Janne Sinivirta
86db6c9084
sort imports
2018-01-11 07:08:56 +02:00
Janne Sinivirta
0abc30401c
linter fixes and cleanups
2018-01-11 06:50:36 +02:00
Janne Sinivirta
1b6b0ad9d2
autopep8
2018-01-11 06:50:36 +02:00
Janne Sinivirta
7cdbd550c8
Merge pull request #351 from gcarq/feat/hyperopt-resume
...
resume hyperopt run
2018-01-11 06:47:05 +02:00
kryofly
b0f3fd7ffb
timeperiod argument to backtesting and hyperopt
2018-01-10 23:48:59 +01:00
kryofly
feca87345f
refactor
2018-01-10 23:00:40 +01:00
kryofly
f848a5c87d
tests optimize load_data
2018-01-10 13:43:03 +01:00
kryofly
0cb57bee0e
small refactor of check_handle_timedout
2018-01-10 13:43:00 +01:00
kryofly
f8cc08e2a1
small refactor splitting the _process()
2018-01-10 13:42:59 +01:00
kryofly
ad2328bbd8
tests for exchange
2018-01-10 13:42:58 +01:00
kryofly
d5ca77da97
tests for analyze
2018-01-10 13:42:55 +01:00
Anton Ermak
abcdbcfd39
Set requests default timeout
2018-01-10 17:37:49 +07:00
Samuel Husso
e67c652988
use os.path.join, fix docstrings
2018-01-10 11:50:00 +02:00
kryofly
b9bf5c1118
test: increase coverage of exchange.bittrex
2018-01-09 14:07:50 +01:00
Samuel Husso
ffae0b2cd5
hyperopt: prettyfie best values when receiving SIGINT, use the global TRIALS
2018-01-09 12:37:56 +02:00
Samuel Husso
fe2b0c2862
add unittest to save and read trials file
2018-01-09 12:26:52 +02:00
Samuel Husso
1647e7a0c1
update fix failing tests, unitest that resume hyperopt functionality works
2018-01-09 12:26:52 +02:00
Samuel Husso
b35fa4c9f6
hyperopt: show the best results so far
2018-01-09 12:25:58 +02:00
Samuel Husso
a48840509b
Hyperopt: use results from previous runs
2018-01-09 12:25:58 +02:00
Samuel Husso
ca8cab0ce9
Hyperopt to handle SIGINT by saving/reading the trials file
2018-01-09 12:25:58 +02:00
Janne Sinivirta
f7dd5e6396
use sensible value for stoploss in test
2018-01-08 22:00:10 +02:00
Janne Sinivirta
dd2ccea6e5
fix wrong range in stoploss search space
2018-01-08 21:59:46 +02:00
Stephen Dade
26b8661325
Added missing fiat currencies to config
2018-01-08 18:51:04 +11:00
Janne Sinivirta
1ae73d7da2
Merge branch 'develop' into hyperopt_stoploss
2018-01-08 07:49:44 +02:00
Samuel Husso
d8e692c9a3
Merge pull request #339 from gcarq/upgrade_flake8
...
Upgrade flake8
2018-01-08 07:34:45 +02:00
Gerald Lonlas
ca05d1f79e
Fix for flake8
2018-01-07 21:08:12 -08:00
Janne Sinivirta
9dd38aebe0
add stoploss to the hyperopt parameters
2018-01-07 21:08:12 -08:00
Gerald Lonlas
9c21077dc1
Fix hypeopt issue when no result found
2018-01-07 17:53:21 -08:00
Jean-Baptiste LE STANG
bba711c89a
with flake8 ...
2018-01-07 23:35:16 +01:00
Jean-Baptiste LE STANG
5fbaa6d4cf
rebasing for ta-lib dependency
2018-01-07 23:30:37 +01:00
Jean-Baptiste LE STANG
5b1f84f816
without debug print
2018-01-07 23:29:19 +01:00
Jean-Baptiste LE STANG
65127533ef
fixing unittest
2018-01-07 23:29:19 +01:00
Jean-Baptiste LE STANG
05ca00b623
Add a unitest and fix pep8
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
4b6d855e63
fix a typo in the description of get_ticker
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
7d7752efbf
really fixing
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
ce6f6ab9fe
fixing refresh argument ...
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
3a0569cfd3
force refresh is the value has never been set
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
7d21015b52
get_ticker can return a cached value
2018-01-07 23:26:45 +01:00
Jean-Baptiste LE STANG
4c8ae3a7af
without debug print
2018-01-07 23:15:33 +01:00
Jean-Baptiste LE STANG
2773ce7ebf
rebasing against develop
2018-01-07 21:34:42 +01:00
Jean-Baptiste LE STANG
f4e4104d14
Fixing unitest
2018-01-07 21:26:43 +01:00
Jean-Baptiste LE STANG
b722a89276
fixing unittest
2018-01-07 21:24:17 +01:00
Janne Sinivirta
5be733a174
fix flake8 warnings
2018-01-07 14:37:09 +02:00
Jean-Baptiste LE STANG
975a785e68
Add a unitest and fix pep8
2018-01-07 10:14:11 +01:00
Jean-Baptiste LE STANG
6be607e528
fix a typo in the description of get_ticker
2018-01-07 10:14:11 +01:00
Jean-Baptiste LE STANG
80c4dea875
really fixing
2018-01-07 10:14:11 +01:00
Jean-Baptiste LE STANG
9e7a4c3717
fixing refresh argument ...
2018-01-07 10:14:11 +01:00
Jean-Baptiste LE STANG
c72e9c3cef
force refresh is the value has never been set
2018-01-07 10:14:11 +01:00
Jean-Baptiste LE STANG
8175eaa48a
get_ticker can return a cached value
2018-01-07 10:14:11 +01:00
kryofly
890083ce7f
Merge branch 'develop' into datadir
2018-01-07 10:00:35 +01:00
Gérald LONLAS
454cd16df4
Merge pull request #331 from gcarq/fix/work_without_network
...
Fix _coinmarketcap that fails backtesting and Hyperopt when no network
2018-01-06 21:33:24 -08:00
Gérald LONLAS
7e233b536c
Merge pull request #323 from gcarq/add_indicators
...
Add 28 optional indicators populate_indicators()
2018-01-06 21:30:27 -08:00
Gerald Lonlas
bf4b2dc05e
Fix _coinmarketcap that fails backtesting and Hyperopt when no network
2018-01-06 21:21:28 -08:00
Gerald Lonlas
b3ea0f4ec5
Make readable hyperopt best parameters result
2018-01-06 17:19:48 -08:00
Gérald LONLAS
2432c9f290
Merge pull request #324 from kryofly/parse-common
...
Parsing: common options, reduce function scope
2018-01-06 15:11:30 -08:00
kryofly
60ed4b9d1e
--datadir <path> argument
...
This argument enables usage of different backtesting directories.
Useful if one wants compare backtesting performance over time.
2018-01-06 23:24:35 +01:00
Gerald Lonlas
83a999d16e
Change Bollinger bands for qtpylib.bollinger_bands
2018-01-06 13:19:45 -08:00
Janne Sinivirta
a29f3de025
fix variable names to pythonic
2018-01-06 21:21:56 +02:00
Janne Sinivirta
6ab0ec6aac
only apply profit guarantee to sell_signal
2018-01-06 21:18:57 +02:00
kryofly
984204e380
let parse_args only parse, no continuation
...
This removes parse_args() from the call stack
It pushes down the test-mocking one level [from parse_args() to main()].
Moves parse_args into a more generic 'modules' parsing direction.
2018-01-06 11:21:09 +01:00
Gerald Lonlas
297166fcb9
Add 29 optional indicators populate_indicators()
2018-01-06 01:11:01 -08:00
Janne Sinivirta
bcde377019
Merge pull request #321 from gcarq/log-exceptions
...
Log exceptions
2018-01-06 10:14:57 +02:00
Samuel Husso
2d39759d34
pep8 fix
2018-01-06 10:08:25 +02:00
kryofly
e4500af736
test case for common CLI parsing
...
Rearrange current tests.
2018-01-06 08:27:44 +01:00
Janne Sinivirta
41933c31ca
Merge pull request #315 from kryofly/tests_jan05
...
tests cover more backtesting
2018-01-06 09:26:20 +02:00
kryofly
47675943ee
split common command line args parsing
...
A new function parse_args_common() that only parses
common command line options. The returned object can
be composed to parse more arguments.
As is done by parse_args().
2018-01-06 07:39:05 +01:00
Gérald LONLAS
74a708b794
Merge pull request #312 from gcarq/fix_backtesting_header
...
Fix Backtesting header alignment
2018-01-05 19:30:04 -08:00
Janne Sinivirta
833c7f21af
Merge pull request #306 from stephendade/timeoutfix
...
Unfilled order timeouts - now using timestamps from exchange
2018-01-05 18:04:27 +02:00
Samuel Husso
ae967a4f40
add test to handle analyze_ticker raising exception
2018-01-05 13:43:56 +02:00
Samuel Husso
be8506b45e
log exceptions, catch *all* exceptions when analysing ticker
2018-01-05 12:18:44 +02:00
kryofly
79fcd0b06c
tests cover more backtesting
2018-01-05 10:44:10 +01:00
kryofly
421ccb23d3
split load tickerdata function
2018-01-05 10:20:48 +01:00
seansan
f1969175cd
Add CCI
2018-01-05 08:40:03 +01:00
Gerald Lonlas
7fd6d089c0
Fix Backtesting header alignment
2018-01-04 23:14:10 -08:00
Gerald Lonlas
90017998fc
Use named argument for backtest()
2018-01-04 22:27:55 -08:00
Stephen Dade
ebe95ba1e1
Open order times should be strings, not datetime objectsy
2018-01-05 15:12:13 +11:00
Stephen Dade
d4fcc38a57
Unfilled order timeouts - now using timestamps from exchange
2018-01-05 01:39:01 +11:00
Janne Sinivirta
c60ef181dc
Merge pull request #297 from jblestang/add_stoploss_and_use_sell_profit_only_to_hyperopt
...
Add stoploss, sell_only_profit and use_sell_signal conf parameters to backtest function
2018-01-04 13:33:01 +02:00
Stephen Dade
b5d2cfecc7
Unfilled Order timeout - better documentation and variable naming
2018-01-04 10:35:57 +11:00
Jean-Baptiste LE STANG
75955fcc04
Add a unitest and fix pep8
2018-01-03 17:58:08 +01:00
Jean-Baptiste LE STANG
050e73d960
fix a typo in the description of get_ticker
2018-01-03 17:51:01 +01:00
Jean-Baptiste LE STANG
0f2d3adbbc
applying pep8
2018-01-03 17:36:40 +01:00
Jean-Baptiste LE STANG
ea6a1c629d
fixing pep8 compliance
2018-01-03 11:50:30 +01:00
Jean-Baptiste LE STANG
eb53a796e2
pep8 compliance
2018-01-03 11:35:54 +01:00
Jean-Baptiste LE STANG
2d273a8509
Update unittests
2018-01-03 11:30:24 +01:00
Stephen Dade
b4d6250d55
Added order timeout handling
2018-01-03 21:22:35 +11:00
Jean-Baptiste LE STANG
45f2d01895
- add a profit/loss counter
...
- the use of the sell_signal is conditional now (taken from the config)
2018-01-03 11:19:46 +01:00
Jean-Baptiste LE STANG
c176ace889
Adding sell_profit_only and stoploss in hyperopt
2018-01-03 10:56:18 +01:00
Gérald LONLAS
9b09b5aa29
Merge pull request #291 from gcarq/backtesting_speed_opt
...
Backtesting speed optimizations
2018-01-02 23:35:47 -08:00
Gérald LONLAS
4a717f3df8
Merge pull request #294 from jblestang/add_trades_count_in_performance
...
Add trades count foreach pair in performance command
2018-01-02 23:03:30 -08:00
Samuel Husso
fd5497cfc7
Merge pull request #265 from gcarq/feature/experimental/force_profit_sell
...
Add experimental feature to sell only if we make a profit
2018-01-03 08:14:54 +02:00
Jean-Baptiste LE STANG
01b49dc502
Merge branch 'develop' into add_trades_count_in_performance
2018-01-03 00:06:56 +01:00
Jean-Baptiste LE STANG
fbb19e451d
Adding the number of trades for each traded pair in the performance command
2018-01-03 00:06:50 +01:00
Jean-Baptiste LE STANG
a1ffa4497d
Merge branch 'develop' into fix_issue_278
2018-01-02 23:12:21 +01:00
Jean-Baptiste LE STANG
e69f9dd029
Bad unittest detected reading coverage report, rewritten and bug found
2018-01-02 23:00:03 +01:00
Janne Sinivirta
fed3024302
rewrite get_timeframe in backtesting
2018-01-02 21:54:31 +02:00
Janne Sinivirta
dc2f048c98
make tuples smaller in backtesting loops
2018-01-02 21:52:47 +02:00
Samuel Husso
f4ccd4609b
Merge pull request #284 from jblestang/fix_issue_283
...
fixing the sorting issue in MarketSummary when using --dynamic-whitelist (issue #283 )
2018-01-02 21:00:20 +02:00
Janne Sinivirta
82e9ed2ac2
shorten table title to match table length
2018-01-02 17:53:47 +02:00
Janne Sinivirta
ae52880f81
improve backtesting result formatting
2018-01-02 17:39:02 +02:00
Jean-Baptiste LE STANG
90236fb537
Fixing error log on inactive wallet
2018-01-02 15:17:23 +01:00
Jean-Baptiste LE STANG
55d0d27756
message too long, removing URL for now
2018-01-02 14:55:31 +01:00
Jean-Baptiste LE STANG
d849694a70
Adding URL to market graph and number of trades/pair in /performance commande
2018-01-02 14:43:38 +01:00
Jean-Baptiste LE STANG
29987c3ff6
Adding the number of trades in the performance display
2018-01-02 14:32:13 +01:00
Jean-Baptiste LE STANG
5f696a0cce
really fixing
2018-01-02 14:13:55 +01:00
Jean-Baptiste LE STANG
90d3c09536
fixing refresh argument ...
2018-01-02 14:13:40 +01:00
Jean-Baptiste LE STANG
3f65fc014e
flake8 on tests
2018-01-02 13:46:16 +01:00
Jean-Baptiste LE STANG
5344b711ea
Add two more unit tests for covering pair that are in a blacklist, and unknown pairs in the conf
2018-01-02 13:42:10 +01:00
Jean-Baptiste LE STANG
a3e827c144
with flake8 code review
2018-01-02 12:18:26 +01:00
Jean-Baptiste LE STANG
52e267e864
fix for issue #283
2018-01-02 12:04:47 +01:00
Jean-Baptiste LE STANG
165781a545
force refresh is the value has never been set
2018-01-02 11:00:22 +01:00
Jean-Baptiste LE STANG
e10a3d1f9d
get_ticker can return a cached value
2018-01-02 10:56:42 +01:00
jblestang
7a2e9ef535
Add fiat display in sell msg ( #271 )
...
* Display amount (fiat currency) in the sell message
* Display also base currency
* Adding more info in Buy Message, the stake amount, and the amount using FIAT Converter
* fix display style and width
* Fixing flake8
2018-01-01 14:21:43 -08:00
Jean-Baptiste LE STANG
0e0d613191
Removing tilde and change profit to loss when negative profit is made
2018-01-01 20:18:38 +01:00
Samuel Husso
de68209f3b
Revert "Make get_signals async. This should speed up create_trade calls by at least 10x. ( #223 )" ( #275 )
...
This reverts commit 6768658300
.
See details in #PR266
2018-01-01 19:32:58 +01:00
Gerald Lonlas
714d77dbd8
Add expiremental feature to sell only if we make a profit
2017-12-30 18:14:10 -08:00
Gérald LONLAS
9803130848
Merge pull request #259 from gcarq/fix/issue-248
...
Fix issue #248 : missing configuration when executing /forcesell
2017-12-30 17:28:16 -08:00
Jean-Baptiste LE STANG
68f81b2abb
autopep8 is going to be my new friend
2017-12-30 15:55:49 +01:00
Jean-Baptiste LE STANG
4945331093
Fixing the positional parameter naming + unit tests updated
2017-12-30 15:43:22 +01:00
jblestang
8411844d7e
Implement pair_blacklist functionality ( #257 )
...
* Adding an optional black_list of pairs not to be traded
* applying the blacklist also when not using --dynamic-whitelist
* fix error retrieving pair in conf
* Refactoring the handling of whitelist among the various functions
* unit test to verify that black listed pairs are being removed from the pair_whitelist
* Fixing newly added unit tests in develop
* fixing flake8 code review
* fix code review from @garcq
2017-12-30 14:15:07 +01:00
Janne Sinivirta
00415d66a2
Merge pull request #260 from gcarq/increase_code_coverage
...
Increase code coverage
2017-12-30 14:02:33 +02:00
kryofly
f7398e615a
Improve backtesting tests ( #256 )
...
* test bugfix dataframe trimming
* flake8 (as usual)
* tests backtesting cleanup and bugfix
* flake8
* test backtesting::start()
* tests cleanup set() usage
* tests: add missing assert
2017-12-30 11:55:23 +01:00
Gerald Lonlas
e81a9cbb17
Increase code coverage
...
Change log:
* Increase code coverage for test_exchange.py
* Move Exchange Unit tests files tests/exchange/
* Move RPC Unit tests files tests/rpc/
2017-12-29 23:37:02 -08:00
Gerald Lonlas
c8c8c626b0
Fix issue #248 : missing configuration when executing /forcesell
...
This is not a beautiful workaround, I am not proud of it,
but a redesigning of main.py and telegram.py will be
necessary for a better integration. Any better solution
is welcome.
2017-12-29 20:03:12 -08:00
kryofly
37613fc056
flake8
2017-12-29 17:53:58 +01:00
Janne Sinivirta
133c467cf4
Merge branch 'develop' into tests_dec28
2017-12-29 16:33:12 +02:00
Janne Sinivirta
f2ce367cec
Merge branch 'develop' into sell_signal
2017-12-29 16:26:23 +02:00
kryofly
3e0458da7d
flake8
2017-12-29 09:40:24 +01:00
Gerald Lonlas
0d605d2396
Refactor Optimize tests, and add more unit tests
2017-12-28 22:32:48 -08:00
Janne Sinivirta
145583f0b7
Merge pull request #244 from jblestang/fix_daily_profit
...
Fixing daily profit,
2017-12-29 06:05:25 +02:00
kryofly
847dde0d65
execute sell if get_signal OR ROI reached
2017-12-29 00:07:54 +01:00
kryofly
ab112581a7
tests: anal stretching to accomodate flake8
2017-12-28 20:05:33 +01:00
kryofly
f48f5d0f31
tests for dataframe, whitelist and backtesting
2017-12-28 15:58:19 +01:00
Janne Sinivirta
0abf0b0e39
Merge pull request #242 from gcarq/backtesting-unittests
...
Backtesting and hyperopt unit tests
2017-12-28 12:45:28 +02:00
Janne Sinivirta
a36fd00f6a
also print dot when hyperopt eval result is fail
2017-12-28 06:40:11 +02:00
Janne Sinivirta
7f44ba6df4
unit tests for optimize.hyperopt
2017-12-28 06:39:56 +02:00
Janne Sinivirta
7b0beb0afa
cleanups
2017-12-28 06:36:18 +02:00
Janne Sinivirta
ae0a1436e2
match test files to prod files for backtesting/hyperopt
2017-12-28 06:35:09 +02:00
Jean-Baptiste LE STANG
8537e9f40f
CI flake8 error
2017-12-27 21:33:42 +01:00
Jean Baptiste LE STANG
d61d88559c
Fixing daily profit, taking into account the time part of the date (removing it in fact)
2017-12-27 21:06:05 +01:00
Janne Sinivirta
9b4c0f01f2
more unit tests for backtesting
2017-12-27 17:39:54 +02:00
Gérald LONLAS
6c8253a4f5
Add more unittest ( #241 )
2017-12-27 11:41:11 +01:00
Janne Sinivirta
dcd0a0ec61
Merge pull request #239 from glonlas/feature/value_in_fiat
...
Display profits in fiat
2017-12-27 11:19:38 +02:00
Gerald Lonlas
ff6b0fc1c9
Display profits in fiat
2017-12-26 19:44:19 -08:00
Michael Egger
a514b92dcf
catch MIN_TRADE_REQUIREMENT_NOT_MET as non-critical exception ( #237 )
...
* add MIN_TRADE_REQUIREMENT_NOT_MET to response validation
* implement test
2017-12-26 09:39:29 +01:00
Janne Sinivirta
de33d69eed
Lint fixes ( #236 )
...
* correct docstring
* add type annotation to trade_count_lock
* fix indentations
* allow globals in hyperopt.py
* fix import order
* simplify asserts
* use proper variable name
* simplify condition
* fix path operation that fails on windows
2017-12-25 12:07:50 +01:00
Janne Sinivirta
9959d53f5e
Logging improvements to Hyperopt ( #235 )
...
* make log texts go on new line
* remove unnecessary fields from hyperopt log messages
* shorten log text in hyperopt
* consider making zero trades a failed hyperopt eval
* only log from hyperopt when result improves
* remove unnecessary temp variables
* remove unused result data variables
* remove unused import
* fix an outdated comment
2017-12-25 08:18:34 +01:00
Pan Long
6768658300
Make get_signals async. This should speed up create_trade calls by at least 10x. ( #223 )
2017-12-25 07:01:01 +01:00
Janne Sinivirta
353b0d2d34
balance hyperopt objective to adjusted profit calculations
2017-12-23 19:18:28 +02:00
Janne Sinivirta
e644d57dbe
log should state profit is in BTC to avoid confusion
2017-12-23 19:00:49 +02:00
Janne Sinivirta
50e7cef5f3
remove commented-out code
2017-12-23 19:00:49 +02:00
Janne Sinivirta
1058820e1b
just pass stake_amount instead of the whole config
2017-12-23 19:00:49 +02:00
Janne Sinivirta
24bc3a8390
show more digits for profits
2017-12-23 15:11:19 +02:00
Janne Sinivirta
5309ea3820
use newline for each log result for readability
2017-12-23 15:11:19 +02:00
Janne Sinivirta
a063680d32
calculate log line only if really logging
2017-12-23 15:11:19 +02:00
Janne Sinivirta
10cf2ce853
remove unnecessary confusing division
2017-12-23 15:11:19 +02:00
Janne Sinivirta
871357a2e3
just require positive results
2017-12-23 15:11:19 +02:00
Samuel Husso
8d93363655
filter nan values from total_profit and avg_profit
2017-12-23 09:21:04 +02:00
Janne Sinivirta
44a4ff0cb2
Merge branch 'develop' into patch-1
2017-12-22 13:58:13 +02:00
Janne Sinivirta
f300af0fe2
Merge pull request #200 from glonlas/fix_fees_calculation
...
Fix the fee calculation
2017-12-22 13:55:02 +02:00
Gerald Lonlas
41e22657e4
Fix hyperopt when using MongoDB
2017-12-21 19:20:47 -08:00
Gerald Lonlas
d258118b0a
Fix the fee calculation, backtesting, and hyperopt fee calculation and avg_profit
2017-12-20 20:18:41 -08:00
seansan
4dab39ed9e
add % in status table for profit
2017-12-20 13:58:18 +01:00
Janne Sinivirta
c8fb6c4661
More lint fixes ( #198 )
...
* autopep fixes
* remove unused imports
* fix plot_dataframe.py lint warnings
* make pep8 error fails the build
* two more line breakings
* matplotlib.use() must be called before pyplot import
2017-12-18 17:36:00 +01:00
Gerald Lonlas
d613d63fdc
Fix the fee calculation
2017-12-17 23:01:34 -08:00
Samuel Husso
ce51749177
fix hyperopt not getting default ticker_interval
2017-12-17 12:34:26 +02:00
Janne Sinivirta
80ef2cfed4
Merge pull request #193 from gcarq/feature/ci-enforce-pep8
...
CI: enforce PEP8 conform code
2017-12-17 07:42:23 +02:00
Janne Sinivirta
5efc417690
Merge pull request #192 from gcarq/feature/forcesell-handle-open-orders
...
/forcesell: handle trades with open orders
2017-12-17 07:41:51 +02:00
Gérald LONLAS
14868615d5
Add mock to improve backtesting tests ( #194 )
2017-12-17 00:24:21 +01:00
Gérald LONLAS
512fcdbcb1
Allow user to update testdata files with parameter --refresh-pairs-cached ( #174 )
2017-12-16 15:42:28 +01:00
gcarq
95fe0f4dec
fix pep8 warnings
2017-12-16 03:39:47 +01:00
gcarq
ddd3d2d0a9
ignore cancelled order during trade state update
2017-12-16 02:36:43 +01:00
gcarq
cb4ecfd3a3
move function
2017-12-16 01:37:06 +01:00
gcarq
f4b59492ab
fix NoneType issue
2017-12-16 01:31:15 +01:00
gcarq
ae37f49b51
/forcesell: handle trades with open orders
2017-12-16 01:09:07 +01:00
gcarq
6e68315d2c
reorder imports
2017-12-15 23:58:21 +01:00
gcarq
c1c9dd03ce
/daily: fix identation and simplify loops
2017-12-15 23:56:02 +01:00
Gérald LONLAS
e00f02b603
Improve telegram /profit command ( #188 )
2017-12-15 17:19:00 +01:00
Gerald Lonlas
2a2af4878e
Update /daily command, reorder telegram menu, limit /daily profit at 8 decimals
2017-12-14 21:18:52 -08:00
Michael Egger
bfb3e09d1d
raise ContentDecodingError if bittrex responds with NO_API_RESPONSE ( #183 )
2017-12-14 20:27:04 +01:00
Gérald LONLAS
2ac8b685d6
Add param for Dry run to use a DB file instead of memory ( #182 )
2017-12-14 15:10:11 +01:00
Samuel Husso
cb09cabbdd
Merge pull request #171 from stephendade/dailymsg
...
Added daily profit telegram command
2017-12-12 19:42:31 +02:00
Janne Sinivirta
77023c0ecf
Merge pull request #169 from jblestang/fix_ticker_interval
...
Fix ticker interval
2017-12-12 17:21:55 +02:00
Stephen Dade
0b18c93d19
Daily profit command - better message formatting and minor fixes
2017-12-12 19:41:25 +11:00
Jean-Baptiste LE STANG
0617753a7f
Adding a test unit for 1 minute ticker interval
2017-12-11 22:11:06 +01:00
Janne Sinivirta
b77fad6e5f
Merge pull request #173 from glonlas/autoselect_top_currencies
...
Allow to change the number of currencies used by dynamic-whitelist
2017-12-11 18:04:10 +02:00
Gerald Lonlas
90bf6f2d4a
Remove unecessary import
2017-12-11 00:07:36 -08:00
Gerald Lonlas
ef7646417b
Allow to change the number of currencies used by dynamic-whitelist
2017-12-11 00:01:27 -08:00
Janne Sinivirta
7afd8da28f
fix a broken unit test due to changing test dataset
2017-12-10 13:56:39 +02:00
Janne Sinivirta
3d532c6015
update backtest data to match pairs in config.json.example
2017-12-10 11:17:01 +02:00
Stephen Dade
ccb8c3c352
Added daily profit telegram command
2017-12-10 17:32:40 +11:00
toto
18f01113c2
use the CLI arguments as the ticker interval
2017-12-09 11:51:53 +01:00
toto
f7def09dec
fix for the ticker interval set by default to 5
2017-12-09 11:39:26 +01:00
Samuel Husso
a7cca4985e
omit hyperopt output if total_profit doesn't go pass threashold (3)
2017-12-02 01:32:23 +02:00
Samuel Husso
965c075362
disable info logging on hyperopt.tpe
2017-12-02 00:21:46 +02:00
gcarq
0c35e6ad19
minor changes
2017-11-25 03:28:52 +01:00
gcarq
e27a6a7a91
add mongodb support for hyperopt parallelization
2017-11-25 02:04:37 +01:00
gcarq
5bf583cba4
remove unused imports
2017-11-25 01:23:18 +01:00
gcarq
a23fce519d
pretty print hyperopt results
2017-11-25 01:22:36 +01:00
gcarq
9ff1f05e66
add --epochs to hyperopt subcommand
2017-11-25 01:12:44 +01:00
gcarq
b9c4eafd96
integrate hyperopt and implement subcommand
2017-11-25 01:04:11 +01:00
gcarq
7fa5846c6b
move hyperopt to freqtrade.optimize.hyperopt
2017-11-25 00:30:39 +01:00
gcarq
3b37f77a4d
move backtesting to freqtrade.optimize.backtesting
2017-11-24 23:58:35 +01:00
Michael Egger
858d2329e5
add experimental flag support and add use_sell_signal ( #143 )
...
* add use_sell_signal to config schema
* check use_sell_signal
* set use_sell_signal to false
2017-11-24 21:58:00 +01:00
Mathieu Favréaux
371ee1e457
In backtesting, ensure we don't buy the same pair again before selling ( #139 )
...
* in backtesting, ensure we don't buy before we sell
* no overlapping trades only if max_open_trades > 0
* --limit-max-trades now --realistic-simulation
2017-11-24 21:09:44 +01:00
Geka000
cfbfe90aa0
keyboard markup for telegram bot ( #142 )
2017-11-24 20:54:50 +01:00
gcarq
be6939ee8a
use 8 digits of precision for amount and rate in formatting
2017-11-23 20:52:07 +01:00
Janne Sinivirta
371e6d99c9
set stoploss to -10%
2017-11-23 18:43:19 +02:00
Janne Sinivirta
c6def418cf
Merge pull request #135 from rybolov/develop
...
Better buy and sell strategy
2017-11-23 18:25:56 +02:00
Michael Smith
5fce2c5712
Better buy and sell strategy:
...
Buy if at the low end of normal range and the price is increasing.
Buy into extreme gains regardless of if it's on the low part of the range.
Avoid buying when the price is on a long decrease even if it's low.
Sell anytime the price is above the top end of normal range and the momentum slows.
Sell on an extreme drop.
2017-11-23 22:33:41 +08:00
Janne Sinivirta
aacd7d8987
Merge pull request #131 from gcarq/feature/backtesting-max-open-trades
...
implement trade count lock for backtesting
2017-11-23 16:16:43 +02:00
gcarq
4a707d7452
add --limit-max-trades
2017-11-23 00:25:06 +01:00
gcarq
7727f2cc8f
implement test
2017-11-22 21:02:36 +01:00
gcarq
9a87dcf0a1
dont apply fees on trade creation
2017-11-22 21:01:44 +01:00
gcarq
9136e64d89
force flush in create_trade and execute_sell ( fixes #128 )
2017-11-22 20:51:25 +01:00
Samuel Husso
765a762ccf
Merge pull request #122 from gcarq/feature/fix-signal-handling
...
fix signal handling
2017-11-22 13:38:57 +02:00
gcarq
02ca2ed585
implement trade count lock for backtesting
2017-11-21 22:33:34 +01:00
gcarq
f3ba3ddd54
move buy_price and sell_price to plotting script
2017-11-21 20:41:49 +01:00
gcarq
65ce948b0b
catch ValueErrors from analyze_ticker ( fixes #123 )
2017-11-21 20:37:29 +01:00
gcarq
383a9f6eeb
catch BaseException to force stdout flush when process dies
2017-11-21 20:24:52 +01:00
gcarq
5d934cd5b6
enhance open order formatting in status handle
2017-11-20 23:33:52 +01:00
gcarq
788cda4925
add missing import
2017-11-20 22:26:32 +01:00
gcarq
55a69e4a45
use normal program flow to handle interrupts
2017-11-20 22:15:19 +01:00
gcarq
86b6c6f334
version bump
2017-11-20 20:01:10 +01:00
gcarq
cd5afd6ff4
use jsonschema regex pattern for whitelist format and enhance validation error messages ( closes #120 )
2017-11-20 19:37:25 +01:00
Janne Sinivirta
d88cc084e6
align numbers in hyperopt print out ( #119 )
2017-11-20 10:22:11 +01:00
Jeff Pipas
5deaebf0c2
Tests now use UTC time with arrow instead of datetime ( #117 )
...
* fixing tests to use arrow-utc
* removing datetime import
2017-11-19 04:58:35 +01:00
gcarq
19734ad863
set bootstrap_retries to infinite ( fixes #113 )
2017-11-18 22:23:05 +01:00
gcarq
b16ccb9919
handle requests exception in validate_pairs
2017-11-18 22:22:45 +01:00
gcarq
d41837817c
move logging to freqtrade.rpc
2017-11-18 21:43:21 +01:00
gcarq
3ab14dfe39
add middleware to expose common functionality for multiple rpc implementations
2017-11-18 21:30:31 +01:00
Michael Egger
4a91ecd91a
Merge pull request #115 from gcarq/pylint_cleanups
...
Pylint cleanups
2017-11-18 16:00:21 +01:00
Samuel Husso
a3da2911e8
Merge pull request #114 from gcarq/new_algo
...
New buy strategy
2017-11-18 13:09:40 +02:00
Janne Sinivirta
6f5b418f0b
small balancing to hyperopt objective
2017-11-18 10:24:18 +02:00
Janne Sinivirta
37a74b38ba
more little pylint fixes
2017-11-18 10:09:19 +02:00
Janne Sinivirta
9ab81a987d
fix pylint warnings in test_main.py
2017-11-18 09:58:55 +02:00
Janne Sinivirta
4b08e3d571
fix pylint warnings in __init__ files
2017-11-18 09:58:29 +02:00
Janne Sinivirta
187fea0c28
disable bunch of meaningless pylint warnings
2017-11-18 09:45:01 +02:00
Janne Sinivirta
4e54b27398
use parentheses for multiline string instead of backslash
2017-11-18 09:44:28 +02:00
Janne Sinivirta
aced5cc3ba
rename variable to remove Mypy warning of type error
2017-11-18 09:43:42 +02:00
Janne Sinivirta
669ec30413
remove unused import
2017-11-18 09:34:57 +02:00
Janne Sinivirta
0082b7abdd
add missing module and class docstring
2017-11-18 09:34:32 +02:00
Janne Sinivirta
7903f3a546
fix test name
2017-11-18 09:19:22 +02:00
Janne Sinivirta
ec75586bdd
new buy strategy
2017-11-18 08:45:57 +02:00
Janne Sinivirta
df9902d6a4
Merge pull request #107 from gcarq/feature/add-backtesting-subcommand
...
add backtesting subcommand and refresh test data
2017-11-18 08:13:42 +02:00
Janne Sinivirta
315919cdd6
fix platform dependent bug in argparse test
2017-11-18 08:07:37 +02:00
gcarq
63c95a3546
modify trade life cycle (should fix #112 )
2017-11-17 20:17:29 +01:00
gcarq
59d04d1d0c
catch TelegramError ( fixes #113 )
2017-11-17 19:49:03 +01:00
gcarq
14de46576b
use load_backtesting_data
2017-11-17 18:23:40 +01:00
gcarq
bdff29a472
remove code duplicates
2017-11-17 18:17:59 +01:00
gcarq
8655c6c264
reduce backtest data samples to 10
2017-11-17 18:15:25 +01:00
gcarq
3f4e4a23a0
add argparse handling tests
2017-11-17 18:15:24 +01:00
gcarq
b682262486
refactor argparse handling
2017-11-17 18:15:24 +01:00
gcarq
5be7be6189
adapt tests
2017-11-17 18:15:24 +01:00
gcarq
3475a07522
fetching new testing data for oneMin and fiveMin intervals
2017-11-17 18:15:24 +01:00
gcarq
fb7ea169d4
fix some formatting issues
2017-11-17 18:13:34 +01:00
gcarq
5469293e5f
use tabulate to format backtesting result
2017-11-17 18:13:02 +01:00
gcarq
9b644b0305
add --ticker-interval
2017-11-17 18:09:55 +01:00
gcarq
0df1404d6a
fix typo
2017-11-17 18:09:55 +01:00
gcarq
bb4a9ed20f
implement backtest subcommand
2017-11-17 18:09:55 +01:00
Janne Sinivirta
d89db50465
avoid copy operation due to memory consumption
2017-11-17 12:30:54 +02:00
Janne Sinivirta
632d00e01d
move price point calculations out from populate functions
2017-11-17 12:30:03 +02:00
Janne Sinivirta
2a56031cdc
remove unnecessary line
2017-11-17 12:30:03 +02:00
Janne Sinivirta
16d412323c
add a little snippet to allow running line_profiler with hyperopt
2017-11-16 20:43:24 +02:00
Janne Sinivirta
27a6b29c80
move time diff calculation out of a loop
2017-11-16 20:43:24 +02:00
Janne Sinivirta
5d1f874041
switch ix to loc, ix is apparently deprecated
2017-11-16 20:43:24 +02:00
Janne Sinivirta
174122a09b
remove unnecessary calculation
2017-11-16 20:38:59 +02:00
Janne Sinivirta
1b6a60ecb2
refactor backtesting to avoid recalculating indicators in hyperopt
2017-11-16 20:38:46 +02:00
Janne Sinivirta
a963f1820c
rename should_sell to min_roi_reached
2017-11-16 16:53:34 +01:00
Janne Sinivirta
b9983149ef
plug sell strategy to backtesting
2017-11-16 16:53:34 +01:00
Janne Sinivirta
c1ef3f526c
remove unnecessary comparison
2017-11-16 16:53:34 +01:00
Janne Sinivirta
6b7afb80b2
fix failing test
2017-11-16 16:53:34 +01:00
Janne Sinivirta
0b8afa12e9
exit strategy after roi check
2017-11-16 16:53:34 +01:00
Janne Sinivirta
1db0a7d4ce
populate sell signal
2017-11-16 16:53:34 +01:00
Janne Sinivirta
c12a9ebd92
make signal getting parametrized
2017-11-16 16:53:34 +01:00
gcarq
d86dcc4752
check if result exists in get_ticker ( fixes #106 )
2017-11-16 16:39:06 +01:00
gcarq
0bc96241d5
rework exception handling ( fixes #108 )
2017-11-16 16:14:43 +01:00
gcarq
2e953a937d
version bump
2017-11-16 00:40:36 +01:00
gcarq
4e05691cab
check if balance list is empty ( fixes #105 )
2017-11-16 00:01:47 +01:00
gcarq
b5f58724a0
get_ticker_history: check if result is set ( fixes #103 )
2017-11-15 23:16:54 +01:00
gcarq
b83309b55d
reduce calls_per_second to 1
2017-11-15 23:16:39 +01:00
gcarq
e8101a6da5
default BaseVolume to 0.0 if null
2017-11-14 17:48:19 +01:00
gcarq
dd9cb008fb
refresh whitelist based on wallet health ( fixes #60 )
...
Refreshs the whitelist in each iteration based on the wallet health,
disabled wallets will be removed from the whitelist automatically.
2017-11-13 21:34:47 +01:00
gcarq
81f7172c4a
sanitize get_ticker_history ( fixes #100 )
2017-11-13 19:54:09 +01:00
Michael Egger
bab59fbacd
Merge pull request #99 from gcarq/more_triggers2
...
Expanding hyperopt
2017-11-13 12:11:15 +01:00
Janne Sinivirta
0f0b10b6cc
adjust search spaces
2017-11-13 07:28:56 +02:00
Janne Sinivirta
8e68c5358e
clean up prints during hyperopt
2017-11-12 09:44:31 +02:00
Janne Sinivirta
660f01b514
add hilbert transform leadsine trigger
2017-11-12 09:13:54 +02:00
Janne Sinivirta
13537e3ce4
add short ema guard to hyperopt
2017-11-12 08:45:32 +02:00
Janne Sinivirta
2963a90008
add stochastics trigger
2017-11-12 08:38:52 +02:00
Janne Sinivirta
15b20b83fa
optimize hyperopt objective function
2017-11-12 08:30:58 +02:00
gcarq
1c3c316e45
reduce calls_per_second
2017-11-11 21:29:35 +01:00
gcarq
517879382b
Add argument for dynamic-whitelist handling
...
If --dynamic-whitelist is passed the whitelist in the config file
is ignored. It gets automatically refreshed every 30 minutes and
currently selects the 20 topmost BaseVolume markets
2017-11-11 19:20:53 +01:00
gcarq
bcd3340a80
implement get_market_summaries
2017-11-11 19:20:16 +01:00
gcarq
12ae1e111e
use get_candles from python-bittrex
2017-11-11 17:14:55 +01:00
gcarq
d3b3370f23
Add configurable throttle mechanism
2017-11-11 16:47:19 +01:00
gcarq
8f817a3634
use TTLCache for get_ticker_history
2017-11-11 15:29:31 +01:00
Janne Sinivirta
cf79b15651
use discrete values for filters
2017-11-11 11:50:10 +02:00
Janne Sinivirta
a4284351e3
fix green_candle
2017-11-11 11:22:12 +02:00
Janne Sinivirta
906caf329b
remove two unused or poorly performing indicators
2017-11-11 11:22:12 +02:00
Janne Sinivirta
3db13fae13
add green_candle guard
2017-11-11 11:22:12 +02:00
Janne Sinivirta
274972f7af
make faststoch trigger use crossed_above helper
2017-11-11 11:22:11 +02:00
Janne Sinivirta
83fd27e031
add sar reversal as trigger
2017-11-11 11:22:11 +02:00
gcarq
3126dcfcea
drop sleep_time and use python-bittrex request delay
2017-11-10 23:39:49 +01:00
Michael Egger
72aec6c320
Merge pull request #96 from gcarq/feature/add-argparse
...
add argparse and implement basic arguments
2017-11-10 18:04:03 +01:00
gcarq
b709ccbf53
enhance logging messages
2017-11-10 17:56:03 +01:00
gcarq
0de211674d
version bump
2017-11-09 23:52:34 +01:00
gcarq
f7a27c156c
add /version command handler
2017-11-09 23:51:32 +01:00
gcarq
98f11fc7bb
fix sqlite threading issue
2017-11-09 23:45:22 +01:00
gcarq
013e13e546
use tabulate for /count
2017-11-09 23:45:03 +01:00
gcarq
6ff26c561a
move plot_dataframe to scripts/ folder
2017-11-09 22:29:23 +01:00
gcarq
c81358c291
remove MagicBot
2017-11-09 22:11:02 +01:00
gcarq
ed34d9f22f
add tests for /forcesell all
2017-11-09 22:08:28 +01:00
gcarq
ee05561ef3
refactor forcesellall to /forcesell all
2017-11-09 22:07:51 +01:00
Eoin
69ae99406a
add telegram handler for forcesellall
2017-11-09 21:52:08 +01:00
gcarq
0cfbb56b6c
enhance and test pair validation
2017-11-09 21:47:47 +01:00
gcarq
991b43b7e5
version bump
2017-11-09 20:55:45 +01:00
gcarq
a0fa6abcdc
use in-memory db for dry_run
2017-11-09 20:26:52 +01:00
gcarq
86501b43c0
adjust message formatting
2017-11-09 20:25:17 +01:00
gcarq
80592970e9
add more tests
2017-11-09 20:02:41 +01:00
gcarq
fafbb0abfe
update python-bittrex to 0.2.0
2017-11-09 00:31:53 +01:00
gcarq
31c03cdce1
fix linter issue
2017-11-08 22:44:32 +01:00
gcarq
e01c85bb3a
add argparse and implement basic arguments
2017-11-08 22:43:47 +01:00
gcarq
a1b91ad1ea
remove unneeded wrapper function
2017-11-08 21:17:51 +01:00
gcarq
6ce6018bb7
add more tests
2017-11-07 22:27:44 +01:00
gcarq
18eec0f4d4
catch BaseException in command_handler
2017-11-07 22:27:16 +01:00
gcarq
32327c45c2
set close_date on sell_order update
2017-11-07 22:26:44 +01:00
gcarq
ba485fe2b2
return state changes
2017-11-07 22:26:08 +01:00
gcarq
f8084b117e
apply pylint recommendations
2017-11-07 20:13:36 +01:00
gcarq
abdddd5193
define common fixtures
2017-11-07 20:12:56 +01:00
gcarq
8eeb02e592
make ticker interval configurable
2017-11-07 18:59:47 +01:00
gcarq
8555271102
remove unneeded header from get_ticker_history
2017-11-07 18:49:16 +01:00
gcarq
d921bae75e
set executable bit
2017-11-07 18:42:40 +01:00
gcarq
a1388ef296
add tick_interval to get_ticker_history as an optional parameter
2017-11-07 18:41:48 +01:00
gcarq
ddc7c94a1d
Merge branch 'develop' of https://github.com/gcarq/freqtrade into develop
2017-11-07 18:40:56 +01:00
Michael Egger
e36444df27
Merge pull request #95 from gcarq/improve_backtests
...
Share pytest fixtures. Cache testfile loading.
2017-11-07 18:40:00 +01:00
Janne Sinivirta
0395c92260
move testdata file loading to pytest fixture
2017-11-07 19:24:51 +02:00
gcarq
f03395b90d
force python3 via shebang
2017-11-07 17:54:44 +01:00
gcarq
20d5628786
catch broader RequestException instead ConnectionError
2017-11-07 17:45:13 +01:00
gcarq
57e089efd3
fix NoneType issue in status command handle
2017-11-07 17:39:57 +01:00
Janne Sinivirta
fbbde9de25
put shared fixtures to conftest.py
2017-11-07 17:29:00 +02:00
Samuel Husso
3d42b9fd75
Merge pull request #94 from gcarq/autopep
...
autoformat with autopep8
2017-11-06 19:41:57 +02:00
Janne Sinivirta
adfae9e75c
autoformat with autopep8
2017-11-06 19:17:23 +02:00
gcarq
117dfbb563
fix wording
2017-11-06 18:15:33 +01:00
Michael Egger
ae0b49f532
Merge pull request #92 from gcarq/feature/rework-dry_run-mode
...
rework dry_run
2017-11-06 16:54:55 +01:00
gcarq
a37ea13fd1
catch RuntimeError earlier
...
This makes it possible to to restart the bot, if there are temporary
server issues.
2017-11-06 01:03:37 +01:00
gcarq
cc29126d61
make download_backtest_data.py platform independent
2017-11-06 00:16:24 +01:00
gcarq
810f2f9243
drop minimum_date from get_ticker_history
2017-11-06 00:06:59 +01:00
gcarq
60e651cb4c
only return data['result'] from get_ticker_history
2017-11-05 23:47:59 +01:00
gcarq
472ce8566d
enhance bittrex exception messages
2017-11-05 22:47:55 +01:00
gcarq
d12dba16db
simplify status command
2017-11-05 18:35:32 +01:00
Sébastien Moreau
3884cfb809
Merge branch 'develop' into feature/advanced-status-command
2017-11-05 10:32:53 -05:00
Sebastien Moreau
caa6e22e53
Adds unit tests
2017-11-05 10:26:03 -05:00
gcarq
19f6ff330c
adapt float precision asserts
2017-11-05 16:21:13 +01:00
gcarq
8fdd127f72
fix float precision rendering
2017-11-05 16:13:55 +01:00
gcarq
0a5eba64e2
do not remove order from dry_run order list
2017-11-05 16:13:20 +01:00
gcarq
b82c4444b2
apply correct typehint
2017-11-05 16:12:58 +01:00
gcarq
95a17b8f98
dry_run: remove mock value notice
2017-11-05 15:35:15 +01:00
gcarq
325f72fd91
dry_run: keep list of open orders
2017-11-05 15:21:16 +01:00
Janne Sinivirta
29b173f4e7
only run four evals of hyperopt, just to check it works
2017-11-05 09:28:42 +02:00
gcarq
264d71e29e
fix some pylint warnings
2017-11-04 18:55:41 +01:00
gcarq
a873688a44
backtesting: init Trade with Bittrex fee
2017-11-04 18:43:23 +01:00
gcarq
04342acff1
fix typo
2017-11-03 21:37:20 +01:00
gcarq
c37df0e70d
inform about mocked values with dry_run
2017-11-03 21:36:55 +01:00
gcarq
460dfa1031
fix percentage formating in execute_sell
2017-11-02 19:00:25 +01:00
gcarq
08a1d3ca1d
pylint changes
2017-11-02 19:00:25 +01:00
gcarq
1daeed4a52
fix assert
2017-11-02 19:00:25 +01:00
gcarq
99724e2458
use Decimal for profit calculation
2017-11-02 19:00:25 +01:00
gcarq
cd18629433
add fee to sqlalchemy model and respecting it in calc_profit
2017-11-02 19:00:25 +01:00
gcarq
41510fdb32
add dry_run for get_balance
2017-11-02 19:00:25 +01:00
gcarq
9cb249610a
adapt dry_run return values
2017-11-02 19:00:25 +01:00
gcarq
543857ddb2
set initial open_rate and amount in create_trade
...
This is mostly needed by dry_run
2017-11-02 19:00:25 +01:00
gcarq
1e5b0e8726
adapt tests
2017-11-02 19:00:25 +01:00
gcarq
0d0d822904
bump dburl to tradesv3
2017-11-02 19:00:25 +01:00
gcarq
9ff4a7b205
refactor _process to update trade state
2017-11-02 19:00:25 +01:00
gcarq
0e96197a94
don't spend the whole coin balance when selling
2017-11-02 19:00:25 +01:00
gcarq
9b9d0250f7
replace get_open_oders() with get_order() and add property for fee
2017-11-02 18:58:55 +01:00
gcarq
4a35676794
rename and exchange instance and mark it as private
2017-11-02 18:58:55 +01:00
gcarq
465c91b9a9
telegram.cleanup: fix NoneType issue when telegram is deactivated
2017-11-02 18:56:57 +01:00
Sebastien Moreau
60249af04c
Removes long format + pylint fixes
2017-11-02 13:25:19 -04:00
gcarq
f34af0ad67
version bump
2017-11-01 01:15:06 +01:00
gcarq
e07904d436
PEP8 linting
2017-10-31 00:36:35 +01:00
gcarq
26468bef83
balance: filter currencies with 0.0 balances
2017-10-31 00:29:22 +01:00
Michael Egger
ea1b1e11ea
Merge pull request #88 from gcarq/reduce_memory_use
...
Reduce memory use in backtesting
2017-10-31 00:28:38 +01:00
Janne Sinivirta
e68e6c0a1a
reuse mock in hyperopt also
2017-10-30 22:31:28 +02:00
Janne Sinivirta
7190226c84
reuse same mock for get_ticker_history, just change return_value
2017-10-30 22:06:09 +02:00
gcarq
6f2915e25e
move qtpylib to vendor folder
...
This is necessary to distribute qtpylib with
freqtrade when you install it globally.
2017-10-30 20:41:36 +01:00
Janne Sinivirta
8da55c3742
move patching of arrow.utcnow to remove 500 unnecessary mock objects
2017-10-30 19:56:53 +02:00
Michael Egger
05111edd04
Merge pull request #87 from gcarq/more_triggers
...
More triggers and guards to hyperopt
2017-10-30 14:43:18 +01:00
Sebastien Moreau
8bdace68f6
Adds options for /status command
2017-10-29 20:51:38 -04:00
Sebastien Moreau
0e1eb20781
Adds /count command
...
Adds /count command
Adds /count command
2017-10-29 18:47:42 -04:00
Michael Egger
4c2dea83c5
Merge pull request #84 from gcarq/telegram/show-balance
...
Telegram command: /show balance
2017-10-29 22:05:10 +01:00
Janne Sinivirta
d066817d0b
removed below_sma and over_sma to wait for better implementation
2017-10-29 21:33:57 +02:00
Janne Sinivirta
a632121368
add macd cross signal trigger to hyperopt
2017-10-29 21:33:57 +02:00
Janne Sinivirta
473d09b5cd
add ema50 and ema100. add long uptrend ema guard to hyperopt
2017-10-29 21:33:57 +02:00
Janne Sinivirta
893738d6f0
add MACD to analyze
2017-10-29 21:33:57 +02:00
Janne Sinivirta
22cfef7d36
add ema5 cross ema10 trigger to hyperopt
2017-10-29 21:33:57 +02:00
Janne Sinivirta
e1bbe1d9a9
adjust indicator ranges in hyperopt
2017-10-29 21:33:57 +02:00
Janne Sinivirta
ec981b415a
add RSI to hyperopt
2017-10-29 21:33:57 +02:00
Janne Sinivirta
57a17697a0
add RSI, MOM, EMA5 and EMA10 to analyze
2017-10-29 21:33:57 +02:00
Samuel Husso
f4fe09ffbf
added get_balances as a abstract method to the interface baseclass
2017-10-29 17:57:57 +02:00
Janne Sinivirta
9b00fc3474
use .ix instead of .loc for small perf boost
2017-10-29 16:28:55 +02:00
Janne Sinivirta
3b1dc36d8a
switch to using itertuples instead of iterrows as it's a lot faster
2017-10-29 16:28:55 +02:00
Janne Sinivirta
4edf8f2079
copy only needed columns before iterating over them
2017-10-29 16:28:55 +02:00
Janne Sinivirta
54987fd9ca
do date parsing while loading json, not later
2017-10-29 16:28:55 +02:00
Janne Sinivirta
da9c3e7d7d
remove leftover dates from removing date filtering
2017-10-29 16:28:55 +02:00
Samuel Husso
4f6c3f94e0
added tests to /balance, minor cleanup
2017-10-29 10:10:00 +02:00
Janne Sinivirta
25d6d6bbe5
remove unused imports from test_hyperopt
2017-10-28 15:32:29 +03:00
Janne Sinivirta
649781d823
store result strings, display best result in summary. switch to a lot better objective algo
2017-10-28 15:26:22 +03:00
Janne Sinivirta
08ca7a8166
change print to format so result can be used in hyperopt Trials
2017-10-28 15:26:22 +03:00
Samuel Husso
dd78c62c3d
added new command to return balance across all currencies
2017-10-28 08:59:43 +03:00
gcarq
4139b0b0c7
add signal handler for SIGINT, SIGTERM and SIGABRT
2017-10-27 15:52:14 +02:00
Samuel Husso
0c33e917d5
Merge pull request #79 from gcarq/qtpylib
...
Include new indicators from qtpylib
2017-10-27 12:11:04 +03:00
Janne Sinivirta
e401a016f5
change analyze tests to use full json dump from bittrex
2017-10-26 16:50:31 +03:00
Janne Sinivirta
e0fde8665c
Merge pull request #80 from gcarq/fix-testdate-dl-path
...
download testdata to correct folder when running from project root
2017-10-26 10:37:38 +03:00
Samuel Husso
752520c823
When running from project root download the files to the testdata folder instead of cwd
2017-10-26 10:24:22 +03:00
Janne Sinivirta
6ba2492360
add Awesome Oscillator and try it in hyperopt
2017-10-25 18:37:20 +03:00
Janne Sinivirta
9c9cf76a0d
Merge pull request #78 from gcarq/refactor-backtest
...
Refactor backtest functionality
2017-10-25 18:19:44 +03:00
Samuel Husso
041e201713
remove duplicated backtesting from hyperopt
2017-10-25 08:17:17 +03:00
gcarq
ff4fcdc760
version bump
2017-10-24 18:14:31 +02:00
Samuel Husso
f43ba44b15
refactor backtesting to its own method as we use it also in hyperopt
2017-10-24 07:58:42 +03:00
Michael Egger
79c3e0583d
Merge pull request #76 from gcarq/hyperopt
...
Use hyperopt to find optimal parameters for buy strategy
2017-10-23 09:40:13 +02:00
Janne Sinivirta
f6ef8383bb
remove filtering from analyze that is super slow and not really needed
2017-10-22 21:50:07 +03:00
Janne Sinivirta
6f5307fda7
use more aggressive stop loss for hyperopt
2017-10-22 17:15:57 +03:00
Janne Sinivirta
37004e331a
remove unused import and commented out code
2017-10-22 17:14:55 +03:00
Janne Sinivirta
57acf85b42
try a different objective function
2017-10-22 17:11:01 +03:00
Janne Sinivirta
d32ff3410c
add help command to telegram bot
2017-10-21 11:08:08 +03:00
Janne Sinivirta
913488910c
bump minimum evaluations to 40 rounds
2017-10-21 10:29:05 +03:00
Janne Sinivirta
17b984a7cd
adjust objective function to emphasize trade lenghts more
2017-10-21 10:28:43 +03:00
Janne Sinivirta
f79b44eefe
adjust ROI map for shorter trades
2017-10-21 10:28:02 +03:00
Janne Sinivirta
146c254c0f
start adding other triggers than just the lower BBands
2017-10-21 10:26:38 +03:00
Janne Sinivirta
ce2966dd7f
add uptrend_sma to hyperopt
2017-10-20 18:29:38 +03:00
Janne Sinivirta
0fbca8b8ef
add CCI to hyperopt
2017-10-20 13:14:28 +03:00
Janne Sinivirta
3f7a583de6
add SAR to hyperopt. add over/under sma options to hyperopt
2017-10-20 12:56:44 +03:00
Janne Sinivirta
1196983d5f
change objective to emphasize shorter trades and include average profit
2017-10-20 10:39:36 +03:00
Janne Sinivirta
bbb2c7cf62
more parametrizing. adjust ranges for previous parameters
2017-10-20 10:39:04 +03:00
Janne Sinivirta
ff100bdac4
the optimizer expects values in the order of smaller is better
2017-10-19 18:29:57 +03:00
Janne Sinivirta
1792e0fb9b
use hyperopt to find optimal parameter values for indicators
2017-10-19 17:12:49 +03:00
Michael Egger
aeef9bac33
Merge pull request #70 from dertione/patch-2
...
Download automatically altcoin datas
2017-10-17 13:36:33 +02:00
dertione
389f9b45bb
update pylint 10/10
2017-10-15 17:24:49 +02:00
Janne Sinivirta
c9741cb291
adjust roi settings for faster trades
2017-10-15 17:32:07 +03:00
Janne Sinivirta
bf6f563df2
small tweaks to buy strategy and it's visualization
2017-10-15 17:32:07 +03:00
dertione
afd1a0bf9b
update for pylint
2017-10-14 14:40:26 +02:00