Commit Graph

757 Commits

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