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