Commit Graph

5289 Commits

Author SHA1 Message Date
Matthias
977a6d4e9c Add profit_total to results line 2020-07-26 16:10:48 +02:00
Matthias
454046f745 Add stake_currency and max_opeN_trades to backtest result 2020-07-26 15:55:54 +02:00
Matthias
8d0f338bf2 Timestamps should be in ms 2020-07-26 15:23:21 +02:00
Matthias
9ed5fed887 Fix output format to be of an identical type 2020-07-26 15:17:54 +02:00
Matthias
902e8fa62f Fix wrong spelling in one subcomponent 2020-07-26 14:39:00 +02:00
Matthias
bad89307dd Fix mypy error 2020-07-25 17:19:41 +02:00
Matthias
119bf2a8ea Document hdf5 dataformat 2020-07-25 17:06:58 +02:00
Matthias
db8f3a9e9b
Merge pull request #3609 from thopd88/develop
Add telegram /trades command
2020-07-25 16:45:09 +02:00
Matthias
0a28818b46 Add some tests for hdf5 2020-07-24 19:37:37 +02:00
Matthias
861e7099cc Rename hdf5handler to hdf5DataHandler 2020-07-24 19:23:37 +02:00
Matthias
3171ad33b7 Add blosc compression 2020-07-24 17:44:29 +02:00
Matthias
0f08addfbe Don't store empty arrays 2020-07-24 17:37:07 +02:00
Matthias
31df42e737 Implement get_available_data 2020-07-24 17:31:43 +02:00
Matthias
d4540c846a Add trades_load method 2020-07-23 19:33:23 +02:00
Matthias
55591e287c First version of hdf5handler - no proper support for trades yet 2020-07-23 19:33:23 +02:00
Matthias
0614e59966 Add tables dependency 2020-07-23 19:33:23 +02:00
Matthias
e0c14e6214 Add /trades to help (so users know about it) 2020-07-23 07:56:05 +02:00
Matthias
fdc84eef59 /trades shall only return closed trades 2020-07-23 07:50:45 +02:00
Matthias
0f18b2a0d4 Add test and fix case where no trades were closed yet 2020-07-23 07:12:14 +02:00
thopd88
0bad55637e fix flake8 indent error 2020-07-23 10:12:52 +07:00
thopd88
a3daf8e41c Fix line too long 2020-07-23 09:47:53 +07:00
thopd88
0502fe0496 New /trades 3 columns and exclude open trades 2020-07-23 09:36:05 +07:00
hroff-1902
c78199d3d9 Add checks for parameters of PriceFilter 2020-07-22 22:45:46 +03:00
hroff-1902
5213abf510 AgeFilter is always enabled 2020-07-22 21:44:39 +03:00
hroff-1902
f6bde8bd9c Improve exception message wordings 2020-07-22 21:43:15 +03:00
Matthias
7e980037a4
Merge pull request #3554 from jblestang/Fix_#3544
Adding a dataprovider to the strategy before plotting
2020-07-22 15:56:16 +02:00
Matthias
f5f529cace Use correct initialization of DataProvider 2020-07-22 15:17:45 +02:00
Matthias
6a10c715fa Fix 0 division (if last = 0, something went wrong!) 2020-07-21 20:34:29 +02:00
hroff-1902
d8fa17cee8
Merge pull request #3614 from freqtrade/info_message_hyperopt
[minor] Reduce severity of hyperopt "does not provide" messages
2020-07-21 00:14:18 +03:00
Matthias
7d6708fc6a Reduce severity of hyperopt "does not provide" messages
closes #3371
2020-07-20 20:04:23 +02:00
Matthias
21dcef1134 Add trade_id to webhooks
allowing for easier corelation of different messages
2020-07-20 19:57:05 +02:00
Matthias
4774896169 Evaluate average before price in order returns 2020-07-20 19:39:12 +02:00
Matthias
4c97527b04 FIx failing test 2020-07-20 19:11:15 +02:00
hroff-1902
b7c6f868b2
Merge pull request #3478 from hroff-1902/exchange-cosmetics-5
Minor: Exchange cosmetics
2020-07-20 18:58:46 +03:00
thopd88
eaa7370174 add /delete command 2020-07-20 11:08:18 +07:00
thopd88
28f4a1101e Revert "Add telegram /delete command to delete tradeid"
This reverts commit 08fdd7d863.
2020-07-20 10:54:17 +07:00
thopd88
08fdd7d863 Add telegram /delete command to delete tradeid
code inspired from _rpc_forcesell
2020-07-19 22:10:59 +07:00
thopd88
dd3a2675b5 Add telegram trades command to list recent trades 2020-07-19 22:02:53 +07:00
Alex Pham
3271c773a7
Fix SQL syntax error when compare pair strings
First happens in Postgres
2020-07-19 21:30:55 +07:00
Matthias
ea1ddeb87d
Merge pull request #3570 from gambcl/develop
Added range checks to min_days_listed in AgeFilter
2020-07-19 09:37:17 +02:00
Matthias
de46744aa9 Use filled before amount for order data
closes #3579
2020-07-15 21:08:16 +02:00
Matthias
98f2e79f27 Adjust tests to use correctly trimmed amount 2020-07-15 20:55:33 +02:00
Matthias
3721736aaf Convert to real amount before placing order
to keep the correct amount in the database
2020-07-15 20:28:07 +02:00
Matthias
eafab38db3 Complete implementation of amount_requested 2020-07-15 20:20:14 +02:00
Matthias
c826f7a707 Add amount_requested to database 2020-07-15 20:15:29 +02:00
Matthias
d13cb4c055 Introduce safe_value_fallback_2 2020-07-15 19:50:09 +02:00
Matthias
5cebc9f39d Move stoploss_on_exchange_limit_ratio to configuration schema 2020-07-15 19:28:40 +02:00
Matthias
c1191400a4 Allow 0 fee value by correctly checking for None 2020-07-15 19:20:20 +02:00
gambcl
1051ab917a Replaced logging with OperationalException when AgeFilter given invalid parameters 2020-07-15 12:40:54 +01:00
Matthias
82c68f07cd Add stoploss-distance (to current price) to /status output 2020-07-14 20:16:18 +02:00
Matthias
bdf611352e Update summary-metrics output 2020-07-14 19:34:01 +02:00
hroff-1902
0f4fc67b83
Merge pull request #3582 from freqtrade/data/list
List available backtesting data
2020-07-14 19:38:32 +03:00
Matthias
0228b63418 Don't print empty table 2020-07-14 16:42:47 +02:00
Matthias
62c55b1863 Enhance formatting, Add pair filter 2020-07-14 06:55:34 +02:00
Matthias
01f325a9e4 Send timeframe min and ms in show_config response 2020-07-13 21:15:33 +02:00
Matthias
0b36693acc Add filter for stoploss_on_exchange_limit_ratio to constants 2020-07-13 19:48:21 +02:00
Matthias
6ee6e51ab4 Merge branch 'develop' into pr/hroff-1902/3478 2020-07-13 07:22:43 +02:00
Matthias
b035d9e267 Update return type comment 2020-07-12 10:23:09 +02:00
Matthias
02afde857d Add list-data command 2020-07-12 09:57:00 +02:00
Matthias
d4fc52d2d5 Add tests for ohlcv_get_available_data 2020-07-12 09:56:46 +02:00
Matthias
422825ea1b Add ohlcv_get_available_data to find available data 2020-07-12 09:50:53 +02:00
Matthias
40bdc93653 Add test for short_desc of priceFilter 2020-07-10 20:28:29 +02:00
gambcl
14eab9be04 Added min_price, max_price to PriceFilter 2020-07-08 22:02:04 +01:00
gambcl
2e45859aef Added range checks to min_days_listed in AgeFilter 2020-07-08 18:06:30 +01:00
hroff-1902
839b3340e6
Merge pull request #3497 from freqtrade/keep_dataframe_noapi
Analyze dataframe and keep it until the next analysis
2020-07-05 13:46:02 +03:00
Matthias
c4a9a79be0
Apply suggested documentation changes from code review
Co-authored-by: hroff-1902 <47309513+hroff-1902@users.noreply.github.com>
2020-07-04 09:43:49 +02:00
Matthias
1fc4451d2f Avoid \ linebreak 2020-07-03 20:32:04 +02:00
Matthias
ea5e47657a Remove ticker_interval from jupyter notebook 2020-07-03 20:27:32 +02:00
Matthias
0d15a87af8 Remove old store_backtest method 2020-07-03 20:21:32 +02:00
Matthias
987188e41f Add avgduration for winners and losers 2020-07-03 19:58:02 +02:00
Matthias
8e0ff4bd86 Add Win / draw / losing days 2020-07-03 19:45:45 +02:00
Matthias
42868ad24a Add best / worst day to statistics 2020-07-03 19:30:29 +02:00
Matthias
d56f9655e2 Update notebook with new statistics example 2020-07-03 07:20:43 +02:00
Matthias
619eb183fe Allow strategy for plot-profit
to allow loading of multi-backtest files
2020-07-03 07:03:43 +02:00
Matthias
16a842f9f6 Have plotting support folder-based exportfilename 2020-07-03 06:58:27 +02:00
Matthias
d999fa2a7e Test autogetting result filename 2020-07-03 06:58:27 +02:00
Matthias
7c5587aeaa exportfilename can be a file or directory 2020-07-03 06:58:27 +02:00
Matthias
2ed808da1f Extract .last_result.json to constant 2020-07-03 06:58:27 +02:00
Matthias
59e0ca0aaa Add pairlist to backtest-result 2020-07-03 06:58:27 +02:00
Matthias
afefe92523 Add multi-strategy loading logic 2020-07-03 06:58:27 +02:00
Matthias
c13ec4a1d4 implement fallback loading for load_backtest_data 2020-07-03 06:58:27 +02:00
Matthias
1339479882 Have sell_type stringify correctly 2020-07-03 06:58:27 +02:00
Matthias
04eaf2c39c Add test for get_last_backtest_Result 2020-07-03 06:58:27 +02:00
Matthias
7727292861 Rename duration to trade_duration 2020-07-03 06:58:27 +02:00
Matthias
f368aabcc7 Add amount to backtest-result 2020-07-03 06:58:27 +02:00
Matthias
6e94734678 Add fee to backtestresult 2020-07-03 06:58:27 +02:00
Matthias
03ab61959b Add test for generate_backtest_stats 2020-07-03 06:58:27 +02:00
Matthias
af9a9592b7 Remove unnecessary statement 2020-07-03 06:58:27 +02:00
Matthias
075eb0a161 Fix sequence of saving 2020-07-03 06:58:27 +02:00
Matthias
dacb40a976 Add get_latest_backtest_filename 2020-07-03 06:58:27 +02:00
Matthias
0fa56be9d2 remove openIndex and closeIndex from backtest-report 2020-07-03 06:58:27 +02:00
Matthias
04cbc2cde5 Shorten variable 2020-07-03 06:58:27 +02:00
Matthias
b068e7c564 Rename open_time and close_time to *date 2020-07-03 06:58:27 +02:00
Matthias
415853583b Save backtest-stats 2020-07-03 06:58:27 +02:00
Matthias
81c8e8677d use 0 as profit mean, not nan 2020-07-03 06:58:27 +02:00
Matthias
480c5117f1 Handle empty return strings 2020-07-03 06:58:27 +02:00
Matthias
5fce7f3b22 Add market Change
closes #2524 and #3518
2020-07-03 06:58:27 +02:00
Matthias
cf044d166e Tests should use new Datetime format too 2020-07-03 06:58:27 +02:00
Matthias
fbddfaeacf Introduce DatetimePrintFormat 2020-07-03 06:58:27 +02:00
Matthias
cbcf3dbb43 Add more metrics to summarytable 2020-07-03 06:58:27 +02:00
Matthias
6922fbc3aa Add max_drawdown error handler 2020-07-03 06:58:27 +02:00
Matthias
455b26ea48 Add max drawdown to backtesting 2020-07-03 06:58:27 +02:00
Jean-Baptiste LE STANG
20e8a29262 Adding a dataprovider to the strategy before plotting
Fix flake8
2020-07-02 21:14:31 +02:00
Theagainmen
99ac2659f3 Init FIAT converter in api_server.py 2020-07-02 11:27:33 +02:00
Theagainmen
81850b5fdf AgeFilter add actual amount of days in log message (debug info) 2020-07-02 11:26:52 +02:00
Matthias
cf1bbb1afb
Merge pull request #3517 from freqtrade/rpc/winlossratio
Show winning vs. losing trades
2020-06-30 07:48:18 +02:00
Matthias
cf26ab1dd8
Merge pull request #3527 from Theagainmen/Warning_message2
Warning message bot is stopped and left open trades
2020-06-30 07:48:02 +02:00
Matthias
c2a6f70b4c Merge branch 'develop' into keep_dataframe_noapi 2020-06-30 07:46:52 +02:00
hroff-1902
8a2f631ddd
Merge pull request #3531 from freqtrade/exchange_errorhandling
Improve exchange errorhandling and API backoff
2020-06-30 07:53:09 +03:00
hroff-1902
02c0488d45
Merge pull request #3453 from freqtrade/fix/3363
Backtesting should load pairlists after the strategy
2020-06-29 21:53:33 +03:00
Matthias
b95065d701 Log backoff 2020-06-29 20:00:42 +02:00
Matthias
4d9ecf137b Fix failing test in python 3.7
can't use Magicmock in 3.7 (works in 3.8 though).
2020-06-28 20:38:28 +02:00
Matthias
c6124180fe Fix bug when fetching orders fails 2020-06-28 19:45:42 +02:00
Matthias
6362bfc36e Fix calculate_backoff implementation 2020-06-28 19:41:21 +02:00
Matthias
cbcbb4bdb5 Rename get_stoploss_order to fetch_stoploss_order (align with fetch_order) 2020-06-28 16:30:24 +02:00
Matthias
92c70fb903 Rename get_order to fetch_order (to align to ccxt naming) 2020-06-28 16:27:35 +02:00
Matthias
e040c518ca Dynamic backoff on DDos errors 2020-06-28 16:19:12 +02:00
Matthias
bf61bc9d83 Introduce ExchangeError 2020-06-28 16:01:40 +02:00
Matthias
e74d2af857 Have TemporaryError a subCategory of DependencyException
so it's safe to raise out of the exchange
2020-06-28 15:44:58 +02:00
Matthias
5bd4798ed0 Add retrier to stoploss calls (but without retrying) 2020-06-28 11:56:29 +02:00
Matthias
2c45114a64 Implement DDos backoff (1s) 2020-06-28 11:17:06 +02:00
Theagainmen
118f051171 Added message in cleanup and fixes 2020-06-28 11:02:50 +02:00
Theagainmen
e5676867a8 Trying to fix flake8 errors 2020-06-27 21:53:12 +02:00
Theagainmen
b938c536fa Trying to fix flake8 errors 2020-06-27 21:46:53 +02:00
Theagainmen
48289e8ca7 Added exchange name, removed capital letters 2020-06-27 20:24:50 +02:00
Theagainmen
0642ab76bf Added information to the new function 2020-06-27 18:40:44 +02:00
Theagainmen
e813573f27 Warning message for open trades when stopping bot 2020-06-27 18:35:46 +02:00
Matthias
865b73a456
Merge pull request #3520 from freqtrade/rpc/cors_setting
Fix RPC Cors
2020-06-27 15:38:40 +02:00
hroff-1902
cc24f44636
Merge pull request #3519 from freqtrade/fix/trades_download_older
dl-trades should also support increasing download span
2020-06-27 00:08:10 +03:00
Matthias
6734269bfc Use >= to compare for winning trades 2020-06-25 19:22:50 +02:00
gambcl
ab7f5a2bcf Added pairslist AgeFilter 2020-06-24 23:58:12 +01:00
Matthias
b77a105778 Add CORS_origins key to configuration 2020-06-24 20:32:19 +02:00
Matthias
676006b99c --dl-trades should also support increasing download span
(by downloading the whole dataset again to avoid missing data in the
middle).
2020-06-24 17:40:23 +02:00
gambcl
3624aec059 Typos 2020-06-24 15:21:28 +01:00
Matthias
0509b9a8fc Show winning vs. losing trades 2020-06-24 06:43:19 +02:00
Matthias
f976905728 Fix more exchange message typos 2020-06-18 20:00:18 +02:00
Matthias
45ffb26910 Merge branch 'develop' into pr/hroff-1902/3478 2020-06-18 19:54:46 +02:00
Matthias
eef3c01da7 Fix function header formatting 2020-06-18 19:49:05 +02:00
Matthias
f1993fb2f4 Pass analyzed dataframe to get_signal 2020-06-18 08:09:52 +02:00
Matthias
48225e0d80 Improve interface docstrings for analyze functions 2020-06-18 07:54:00 +02:00
Matthias
f2a778d294 Combine tests for empty dataframe 2020-06-18 07:03:30 +02:00
Matthias
ab9382434f Add test for get_analyzed_dataframe 2020-06-18 06:50:06 +02:00
Matthias
8b186dbe0e Add additional test scenarios 2020-06-18 06:50:06 +02:00
Matthias
84329ad2ca Add confirm_trade* methods to abort buying or selling 2020-06-18 06:50:06 +02:00
Matthias
910100f1c8 Improve docstring comment 2020-06-18 06:50:06 +02:00
Matthias
dea7e3db01 Use supress_errors in strategy wrapper - ensure it's called once 2020-06-18 06:50:06 +02:00
Matthias
c047e48a47 Add errorsupression to safe wrapper 2020-06-18 06:50:06 +02:00
Matthias
bc821c7c20 Add documentation for bot_loop_start 2020-06-18 06:50:06 +02:00
Matthias
77056a3119 Add bot_loop_start callback 2020-06-18 06:50:06 +02:00
Matthias
8166b37253 Explicitly check if dp is available 2020-06-18 06:50:06 +02:00
Matthias
55fa514ec9 Adapt most tests 2020-06-18 06:50:05 +02:00
Matthias
273aaaff12 Introduce .analyze() function for Strategy
Fixing a few tests along the way
2020-06-18 06:50:05 +02:00
Matthias
95f3ac08d4 Update some comments 2020-06-18 06:50:05 +02:00
Matthias
9794914838 store dataframe updated as tuple 2020-06-18 06:50:05 +02:00
Matthias
fd97ad9b76 Cache analyzed dataframe 2020-06-18 06:50:05 +02:00
Matthias
d4fb5af456 Also reload async markets
fixes #2876 - Logs and Empty ticker history  for new pair
2020-06-17 07:23:20 +02:00
Matthias
3517c86fa2 Fail if both ticker_interval and timeframe are present in a
configuration

Otherwise the wrong might be used, as it's unclear which one the intend
of the user is
2020-06-16 16:02:38 +02:00
Matthias
0b2982caed Merge branch 'develop' into hyperopt_colorama_init 2020-06-16 10:16:41 +02:00
Matthias
761407f74d
Merge pull request #3430 from freqtrade/timeframe
ticker_interval -> timeframe
2020-06-15 13:47:26 +02:00
Matthias
dfc44e5b32
Merge pull request #3461 from felpasl/format_minimal_roi_opt
change hyperopt output to print ready to copy to strategy
2020-06-15 10:03:28 +02:00
Matthias
a3506f4d8e Merge branch 'develop' into timeframe 2020-06-15 06:35:55 +02:00
Matthias
d337fb6c6a Update some comments 2020-06-15 06:35:31 +02:00
Matthias
f80b5f9410
Merge pull request #3438 from freqtrade/ftx_stoploss
Ftx stoploss
2020-06-14 07:02:15 +02:00
Matthias
f6f7c99b9c
Adjust typography and add missing space
Co-authored-by: hroff-1902 <47309513+hroff-1902@users.noreply.github.com>
2020-06-14 06:31:05 +02:00
hroff-1902
de36f3d850 Cosmetics in freqtradebot 2020-06-14 01:42:45 +03:00
hroff-1902
4660909e95 Validate stoploss_on_exchange_limit_ratio at startup time 2020-06-14 01:07:00 +03:00
hroff-1902
be03c22dba Minor: Fix exception message 2020-06-14 00:35:58 +03:00
hroff-1902
ea77edce05
Make flake happy 2020-06-13 18:54:54 +03:00
Matthias
d52198d15e
Merge pull request #3468 from hroff-1902/cleanup_async_markets
Cleanup async markets
2020-06-13 17:28:11 +02:00
hroff-1902
3d9b107761
Changes after review 2020-06-13 17:12:37 +03:00
hroff-1902
37bc2d28ad Revert "Remove _load_async_markets"
This reverts commit 6744f8f052.
2020-06-13 13:34:29 +03:00
hroff-1902
12d3a234c1
Merge pull request #3471 from freqtrade/fix/3465
Fix exception with stacktrace in test-pairlist
2020-06-12 07:57:37 +03:00
Matthias
1e7826f392 Explicitly raise OperationalException if markets are not loaded
correctly
2020-06-10 19:57:59 +02:00
Felipe Lambert
69ac5c1ac7 change hyperopt return to better copy to strategy file 2020-06-10 14:35:31 -03:00
Theagainmen
8c9dea988c Now supports both commands & fixed test 2020-06-10 19:28:02 +02:00
Theagainmen
043397c5d7 reload_conf & reload_config now both accepted, code is more consistent now 2020-06-10 19:28:02 +02:00
Theagainmen
04fa597695 Test with multiple commands in one line 2020-06-10 19:28:02 +02:00
Theagainmen
ac92834693 reload_conf & reload_config now both accepted, code is more consistent now 2020-06-10 19:28:02 +02:00
hroff-1902
0067a3ab7c Change logging level 2020-06-10 06:30:29 +03:00
hroff-1902
7d451638a8 Make _reload_markets() public 2020-06-10 01:39:23 +03:00
hroff-1902
6744f8f052 Remove _load_async_markets 2020-06-10 01:22:55 +03:00
Matthias
ab0003f565 fix #3463 by explicitly failing if no stoploss is defined 2020-06-09 14:33:57 +02:00
Matthias
72ae4b1500 Load pairlist after strategy to use strategy-config
fail in certain conditions when using strategy-list

Fix #3363
2020-06-07 16:15:26 +02:00
Matthias
a75b94f143 use bracket notation for dataframe access 2020-06-07 15:40:00 +02:00
Matthias
68395d2745 Use bracket notation to query results in hyperopt 2020-06-07 15:39:59 +02:00
Matthias
3f9ab0846d Rename profitperc to profit_percent 2020-06-07 15:39:59 +02:00
Matthias
04779411f5 Add docstring to backtest_stats 2020-06-07 15:39:59 +02:00
Matthias
070913f327 Rename text_table generation 2020-06-07 11:35:02 +02:00
Matthias
499c6772d1 Rename tabulate methods
they don't "generate" anything
2020-06-07 11:31:33 +02:00
Matthias
a6f6724752 Reorder functions in optimize_report 2020-06-07 11:29:14 +02:00
Matthias
db4576c50b Use json for *strategy dump 2020-06-07 10:09:39 +02:00
Matthias
8d8cf5a2fd Improve code formatting of telegram 2020-06-06 17:28:00 +02:00
Matthias
ed1268cf39 Merge branch 'develop' into ask_strategy_verbosity 2020-06-06 17:23:19 +02:00
Matthias
6aed16c146
Merge pull request #3448 from Theagainmen/Telegram_emojis_V2
Added emoji's to the Telegram RPC
2020-06-06 17:22:56 +02:00
Matthias
3bd38171f8 DOn't use json.dumps - it's not necessary 2020-06-06 17:19:44 +02:00
Theagainmen
172ca761f2 Fixed typo 'emoij' 2020-06-06 17:11:47 +02:00
Matthias
b2316cdd00 Extract sell_smoij logic into it's own function 2020-06-06 17:11:47 +02:00
hroff-1902
a86863c032
Merge pull request #3440 from freqtrade/rpc_status_fields
Rpc status fields
2020-06-05 23:59:01 +03:00
Matthias
8c32d691c7 Add information about bid and ask strategy to /showconfig 2020-06-05 20:31:40 +02:00
Matthias
5f9994c9ed Reduce verbosity of sell-rate fetching 2020-06-05 20:24:21 +02:00