Commit Graph

483 Commits

Author SHA1 Message Date
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