Commit Graph

2470 Commits

Author SHA1 Message Date
Matthias 5ea332e9be fix bug with trailing_stop_offset if it's disabled 2019-01-23 20:57:31 +01:00
Gianluca Puglia 896c9d34fd Added total profit column do backtest result 2019-01-22 22:41:53 +01:00
Matthias 13e2f71d30 Add flake8 plugins and implement small improvements 2019-01-22 20:01:12 +01:00
Matthias 86a0863e30 Clarify logmessage Done fetching 2019-01-22 19:26:07 +01:00
Matthias a06593e6e9 Fix test 2019-01-22 19:17:21 +01:00
Matthias 89ddfe08f4 Add additional-pairs (sample) to defaultstrategy 2019-01-22 19:17:08 +01:00
Matthias c77607b997 Fix tests after rebase 2019-01-22 07:38:15 +01:00
Matthias 3221f883d3 Wrap line correctly 2019-01-22 07:07:15 +01:00
Matthias 1e7431a7b8 Blackify 2019-01-22 07:07:15 +01:00
Matthias e66808bb02 Add additional pairs to refresh call 2019-01-22 07:07:15 +01:00
Matthias 6e2de75bcb Add additional_pairs to strategy 2019-01-22 07:07:15 +01:00
Matthias d6cdfc58af Fix mypy hickup after changing list to tuples 2019-01-22 07:07:15 +01:00
Matthias 27b2021726 Only run once per pair 2019-01-22 07:07:15 +01:00
Matthias e7800aa88a Import only what's necessary 2019-01-22 07:07:15 +01:00
Matthias a2bc1da669 Remove private var from class instance
it's overwritten in __init__ anyway
2019-01-22 07:07:15 +01:00
Matthias 1e749a0f9b Rename variable to be clearer 2019-01-22 07:07:15 +01:00
Matthias d7df5d5715 Keep last_pair_refresh as tuple asw ell 2019-01-22 07:07:15 +01:00
Matthias 6525a838d1 Adjust documentation to tuple use 2019-01-22 07:07:15 +01:00
Matthias f0af4601f9 Adopt plot_dataframe to work with --live 2019-01-22 07:07:15 +01:00
Matthias a9abc25785 Improve data-provider tests 2019-01-22 07:07:15 +01:00
Matthias 0aa0b1d4fe Store tickers by pair / ticker_interval 2019-01-22 07:07:15 +01:00
Matthias 5f61da30ed Adjust tests to 3tuple return value from async method 2019-01-22 07:06:30 +01:00
Matthias d6df3e55c0 Return ticker_interval from async routine
used to identify calls in refresh_latest_ohlcv
2019-01-22 07:06:30 +01:00
Matthias e503d811bd Change logmessages to match functions called 2019-01-22 07:05:09 +01:00
Matthias b981cfcaa0 remove comment which proves untrue now 2019-01-22 07:05:09 +01:00
Matthias a206777fe5 Rename refresh_tickers to refresh_latest_ohlcv 2019-01-22 07:05:09 +01:00
Matthias 06ec106079 simplify refresh_tickers 2019-01-22 07:04:19 +01:00
Matthias 646e98da55 Always return dataframe 2019-01-22 07:04:19 +01:00
Matthias 2b029b2a86 Only return ohlcv if available (Live and dry modes) 2019-01-22 07:04:19 +01:00
Matthias 35c8d1dcbe Update comment 2019-01-22 07:04:19 +01:00
Matthias 8f3ea3608a some cleanup 2019-01-22 07:04:19 +01:00
Matthias 5ecdecd1eb remove unused local variable persistance 2019-01-22 07:04:19 +01:00
Matthias 58f1abf287 Add dp / wallets to strategy interface 2019-01-22 07:04:19 +01:00
Matthias d3a37db79a Provide available pairs 2019-01-22 07:04:19 +01:00
Matthias f034235af4 Tests for RunMode 2019-01-22 07:04:19 +01:00
Matthias 1340b71633 Add RunMode setting to determine bot state 2019-01-22 07:04:19 +01:00
Matthias fed3ebfb46 Change enum from 0 to 1 according to the documentation
see [here](https://docs.python.org/3/library/enum.html#functional-api)
2019-01-22 07:04:19 +01:00
Matthias a7db4d74cb Add some simple dataprovider tests 2019-01-22 07:04:19 +01:00
Matthias 84cc4887ce Add copy parameter 2019-01-22 07:04:19 +01:00
Matthias e38c06afe9 Small fixes 2019-01-22 07:04:19 +01:00
Matthias f1a5a8e20e provide history 2019-01-22 07:04:19 +01:00
Matthias 4ab7edd3d6 small adaptations 2019-01-22 07:04:19 +01:00
Matthias 05570732c6 add get_runmode 2019-01-22 07:04:19 +01:00
Matthias 7206287b00 Use Dataprovider 2019-01-22 07:04:19 +01:00
Matthias b119a767de Some more restructuring 2019-01-22 07:04:19 +01:00
Matthias a6d74a1463 Draft of dataprovider 2019-01-22 07:04:19 +01:00
Misagh 34b617065d
Merge pull request #1500 from freqtrade/fix/1491_typeerror
Fix typeerror when fetching candles
2019-01-20 16:13:02 +01:00
Matthias b48430f922 Return list not None 2019-01-19 20:21:33 +01:00
Matthias 4e760e1a5e Test for errors found in 1491
fixes #1491
2019-01-19 20:03:04 +01:00
Matthias 30e3b52b1e catch errors found in #1491 2019-01-19 20:02:37 +01:00
Axel CHERUBIN 797ac71376
fix stoploss_on_exchange_interval type
from boolean to number
2019-01-19 13:26:30 -04:00
Matthias c2578c7321
Merge pull request #1474 from mishaker/tsl_on_exchange
Making trailing stoploss compatible with stoploss on exchange
2019-01-18 19:29:39 +01:00
misagh 87329a393c adding stop loss last update to test persistence 2019-01-18 12:14:00 +01:00
misagh a2618208ef wrapping in parantheses instead of line breaks 2019-01-18 12:07:51 +01:00
misagh 70780bb01e using dict.get to fetch interval 2019-01-18 12:02:29 +01:00
Matthias a2c01916e1 Add type-ignores to floatfmt
tabulate supports this:
30554300d7/tabulate.py?at=master&fileviewer=file-view-default#tabulate.py-1291:1294
2019-01-17 20:28:21 +01:00
misagh 75cedfafb8 unreachable code removed 2019-01-16 20:03:34 +01:00
misagh da51ef40f8 SL interval added to CONF_SCHEMA 2019-01-16 19:04:43 +01:00
misagh 5e2e96acd2 compatibility with edge added 2019-01-16 18:38:20 +01:00
misagh 611b48dbb9 fix return value from info hash: value is in string 2019-01-16 16:15:36 +01:00
misagh 50bc20134f adding whitespace 2019-01-16 15:17:28 +01:00
misagh baa5cc5b9e logs enriched 2019-01-16 15:10:31 +01:00
misagh aa03a864f7 comments added for TSL on exchange function 2019-01-16 15:00:35 +01:00
misagh a44f781284 Merge branch 'develop' into tsl_on_exchange 2019-01-16 14:56:27 +01:00
misagh cffc9ce890 last step: stop loss on exchange added to trailing 2019-01-16 14:49:47 +01:00
misagh 6d588b3b0b trailing stop loss on exchange extracted to a separate function 2019-01-16 14:28:52 +01:00
misagh bfb7121583 refactoring handle_stoploss_on_exchange 2019-01-16 12:16:32 +01:00
misagh e31fa8721f Merge branch 'develop' into tsl_on_exchange 2019-01-16 11:52:23 +01:00
misagh 29439c05d6 adding update beat test 2019-01-16 11:51:54 +01:00
misagh 1cd5abde37 removing unnecessary guard 2019-01-16 11:22:25 +01:00
misagh 12e8108015 checking params of cancel order and stop loss order 2019-01-15 15:36:41 +01:00
misagh f0cfab7940 flaking 8 2019-01-15 11:10:28 +01:00
misagh cfe00c2f0c initial test added for TSL on exchange 2019-01-15 11:04:32 +01:00
Matthias cd2bccd441 Have backtest use the same logic to get the ROI entry 2019-01-12 13:45:43 +01:00
Matthias e9d61eb35d Fix ROI calculation problem
Prior to that all ROI entries with a key > trade_duration where active.
This causes a problem if the ROI is not linearly declining
2019-01-12 13:45:03 +01:00
Matthias 9e0902e72f Add test for case for odd ROI dict - #1478 2019-01-12 13:38:49 +01:00
misagh e025ad3918 temp test commit 2019-01-09 16:23:13 +01:00
Matthias 99e2d795c5
Merge pull request #1475 from freqtrade/feat/hyperopt_sell
Feat/hyperopt sell
2019-01-08 21:19:53 +01:00
misagh 1a27258469 condition fixed 2019-01-08 16:34:23 +01:00
misagh 9e133eb32e adding guard not to cancel the previous stop loss on exchange if market
is falling quickly
2019-01-08 16:31:02 +01:00
misagh f4ceeca438 Merge branch 'develop' into tsl_on_exchange 2019-01-08 15:33:32 +01:00
misagh aed855284c comparing with stopPrice instead of price 2019-01-08 13:44:51 +01:00
misagh 4fbb9d4462 adding stoploss_on_exchange_interval to order_types dict. default to 1
minute (60)
2019-01-08 12:39:53 +01:00
misagh 16472535eb adding stoploss_last_update to persistence 2019-01-08 12:39:10 +01:00
Matthias f620449bec Add test for hyperoptresolver 2019-01-06 19:38:32 +01:00
Matthias 440a7ec9c2 fix pytest 2019-01-06 19:31:25 +01:00
Matthias 40b1d8f067 Fix CI problems 2019-01-06 14:57:14 +01:00
Matthias dd2af86a41 pprint results 2019-01-06 14:47:38 +01:00
misagh 821e299afb adjusting trailing stoploss on exchange 2019-01-06 14:45:29 +01:00
Matthias 167088827a include default buy/sell trends for the hyperopt strategy 2019-01-06 14:13:15 +01:00
Matthias a0df7b9d7c Use sell/buy trends from hyperopt file if available 2019-01-06 14:12:55 +01:00
Gianluca Puglia 87cbff5d0e Fix warning for max_open_trades when edge is enabled 2019-01-06 13:48:27 +01:00
Gianluca Puglia 13800701ce Fix custom db_url ignored if provided by conf.json 2019-01-06 13:47:36 +01:00
Matthias 2147bd8847 Fix problem when no experimental dict is available 2019-01-06 13:29:14 +01:00
Matthias 798ae460d8 Add check if trigger is in parameters 2019-01-06 13:29:14 +01:00
Matthias 68ba1e1f37 Add sell signal hyperopt 2019-01-06 13:29:14 +01:00
Matthias f32232ba96 Add documentation for stoploss in strategy 2019-01-05 07:32:35 +01:00
Matthias cacb9ef3ad Loop twice 2019-01-05 07:25:35 +01:00
Matthias 00c5ac56d4 Print startup strategy summary 2019-01-05 07:24:15 +01:00
Matthias a7dc6b18aa Overridable attributs as list 2019-01-05 07:22:19 +01:00
Matthias 5e23442032 Simplify StrategyResolver by code deduplication 2019-01-05 07:20:38 +01:00
Matthias 4599c80e79 Add trailing-stop to strategy 2019-01-05 07:10:25 +01:00
Misagh 29db2078d6
Merge pull request #1463 from mishaker/readme
Readme refactoring.
2019-01-04 23:00:36 +01:00
Misagh 26a77e193e
Merge pull request #1454 from freqtrade/feat/interpolate_missing
interpolate missing candles
2019-01-04 22:33:53 +01:00
misagh afffa2f313 changed to “Free, open source …” 2019-01-03 14:38:38 +01:00
Misagh 3b5785884f
Merge pull request #1460 from freqtrade/fix/stop_loss_result
Stop loss should also be shown when trailing is active
2019-01-02 16:41:15 +01:00
Matthias 3329ffd071 improve comment 2019-01-02 14:44:17 +01:00
Misagh dcdd7d7436
Merge pull request #1456 from freqtrade/fix/refresh_pairs_cached
Fix bug on --refresh-pairs-cached
2019-01-02 14:02:11 +01:00
Matthias 516217b6cb Stop loss should also be shown when trailing is active 2019-01-02 13:34:08 +01:00
Matthias 1b84aa82eb dont use 55 for regular check as that's a key in the dict 2019-01-01 16:54:44 +01:00
Matthias 2bc76771bf Align backtest to interface.py
interface.py roi calculation skips on <= duration
the correct selection is therefore trade_duration > x.
2019-01-01 16:50:10 +01:00
Matthias 1d518885a9 fix roi-reached when list is unsorted 2019-01-01 16:45:52 +01:00
Matthias da6f1a3945 Sequence of minroi dict must be irrelevant 2019-01-01 16:32:45 +01:00
Matthias a54d8f0e16 Create datadir when not exists 2019-01-01 14:07:40 +01:00
Matthias c337a931c2 Fix bug on --refresh-pairs-cached 2019-01-01 13:42:30 +01:00
Matthias 672d115eca Change default value and add docstring 2018-12-31 19:42:14 +01:00
Matthias dd1d3430b9 Add explicit test for ohlcv fillup 2018-12-31 19:40:14 +01:00
Matthias fae875f588 Implement missing_data_fillup to tests and operations 2018-12-31 19:15:49 +01:00
Matthias ef4555735a Fill up missing as part of loading data 2018-12-31 19:13:34 +01:00
Matthias 8b9cc45f41 move test for data completeness
should be done before analyzing strategy
2018-12-31 15:09:50 +01:00
Matthias d409211908 add test to verify data does not contain missing data afterwards 2018-12-31 09:24:04 +01:00
Matthias 03389d961f ADd test for data_interpolate 2018-12-31 09:18:22 +01:00
Matthias a021cd3ae2 Add ohlcv data interpolator 2018-12-31 07:12:54 +01:00
Matthias 460900ddd7 Remove unused and duplicate datastructure 2018-12-29 09:01:58 +01:00
Matthias fab7663ab3 Log when dumping to file (instead of print) 2018-12-28 10:46:48 +01:00
Matthias 61f8ce5c0e remove unused imports 2018-12-28 10:44:24 +01:00
Matthias 7dc40cdac5 refactor file_load_json to be standalone 2018-12-28 10:25:41 +01:00
Matthias 27abdd9788 Move load_json to misc 2018-12-28 10:04:28 +01:00
Matthias 065b469a10 rename test to avoid naming collision 2018-12-28 10:04:07 +01:00
Matthias c955415cc3 Switch from ujson to rapidjson 2018-12-28 10:01:16 +01:00
Matthias ecb5cdc9e3 Version bump to 0.18.1-dev 2018-12-27 11:47:00 +01:00
Matthias 23d0cea01f Version bump to 0.18.0 2018-12-27 11:45:21 +01:00
Matthias bb9dd86e77 Merge branch 'master' into release_1804 2018-12-27 11:44:50 +01:00
Matthias 9af2fca718 Add handling for market orders
fixes #1427 and #1428
2018-12-27 11:19:26 +01:00
Matthias 20cdabbe9c Add test for market order 2018-12-27 09:31:21 +01:00
Matthias 34b93eb952 Load config-file in download_backtest_data - 2018-12-25 13:15:41 +01:00
misagh a5137e4fa4 comparing float instead of int 2018-12-24 11:39:11 +01:00
misagh 7243da3afe tests added for klines copy=True 2018-12-22 19:03:42 +01:00
misagh 34e3af6ad4 do not copy DF if copy is false 2018-12-21 10:35:17 +01:00
misagh a13b30b2de removing test 2018-12-21 10:21:31 +01:00
misagh a45ec1ed1c adding copy as a parameter to klines 2018-12-21 10:20:01 +01:00
misagh 215ded2e0a returning last candle close price for a pair 2018-12-17 21:30:58 +01:00
Misagh 1dbcab0b09
Merge pull request #1413 from freqtrade/feat/data_helpers
Feat/data helpers
2018-12-17 09:14:10 +01:00
Matthias b3bb98777b
Merge branch 'develop' into time_in_force 2018-12-17 06:37:46 +01:00
Matthias 5493d1a7e0 Fix wonrly named module 2018-12-17 06:32:59 +01:00
Matthias 806ab3729f Add / fix some comments 2018-12-16 14:14:17 +01:00
Matthias eb7034c7a7 Rename download_backtest_testdata to download_pair_history 2018-12-16 10:33:08 +01:00
Matthias 50938d410a Remove tests for download_pairs 2018-12-16 10:30:13 +01:00
Matthias 8bd4d03e13 remove download_pairs 2018-12-16 10:29:53 +01:00
Matthias 8826a1df5f Add missing tests for trim_tickerlist 2018-12-16 10:19:49 +01:00
Matthias 043cefd60a allow reloading single pair 2018-12-16 10:17:11 +01:00
Matthias ebb80b6906 remove ujson / json fallback hack as it's now in requirements 2018-12-16 09:58:54 +01:00
Matthias f5b2430cda Fix docstrings and typo 2018-12-16 09:58:46 +01:00
Matthias 8a3c2a0c63 allow only loading 1 pair if necessary
* simplify tests nad remove unnecessary mocking
2018-12-15 20:32:55 +01:00
Matthias 429f846ad1 Switch load_data to kwargs 2018-12-15 20:31:05 +01:00
Matthias acd07d40a0 Cleanup some comments and code formatting 2018-12-15 19:52:52 +01:00
Matthias d0c9791ca6 Fix tests to support load_data with dataframe 2018-12-15 15:38:40 +01:00
Matthias 34ea214f7c Fix some tests to use dataframe 2018-12-15 14:42:21 +01:00
Matthias 1c5031b468 load_data to return dataframe 2018-12-15 14:28:37 +01:00
Matthias c1a32bc6c8 use json_load to load data
- otherwise unforseen problems could appear due to the default beeing ujson
2018-12-15 14:22:49 +01:00
Matthias 6c02cc5993 Adjust test to pathlib 2018-12-15 14:14:38 +01:00
Matthias 21aba1620c Replace calls to load_data 2018-12-15 14:10:33 +01:00
Matthias f261911285 replace os.path with pathlib.Path 2018-12-15 13:54:35 +01:00
Matthias a34c2cf64b Add missing test-module __init__.py 2018-12-15 13:40:02 +01:00
Matthias 407139b0e0 remove unused imports 2018-12-14 06:32:49 +01:00
Matthias 17a820e5c0 Move tests from test_optimize to test_history 2018-12-14 06:32:49 +01:00
Matthias 92c800d925 Adjust tests to data.history 2018-12-14 06:32:49 +01:00
Matthias 432cc00283 Adjust imports to data.history 2018-12-14 06:32:49 +01:00
Matthias 0250a96feb Sort imports 2018-12-14 06:32:49 +01:00
Matthias 1a3fcd4771 extract data-handling methods from optimize 2018-12-14 06:32:49 +01:00
Matthias b38195e9b3 Rename to converter 2018-12-14 06:32:49 +01:00
Matthias 1f29802884 only export what's needed 2018-12-14 06:32:49 +01:00
Matthias 453f62cdfa Adjust imports 2018-12-14 06:32:49 +01:00
Matthias 030ecbfc17 move exchange_helpers to data module 2018-12-14 06:32:49 +01:00
Matthias 04c330f10b
Merge pull request #1404 from freqtrade/feat/pass_df
keep DF instead of list
2018-12-13 20:14:32 +01:00
Matthias aca243086e Fix comment 2018-12-13 19:43:17 +01:00
Matthias 7e3955b04c Fix edge-cli comments (refer to edge, not backtest 2018-12-12 20:04:14 +01:00
Matthias 5c3dcf3e2b Test for wrong inputs (empty / none-dataframes) in get_signal 2018-12-12 19:35:51 +01:00
Matthias d6ba4f0e81 Fix last 2 tests to use DF as data container 2018-12-12 19:17:09 +01:00
Matthias 7a533de1a8 Use list ticker history for backtesting 2018-12-12 19:17:09 +01:00
Matthias fe3990af3d Adjust some tests to dataframe passing 2018-12-12 19:17:09 +01:00
Matthias 627ab9f583 pass around dataframe instead of list 2018-12-12 19:17:09 +01:00
misagh aa1262bea6 typo corrected 2018-12-12 13:33:03 +01:00
misagh 8d8b53f4d1 added tests for IOC and FOK 2018-12-12 13:05:55 +01:00
Matthias 81b4940eef Adjust tests to new fiat-convert location 2018-12-11 20:27:54 +01:00
Matthias efc709501a move fiat-convert to rpc - adjust imports 2018-12-11 20:27:30 +01:00
Matthias 0f2c547805 Move fiat-convert to subfolder 2018-12-11 20:26:53 +01:00
Matthias 0ab8ac1c1d Add test to verify downloading history does not modify
_pairs_last_refresh_time
2018-12-11 19:18:28 +01:00
Matthias 8c1901ad1e Extract caching logic from lowestlevel fetch_ohlcv function 2018-12-11 07:14:39 +01:00
Matthias 523dea4a04 remove hacky workaround not needed anymore 2018-12-10 20:22:41 +01:00
Matthias e2bff9d5cb Remove assigning klines from download method 2018-12-10 20:22:21 +01:00
Matthias 36de451809 Remove class-level variables 2018-12-10 19:55:21 +01:00
misagh adcaa8439e test_strategy_override_order_tif added 2018-12-10 19:17:56 +01:00
misagh e6fd7da43f adding test: create order should consider TIF 2018-12-10 19:09:20 +01:00
misagh 6018f2d252 order status handled in case of IOC and FOK 2018-12-10 18:52:24 +01:00
misagh 866b7aee8e tests fixed 2018-12-09 16:22:21 +01:00
misagh 663e33d2ef if condition refactored 2018-12-09 16:06:00 +01:00
misagh 20d794e265 mistake in previous commit 2018-12-09 16:04:28 +01:00
misagh 2f5c8941eb removing unnecessary default value 2018-12-09 16:00:04 +01:00
misagh b35199a772 intermediary commit before extracting the logic 2018-12-09 15:59:05 +01:00