Commit Graph

1797 Commits

Author SHA1 Message Date
Janne Sinivirta 3083e5d2be use pytest fixture properly in test_hyperopt 2018-07-30 13:26:54 +03:00
Janne Sinivirta affdeb8fd8 rename func to throttled_func 2018-07-30 12:58:29 +03:00
Janne Sinivirta fb80964b69 freqtradebot tests don't need to mock coinmarketcap anymore 2018-07-30 12:58:29 +03:00
Janne Sinivirta 1c20ef873d remove parens 2018-07-30 12:09:07 +03:00
Janne Sinivirta df53e912f0 fix one more test that was missing mock and needed internet 2018-07-30 12:09:07 +03:00
Janne Sinivirta e242842805 remove more useless docstrings from tests 2018-07-30 12:09:07 +03:00
Matthias 2401fa15d2 Change missed calls to advise_* functions 2018-07-29 21:07:21 +02:00
Matthias 787d6042de Switch from pair(str) to metadata(dict) 2018-07-29 20:56:23 +02:00
Matthias 82680ac6aa improve docstrings for strategy 2018-07-29 20:55:40 +02:00
Matthias 5fbce13830 update hyperopt to use new methods 2018-07-29 20:55:40 +02:00
Matthias 39cf0decce don't use __annotate__
it is only present when typehints are used which cannot be guaranteed
for userdefined classes
2018-07-29 20:55:40 +02:00
Matthias f286ba6b87 overload populate_indicators to work with and without pair argumen
all while not breaking users strategies
2018-07-29 20:55:40 +02:00
Matthias 98665dcef4 revert inadvertent wihtespace changes 2018-07-29 20:55:37 +02:00
Matthias 791c5ff071 update comments to explain what advise methods do 2018-07-29 20:55:37 +02:00
Matthias 8a9c54ed61 use new methods 2018-07-29 20:55:37 +02:00
Matthias 18b8f20f1c fix small test bug 2018-07-29 20:55:37 +02:00
Matthias f12167f0dc Fix backtesting test 2018-07-29 20:55:37 +02:00
Matthias df8700ead0 Adapt after merge from develop 2018-07-29 20:55:37 +02:00
Matthias 0eff6719c2 improve tests for legacy-strategy loading 2018-07-29 20:55:37 +02:00
Matthias aa772c28ad Add tests for advise_indicator methods 2018-07-29 20:55:37 +02:00
Matthias c9a97bccb7 Add tests for deprecation 2018-07-29 20:55:32 +02:00
Matthias 7300c0a0fe remove @abstractmethod as this method may not be present in new
strategies
2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 921f645623 fixing tests... 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 0dcaa82c3b fixed test? 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 3dd7d209e9 more test fixes 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth abc55a6e6b fixing? hyperopt 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 5871488858 fixed errors and making flake pass 2018-07-29 20:55:06 +02:00
xmatthias 2e6e5029ba fix mypy and tests 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 19b9966417 satisfied flake8 again 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 57f683697d revised code 2018-07-29 20:55:06 +02:00
Gert Wohlgemuth 296d3d8bbe working on refacturing of the strategy class 2018-07-29 20:55:06 +02:00
Janne Sinivirta f832edf5bc remove useless docstrings from tests 2018-07-29 17:09:44 +03:00
Janne Sinivirta 1bbb86c621 remove nonsense asserts 2018-07-29 16:23:17 +03:00
Matthias 7f27beff4b
Revert "backtesting: try to load data with ujson if it exists" 2018-07-29 13:23:11 +02:00
creslinux dd71071740 Added logger.info when Sandbox is enabled. 2018-07-29 09:15:13 +00:00
creslinux 1e804c0df5 flake 8 2018-07-29 08:10:55 +00:00
creslinux fc06d028b8 Unit tests for sandbox pass / fail scenarios
Big Wave of appreciation to xmatthias for the guidence on how
Mocker works
2018-07-29 08:02:04 +00:00
Matthias 618784d060
Merge pull request #1090 from freqtrade/ujson-loader
backtesting: try to load data with ujson if it exists
2018-07-29 08:54:02 +01:00
Samuel Husso cfcc2e61e5
Merge pull request #1088 from freqtrade/fix/unpatched_mock
fix rpc test going to network
2018-07-29 09:53:52 +03:00
Samuel Husso 187e039a58
Merge pull request #1034 from freqtrade/feat/positive_sl_limit
add offset for positive trailing stop loss
2018-07-29 08:30:29 +03:00
Gert ab66fe1b72 prepared for tracking signals 2018-07-28 19:45:33 -07:00
Gert ed47240b6e working on develop backslap 2018-07-28 18:30:12 -07:00
Gert 1a673c6ac9 working on moving backslap 2018-07-28 14:23:18 -07:00
creslinux 0a059662b3 Submitting with unit test for the working scenario.
Strongly recommend core team check the unit test is even targetting the
correct code in exchange/__init__.py

I have a real knowledge gap on mocker, in so far as how tests map to
what they're targeting.
2018-07-28 20:32:10 +00:00
Samuel Husso cb2fff8909 mypy doesn't handle common idiomacy so disable the line (see the open issue more details) 2018-07-28 22:06:26 +03:00
Samuel Husso cdd8cc551c backtesting: try to load data with ujson if it exists 2018-07-28 21:56:11 +03:00
Samuel Husso 6ab8fa8c71
Merge pull request #1079 from creslinux/apiAuthPass
add Password option to API login, GDAX as example requires.
2018-07-28 13:53:39 +03:00
Matthias 243b63e39c fix rpc test going to network (unsuitable for flights...) 2018-07-27 21:14:41 +01:00
creslin 40ae250193
Update constants.py
Adding UID also, as itll get ran into in future on an exchange that needs it.
2018-07-27 12:19:01 +00:00
creslinux c47253133a have to begin before we can stop 2018-07-27 12:07:07 +00:00
creslinux 7efa81073a Removed ; at line end. 2018-07-27 09:10:09 +00:00
creslinux d23b3ccc5e odd cut and paste error fixed. 2018-07-27 08:55:36 +00:00
Matthias 48cd468b6c Don't do all network calls at once without async 2018-07-27 07:40:27 +01:00
creslinux 0372485cf0 Some reason did not push this...
vector calcs redone.
2018-07-26 19:17:00 +00:00
creslinux e39ae45d2f Some reason did not push this...
vector calcs redone.
2018-07-26 18:40:45 +00:00
Matthias df3e76a65d Remove legacy code, fix missed call 2018-07-26 19:11:51 +01:00
Matthias f2a9be3684 Adjust tests and remove legacy variable 2018-07-26 19:06:25 +01:00
Matthias 3324cdfcbe add mock for get_history in patch_get_signal 2018-07-26 18:58:49 +01:00
Matthias 484103b957 extract get_history_data from get_signal 2018-07-26 18:23:42 +01:00
Janne Sinivirta 726b94b077
Merge pull request #1069 from freqtrade/feat/movefiatconverttorpc
Feat/movefiatconverttorpc
2018-07-26 14:25:58 +03:00
Matthias 452a1cad9d don't default fiat_convert to None for outputs 2018-07-26 07:26:23 +01:00
Matthias 7b49f746d1 remove #FIX which was fixed 2018-07-25 22:47:20 +01:00
Janne Sinivirta 4b38c8b11d use pandas own min and max for column sorting 2018-07-25 17:04:25 +03:00
Matthias dc1ad3cbf6 whitespace issues 2018-07-24 23:08:40 +01:00
Matthias ff6435948e Fix random test failure 2018-07-24 22:53:10 +01:00
Matthias 4928686af9 Remove currency from daily table 2018-07-24 09:37:25 +01:00
Matthias 30b72ad98a don't show fiat-currency if not set 2018-07-24 08:20:32 +01:00
Matthias 1a9ead45eb fix missed fiat_display_currency config value 2018-07-24 08:00:56 +01:00
Janne Sinivirta 0b3190552e
Merge pull request #1018 from freqtrade/feat/sell_reason
Record sell reason
2018-07-24 09:09:45 +03:00
Matthias 456e49fe35 default fiat_currency to none 2018-07-24 00:01:51 +01:00
Matthias 10fc2c67c7 Fix bug causing a database-migration to fail from aspecific state 2018-07-23 09:10:37 +01:00
Matthias 643de58c4d Add test to check for a mid-migrated database (not old but not new) 2018-07-23 09:09:56 +01:00
Janne Sinivirta aba3c69765
Merge pull request #1061 from freqtrade/fix_networkcall
Add missing mock
2018-07-23 07:19:37 +03:00
Matthias 0775a371fe rename sellreason to sell_Reason, fix typos 2018-07-23 00:54:20 +01:00
Matthias 23fe0db2df Add missing mock 2018-07-22 17:06:42 +01:00
Matthias f54ac5a8de revert bugfix done in it's own branch 2018-07-22 17:05:22 +01:00
Matthias 4c8411537f Don't require fiat-currency 2018-07-22 14:53:46 +02:00
Matthias bd2771b8f9 use correct property 2018-07-22 14:52:58 +02:00
Matthias 4d864df59e Add tests for no_fiat functionality 2018-07-22 14:49:07 +02:00
Matthias fae4c3a4e3 only init if stake_currency is set 2018-07-22 14:48:06 +02:00
Matthias 2b297869a1 adjust checks to fit new functionality 2018-07-22 14:35:59 +02:00
Matthias 6cc0a72bca ADd optional to class _fiat_convert 2018-07-22 14:35:37 +02:00
Matthias f297d22edb fix some tests in rpc_telegram 2018-07-21 20:49:57 +02:00
Matthias 0681a806cc move cryptofiatconvert to rpc 2018-07-21 20:44:38 +02:00
Matthias be3f04775a remove unnecessary mocks - add mocks which went to exchange 2018-07-21 20:21:00 +02:00
Matthias 9467461160 only init FIATConvert when telegram is enabled 2018-07-21 20:13:32 +02:00
Matthias 66af41192a Catch all exceptions from fiat-convert api calls 2018-07-21 19:50:38 +02:00
Matthias dd1290e38e Add multiple verbosity levels 2018-07-19 21:12:27 +02:00
Matthias 90915b6b2f
Revert "Add more verbosity levels" 2018-07-19 20:43:41 +02:00
Matthias 1b2bfad348 Fix wrong test 2018-07-19 20:36:49 +02:00
Matthias 060469fefc Add stuff after rebase 2018-07-19 20:12:20 +02:00
Matthias 4fb9823cfb fix rebase problem 2018-07-19 19:50:06 +02:00
Matthias 760c79c5e9 Use `.center()` to output trades header line 2018-07-19 19:39:08 +02:00
Matthias a452864b41 Use namedtuple for sell_return 2018-07-19 19:39:08 +02:00
Matthias 506aa0e3d3 Add print_sales table and test 2018-07-19 19:34:14 +02:00
Matthias 426c25f631 record ticker_interval and strategyname 2018-07-19 19:34:14 +02:00
Matthias 4059871c28 Add get_strategy_name 2018-07-19 19:34:14 +02:00
Matthias 2a61629014 Export sell_reason from backtest 2018-07-19 19:29:31 +02:00
Matthias 8c0b19f80c Check sell-reason for sell-reason-specific tests 2018-07-19 19:29:31 +02:00
Matthias 838b0e7b76 Remove unused import 2018-07-19 19:29:31 +02:00
Matthias cbffd3650b add sell_reason to backtesting 2018-07-19 19:29:31 +02:00
Matthias 0147b1631a remove optional from selltype 2018-07-19 19:27:33 +02:00
Matthias 49a7c7f08e fix tests 2018-07-19 19:27:33 +02:00
Janne Sinivirta 0cc1b66ae7
Merge pull request #1037 from freqtrade/fix/backtest-comment
replace --realistic with 2 separate flags
2018-07-19 17:33:19 +03:00
Janne Sinivirta 6070d819b8
Merge pull request #1040 from freqtrade/xmatthias_backtest_duration
Fix backtest duration calculation
2018-07-19 17:32:11 +03:00
Matthias f991109b0a Add sell-reason to sell-tree 2018-07-19 13:29:42 +02:00
Matthias 6bb7167b56 Add sellType enum 2018-07-19 13:25:48 +02:00
Matthias c0a7725c1f Add stoploss offset 2018-07-19 13:22:44 +02:00
Matthias 8f254031c6 Add short form for parameters, change default for hyperopt 2018-07-19 13:19:36 +02:00
Matthias aa69177436 Properly check emptyness and adjust floatfmt 2018-07-19 13:14:21 +02:00
Matthias 64f933477d
Merge pull request #1007 from freqtrade/remove-analyze
Remove Analyze
2018-07-19 10:12:36 +02:00
Matthias 75c0a476f8 Test setting verbosity in commandline 2018-07-18 23:40:04 +02:00
Matthias 1ab7f5fb6d add tests for more debug levels 2018-07-18 22:53:44 +02:00
Matthias 789b98015f Allow different loglevels 2018-07-18 22:52:57 +02:00
Matthias 7134c15e86
Merge pull request #1024 from freqtrade/feature/webhook
Feature/webhook
2018-07-18 20:39:57 +02:00
Matthias 79b1030435 output duration in a more readable way 2018-07-18 20:08:55 +02:00
Matthias f9f6a3bd04
cast to int to keep exports constant 2018-07-18 09:29:51 +02:00
Matthias 8e4d2abd4e
Fix typo 2018-07-18 09:10:17 +02:00
Matthias 08237abe20
Fix wrong backtest duration
identified in #1038
2018-07-18 09:06:12 +02:00
Luis Felipe Diaz Chica ee8e890f50 Add docs to get_trade_stake_amount function 2018-07-18 01:36:39 -05:00
creslinux 3184c85dca default settings to trigger low, take stop 2018-07-17 21:33:11 +00:00
Matthias 3df79b8542 fix hanging intend 2018-07-17 21:12:05 +02:00
Matthias c82276ecbe add --disable-max-market-positions 2018-07-17 21:05:03 +02:00
Matthias e17618407b Rename --realistic-simulation to --enable-position-stacking 2018-07-17 20:26:59 +02:00
Janne Sinivirta 85fd4dd3ff rename analyze.py to exchange_helpers.py 2018-07-17 21:26:52 +03:00
creslinux 8cea0517eb Added stop_stops
stop_stops is an int value
when number of stops in a pair reached the int the pair is stopped
trading.

This allows backtest to align with my pre_trade_mgt that does the same
in dry and live operations
2018-07-17 11:22:38 +00:00
creslinux ed4bf32f2a Fixed Stop closing in Index 0
when buy opening on Index 1
2018-07-17 10:59:17 +00:00
Janne Sinivirta e11ec28962 remove leftover commented-out code 2018-07-17 11:13:35 +03:00
creslinux baaf0a5b21 Handle when 0 trades are found in any pairs being tested. 2018-07-17 08:12:21 +00:00
Janne Sinivirta 084264669f fix the last failing unit test 2018-07-17 11:02:07 +03:00
Janne Sinivirta dbc3874b4f __init__ must return None to please mypy 2018-07-17 10:47:15 +03:00
Janne Sinivirta 78af4bc785 move and fix tests from Analyze to interface of strategy 2018-07-17 10:23:04 +03:00
creslinux a313917347 Handle a buy on the last candle
We will never see this, as buy is on close which is the end of backtest
e.g there is no next candle OPEN to buy at, or on
2018-07-16 18:59:48 +00:00
creslinux 357c8c0ba0 sensible defaults 2018-07-16 18:32:41 +00:00
creslinux 8d5da4e6ad changed defaults
Seperated save trades and print trades options.
2018-07-16 17:48:11 +00:00
creslinux ec1960530b Added Show trades option
If true, prints trades ordered by date after summary.
Useful for spotting trends.
2018-07-16 17:06:06 +00:00
creslinux 99d16e82c0 disable time calcs output on vector displaying in debug. Excessive. 2018-07-16 16:30:11 +00:00
creslinux 885a653439 Disabled full debug on in last commit
Switched Stops to trigger on Low
Switched Stops to pay stop-rate not close.
2018-07-16 16:18:54 +00:00
creslinux 059aceb582 Disabled full debug on in last commit
Switched Stops to trigger on Low
Switched Stops to pay stop-rate not close.
2018-07-16 16:12:33 +00:00
creslinux 0f3339f74f use ujson to load ticker files 30% faster from disk. 2018-07-16 16:09:42 +00:00
creslinux 4a39a754f4 Fixed: self.use_backslap = Bool on line97
If self.use_backslap = True   Backslap executes
If self.use_backslap = False  Original Backtest Code executes
2018-07-16 15:57:15 +00:00
creslinux 5aaf454f12 GAS trades verified from candle data to excel by hand
All pass
3 sells 1 stop loss
2018-07-16 15:48:06 +00:00
creslinux fb0edd71ff in tech test 2018-07-16 14:16:35 +00:00
creslinux eed29a6b8a update 2018-07-16 13:16:18 +00:00
creslinux 7174f27eb8 Rewrite to used algned numpy/dataframes
updated logic
added vector fill for abs/profit/duration in single hit on results.
2018-07-16 12:01:02 +00:00
Samuel Husso a3466f4b42
Merge pull request #1031 from freqtrade/feat/update_configdict
Update config dict with attributes loaded from strategy
2018-07-16 10:00:46 +03:00
Samuel Husso 050afe2bc0
Merge pull request #979 from creslinux/Check_timeframes
Handle if ticker_interval in config.json is not supported on exchange.
2018-07-16 09:57:46 +03:00
Janne Sinivirta 5c87c420c7 restore one analyze test 2018-07-16 08:59:14 +03:00
Janne Sinivirta aeb4102bcb refactor Analyze class methods to base Strategy class 2018-07-16 08:23:39 +03:00
Janne Sinivirta f6b8c2b40f move parse_ticker_dataframe outside Analyze class 2018-07-16 08:23:39 +03:00
Janne Sinivirta 85e6c9585a remove pass-through methods from Analyze 2018-07-16 08:23:39 +03:00
Janne Sinivirta a74147c472 move strategy initialization outside Analyze 2018-07-16 08:23:39 +03:00
creslinux a8b62a21cc hmm 2018-07-15 17:03:47 +00:00
creslinux 4e68362d46 Works with reporting output
Bugs
Calculating % prof ok, but abs wrong

BAT/BTC DF is very broken all OHLC are the same - but exposes a
buy after stop on last row "oddness" to be investigated / handled
2018-07-15 10:33:00 +00:00
creslinux 71c3106f8f Added ABS and Fees
Fixed Index Alignment that was off moving from scratch to FT
Fixed Stoploss,
  its a negative in FT, had been using positve stop -1 in scratch
2018-07-15 09:30:01 +00:00
Matthias 158226012a consistent use of the config dict within the test 2018-07-15 09:08:14 +02:00
Matthias b4ba641131 Update config dict with attributes loaded from strategy 2018-07-15 09:01:08 +02:00
creslinux 07175ebc5a up 2018-07-14 23:45:06 +00:00
creslinux 90e3c38757 First cut, Bslap
science project replacement for freqtrade backtest analysis

- appprox 300-500x quicker to execute

- fixes stop on close take close price bug in FT
Bslap is configurable but by default stops are triggerd on
low and pay stop price

Not implimented dynamic stops or roi
2018-07-14 22:54:23 +00:00
Matthias 278e7159bc adjust webhook tests 2018-07-14 13:32:35 +02:00
Matthias 1284627219 move url to private class level 2018-07-14 13:32:35 +02:00
Matthias 120fc29643 use dict comprehension 2018-07-14 13:32:35 +02:00
Matthias 6336d8a0e2 remove copy leftover 2018-07-14 13:32:35 +02:00
Matthias ee2f6ccbe9 Add test for enable_webhook 2018-07-14 13:32:35 +02:00
Matthias 144d308e5e Allow enabling of webhook 2018-07-14 13:32:35 +02:00
Matthias a4643066a8 allow more flexibility in webhook 2018-07-14 13:32:35 +02:00
Matthias 25250f7c10 don't hardcode post parameters 2018-07-14 13:32:35 +02:00
Matthias fa8512789f add tests for webhook 2018-07-14 13:32:35 +02:00
Matthias ae22af1ea3 fix typo 2018-07-14 13:32:35 +02:00
Matthias 6e16c1d80d add webhook test file 2018-07-14 13:32:35 +02:00
Samuel Husso fa8b349200 rpc: dont re-use variables with different types 2018-07-14 08:02:39 +03:00
gcarq cb8cd21e22 add tests for telegram.send_msg 2018-07-12 17:50:11 +02:00
gcarq a559e22f16 remove duplicate send_msg invocation 2018-07-12 17:29:02 +02:00
gcarq 7eaeb8d146 status: return arrow object instead humanized str 2018-07-12 17:27:40 +02:00
gcarq 0920fb6120 use more granular msg dict for buy/sell notifications 2018-07-12 17:16:31 +02:00
gcarq 4cb1aa1d97 use dict as argument for rpc.send_msg 2018-07-12 17:12:42 +02:00
gcarq 96a405feb7 implement name property in abstract class 2018-07-12 17:11:31 +02:00
gcarq 112998c205 refactor _rpc_balance 2018-07-12 17:11:31 +02:00
gcarq f1a370b3b9 return dict from _rpc_status and handle rendering in module impl 2018-07-12 17:10:04 +02:00
gcarq 29670b9814 remove markdown formatting from exception string 2018-07-12 17:07:19 +02:00
gcarq df8ba28ce5 convert start, stop and reload_conf to return a dict 2018-07-12 17:07:19 +02:00
Matthias 06c9494a46
add missing s to Backtest cum results 2018-07-11 14:50:04 +02:00
Janne Sinivirta 1f16ff268f
Merge pull request #1010 from jblestang/refactoring_create_trade_function
Refactoring Create Trade
2018-07-11 07:23:03 +03:00
Janne Sinivirta aa2366346a
Merge pull request #1001 from xmatthias/feat/backtest_cum_profit
Add cumulative profit to backtest result table
2018-07-11 07:21:28 +03:00
Jean-Baptiste LE STANG 773fb5953b Reafcotring Create Trade 2018-07-10 15:10:56 +02:00
Matthias 85c60519b0 Fix test crash 2018-07-09 22:11:12 +02:00
Matthias 750d737b7d Add tests for change to open_rate 2018-07-08 20:18:34 +02:00
Matthias 8b06000f0f Use open-rates for backtesting 2018-07-08 20:03:11 +02:00
Matthias efaa8f16e7 Improve formattiong of table 2018-07-08 20:01:33 +02:00
Matthias 38487644f0 fix tests for backtest-result output table 2018-07-08 19:55:16 +02:00
Matthias 1a24afef77 add cumsum to backtest-results 2018-07-08 19:55:04 +02:00
Janne Sinivirta 8fb146ba6a
Merge pull request #992 from freqtrade/backtest_optimize
reduce calculation effort by removing a call to calc_profit_percent
2018-07-08 17:41:50 +03:00
Janne Sinivirta 6926e468a4
Merge pull request #984 from freqtrade/test_backtest_results
Test backtest results
2018-07-08 17:40:12 +03:00
Matthias 8dd6e29426 don't flag data as outdated which isn't 2018-07-08 13:34:47 +02:00
Matthias 3e03a208f1 reduce calculation effort (slightly!) 2018-07-07 20:17:53 +02:00
Matthias 570d27a0c4 Add testcase where ticker_interval is not in the configuration 2018-07-07 15:30:29 +02:00
Matthias 3f6e9cd28f Add tests for validate_timeframes 2018-07-07 14:42:53 +02:00
Matthias af17cef002 fix existing tests to work with validate_timeframes 2018-07-07 14:41:42 +02:00
Matthias 9906da46f6 move comment to correct place 2018-07-06 20:00:54 +02:00
Matthias 54976fa103 Add more tests to validate buy/sell rows 2018-07-06 19:56:16 +02:00
Gert Wohlgemuth 1897a1cb6a fixed mypy issues, seriosuly... 2018-07-05 16:10:38 -07:00
Gert Wohlgemuth 58879ff012 fixed braket 2018-07-05 15:01:53 -07:00
Gert Wohlgemuth e1f5745f59
Update resolver.py 2018-07-05 14:50:23 -07:00
Gert Wohlgemuth 1c48902e64
Merge branch 'develop' into BASE64 2018-07-05 14:40:04 -07:00
Gert Wohlgemuth 8bbee4038b integrated BASE64 encoded strategy loading 2018-07-05 14:30:24 -07:00
Matthias c35d1b9c9d Add test which checks the backtest result 2018-07-05 23:22:35 +02:00
Samuel Husso e808b3a2a1 rpc: get rid of extra else and fix mypy warning 2018-07-05 10:47:08 -05:00
Samuel Husso df68b0990f rpc: fstrings 2018-07-05 10:11:29 -05:00
Samuel Husso adbffc69e1 telegram: fstrings in use 2018-07-05 10:11:29 -05:00
Samuel Husso a2063ede55 persistence: fstrings in use 2018-07-05 10:11:29 -05:00
Samuel Husso 7dca3c6d03 freqtradebot,main,hyperopt: fstrings in use 2018-07-05 10:11:29 -05:00
Samuel Husso 03c112a601 config, optimize: fstrings in use 2018-07-05 10:11:29 -05:00
creslinux 5ab644dea6 flake 8 fix 2018-07-05 12:05:31 +00:00
creslinux 966668f48a Handle if ticker_interval in config.json is not supported on exchange.
Returns.

Tested positive and negative data.
The ticker list in constants.py may be obsolete now, im not sure.

 raise OperationalException(f'Invalid ticker {timeframe}, this Exchange supports {timeframes}')
freqtrade.OperationalException: Invalid ticker 14m, this Exchange supports {'1m': '1m', '3m': '3m', '5m': '5m', '15m': '15m', '30m': '30m', '1h': '1h', '2h': '2h', '4h': '4h', '6h': '6h', '8h': '8h', '12h': '12h', '1d': '1d', '3d': '3d', '1w': '1w', '1M': '1M'}
2018-07-05 11:57:59 +00:00
Samuel Husso d8d0579c5a
Merge pull request #930 from freqtrade/skopt
Replace Hyperopt with scikit-optimize
2018-07-04 13:51:14 -05:00
Janne Sinivirta bf4d0a9b70 sort imports 2018-07-04 10:31:35 +03:00
Janne Sinivirta 96bb2efe69 use joblib.dump and load for trials 2018-07-03 23:08:29 +03:00
Janne Sinivirta c4a8435e00 change pickle file name to better suit it's current purpose 2018-07-03 22:17:43 +03:00
Janne Sinivirta 9dbe0f50a3 fix tests after changing the dumping and pickling dataframe in hyperopt 2018-07-03 22:09:59 +03:00
Janne Sinivirta 3a7056ea1b run at least one epoch 2018-07-03 21:55:22 +03:00
Janne Sinivirta 2cde540645 remove dead code 2018-07-03 21:50:45 +03:00
Janne Sinivirta ef59f9ad24 sort imports in hyperopt.py 2018-07-03 21:50:24 +03:00
Janne Sinivirta ee4754cfb9 avoid re-serialization of whole dataframe 2018-07-03 14:49:58 +03:00
Janne Sinivirta 2713fdb860 use cpu count explicitly in job count 2018-07-03 11:46:56 +03:00
Janne Sinivirta 79aab4cce2 use fstring 2018-07-03 11:44:54 +03:00
Janne Sinivirta fa8fc3e4ce handle the case where we have zero buys 2018-07-02 11:46:55 +03:00
Janne Sinivirta aec3f582e1 Merge branch 'develop' into skopt 2018-07-02 11:27:27 +03:00
xmatthias 3c5be55eb9 remove unnecessary variable 2018-07-01 20:17:30 +02:00
xmatthias 782570e71e Address PR comment 2018-07-01 20:03:07 +02:00
Matthias ed2a1becef
Merge branch 'develop' into feat/stop_loss 2018-07-01 20:01:02 +02:00
xmatthias 937644a04b change while-loop to enumerate - add intensified test for this scenario 2018-07-01 19:55:51 +02:00
xmatthias e39d88ef65 Address some PR comments 2018-07-01 19:54:26 +02:00
Michael Egger f91263c8ef
Merge pull request #966 from freqtrade/feat/revamp_exchangetest
Rewrite standard ccxt exception handling
2018-07-01 19:47:57 +02:00
Michael Egger e2127f5af1
Merge pull request #969 from xmatthias/split_unfilled
separating unfulfilled timeouts for buy and sell
2018-07-01 19:47:24 +02:00
xmatthias 2dc881558d address PR comments 2018-07-01 19:41:19 +02:00
xmatthias c66f858b98 rename innerfun to mock_ccxt_fun 2018-07-01 19:37:55 +02:00
Michael Egger 8023fdf923
Merge pull request #971 from freqtrade/fix/nonmocked_markets
Add get_markets mock to new tests
2018-07-01 15:11:22 +02:00
Michael Egger 2cee8e52c1
Merge pull request #965 from freqtrade/fix/fix_959
catch crash with cobinhood
2018-07-01 14:28:01 +02:00
xmatthias 9e3e900f78 Add get_markets mock to new tests 2018-06-30 17:49:46 +02:00
Nullart 98108a78f1 separating unfulfilled timeouts for buy and sell 2018-06-30 13:44:42 +02:00
Janne Sinivirta 0ce08932ed mypy fixes 2018-06-30 09:54:31 +03:00
Michael Egger 6dd5f85fb6
Merge pull request #954 from freqtrade/feat/allow_backtest_plot
allow backtest ploting
2018-06-29 19:44:06 +02:00
xmatthias cf6b1a637a increase exchange code coverage 2018-06-28 22:32:28 +02:00
xmatthias dcdc18a338 rename test-function 2018-06-28 22:18:38 +02:00
xmatthias 15c7854e7f add test for exchange_has 2018-06-28 22:11:45 +02:00
xmatthias fe8a21681e add test for Not supported 2018-06-28 21:56:37 +02:00
xmatthias ebbfc720b2 increase test coverage 2018-06-28 21:51:59 +02:00
xmatthias 8ec9a09749 Standardize retrier exception testing 2018-06-28 21:22:43 +02:00
xmatthias 2d4ce593b5 catch crash with cobinhood
fixes #959
2018-06-28 19:53:51 +02:00
xmatthias d5ad066f8d support multiple db transitions by keeping the backup-table dynamic 2018-06-27 20:15:25 +02:00
xmatthias 860b270e30 update db migrate script to work for more changes 2018-06-27 19:49:08 +02:00
xmatthias 8ecdae67e1 add mypy ignore (and comment as to why) 2018-06-27 06:57:41 +02:00
xmatthias 78e6c9fdf6 add tests for trailing stoploss 2018-06-27 06:52:31 +02:00
xmatthias c997aa9864 move initial logic to persistence 2018-06-27 06:38:49 +02:00
xmatthias a91d75b3b2 Add test for adjust_stop-loss 2018-06-27 06:23:49 +02:00
xmatthias e9d5bceeb9 cleanly check if stop_loss is initialized 2018-06-27 00:18:50 +02:00
xmatthias 88b898cce4 add test for moving stoploss 2018-06-27 00:18:30 +02:00
xmatthias 8bec505bbe add test for trailing_stoploss 2018-06-26 23:40:36 +02:00
xmatthias a3708bc56e add missing test 2018-06-26 23:40:20 +02:00
xmatthias da5be9fbd0 add stop_loss based on work from @berlinguyinca 2018-06-26 23:06:27 +02:00
xmatthias 5015bc9bb0 slight update to persistence 2018-06-26 22:41:28 +02:00
xmatthias 243c36b39b get persistence.py for stop_loss 2018-06-26 20:49:07 +02:00
Janne Sinivirta 2b6407e598 remove unused tests from hyperopt 2018-06-25 11:38:42 +03:00
Janne Sinivirta 0bddc58ec4 extract loading previous results to a method 2018-06-25 11:38:14 +03:00
xmatthias 43f1a1d264 rework download_backtest script 2018-06-24 19:52:12 +02:00
xmatthias e70cb963f7 document what to do with exported backtest results 2018-06-24 17:00:00 +02:00
Janne Sinivirta 118a43cbb8 fixing tests for hyperopt 2018-06-24 15:27:53 +03:00
Samuel Husso 3384679bad bump develop to 0.17.1 2018-06-23 09:38:20 -05:00
Michael Egger beb15532f7
Merge pull request #950 from freqtrade/fix-filenotfounderror
StrategyResolver: Don't fail if user_data isn't present
2018-06-23 16:07:52 +02:00
Anton f82b809fcf Merge with develop 2018-06-23 16:50:27 +03:00
Janne Sinivirta 642ad02316 remove unused import 2018-06-23 15:56:38 +03:00
Janne Sinivirta ab9e2fcea0 fix guard names to match search space 2018-06-23 15:47:19 +03:00
Janne Sinivirta 136456afc0 add three triggers to hyperopting 2018-06-23 15:44:51 +03:00
gcarq 4ea5fcc661 resolver: don't fail if user_data can't be found 2018-06-23 14:42:22 +02:00
gcarq 9c66c25890 resolver: use current folder instead of script folder to find user_data 2018-06-23 14:34:36 +02:00
xmatthias 0440a19171 export open/close rate for backtesting too
preparation to allow plotting of backtest results
2018-06-23 14:19:50 +02:00
gcarq 0b3e4f6bcd remove dead code 2018-06-23 13:50:49 +02:00
gcarq 295dfe2652 persistence: remove obsolete global _CONF variable 2018-06-23 13:50:22 +02:00
Michael Egger df9015a7f1
Merge pull request #942 from xmatthias/feat/buy_on_sell_first
Introduce ignore_roi_if_buy_signal parameter to avoid sell/buy scenarios
2018-06-23 13:42:03 +02:00
Janne Sinivirta e8f2e6956d to avoid pickle problems, get rid of reference to exchange after initialization 2018-06-23 14:37:36 +03:00
Janne Sinivirta a525cba8e9 switch signal handler to try catch. fix pickling and formatting output 2018-06-23 14:37:36 +03:00
Janne Sinivirta 8272120c3a convert stoploss and ROI search spaces to skopt format 2018-06-23 14:37:36 +03:00
Janne Sinivirta 8fee2e2409 move result logging out from optimizer 2018-06-23 14:37:36 +03:00
Janne Sinivirta c415014153 use multiple jobs in acq 2018-06-23 14:37:36 +03:00
Janne Sinivirta 964cbdc262 increase initial sampling points 2018-06-23 14:37:36 +03:00
Janne Sinivirta a46badd5c0 reuse pool workers 2018-06-23 14:37:36 +03:00
Janne Sinivirta 0cb1aedf5b problem with pickling 2018-06-23 14:37:36 +03:00
Janne Sinivirta b485e6e0ba start small 2018-06-23 14:37:36 +03:00
gcarq 810d7de869 tests: add dir() assertion 2018-06-23 14:37:36 +03:00
gcarq 398b21a11d implement test for import_strategy 2018-06-23 14:37:36 +03:00
gcarq 78f50a1471 move logic from hyperopt to freqtrade.strategy 2018-06-23 14:37:36 +03:00
gcarq 5aae215c94 wrap strategies with HyperoptStrategy for module lookups with pickle 2018-06-23 14:37:36 +03:00
Janne Sinivirta 01d45bee76 fix flake8 2018-06-23 14:37:36 +03:00
Janne Sinivirta c1691f21f3 check that we set fee on backtesting init 2018-06-23 14:37:36 +03:00
Janne Sinivirta a68c90c512 avoid calling exchange.get_fee inside loop 2018-06-23 14:37:36 +03:00
xmatthias fc219b4e94 move experimental eval below stop_loss_reached to improve performance 2018-06-23 13:10:08 +02:00
gcarq 818a6b12ed tests: add dir() assertion 2018-06-23 11:57:26 +02:00
gcarq 4bd61df3a7 implement test for import_strategy 2018-06-23 11:14:31 +02:00
gcarq c40e6a12d1 move logic from hyperopt to freqtrade.strategy 2018-06-23 11:13:49 +02:00
gcarq 3360bf4001 wrap strategies with HyperoptStrategy for module lookups with pickle 2018-06-23 10:42:33 +02:00
Janne Sinivirta 9a07d57ed7 fix flake8 2018-06-23 07:58:25 +03:00
xmatthias 2be7b3d9eb fix mocked bid-value to match limt_buy_order config 2018-06-22 21:24:21 +02:00
xmatthias e2a2a0be9b extract stop_loss_reached to allow check before ignore_roi_if_buy_signal 2018-06-22 21:21:34 +02:00
Janne Sinivirta f7e5d2c3a5 check that we set fee on backtesting init 2018-06-22 21:55:09 +03:00
xmatthias cbfee51f32 introduce experimental variable and fix test naming 2018-06-22 20:51:21 +02:00
xmatthias 8a44dff595 don't sell if buy is still active 2018-06-22 20:23:23 +02:00
Janne Sinivirta c73b9f5c77 avoid calling exchange.get_fee inside loop 2018-06-22 21:04:07 +03:00
Janne Sinivirta 5fcdd3831c
Merge pull request #928 from freqtrade/feat/objectify_exchange
Objectify exchange
2018-06-22 06:36:14 +03:00
xmatthias 7f927b4d7a Squashed commit of the following:
commit 435f299bcf
Author: Gert Wohlgemuth <berlinguyinca@gmail.com>
Date:   Wed Jun 20 01:57:28 2018 -0700

    improve readability of outdated history code
2018-06-21 20:47:53 +02:00
xmatthias f7b46d5404 update docstring 2018-06-18 22:34:28 +02:00
xmatthias 896afe7118 convert get_name and get_id to properties 2018-06-18 22:20:50 +02:00
xmatthias ef53134499 lowercase variables 2018-06-18 22:09:46 +02:00
xmatthias c31519fdb2 lowercase _api object 2018-06-18 22:07:15 +02:00
xmatthias 162f948729 add test for non-configured exchange 2018-06-18 19:56:23 +02:00
xmatthias ae4c4e77bf standardize exception tests - add one more 2018-06-18 19:46:42 +02:00
xmatthias 695beecf14 add test for get_markets 2018-06-18 19:36:36 +02:00
xmatthias 520c7feeab Add test for fetch_tickers 2018-06-17 23:38:07 +02:00
xmatthias 1e3d722bc2 add test for get_trades 2018-06-17 23:38:07 +02:00
xmatthias c9f8dfc6c5 increase get_fee coverage 2018-06-17 23:38:07 +02:00
xmatthias d156de39f1 Increase test-coverage 2018-06-17 23:38:07 +02:00
xmatthias 2b099a89e4 fix styling issues 2018-06-17 23:38:07 +02:00
xmatthias 6e6ec969eb cleanup mockings 2018-06-17 23:38:07 +02:00
xmatthias e194af8d25 Streamline validate_pair patching 2018-06-17 23:38:07 +02:00
xmatthias ace5198475 fix optimize tests 2018-06-17 23:38:07 +02:00
xmatthias 52d36c33cf fix optimie test 2018-06-17 23:38:07 +02:00
xmatthias 251f7db3ca require exchange object to delete pairs 2018-06-17 23:38:07 +02:00
xmatthias c83e8b7cb5 fix rpc_test 2018-06-17 23:38:07 +02:00
xmatthias 64e09f74a1 fix rpc tests 2018-06-17 23:38:07 +02:00
xmatthias 63b568989a Fix rpc for exchange objectify 2018-06-17 23:38:07 +02:00
xmatthias 975b42caa3 fix tests for exchange objectify 2018-06-17 23:38:07 +02:00
xmatthias 75d02df60d add exchange to call get_singal 2018-06-17 23:38:07 +02:00
xmatthias 082b6077e9 Fix tests analyze 2018-06-17 23:38:07 +02:00
xmatthias e8ab76f55b fix small in tests 2018-06-17 23:38:07 +02:00
xmatthias 495f15f13c fix exchange tests 2018-06-17 23:38:07 +02:00
xmatthias 68f6423d39 fix most tests 2018-06-17 23:38:07 +02:00
xmatthias 67d345bc08 fix tests for objectify exchange 2018-06-17 23:38:07 +02:00
xmatthias a159db6863 get_exchange 2018-06-17 23:38:07 +02:00
xmatthias dea26fadfe move init_ccxt to class 2018-06-17 23:38:07 +02:00
xmatthias 21edcbdc27 Refactor exchange to class 2018-06-17 23:38:07 +02:00
Janne Sinivirta c608f1e21e
Merge pull request #923 from freqtrade/fix_test_hyperopt
fix hyperopt test when no config.json exists
2018-06-17 16:07:57 +03:00
Michael Egger 5ce2071279
Merge pull request #925 from freqtrade/increase_test_cov_configuration
increase test-coverate for configuration
2018-06-17 13:19:16 +02:00
Anton ae94ab17f4 Merge branch 'develop' into feature-unlimited-stake_amount 2018-06-17 02:23:40 +03:00
Anton eb909068c5 Add minimal pair stake amount check 2018-06-17 02:23:12 +03:00
xmatthias 972736f0ab increase test-coverate for configureation 2018-06-16 20:55:35 +02:00
xmatthias 7564f7e526 fix hyperopt test when no config.json exists 2018-06-16 13:49:03 +02:00
xmatthias fa00157d12 Fix fiat_convert missing mockups 2018-06-16 13:42:25 +02:00
Matthias a5511e2e30
Merge pull request #894 from freqtrade/feature/force_close_backtest
Display open trades after backtest period
2018-06-16 12:49:08 +02:00
Janne Sinivirta 0c85febe76 remove all mongodb related code 2018-06-16 09:09:28 +03:00
Janne Sinivirta c1f8f641e6 remove use of hyperopt_conf.py 2018-06-16 09:09:28 +03:00
xmatthias c0289ad844 use list comprehension to build list 2018-06-13 19:53:12 +02:00