Commit Graph

4409 Commits

Author SHA1 Message Date
Yazeed Al Oyoun d038bcedb0 fixed some more line alignments 2020-01-31 22:37:05 +01:00
Matthias c396ad4daa Align quotes in same area 2020-01-31 20:41:51 +01:00
Yazeed Al Oyoun 907a61152c added rounding to Tot Profit % on Sell Reasosn table to be consistent with other percentiles on table. 2020-01-31 04:53:37 +01:00
Yazeed Al Oyoun e2b3907df5 more consistent backtesting tables and labels 2020-01-31 04:39:18 +01:00
Matthias 4be3f053ca Exclude trading against BNB bases on binance 2020-01-30 21:42:48 +01:00
Matthias cebf99b5d8 Implement validation 2020-01-29 22:46:47 +01:00
Matthias acbf13e648 Fail gracefully if user interrupted question session 2020-01-29 21:47:05 +01:00
Matthias 940bfbee96 Move start_config out of build_commands file 2020-01-29 21:28:01 +01:00
Matthias e250c56829 Add Questionaire workflow 2020-01-29 21:21:38 +01:00
Matthias dd83cb1b95 Extract selection generation to a seperate method 2020-01-29 20:27:38 +01:00
hroff-1902 68771a7861 Remove state attr from Worker 2020-01-29 17:08:36 +03:00
hroff-1902 e1356fb80e
Merge pull request #2800 from yazeed/enhanced_check_depth_of_market_logging
better logging on check_depth_of_market_buy()
2020-01-29 10:56:14 +03:00
Matthias c80d8f432a Add exchange templates 2020-01-29 07:13:38 +01:00
Matthias 122c916356 Add first version of config_deploy 2020-01-29 07:03:22 +01:00
Matthias b384ca8fd2 Create new-config command 2020-01-29 06:47:01 +01:00
Yazeed Al Oyoun a0b92fe0b1 removed typo 2020-01-28 19:29:47 +01:00
Yazeed Al Oyoun 328a9ffafd fixed typo in false statement 2020-01-28 19:27:49 +01:00
Matthias 5d7317ef77
Merge pull request #2807 from hroff-1902/refactor-freqtrade-2
Add notify_status() to FreqtradeBot
2020-01-27 06:44:20 +01:00
hroff-1902 30e3e434ab Add notify_status() to FreqtradeBot 2020-01-27 03:34:53 +03:00
hroff-1902 33645e45fd Minor cosmetics in start_trading 2020-01-27 02:49:25 +03:00
Matthias 1ef148317d Merge branch 'develop' into stoploss_market 2020-01-26 20:33:41 +01:00
Matthias 1b9af9d2d8 Merge branch 'develop' into data_handler 2020-01-26 20:31:13 +01:00
Matthias 02563019fc move setup_utils_config to configuration module 2020-01-26 14:15:53 +01:00
Matthias 8c9119b471 Add docustring to commands module 2020-01-26 13:46:01 +01:00
Matthias 2d02c3f2a4 Split out pairlist_commands 2020-01-26 13:46:01 +01:00
Matthias a3e9d04383 Adjust imports to new place for arguments 2020-01-26 13:46:01 +01:00
Matthias 7f851ad8d9 Move arguments and cli_options to commands module 2020-01-26 13:46:01 +01:00
Matthias a1c684f67c Simplify noqa setup for module imports 2020-01-26 13:46:01 +01:00
Matthias f347e5934a Small adjustments for moved commands 2020-01-26 13:46:01 +01:00
Matthias e033df6a2f Move optimize_commands to commands module 2020-01-26 13:46:01 +01:00
Matthias b254bdfea3 Move plot_utils to plot_commands 2020-01-26 13:46:01 +01:00
Matthias 70a0346b0a Move data-stuff to data-commands 2020-01-26 13:46:01 +01:00
Matthias 926bf07df1 Seperate a few commands into specific files 2020-01-26 13:46:01 +01:00
Matthias 6e85280467 Adjust imports 2020-01-26 13:46:01 +01:00
Matthias 80ed1c3e14 Move utils to commands 2020-01-26 13:46:01 +01:00
Matthias 3f2542fcbc Move edge-module out of __init__.py 2020-01-26 10:44:42 +01:00
Matthias bd4dd8403b Fix type-errors with stake_amount 2020-01-25 12:49:37 +01:00
hroff-1902 f4c7edf551 No args for backtest(), use arguments 2020-01-25 12:49:37 +01:00
Yazeed Al Oyoun f8db7f1709 added ask price, bid price, immediate ask quantity, and immediate bid quantity to check_depth_of_market_buy. also added a line that mentions if delta condition was satisfied or not. 2020-01-25 04:17:41 +01:00
Matthias 70b9bd9c0e Verify if trade is closed before acting on Stoploss_on_exchange 2020-01-23 20:36:48 +01:00
Matthias ea5ac1efb5 Don't handle stoploss if there is an open regular order 2020-01-23 20:24:23 +01:00
Matthias a83de241e4 Check for closed stoploss-orders first 2020-01-23 19:40:31 +01:00
Matthias 1d141cd406 Merge branch 'develop' into stoploss_market 2020-01-23 19:35:05 +01:00
Matthias bc4c469797 Merge branch 'develop' into stoploss_market 2020-01-22 20:51:52 +01:00
Matthias aad10ceee3 Add threading lock object for /forcesell
Protects against stoploss_on_exchange order recreation
in case of /forcesell (it's a timing issue, so may or may not happen).
2020-01-22 20:50:09 +01:00
Matthias 58ceda4b90 update wallets after forcesell 2020-01-22 19:54:55 +01:00
Matthias 8a940eb0c1 Align price finding function name on buy side with get_sell_rate 2020-01-22 14:46:28 +01:00
Matthias 9c2f21b07e
Merge pull request #2788 from drdux/develop
added missing word in hyperopt loss example
2020-01-22 12:47:08 +01:00
Matthias 7d2d0235a0 Fix typo in sell-reason table generation 2020-01-22 06:08:34 +01:00
Daniel Goller bff0a09537 line was too long 2020-01-21 16:14:19 +00:00
Daniel Goller c1c2717bc9 added missing word in hyperopt loss example 2020-01-21 15:49:24 +00:00
Matthias fc2970f41b Merge branch 'develop' into data_handler 2020-01-21 06:58:48 +01:00
hroff-1902 66415d48d4
Merge pull request #2787 from freqtrade/dry_run_optional
remove default value calls for dry_run
2020-01-20 23:08:17 +03:00
Matthias 1bf475fa1a Remove .get calls for dry_run - it's a mandatory property 2020-01-20 20:24:40 +01:00
Matthias 099bbc5c7f Fix bug when stoploss_on_exchange in combination with dry-run
does not sell orders
2020-01-20 20:14:40 +01:00
Matthias cf9331919f move exchange-specific order-parsing to exchange class
Related to stoploss_on_exchange in combination with trailing stoploss.

Binance contains stopPrice in the info, while kraken returns the same
value as "price".
2020-01-19 19:54:30 +01:00
Matthias f1629c907a Implement stoploss for kraken 2020-01-19 14:40:09 +01:00
Matthias e6f1912443 Use named arguments for stoploss create_order call 2020-01-19 14:40:09 +01:00
Matthias 16b34e11ca Complete rename of stoploss_limit to stoploss 2020-01-19 14:40:09 +01:00
Matthias 256fc2e78c Rename stoploss_limit to stoploss 2020-01-19 13:30:56 +01:00
Matthias 8d2e0bfd62 Move rate-calcuation for stoploss-limit order to exchange 2020-01-19 13:13:09 +01:00
hroff-1902 2f82122fc4
Merge pull request #2763 from freqtrade/fix/precision_rounding
Fix/precision rounding
2020-01-17 01:25:30 +03:00
Matthias 29a5e4fba1 Update wallets before getting amount 2020-01-15 21:52:54 +01:00
Matthias 8bcfe4a6aa Up log level of safe_sell_amount message 2020-01-15 21:01:36 +01:00
Matthias d1bf388b0e Wallet amount must be compared with >= 2020-01-15 19:56:14 +01:00
Tejesh f73f0b1653 Update comments on backtesting 2020-01-15 19:29:00 +05:30
Matthias c8806a16a1 Allow wallet update from /balance 2020-01-15 06:43:41 +01:00
Matthias 4013701bdb allow wallet update to be skipped if the value is fresh enough.
Value is NOT configurable, having this wrong can result in bans on the
exchange.
2020-01-15 06:42:53 +01:00
Matthias 4c823f12e3 Sort imports 2020-01-14 20:25:58 +01:00
Matthias bea4ad8eff Revert price_to_precision to rounding up 2020-01-14 20:16:20 +01:00
Matthias d12a2a5888
Merge pull request #2752 from freqtrade/plotting/indicator_strategy
Allow enhanced plot-dataframe configuration
2020-01-13 19:53:15 +01:00
Matthias 5fcab1eee8 Align method names to internal ccxt names
These methods are reimplemented from ccxt so we can test their behaviour.
2020-01-12 14:55:05 +01:00
Matthias b60d7ad42f Use ccxt.decimal_to_precision instead of our own calculation 2020-01-12 14:41:09 +01:00
Matthias fa1f9bcdbd expose precisionMode from exchange class 2020-01-12 14:37:45 +01:00
Matthias 53abfdbcbf Use sorted on set instead of explicit list conversion 2020-01-12 12:48:29 +01:00
Matthias 3519cebf66 Add test for failing stake_validation 2020-01-11 13:14:19 +01:00
Matthias a7246ba1ec No need to "fix" stake_currency enum anymore 2020-01-11 12:51:42 +01:00
Matthias 60b47b6eec Add tests for get_quote_currencies 2020-01-11 12:01:34 +01:00
Matthias 13274964a9 Implement validation for valid stake currency 2020-01-11 11:54:00 +01:00
Matthias 235a10ab86 Don't suppport <1m timeframes 2020-01-11 11:36:28 +01:00
Matthias 5faebad863 Don't hardcode TimeFrames - they can differ by exchange. 2020-01-11 11:16:05 +01:00
Matthias 90a9052377
Merge pull request #2734 from freqtrade/relative_stake
Relative stake maximum tradable amount
2020-01-11 08:18:35 +01:00
Matthias fab19ae3a7 Implement last_stake_amount_min_ratio 2020-01-10 06:36:28 +01:00
Matthias 9713dc8d94 Ensure wallets.update is called before buy
closes #2756
2020-01-09 20:09:21 +01:00
Matthias 785cd2a640 Rename test module 2020-01-09 06:53:51 +01:00
Matthias c475729c13 Extract edge reporting to optimize_reports 2020-01-09 06:52:34 +01:00
Matthias 989ab646a9 Add profit % to sell_reason table 2020-01-09 06:46:39 +01:00
Matthias b25f28d1ad
Merge pull request #2730 from freqtrade/extract_bt_reporting
Extract backtest reporting
2020-01-09 06:09:05 +01:00
Matthias c9b0b4c7a4 Add plot_config to optional plot 2020-01-08 19:35:00 +01:00
Matthias c3fd894a6c Regenerate plots with new settings 2020-01-07 07:16:31 +01:00
Matthias d0ccfa1925 Explicitly given indicators should override plot_config 2020-01-05 19:50:21 +01:00
Matthias 41945138ac Converting pairs from filename to pair corrected 2020-01-05 13:35:36 +01:00
Matthias b37f34ff5b Implement amend_last_stake_amount 2020-01-05 13:25:11 +01:00
Matthias a75420f75f Merge branch 'develop' into relative_stake 2020-01-05 12:55:55 +01:00
Matthias 7daa5bc338 Don't return None from unlimited_stake - 0 handles this just as well 2020-01-05 12:50:44 +01:00
Matthias 4eaaec9d1a Implement pair_to_filename to datahandler
includes tests - taken from #2744 and modified to adapt to new structure
2020-01-05 10:36:08 +01:00
hroff-1902 bc6a10353b Introduce pair_to_filename() 2020-01-05 10:22:07 +01:00
Matthias f82c4346b6 data conversion, not data conversation
* we're not talking to the data yet ...
2020-01-05 09:55:02 +01:00
Matthias 53499e01de Clearly differentiate trade buys sells (positive and negative)
* Swap trade buys to cyan circles
* Show sell-reason description on buy too
* Green positive sells - red negative / 0 sells
2020-01-04 20:27:27 +01:00
Matthias bdda620397 add plot_config to startegy interface properly 2020-01-04 12:56:46 +01:00
Matthias 2409261cb7 Merge branch 'develop' into data_handler 2020-01-04 11:36:27 +01:00
Matthias b5a806dec7 Fix typo and add tests for create_plotconfig 2020-01-04 11:30:21 +01:00
Matthias 4628024de6 Adapt tests to new add_indicator methodology 2020-01-04 11:18:51 +01:00
Matthias f04873b0b0 Add plot_config to interface 2020-01-04 11:14:00 +01:00
Matthias 5853b9904c make Plot_config the default approach 2020-01-04 11:13:45 +01:00
Matthias 5d5074ac9c Implement first working version of plot_config 2020-01-04 10:13:42 +01:00
Matthias 84ef588163 support dicts as indicators 2020-01-04 10:13:42 +01:00
hroff-1902 3798f94d4c
Merge pull request #2732 from freqtrade/config_validation_split
Config validation split
2020-01-03 23:41:44 +03:00
Matthias 7e7c82cf4a Small adjustments to relative_stake PR 2020-01-03 11:34:17 +01:00
Matthias f3beaa3374 Deprecate capital_available_percentage 2020-01-03 10:58:31 +01:00
Matthias 455838648d Apply get_available_balance logic to regular trades, too 2020-01-03 10:41:10 +01:00
Matthias 3c7981160c Extract `get_available_stake_amount` 2020-01-03 10:14:23 +01:00
Matthias a8d56b2850 IMplement check for unlimited settings
verifying that either max_open_trades or stake_amount is set for
operations without edge
2020-01-03 07:07:59 +01:00
hroff-1902 3315f994b6
Merge pull request #2733 from hroff-1902/minor-freqtrade-4
Cleanup buy/sell notification in freqtradebot
2020-01-02 22:46:06 +03:00
Matthias 560aea876e Remove fiat_currency temporary variable 2020-01-02 20:20:29 +01:00
hroff-1902 b24d359a27
Merge pull request #2737 from freqtrade/plotting_percent
show percent in sell hover message.
2020-01-02 22:04:34 +03:00
Matthias 90744ff5ab show percent instead of ratio (!) 2020-01-02 19:36:31 +01:00
Matthias c13c11cfa1 Type does not need to be a list 2020-01-02 14:41:28 +01:00
Matthias cba156dfff Add offset calculation for relative stake maximum limit 2020-01-02 13:20:57 +01:00
hroff-1902 a47a25ca88 Refine passing msg params 2020-01-02 14:38:25 +03:00
hroff-1902 88efa4065b Align the name of a variable to be same for buy and sell parts 2020-01-02 13:56:16 +03:00
hroff-1902 f15e5e9d57 Add _notify_buy() 2020-01-02 13:51:25 +03:00
hroff-1902 2ccdb67e4d
Merge pull request #2731 from freqtrade/btanalysis_align_columns
Btanalysis align columns
2020-01-02 13:03:51 +03:00
Matthias 1b8943ac54 Add documentation for tradable_balance_ratio 2020-01-02 10:59:41 +01:00
Matthias 9382b38c41 Fix mypy error 2020-01-02 10:56:00 +01:00
Matthias 22fcf7b4dc Allow empty stake currency in certain cases 2020-01-02 10:47:37 +01:00
Matthias 20fc3b7978 validate config for utils too 2020-01-02 10:41:10 +01:00
Matthias 9325880fe5 Split config-validation requires 2020-01-02 10:39:32 +01:00
Matthias 2c8e8d8ef6 Align columns for btanalysis loading 2020-01-02 09:51:47 +01:00
hroff-1902 e89fa44680 Arrange common section for update trade state methods 2020-01-02 11:50:54 +03:00
Matthias a9fbad0741 Improve docstrings 2020-01-02 09:37:54 +01:00
Matthias 904e1647e1 Extract generate_text_table_strategy to seperate module 2020-01-02 09:31:53 +01:00
Matthias caec345c0b Extract generate_text_table_sell_reason from backtesting class 2020-01-02 09:31:53 +01:00
Matthias 18a53f4467 Extract generate_text_table from backtesting class 2020-01-02 09:31:47 +01:00
hroff-1902 21418e2988 Minor: fix comment 2020-01-02 03:16:18 +03:00
hroff-1902 4475110df8 Cosmetics in freqtradebot 2020-01-02 03:07:24 +03:00
Matthias 3327ebf2b1
Merge pull request #2720 from hroff-1902/refactor-create-trades
Refactor create trades
2019-12-31 15:34:12 +01:00
Matthias 26a2395aeb Include Pair name in exception log message 2019-12-31 07:11:09 +01:00
hroff-1902 fd7af587da Rename process_maybe_execute_buys() --> enter_positions() 2019-12-30 22:50:56 +03:00
hroff-1902 84918ad424 Rename process_maybe_execute_sells() --> exit_positions() 2019-12-30 22:08:36 +03:00
Matthias 699c0d6bc3 Merge branch 'develop' into data_handler 2019-12-30 19:40:43 +01:00
Matthias 2537b8cb0c
Merge pull request #2725 from freqtrade/minor_fix
[Minor] Edge-cli should use exchangeresolver
2019-12-30 19:27:40 +01:00
hroff-1902 b00406a7eb Make process_maybe_execute_*() returning integers 2019-12-30 21:09:35 +03:00
hroff-1902 4d56e3b36e Address some comments made in the review 2019-12-30 20:54:32 +03:00
Matthias 8e9a3e8fc8 Capture FtBaseException at the outermost level 2019-12-30 15:11:07 +01:00
Matthias 1ffda29fd2 Adjust improts to new exception location 2019-12-30 15:02:17 +01:00
Matthias 024aa3ab6b Move exceptions to seperate module 2019-12-30 14:57:26 +01:00
Matthias fb3a53b8af Use ExchangeResolver for edge_cli too 2019-12-30 14:28:34 +01:00
Matthias 4c9295fe2d Rename Bid-strategy helpervariable to something shorter
avoids unnecessary wrapping...
2019-12-30 14:00:34 +01:00
Matthias de23f3928d Add trailing_only_offset to template and sample 2019-12-30 09:58:20 +01:00
Matthias df7ceb4ccb Fix misinformation in /status table 2019-12-29 19:53:02 +01:00
hroff-1902 04f28ed9bc Refactor try/except: handle DependencyException for each pair separately 2019-12-29 05:03:10 +03:00
hroff-1902 762604300f Refactor create_trades() 2019-12-29 04:37:44 +03:00
hroff-1902 433fd2a7c3
Merge pull request #2652 from freqtrade/safe_sell_amount
Safe sell amount
2019-12-29 00:09:21 +03:00
Matthias 814cc20c6b Remove potential circular import 2019-12-28 19:58:41 +01:00
Matthias f4a532ef6d Pass format to load_data 2019-12-28 14:57:39 +01:00
Matthias 6b5983339d Require dataformat entries in configuration 2019-12-28 14:47:30 +01:00
Matthias ae1b28aab7 Remove get_datahandlerclass from package exposes 2019-12-28 14:32:11 +01:00
hroff-1902 09b77d9f14
Merge pull request #2718 from hroff-1902/minor-freqtrade-2
Minor: code cleanup in freqtradebot
2019-12-28 14:55:42 +03:00
hroff-1902 5c39ebd0a0 Adjust logging 2019-12-28 13:59:40 +03:00
Matthias 66d18575a7 Implement abstract interface 2019-12-28 11:10:31 +01:00
Matthias 9e4fc00a0f Add test for convert_ohlcv 2019-12-28 11:03:06 +01:00
Matthias 28787a001c Move convert functions to convert module 2019-12-28 11:02:34 +01:00
Matthias 525550e4c7 Fix typo in parameter transition 2019-12-28 11:01:42 +01:00
Matthias 6860491189 Rename datahandler module to history module
Also move previous history.py into this module - so everything is
bundled
2019-12-28 11:01:42 +01:00
Matthias b37b5c3d90 Remove Explicit datadir conversation 2019-12-28 11:01:42 +01:00
Matthias 9c5b94adf5 Pass data_format to methods 2019-12-28 11:01:42 +01:00
Matthias d65c1eea7a Add some tests for datahandler 2019-12-28 11:01:42 +01:00
Matthias 8a030e7fc0 Use exists instead of is_file 2019-12-28 11:01:42 +01:00
Matthias a3144cb2f0 remove trim_tickerlist 2019-12-28 11:01:42 +01:00
Matthias d1b52809ac Cleanup history 2019-12-28 11:01:41 +01:00
Matthias d06777b8ce Remove old "load_cached_data" method 2019-12-28 11:01:41 +01:00
Matthias 7a6476c9ba Update tests 2019-12-28 11:01:41 +01:00
Matthias df085a6f15 Fix small bug and test 2019-12-28 11:01:41 +01:00
Matthias c648d973c1 Implement new "load_data_for_updating" method based on dataframes 2019-12-28 11:01:41 +01:00
Matthias ec8fb5f308 Make no-data warning optional 2019-12-28 11:01:41 +01:00
Matthias b83487a70d Extract default dataframe columns to constant 2019-12-28 11:01:41 +01:00
Matthias dbe8f727cb Fix typehint 2019-12-28 11:01:41 +01:00
Matthias 91c70a0e9c Change to use ohlcv_purge 2019-12-28 11:01:41 +01:00
Matthias 37c5b68987 Move dataframe validation to abstract class 2019-12-28 11:01:41 +01:00
Matthias e861f05b75 Move dataframe trim to within jsondatahandler 2019-12-28 11:01:41 +01:00
Matthias 552c93abf0 Improve some docstrings 2019-12-28 11:01:41 +01:00
Matthias b7c1d55491 Modify tests to point to datahandlers 2019-12-28 11:01:41 +01:00
Matthias 9876d126ca Use handler for trades 2019-12-28 11:01:41 +01:00
Matthias 9547d47ae2 Initialize datahandlers 2019-12-28 11:01:41 +01:00
Matthias 5fca17d7e1 Allow initializing handler-class just once 2019-12-28 11:01:41 +01:00
Matthias 416517b0c9 Move trim_dataframe from history to converter 2019-12-28 11:01:41 +01:00
Matthias 9d8ea2f13b Replace calls to load_tickerdata_file with DataHandler calls 2019-12-28 11:01:41 +01:00
Matthias 88fa7fc24c Simplify validate dataframe method 2019-12-28 11:01:41 +01:00
Matthias 53ee636fa0 Check if file exists before loading 2019-12-28 11:01:41 +01:00
Matthias 873f5dbe6b Revrite validate_pairdata to work with pandas 2019-12-28 11:01:41 +01:00
Matthias db520a09ee Trim dataframe, not tickerlist 2019-12-28 11:01:41 +01:00
Matthias 866908d2ca Load and save using pandas internal function 2019-12-28 11:01:41 +01:00
Matthias 377d59abe7 Be selective how to load ohclv data for conversation 2019-12-28 11:01:41 +01:00
Matthias d9e7d64f33 Split parse_ticker_dataframe some logic to clean_ohlcv_dataframe. 2019-12-28 11:01:41 +01:00
Matthias 1b90ec58b9 Use changed pair-handling for providers 2019-12-28 11:01:41 +01:00
Matthias d923bab828 Remove abstract interface for now 2019-12-28 11:01:41 +01:00
Matthias 48728e2d66 Change DataProvider interface to accept pair per method 2019-12-28 11:01:41 +01:00
Matthias e529a4c261 Fix typehint for get_datahandlerclass 2019-12-28 11:01:41 +01:00
Matthias eff5cc0568 Add default to internals 2019-12-28 11:01:41 +01:00