Commit Graph

9653 Commits

Author SHA1 Message Date
Timothy Pogue
8a08f8ff8d revert rpc manager 2022-09-04 10:27:34 -06:00
Timothy Pogue
07f806a314 minor improvements, fixes, old config+constant removal 2022-09-04 10:22:10 -06:00
Timothy Pogue
1601868854 dataprovider fix, updated config example 2022-09-04 09:42:43 -06:00
Robert Caulk
956ea43e55
Merge pull request #7340 from wizrds/sigint-freqai
Support SIGINT in FreqAI
2022-09-04 16:43:36 +02:00
robcaulk
ec76214d02 backup historical predictions pickle and load the backup in case of corruption 2022-09-04 15:56:07 +02:00
Timothy Pogue
3b5e5fc57b fix method name in dummy class 2022-09-03 14:10:23 -06:00
Robert Caulk
8545d74378
Merge pull request #7331 from th0rntwig/pca
Normalise PCA space
2022-09-03 21:49:54 +02:00
Timothy Pogue
dae3b3d86a support shutting down freqai 2022-09-03 13:24:14 -06:00
Matthias
16573b19e3 Fix migration syntax error 2022-09-03 19:51:44 +02:00
robcaulk
5cfb4154eb revert all changes in normalize_data() 2022-09-03 19:48:30 +02:00
Robert Caulk
63514b0443
Merge pull request #7325 from wagnercosta/develop
Improve Freqai backtesting performance
2022-09-03 19:28:04 +02:00
robcaulk
c21808ff98 remove metadata redundancy, fix pca bug 2022-09-03 16:54:30 +02:00
robcaulk
c9be66b5b6 increase test coverage for dk, improve function naming, extra cleaning 2022-09-03 15:52:29 +02:00
Matthias
ed4cc18cdd Migration to check order funding fee 2022-09-03 15:19:40 +02:00
Matthias
0f483ee31f Use "since last order" approach for live as well. 2022-09-03 15:01:42 +02:00
Matthias
0c6a02687a Don't calculate funding fees if we're not going to use them. 2022-09-03 15:01:42 +02:00
Matthias
df50b1928d Fix funding fee calculation for backtesting 2022-09-03 15:01:42 +02:00
Matthias
80b5f035ab Remove typo in log message 2022-09-03 15:01:28 +02:00
robcaulk
599c1c79fb reorganized backtest utilities, test new functionality, improve/update doc 2022-09-03 14:00:01 +02:00
Wagner Costa Santos
af5460cebf Add option to keep models only in memory for backtest 2022-09-02 22:01:53 -03:00
Timothy Pogue
05cbcf834c minor logging changes 2022-09-02 16:01:33 -06:00
Timothy Pogue
cf917ad2f5 initial candle request limit, better error reporting, split up _handle_producer_connection 2022-09-02 15:05:16 -06:00
Matthias
b26126cb57 Don't use ticker['symbol'] but use "pair" instead
closes #7262
2022-09-02 20:09:30 +02:00
Timothy Pogue
5b0b802f31 hybrid json ws serializer 2022-09-02 00:05:36 -06:00
Timothy Pogue
eb4cd6ba82 split initial data into separate requests 2022-09-01 23:52:13 -06:00
Timothy Pogue
dccde88c83 fix dataframe serializing 2022-09-01 23:15:03 -06:00
Matthias
b53791fef2 Futures volumepairlist to account for contract size 2022-09-02 07:11:32 +02:00
Timothy Pogue
00f35f4870 remove old constant, add initial_data requesting, minor changes 2022-09-01 20:06:36 -06:00
th0rntwig
11b2bc269e Added missing s 2022-09-01 22:37:32 +02:00
th0rntwig
3f8400df10 Normalise PCA space 2022-09-01 21:51:33 +02:00
Matthias
11fbfd3402 Remove unnecessary assignment 2022-09-01 19:39:20 +02:00
Wagner Costa Santos
d6e115178a refactoring freqai backtesting - remove duplicate code 2022-09-01 07:09:23 -03:00
Matthias
f3c73189d5 Remove pointless default on wallet_balance argument 2022-09-01 06:49:51 +02:00
Matthias
ba2eb7cf0f Fix BNB fee bug when selling
thanks @epigramx, for reporting and for the detailed data.
2022-09-01 06:42:51 +02:00
Wagner Costa Santos
44d3a9140d Merge branch 'develop' of https://github.com/wagnercosta/freqtrade into develop 2022-08-31 15:37:06 -03:00
Wagner Costa Santos
7bed0450d2 pr review - refactoring backtesting freqai 2022-08-31 15:36:29 -03:00
Timothy Pogue
c72a2c26c7 remove external pairlist 2022-08-31 12:06:24 -06:00
Timothy Pogue
6e8abf8674 add producer name to required fields in config 2022-08-31 11:58:58 -06:00
wagnercosta
3d4497467c
Merge branch 'freqtrade:develop' into develop 2022-08-31 14:47:06 -03:00
Timothy Pogue
865b34cd6f add producer names 2022-08-31 11:43:02 -06:00
Timothy Pogue
510cf4f305 remove data waiting, remove explicit analyzing of external df 2022-08-31 10:40:26 -06:00
Wagner Costa Santos
df51da22ee refactoring freqai backtesting 2022-08-31 11:23:48 -03:00
Matthias
57ff6f8ac5 Init timerange object properly 2022-08-31 10:28:31 +00:00
Matthias
13ccd940d5 Remove startup_candle_count from freqai sample config to avoid confusion 2022-08-31 10:27:08 +00:00
Matthias
7ba4fda5d7 Implement PR feedback 2022-08-31 10:26:47 +00:00
Matthias
a88ffd2c9d Merge branch 'develop' into move_datadownload 2022-08-31 10:23:45 +00:00
Timothy Pogue
115a901773 minor fix for conditional in handle func 2022-08-30 19:34:43 -06:00
Timothy Pogue
ddc45ce2eb message handling fix, data waiting fix 2022-08-30 19:30:14 -06:00
Timothy Pogue
346e73dd75 client implementation, minor fixes 2022-08-30 19:21:34 -06:00
Matthias
c9aa09ec89 Simplify base fee handling 2022-08-30 20:46:06 +02:00
robcaulk
7e8e29e42d use continuous value for inlier_metric 2022-08-30 20:41:37 +02:00
Timothy Pogue
418bd26a80 minor fixes, rework consumer request, update requirements.txt 2022-08-30 11:04:16 -06:00
robcaulk
7f52908e87 ensure the lost points are prepended for FreqUI 2022-08-30 18:55:58 +02:00
robcaulk
a58dd0bbf9 add noise feature, improve docstrings 2022-08-30 18:26:24 +02:00
robcaulk
b11742a4c5 integrate inlier metric function 2022-08-30 18:26:24 +02:00
th0rntwig
d3cb211283 Add inlier metric computation 2022-08-30 18:26:24 +02:00
th0rntwig
50e2808667
Fix bug in DI (#7321) 2022-08-30 12:54:39 +02:00
Timothy Pogue
47f7c384fb consumer subscriptions, fix serializer bug 2022-08-29 15:48:29 -06:00
Timothy Pogue
7952e0df25 initial rework separating server and client impl 2022-08-29 13:41:15 -06:00
robcaulk
62c0a174c8 allow users to properly reverse train-test data ordering 2022-08-29 11:04:58 +02:00
Matthias
27a9f98d5f Simplify liquidation price structure, improve test cov 2022-08-29 07:04:48 +02:00
Matthias
226fa5d93c Simplify liquidation price calling structure 2022-08-29 07:04:48 +02:00
Matthias
4def3678b7
Merge pull request #7298 from freqtrade/tif_align
align TimeInForce to ccxt usage
2022-08-29 06:36:51 +02:00
Matthias
8be8a12cc4
Merge pull request #7260 from JohanVlugt/develop
Example FreqAI hybrid strategy
2022-08-29 06:34:45 +02:00
Matthias
40c00d2d8f Version bump dev version to 2022.9 2022-08-29 06:34:20 +02:00
Timothy Pogue
8c4e68b8eb updated example configs 2022-08-28 13:00:52 -06:00
Robert Caulk
39a739eadb
Merge pull request #7296 from th0rntwig/dbscan
Improve MinPts calculation in DBSCAN, add outlier protection, and add data_kitchen tests
2022-08-28 14:37:47 +02:00
robcaulk
fcb5d1cb5a remove debugging flag 2022-08-28 13:01:39 +02:00
robcaulk
dd628eb525 add tests for outlier detection and removal functions 2022-08-28 12:56:39 +02:00
robcaulk
1e41c773a0 fix outlier protection 2022-08-28 12:11:29 +02:00
smarmau
ff3a4995c1 remove unnecessary code 2022-08-28 11:45:20 +02:00
Matthias
b9f35cadb3 add /stopentry alias for /stopbuy 2022-08-28 11:37:22 +02:00
smarmau
005594c29c simplify hybrid template 2022-08-28 11:29:48 +02:00
th0rntwig
71f7d68783 Fixed mypy error 2022-08-27 12:44:55 +02:00
Matthias
c61b986c3d FTX - support time_in_force (and PO ordertype)
closes #7175
2022-08-27 10:30:38 +02:00
Matthias
104a73025d Uppercase TimeInForce (align with ccxt) 2022-08-27 10:30:06 +02:00
Matthias
6686489c06
Merge pull request #7258 from freqtrade/feat/hyp_optinal_indicator
Add flag to move hyperopt populate_indicators to epoch
2022-08-27 09:21:16 +02:00
Matthias
2b70c3d0c0 support price callback for partial exits in bt
This will align results to how live works.
closes #7292
2022-08-27 08:50:09 +02:00
Timothy Pogue
05ca673883 Catch status code errors 2022-08-27 00:06:03 -06:00
Timothy Pogue
fcceb744c5 Add janus to requirements.txt 2022-08-26 23:43:05 -06:00
Timothy Pogue
2b5f067877 Refactoring, minor improvements, data provider improvements 2022-08-26 23:40:13 -06:00
Matthias
9204f01312 Don't lock pairs on partial exit 2022-08-27 07:23:02 +02:00
elintornquist
86c5ac44e4 Add outlier percentage check 2022-08-26 23:05:07 +02:00
Matthias
01126c43f7 Fix liquidation price tier calculation
closes #7294
2022-08-26 20:14:24 +02:00
Matthias
753d1b2aad Update leverage tier terminology to be clear and aligned with ccxt 2022-08-26 19:34:51 +02:00
elintornquist
b2d664c63c Change MinPts calculation 2022-08-26 18:57:27 +02:00
robcaulk
bb3523f383 download data homogeneously across timeframes 2022-08-26 18:51:42 +02:00
robcaulk
e7261cf515 add freqai utils.py file 2022-08-26 15:30:28 +02:00
robcaulk
65b552e310 make docs reflect reality, move download_all_data to new utils.py file, automatic startup_candle detection 2022-08-26 15:30:01 +02:00
robcaulk
4b7e640f31 reduce code duplication, optimize auto data download per tf 2022-08-26 13:56:44 +02:00
Matthias
53d46a0385 align max_entry_position_adjustment behavior of backtesting to live
closes #7293
2022-08-25 20:36:17 +02:00
Matthias
1fd223c815
Update --prepend help string
closes #7290
2022-08-25 17:03:41 +02:00
Matthias
f2a356a80c Fix some imports 2022-08-25 07:08:58 +02:00
Matthias
6636f17e0f Simplify usage of amount_to_contract precision 2022-08-25 07:08:22 +02:00
Timothy Pogue
d474111a65 Renamed to external signals, controller class refactored 2022-08-24 22:42:29 -06:00
Timothy Pogue
592373f096 Remove pairlist waiting, add .db files to .gitignore 2022-08-24 18:30:30 -06:00
Matthias
32faad9333 Fix backtest calculation problem with DCA
closes #7287
2022-08-24 20:36:08 +02:00
Matthias
a6d78a8615 initialize Since parameter properly
closes #7285
2022-08-23 06:43:04 +02:00
Matthias
fe7108ae75 Convert amount to contracts before comparing for close
closes #7279
2022-08-23 06:37:38 +02:00
Matthias
78b161e14c add contract_size to database 2022-08-23 06:37:38 +02:00
Matthias
6036018f35 Extract contracts_to_amount and amount_to_contracts to standalone functions 2022-08-23 06:37:38 +02:00
Matthias
5f38a574ce Add okx broker id 2022-08-23 06:37:38 +02:00
th0rntwig
5ce1c69803
Improve DBSCAN epsilon identification (#7269)
* Improve DBSCAN epsilon identification
2022-08-22 19:57:20 +02:00
robcaulk
ac42c0153d deprecate indicator_max_period_candles, automatically compute startup candles for FreqAI backtesting. 2022-08-22 18:19:07 +02:00
robcaulk
96d8882f1e Plug mem leak, add training timer 2022-08-22 13:30:30 +02:00
Matthias
f55d5ffd8c Don't fail when --strategy-path is not a valid directory.
closes #7264
2022-08-22 09:20:14 +00:00
Timothy Pogue
4fa01548f6 Remove old var from strategy interface 2022-08-21 22:49:42 -06:00
Timothy Pogue
6f5478cc02 DataFrame transmission, strategy follower logic 2022-08-21 22:45:36 -06:00
Matthias
015be770c3 ccxt now defaults to base volume for all markets 2022-08-22 06:42:14 +02:00
Matthias
f6d832c6d9 Add get_option to expose ft_has via method 2022-08-21 17:51:46 +02:00
Matthias
87a3115073 Add get_open_trade_count() to simplify getting open trade count. 2022-08-21 17:08:27 +02:00
Matthias
6189aa817c Fix HybridExample formatting 2022-08-20 19:50:18 +02:00
robcaulk
64b0834437 add credit in docstring 2022-08-20 17:04:38 +02:00
robcaulk
90c03178b1 provide user directions, clean up strategy, remove unnecessary code. 2022-08-20 17:02:18 +02:00
Matthias
cdd4745693
Merge pull request #7263 from freqtrade/okx_cache_tiers
Okx cache tiers
2022-08-20 15:18:13 +02:00
Matthias
5b3f031590 Use hyperopt safe amount precision method 2022-08-20 14:13:15 +02:00
Matthias
738e95b875 Add tests for leverage tiers caching 2022-08-20 13:54:54 +02:00
Matthias
b6e8b9df35 Use cached leverage tiers 2022-08-20 13:01:58 +02:00
Matthias
52ec0d1046 Update binance Leverage tiers 2022-08-20 11:53:15 +02:00
Matthias
0da0600836 Have backtesting respect tradable size
closes #7161
2022-08-20 11:41:11 +02:00
Matthias
54ddc1a4c2 Add --tradingmode alias 2022-08-20 11:24:20 +02:00
Matthias
aa3da092a0 Dont' use classProperty - that's not supported on 3.8 2022-08-20 10:55:52 +02:00
Matthias
01d45ed12e
Merge pull request #7257 from freqtrade/feat/list-pair-time
Get min/max data in list-data command
2022-08-20 08:16:52 +02:00
Matthias
7b8b73e651
Merge pull request #7243 from lolongcovas/newbranch_test
Improve PCA and pairwise distance calcs
2022-08-20 08:13:40 +02:00
Timothy Pogue
739b68f8fd ExternalPairList plugin 2022-08-19 22:40:01 -06:00
Johan van der Vlugt
b44bd0171c
Example Classifier strat 2022-08-19 19:10:37 +02:00
Matthias
b9d48c3278 use numbers in HyperoptState properly ... 2022-08-19 15:40:06 +02:00
Matthias
bc359675a2 Add --analyze-per-epoch - moving populate_analysis to the epoch process 2022-08-19 15:19:43 +02:00
Matthias
09f8904545 Extract analysis to separate method 2022-08-19 15:12:55 +02:00
Matthias
08ef5ad2d8 Add HyperoptState enum and container class 2022-08-19 15:11:43 +02:00
Matthias
1c6f966579 Hyperopt: simplify parameter "can_optimize" handling 2022-08-19 15:03:03 +02:00
Matthias
16af10a5bc Update notebook sample with simplified datadir configuration
closes #7252
2022-08-19 14:05:27 +02:00
Matthias
b7553d20d4 Get min/max data in list-data command 2022-08-19 13:45:55 +02:00
Matthias
7d84ef2e2c Remove unused imports 2022-08-19 13:45:10 +02:00
longyu
521381ebf0 undo example strategy newline 2022-08-19 12:40:03 +02:00
Matthias
b420614d65 Reduce code duplication in datahandlers 2022-08-19 09:33:07 +02:00
Matthias
975bf8fe88 Update Docstring to match actual return values 2022-08-19 09:23:53 +02:00
Timothy Pogue
6834db11f3 minor improvements and pairlist data transmission 2022-08-19 00:06:19 -06:00
Matthias
42eb508515 Attempt fix of #7184 2022-08-19 07:09:46 +02:00
Matthias
76a3e97e05 Add migrations end message
closes #7251
2022-08-19 06:39:51 +02:00
Timothy Pogue
9f6bba40af initial concept for replicate, basic leader and follower logic 2022-08-18 20:10:58 +02:00
Matthias
70a77ba3d9 Check for "last" availability in PrecisionFilter
closes #7250
2022-08-18 20:07:50 +02:00
longyu
1fada53ddd remove newline 2022-08-18 19:40:00 +02:00
Matthias
85b43ec1a1 Remove double-check for "isolated margin" 2022-08-18 15:23:58 +02:00
Matthias
fde469a253 Remove unnecessary check 2022-08-18 14:53:44 +02:00
Matthias
075e9b8526 Log Exchange responses for set_leverage 2022-08-18 09:52:03 +02:00
Matthias
46e8d9a5e4 Reduce verbosity when whitelist is empty 2022-08-18 09:09:37 +02:00
Matthias
0461a89348 Fix test failures 2022-08-18 07:20:49 +02:00
longyu
f70b0bab80 remove line 2022-08-17 23:49:20 +02:00
Matthias
66910bfe63 Don't fail if mark candles are missing
closes #7239
2022-08-17 20:01:57 +02:00
robcaulk
88dd9920ea sort imports for isort 2022-08-17 16:38:09 +02:00
robcaulk
5155afb4e7 clean up code remnants 2022-08-17 15:22:48 +02:00
robcaulk
0c34104e45 extract download-data from freqai to prepare for future async changes 2022-08-17 15:18:44 +02:00
longyu
9c38c27eed ignore sample itself distance for avg_mean_dist computation 2022-08-17 15:09:57 +02:00
longyu
72c34291e3 newline 2022-08-17 15:09:10 +02:00
Matthias
3983368228 gateio futures is showing base currency in volume! 2022-08-17 14:51:48 +02:00
Matthias
83ca168bb8
Merge pull request #7216 from freqtrade/precise_calcs
Precise calcs
2022-08-17 14:32:02 +02:00
Matthias
c615e1bc62 Avoid loop error during ccxt tests 2022-08-17 14:31:40 +02:00
Matthias
e7902bffa0 Remove checks for dataprovider existance - it's available in all modes. 2022-08-17 10:57:25 +02:00
Matthias
8d182768f9 stoploss should also use trimmed prices 2022-08-17 09:57:11 +02:00
Matthias
0b0e7eaf96 Mutex TTL Cache accesses which can be accessed by multiple threads
Apparently, cachetools is (intentionally) not threadsafe
when using the Caches directly.
It's therefore recommended to wrap these with an explicit lock to avoid
problems.

source: https://github.com/tkem/cachetools/issues/245

closes #7215
2022-08-16 19:48:21 +02:00
Matthias
24690c1918 Don't convert open_rate to precision
this may cause more problems than it solves.
2022-08-16 18:32:00 +02:00
Matthias
3b44dc52e1 Minor corrections 2022-08-16 18:10:48 +02:00
Matthias
ea6bc47d7a gateio default configs should specify unknown_fee_rate 2022-08-16 17:26:53 +02:00
Matthias
a1e4fbf313 Run price_to_precision for dry-run orders 2022-08-16 17:23:49 +02:00
Matthias
1ac81aa316 Show message if fee update failed due to missing
closes #7234
2022-08-16 17:09:23 +02:00
robcaulk
4c0fda400f fix input shape warning for LGBMClassifier, add sample_weights/eval_weights 2022-08-16 11:41:53 +02:00
Matthias
fa89368c02 Add test for precision backpopulation 2022-08-16 11:11:52 +02:00
Matthias
96d2f61812 Properly round timestamps to avoid constant log messages 2022-08-16 10:22:59 +02:00
Matthias
15a1c59a91 Backtesting should cache precisionMode 2022-08-16 10:15:19 +02:00
Matthias
a73e4f8e41 Truncate amount before comparing for closure 2022-08-16 09:49:53 +02:00
Matthias
2fb7a3091d Improve backfill of precisions 2022-08-16 09:32:31 +02:00
Matthias
711b6b1a1a Merge branch 'develop' into precise_calcs 2022-08-16 09:29:39 +02:00
Matthias
a5b438e41e Run price_to_precision for dry-run orders 2022-08-16 09:28:23 +02:00
Matthias
1dd56e35d5 Ensure comparisions align when closing a trade 2022-08-16 08:21:02 +02:00
Matthias
e818797427 Minor fix in amount_to_precision logic 2022-08-15 20:29:05 +02:00
Matthias
c0bdb71810 Update docstring 2022-08-15 20:06:29 +02:00
Matthias
f2b6ff910f Accept wrong pair in get_precision_amount 2022-08-15 20:05:22 +02:00
Matthias
09ee9089fb
Merge pull request #6832 from freqtrade/feat/freqai
Freqai: an interface for users to build/train/backtest predictive models and run them live
2022-08-15 20:03:08 +02:00
Matthias
e6af9a6903 Allow empty precisionMode on conversions 2022-08-15 20:00:15 +02:00
Matthias
c3f159bd57 Add precision fields to database 2022-08-15 19:58:40 +02:00
Matthias
22241c55d5 Add methods to get precision_amount from markets 2022-08-15 19:56:25 +02:00
Matthias
15e85797c2 Simplify to_precision tests and imports 2022-08-15 08:51:15 +02:00
Matthias
6c32331740 Move precision calculations to standalone functions 2022-08-15 08:43:58 +02:00
Matthias
c7e1719215 Fix interface import sorting 2022-08-15 06:53:02 +02:00
robcaulk
006b11e5d5 fix leftover bug in indicator population 2022-08-14 21:42:55 +02:00
robcaulk
8961b8d560 merge in inference timer and historic predictions handling improvements. 2022-08-14 20:31:15 +02:00
robcaulk
ad846cdb76 fix lock bug, update docstring 2022-08-14 20:24:29 +02:00
Matthias
464d99808f Update doc table formatting 2022-08-14 18:22:01 +02:00
Matthias
a29402ddde Rename and move analysis_lock to data_kitchen 2022-08-14 17:23:14 +02:00
Matthias
3a9ec76c91 Move "freqai.lock" to backend to simplify user interface 2022-08-14 17:19:50 +02:00
Matthias
044cf8bb2e Allow new whitelist combination in "button" commands 2022-08-14 08:41:25 +02:00
Matthias
22ac291c3a
Merge pull request #7211 from ecoppen/rpc/whitelist_options
Optional /whitelist args - sorted, nobase
2022-08-14 08:26:21 +02:00
Robert Caulk
c9c128f781 finalize logo, improve doc, improve algo overview, fix base tensorflowmodel for mypy 2022-08-14 02:49:01 +02:00
robcaulk
58de20af0f make BaseClassifierModel. Add predict_proba to lightgbm 2022-08-13 20:07:31 +02:00
robcaulk
31be707cc8 clean up code, add docstrings 2022-08-13 19:40:24 +02:00
robcaulk
3e38c1b0bd take dynamic sized tail off historic_predictions as return dataframe to strategy. 2022-08-13 19:40:24 +02:00
robcaulk
7d448fd4ac allow fit_live_predictions access to current pair 2022-08-13 19:40:24 +02:00
robcaulk
1f192be43b avoid denormalizing labels twice 2022-08-13 19:40:24 +02:00
robcaulk
b1b76a2dbe debug classifier with predict proba 2022-08-13 19:40:24 +02:00
robcaulk
23cc21ce59 add predict_proba to base classifier, improve historic predictions handling 2022-08-13 19:40:24 +02:00
Matthias
7075b00e20 Remove odd dry run stoploss behavior
closes #7208
2022-08-13 11:37:23 +02:00
Matthias
5aaab75d1c Add test for dynamic_pairlist_expand 2022-08-13 10:18:57 +02:00
Matthias
b682fc446e Graciously fail if strategy has freqAI code, but freqAI is not enabled. 2022-08-13 09:53:18 +02:00
Matthias
3918f4abbd Simplify strategy interface by removing explicit self.freqai_info assignment 2022-08-13 09:27:56 +02:00
Matthias
3b827ee60a Add "freqai.enabled" flag to disable freqAI via config flag
aligns with how other optional modules work in freqtrade.
2022-08-13 09:24:04 +02:00
Matthias
f6545ebdb8 Disallow backtesting with --strategy-list for now. 2022-08-13 09:10:03 +02:00
Matthias
e3a5b97b45 Update recalc_from_trades to use FtPrecise 2022-08-13 08:43:56 +02:00
Matthias
3bcb47d75d Remove usage of Decimal 2022-08-13 08:43:56 +02:00
Matthias
902afc2f02 Use FtPrecise in interest calculation 2022-08-13 08:43:56 +02:00
Matthias
0e61c2d057 Replace Decimal with FtPrecise in trade_model 2022-08-13 08:43:56 +02:00
Matthias
df701b5862 Merge branch 'develop' into feat/freqai 2022-08-13 08:43:24 +02:00
ecoppen
923f73a516 nobase -> baseonly 2022-08-12 19:56:46 +01:00
robcaulk
fb4b73ce89 ensure dates are saved 2022-08-12 12:03:44 +02:00
Matthias
cc885e25ac Improve NAN Handling in RPC 2022-08-11 20:16:07 +02:00
Matthias
de690b0a69 Use PEP440 compatible versioning 2022-08-11 20:08:40 +02:00
Matthias
dd4e44931e Improve NAN handling in RPC module 2022-08-11 15:02:52 +00:00
robcaulk
2cae3c42e6 remove trade database analyzer, clean up a bit 2022-08-10 17:43:06 +02:00
ecoppen
c0d60c63ab Optional /whitelist args - sorted, nobase
Added two optional arguments for whitelist - `sorted` for alphabetical order and `nobase` for displaying the whitelist without base currency e.g. /USDT.

Updated help with optional commands.

Added a space in an unrelated help message.
2022-08-10 14:56:38 +01:00
Matthias
ed004236ce Add float initializer to FtPrecise 2022-08-10 11:54:07 +00:00
Matthias
e7cb1b7375 Wrap Precise into FtPecise 2022-08-10 11:26:06 +00:00
Matthias
adc8ee88e2 Move periodicCache to Utils package 2022-08-10 08:57:19 +00:00
Matthias
573964b19f Dry Market orders should update "remaining" 2022-08-10 07:12:56 +02:00
Matthias
53251e7140
Merge pull request #7194 from freqtrade/rpc/partial_forceexit
Partial forceExit
2022-08-10 07:12:40 +02:00
Matthias
ce2c9bf26d Slight renaming of variable 2022-08-10 06:44:41 +02:00
Matthias
736884c5a9 Orders should be allowed to have empty fill/remaining values 2022-08-09 20:43:58 +02:00
Matthias
b5c5a95b64 FTX: Use conditionalOrders endpoint to get proper stop-market order id
closes #7165
2022-08-09 20:09:35 +02:00
robcaulk
5a16d5a512 Deactivate database analyzer if user does not use sqlite 2022-08-09 16:36:22 +02:00
robcaulk
e7de812948 Allow user to user pair_dict for persistent storage of custom data 2022-08-09 16:03:10 +02:00
robcaulk
aef086b02e Improved dict typing, timeframe parser, collect dates associated with training data points 2022-08-09 15:30:25 +02:00
Matthias
9a82898d6b Merge branch 'develop' into feat/freqai 2022-08-09 06:22:57 +02:00
Matthias
77b3b8a134 Use main exchange instead of creating a separate instance. 2022-08-08 18:34:11 +00:00
robcaulk
ea64f43e52 bring back auto DF resizing for okx 2022-08-08 01:13:13 +02:00
robcaulk
67c722c9c8 fix asyncio bug 2022-08-07 14:48:39 +02:00
Matthias
e48e82232d Force response API to js to fix faulty system configs
closes #7147
2022-08-07 10:42:56 +02:00
Matthias
0b2104fc7a Properly increment the api version 2022-08-07 10:13:36 +02:00
Matthias
6ded2d5b7c Improve forceexit API test 2022-08-07 09:47:11 +02:00
Matthias
d1998f7ed0 Fix forceexit calling 2022-08-07 09:47:11 +02:00
Matthias
eff8cd7ecb Add leverage to force_entry 2022-08-07 09:47:11 +02:00
Matthias
daf015d007 extract nested force_exit function to private instance function 2022-08-07 09:47:11 +02:00
Matthias
82aecc81f3 Accept parameters to forceexit 2022-08-07 09:47:11 +02:00
robcaulk
eb8bde37c1 Add lightgbm classifier, add classifier check test, fix classifier bug. 2022-08-06 17:51:21 +02:00
Matthias
bfa859e618 Remove unnecessary method (simplify) 2022-08-06 17:46:58 +02:00
Matthias
5250189f77 Add Rollback function to Trade
simplifies Session work
2022-08-06 17:03:49 +02:00
Matthias
47a30047eb Fix typo 2022-08-06 15:03:10 +02:00
Matthias
b16f57cb0d Minor stylistic fixes 2022-08-06 14:55:46 +02:00
Robert Caulk
c172ce1011 improve flexibility of user defined prediction dataframe 2022-08-06 13:51:19 +02:00
Matthias
45d68222a1 Reduce verbosity of Fiat Converter 2022-08-06 13:18:40 +02:00
Matthias
f8f1ade163 Reduce function complexity by extracting message sending 2022-08-06 09:21:11 +02:00
Matthias
2687633941 Test iterative sending of /status 2022-08-06 09:16:04 +02:00
Matthias
b12dd15f4f Send multiple messages in /status if required 2022-08-06 09:10:12 +02:00
Robert Caulk
07763d0d4f add classifier, improve model naming scheme 2022-08-06 08:33:55 +02:00
Robert Caulk
ce8fbbf743 ensure loading historical df matches frequi indices 2022-08-06 07:25:59 +02:00
robcaulk
60d782e5c5 remove unnecessary function 2022-08-05 21:31:32 +02:00
robcaulk
a42a060ab5 fix DB once and for all. Make DBSCAN more efficient and robust. 2022-08-05 21:29:03 +02:00
Robert Caulk
a3799c4d5d start frequi with historical data if available 2022-08-05 18:27:47 +02:00
robcaulk
29b7b014e5 fix bug in DB path initialization 2022-08-05 18:19:26 +02:00
robcaulk
db1d367941 fix bug associated to fit_live_predictions_candles 2022-08-05 13:46:20 +02:00
robcaulk
26de992d20 ensure user sets startup candles in backtesting mode 2022-08-05 12:23:14 +02:00
robcaulk
05ec5c5e54 generalize database url path for any db type 2022-08-05 12:19:29 +02:00
Matthias
9545402452 Improve defaults for config builder 2022-08-05 11:58:09 +02:00
Matthias
7675187c37 Use telegram message length to avoid constants 2022-08-05 07:31:19 +02:00
Matthias
cffc769549 Fix /profit endpoint calculations for partial sells
* don't recalculate for closed trades
* include realized_profit in the calculation

part of #7178
2022-08-05 07:26:41 +02:00
Robert Caulk
51a6b4289f improve DBSCAN performance for subsequent trainings 2022-08-04 17:41:58 +02:00
Robert Caulk
fe1b8515a8 fix bug in DBSCAN, update doc 2022-08-04 17:00:59 +02:00
robcaulk
29225e4baf add DBSCAN outlier detection feature, add supporting documentation 2022-08-04 12:15:16 +02:00
Matthias
95327750dc Final abs. profit should not be doubled in rpc messages 2022-08-04 07:07:54 +02:00
robcaulk
eae82d0222 fix bug with database url during backtesting. comment out example trade db analysis. 2022-08-03 16:17:57 +02:00
robcaulk
95d3009a95 give user ability to analyze live trade dataframe inside custom prediction model. Add documentation to explain new functionality 2022-08-02 20:14:02 +02:00
Matthias
d75e0a9820 Fix Flake8 errors after flake update 2022-08-01 06:43:59 +02:00
robcaulk
3013282dbf remove non-catboost stuff from schema 2022-08-01 05:39:38 +02:00
robcaulk
946d4c7cfc fix trailing whitespace for flake8 2022-07-31 18:39:46 +02:00
robcaulk
4e68626bcb ensure convolutional window is prepended for frequi consistency 2022-07-31 17:51:19 +02:00
robcaulk
d830105605 *BREAKING CHANGE* remove unnecessary arguments from populate_any_indicators(), accommodate tests 2022-07-31 17:05:29 +02:00
robcaulk
153336d424 move corr_pairlist expansion to after expand_pairlist() 2022-07-31 15:45:28 +02:00
Matthias
659870312d Use JSON Schema validation for freaAI schema validation 2022-07-31 15:23:27 +02:00
Kavinkumar
a4bada3ebe
Partial exit using average price (#6545)
Introduce Partial exits
2022-07-31 14:19:04 +02:00
Matthias
369c6da5d8
Merge pull request #7146 from freqtrade/fix/liquidation
Update liquidation price handling
2022-07-31 08:09:54 +02:00
Matthias
bad15f077c Simplify fetch_positions by using already existing method 2022-07-30 17:49:06 +02:00
Matthias
fc31c890e3
Merge pull request #7135 from freqtrade/rpc/sendmsg
Strategy allow rpc messages
2022-07-30 16:15:00 +02:00
Matthias
d046f0cc5e Improve method wording for liquidation price setter 2022-07-30 16:11:31 +02:00
Matthias
dba7a7257d Use stop_or_liquidation instead of stop_loss 2022-07-30 16:10:16 +02:00
Matthias
845cecd38f Add stoploss or liquidation property 2022-07-30 16:10:16 +02:00
Matthias
15752ce3c2 Rename set_stoploss method to be fully private 2022-07-30 16:10:16 +02:00
Matthias
9852733ef7 Improve tests to align with modified logic 2022-07-30 16:10:16 +02:00
Matthias
8711b7d99f Liquidations cannot be rejected. 2022-07-30 16:10:16 +02:00
Matthias
995be90f91 Liquidation should be a separate exit type 2022-07-30 16:10:16 +02:00
robcaulk
dd8288c090 expose full parameter set for SVM outlier detection. Set default shuffle to false to improve reproducibility 2022-07-30 13:40:05 +02:00
robcaulk
f22b140782 fix backtesting bug, undo move of label stat calc, fix example strat exit logic 2022-07-29 17:27:35 +02:00
robcaulk
08d3ac7ef8 add keras and conv_width to schema and documentation 2022-07-29 08:49:35 +02:00
robcaulk
59624181bd isort BaseRegressionModel imports 2022-07-29 08:23:44 +02:00
robcaulk
c84d54b35e Fix typing issue, avoid using .get() when unnecessary, convert to fstrings 2022-07-29 08:12:50 +02:00
Matthias
efbd83c56d Small type and typo fixes in freqai_interface 2022-07-28 07:24:30 +02:00
Matthias
a2a0d35a24 Update missing typehints 2022-07-28 07:07:40 +02:00
Matthias
3273881282 Merge branch 'develop' into feat/freqai 2022-07-28 06:36:38 +02:00
Matthias
cc3ead9d7b Set required_profit for stoploss guard, allowing to ignore small stoplosses.
closes #7076
2022-07-27 19:52:39 +02:00
Matthias
f31106dc61 Minor comment fixes 2022-07-27 07:27:24 +02:00
Matthias
7bac054668 Add documentation and clarity for send_msg 2022-07-26 20:24:52 +02:00
Matthias
229e8864bb Add send_msg capability to dataprovider 2022-07-26 20:15:49 +02:00
Matthias
bc760b7eb2 Simplify small segment in datadrawer 2022-07-26 19:41:49 +02:00
robcaulk
324e54c015 fix possible memory leak associated with Catboost Pool object 2022-07-26 17:29:29 +02:00
robcaulk
3f149c4067 fix return type in BaseTensorFlowModel 2022-07-26 16:01:54 +02:00
robcaulk
ad25a4cb56 reduce number of pair_dict lookups, remove coin_first 2022-07-26 15:58:40 +02:00
robcaulk
fb4e8430cd isort auto import sorting 2022-07-26 10:51:39 +02:00
robcaulk
e213d0ad55 isolate data_drawer functions from data_kitchen, accommodate tests, add new test 2022-07-26 10:24:14 +02:00
robcaulk
56b17e6f3c allow user to pass test_size = 0 and avoid using eval sets in prediction models 2022-07-25 19:40:13 +02:00
Matthias
4c68bec171 Fix problem in is_cancel_order_result_suitable
fixes #7119
2022-07-25 17:47:52 +02:00
Robert Caulk
897f18a8c8 ensure proper integer type casting for timestamps. Add check test for backtesting subdaily time periods 2022-07-25 15:07:09 +02:00
Robert Caulk
7b105532d1 fix mypy error and add test for principal component analysis 2022-07-25 11:46:59 +02:00
Robert Caulk
c9d46a5237 finish bringing follow_mode up to date 2022-07-25 09:24:40 +02:00
Robert Caulk
ab587747fb first fix for follower path bug 2022-07-24 23:32:24 +02:00
Matthias
520ee3f7a1 Convert freqAI into packages 2022-07-24 17:07:45 +02:00
Matthias
1885deb632 More docstring changes 2022-07-24 16:54:39 +02:00
Matthias
70b7a254af Update some areas to use default docstring formatting 2022-07-24 16:51:48 +02:00
Matthias
61c41fd919 Merge branch 'develop' into feat/freqai 2022-07-24 16:18:58 +02:00
Robert Caulk
88e10f7306 add exception for not passing timerange. Remove hard coded arguments for CatboostPredictionModels. Update docs 2022-07-24 09:01:23 +02:00
Robert Caulk
fff39eff9e fix multitarget bug 2022-07-24 08:42:50 +02:00
Matthias
2eb1d18c2a Don't load leverage tiers when not necessary 2022-07-23 19:56:38 +02:00
robcaulk
f3d46613ee move prediction denormalization into datakitchen. remove duplicate associated code. avoid normalization/denormalization for string dtypes. 2022-07-23 17:14:33 +02:00
Matthias
81c1aa3c13 Update imports in freqAI sample strategies 2022-07-23 17:08:05 +02:00
Matthias
8a3cffcd1b Remove remaining CustomModel references 2022-07-23 17:08:05 +02:00
Matthias
8fa6e8b4ba Remove freqAI model bridge in favor of self.freqai 2022-07-23 17:08:05 +02:00
robcaulk
c91e23dc50 let user avoid normalizing labels 2022-07-23 16:14:13 +02:00
robcaulk
50d630a155 remove unnecessary comments from data_drawer.py 2022-07-23 13:35:44 +02:00
robcaulk
a1cff377ec add record of contribution to data_kitchen.py 2022-07-23 13:32:04 +02:00
robcaulk
c2d6a0e891 add record of contribution to doc and source 2022-07-23 13:04:06 +02:00
Matthias
e97468964a Add support for --timeframe-detail in hyperopt
fix #7070
2022-07-23 08:52:03 +02:00
robcaulk
5559e605b8 small PR conversation resolutions 2022-07-22 17:46:14 +02:00
robcaulk
40f00196eb use cloudpickle in place of pickle. define Paths once in data_drawer. 2022-07-22 17:37:51 +02:00
robcaulk
98c8a447b2 add LightGBMPredictionMultiModel 2022-07-22 12:40:51 +02:00
robcaulk
afcb0bec00 clean up obsolete comments, move remove_features_from_df to datakitchen 2022-07-22 12:29:20 +02:00
robcaulk
3205788bce extend doc to include descriptions of the return values from FreqAI to the strategy 2022-07-21 22:11:46 +02:00
robcaulk
8033e0bf23 add counter to backtesting log so users know how many more pairs and how many more models will need to be trained 2022-07-21 13:22:12 +02:00
robcaulk
183dec866a remove ability to backtest open ended timeranges (safer) 2022-07-21 13:02:52 +02:00
robcaulk
e694ea1cfd make sure backtesting gets the populated indicators with slimmed down user strat 2022-07-21 12:48:09 +02:00
robcaulk
ca4dd58642 remove superceded function from datakitchen 2022-07-21 12:40:54 +02:00
robcaulk
8f86b0deaa *breaking change* simplify user strat by consolidating feature loops into backend 2022-07-21 12:24:22 +02:00
robcaulk
e7337728bf add separator in folder name just incase an asset ends in an integer 2022-07-21 11:25:28 +02:00
robcaulk
921a7ef216 add requirements-freqai.txt to builds 2022-07-20 15:51:25 +02:00
robcaulk
d43c146676 add more tests for datakitchen functionalities, add regression tests for freqai_interface train/backtest 2022-07-20 12:56:46 +02:00
lolong
9c051958a6
Feat/freqai (#7105)
Vectorize weight setting, log training dates

Co-authored-by: robcaulk <rob.caulk@gmail.com>
2022-07-19 17:49:18 +02:00
robcaulk
714d9534b6 start adding tests 2022-07-19 16:16:44 +02:00
lolong
ed0f8b1189
Improve FreqAI documentation (#7072)
Improve doc + some other small fixes

Co-authored-by: robcaulk <rob.caulk@gmail.com>
2022-07-18 11:57:52 +02:00
Robert Caulk
921f3899f0 revert pickle reading for historic predictions 2022-07-17 16:06:36 +02:00
Robert Caulk
41eeb99177 load pickle file for writing 2022-07-17 10:05:21 +02:00
Matthias
05a5ae4fcf Update plotting to use entry/exit terminology 2022-07-16 22:28:46 +02:00
Robert Caulk
9d184586f1 fix bug in historic prediction saving 2022-07-16 21:16:59 +02:00
Matthias
f6bfd89cef Merge branch 'develop' into feat/freqai 2022-07-16 18:14:34 +02:00
Matthias
423af371c0 Simplify calculation by calling "get_fee" only once 2022-07-16 17:59:05 +02:00
Matthias
4172f92bfc simplify dry-run taker/maker selection 2022-07-16 17:25:13 +02:00