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