2022.5.1
版本发布时间: 2022-06-01 12:38:06
freqtrade/freqtrade最新发布版本:2024.10(2024-10-31 15:07:21)
2022.5.1
- Fix edge-case bug in backtesting (colliding canceled and replaced orders).
- Fix deleting trades when position adjustment (DCA) orders time out.
Highlighted changes 2022.5
- New
adjust_entry_price()
callback - to adjust open entry limit orders. - New command
convert-db
to migrate databases between database systems. - Dry-run orders no longer reset on bot restart.
- Certain Protections can now only look at longs or shorts, and only lock this direction.
- Updated binance leverage tiers to contain new pairs.
- Multiple exit-sigals are evaluated in sequence, causing changed behavior for
confirm_trade_exit()
, which can now be called multiple times for the same trade with different exit signal types. -
download-data
now respects the timerange end date. -
download-data
now allows data-prepending. -
LowProfitPairs
now supports "only_per_side" for futures trading. - Fixed OKX historic data download (:warning: Warning- requires manual clearing and redownload of existing data)
How to update
As always, you can update your bot using one of the following commands:
docker-compose
docker-compose pull
docker-compose up -d
Installation via setup script
# Deactivate venv and run
./setup.sh --update
Plain native installation
git pull
pip install -U -r requirements.txt
Expand full changelog
c57db0a33 Version bump 2022.5.1
34a44b9dd Fix backtesting bug when canceling orders
66edbcd3d Fix slight backtesting bug in edge-case scenarios
354917637 Update missleading docstring
88845f6d8 Fix cancel order deleting trade
d950b0acb Update documentation about dynamic parameters
8e2c7e129 extract detect_parameters to separate function
f323cbc76 Bump types-requests precommit
5bf021be2 Enhance hyperoptable strategy to test instance parameters
eaa656f85 Hyperoptable parameters can be instance attributes
2b2967f34 Bump types-requests from 2.27.27 to 2.27.29
386d3e035 Rename stop/roi loading method
ad8ff10a0 Minor doc changes
41052b4e1 Bump types dateutil precommit
23fa00e29 Bump ccxt from 1.83.62 to 1.84.39
a937f3699 Bump mypy from 0.950 to 0.960
9366c1d36 Bump mkdocs-material from 8.2.15 to 8.2.16
e7c78529e Bump types-python-dateutil from 2.8.16 to 2.8.17
b52fd0b4d Bump python-telegram-bot from 13.11 to 13.12
f65df4901 Update doc clarity
e6affcc23 Move parameter file loading to hyper-mixin
1ee08d22d Delay parameter init
a875a7dc4 Use unified stopPrice for binance
f64f2b1ad Fix /stats Formatting issue in multi-message settings
a1d54f5ae Version bump 2022.5
3e7bf6a9e Remove imports in test_strategy2
b04fe5d4e Simplify test v2 strategy
24cf04464 Fix bybit spot mode
682daa4e9 Reset logging mixin to avoid random test failure
e1c6cf5f9 fix typo
537d10c62 Improve some typing
3e66275c9 Refactor bot_start to separate function
023f81717 Improve wording for supported futures exchanges
b2968df5d Fix some type problems
43f726ba8 Run CI against different templates
a8ee77cd5 Simplify backtesting typechecking
904f094b8 Don't reassign method, but implement it properly
0a713faca Fix some type errors
f1a72e448 Align interfaces and strategy templates
3f68c3b68 Update some types
502404c0c Use pyproject.toml instead of setup.cfg
7f4161ff7 Add typehints to strategy wrapper
07ec3b27f Add typing information to retrier decorator
42ae8ba6f Refactor hyperopt parameters to separate file
5c4014ee6 Change default value of process_only_new_candles to True since False is an uncommon usecase for expert strategy devs
34b1231df Bump filelock-precommit
b88dfe429 Bump types-filelock from 3.2.5 to 3.2.6
cc3ec279c Bump dateutil types precommit
596aeec65 Bump scikit-learn from 1.1.0 to 1.1.1
66497c28e Bump pre-commit requests types
7f5650699 Bump types-requests from 2.27.25 to 2.27.27
34657639f Bump numpy from 1.22.3 to 1.22.4
ff9dcfe78 Bump types-python-dateutil from 2.8.15 to 2.8.16
40f63ae51 Bump scipy from 1.8.0 to 1.8.1
f819fafa1 Bump psutil from 5.9.0 to 5.9.1
27019339b Bump ccxt from 1.83.12 to 1.83.62
e3beaae8b update hyperopt typing
0b5544ef9 Stoploss fill should fill as "filled" notification
938a66511 Update Documentation for new confirm_trade_exit behavior
3692fcd3d Improve exit signal sequence
ce3bfd59f Add explicit should_sell test
b7388557a Update interface tests
bdb904e71 Should_exit should return all sell signals
1315d0243 Fix startup sending "longed" messages for open stoplosses
26d394ca7 Add liquidation Price to api response
ea8fda0de Slightly improve test
f006978ca Be more explicit in default value
681ef1317 Relax dry-run leverage test-case to simplify future updates
97abcf4b3 Add documentation for leverage_tiers update
963cc17c1 Update leveraged tiers
0d388b561 Add test for "combine_funding_and_mark", fix bug
2df42a303 Move "funding fillup" logic to exchange class
6bd5535d6 Use exchange method to combine funding and mark candles
0e158b66b Update docs link
c499a92f5 Remove surplus mark columns, and make fillna on funding rate only
c3e3188c6 Rename variable
843bf0631 Remove Sponsored Promotions
b3acfb3c6 Bump ccxt to 1.83.12
2cf17e04b Init persistence for tests that use dry-run orders
46ea135b6 Update dry-run considerations
219363fff Check for both ask and bid in SpreadFilter
56a73575a Add explicit test for order_to_ccxt
5e18e51ce Fix some tests
a3d9384bc Remove clean-dry-run code
0a95ef6ab Don't reset open orders in dry-run on restart
363098d32 Fix reversed makr/funding_rate columns
736f9f497 Fix docs and add outer join support for merging funding rates across full timerange
d5486f17d Update Test to use StrategyV3
c41d4c4f4 Fix leverage docs
37e4ede65 Fix flake issues
bb758da94 Add support for fudging unavailable funding rates, allowing backtesting of timeranges where futures candles are available, but rates are not
c6bf6779f Update docs BT sample report and details.
bb7ffd8fb Update testcases relying on BT results.
0585b378b BT: Report canceled/replaced orders also.
6e8f24f6a BT: track canceled/replaced orders also.
905b24bd4 Update BT report detailing.
a2a8e4fdc Update doc BT sample report.
99aea454b Update testcases to match reporting.
f2e2e5723 Report trade entries canceled by user.
fb7c0792c Track trade entries canceled by user.
76637d393 Simplify timeframe-transition
2e65a1793 Add fallback to load 1M files as well as 1Mo files
a1048fb61 Store monthly candles as "Mo"
9607d0427 Improve ccxt imports
d09b46293 Add rudimentary tests for Precise "builtin operator" workings
c8e0fc926 Update to do Builtin Precise math
a793cf8f0 Use ccxt's "precise" to do precise math
528509f80 Extract get_price_side from get_rate
f5183df0f Bump scikit-learn from 1.0.2 to 1.1.0
bd65236e1 Bump pyjwt from 2.3.0 to 2.4.0
dd1b84f93 Bump filelock from 3.6.0 to 3.7.0
a8b4066f8 Bump mkdocs-material from 8.2.14 to 8.2.15
9e44d6977 Bump ccxt from 1.81.81 to 1.82.61
9fc21686e Bump flake8-tidy-imports from 4.7.0 to 4.8.0
748055892 Bump plotly from 5.7.0 to 5.8.0
47c116a42 Bump fastapi from 0.76.0 to 0.78.0
4fc6857d8 Bump time-machine from 2.6.0 to 2.7.0
2cb8eecf1 add space
e21f6a778 missing newline
008ee1488 Improve ci to run on ubuntu 22.04
86af3fe0e Update image versions from 3.9 to 3.10
a0b25938f Fix exit_reason assignment in backtesting
a8f064a8c Fix exit_reason assignment in live mode
706994340 Fix bad docstring
18fd3bb33 Update stoploss handling for entry-order adjustment
9143e9ecb Add some safety measures for new startup_candles verification
d60d0f64d Revert ohlcv_candle_limit logic for okx
116b58e97 add "date_minus_candles" method
a947a1316 Add test to ensure stoploss is set properly in live
3b1443924 Slightly improve performance of order adjusts
c27e0a0a1 Allow SL refresh only if no filled entry orders.
ec54b47b6 Flake fix.
1c20fb763 Refresh open_rate and stoploss on order replacement.
5767d652b Add explicit test and document behavior
2a1368d50 Offsetfilter: add number_assets parameter
bb1b283d9 Update some ohlcv_candle_limit calls
111b04c9e Okx - conditional candle-length
64668b11d add ohlcv_has_history - disabling kraken downloads
64670726a flake8 fix
9d13c8729 cleaned up backtesting
71a80cab3 fixed variable naming style
8a3c2c6ca Corrected docstring
c299601ec Add warning about OKX futures backtesting data
1fc041d0d Fix formatting issue
b2b503f04 minor polish for explanation of --breakdown
8a6a6ec91 corrected minor "typo" in formatting
f374c9da7 PR cleanup
044afdf7a Add better test scenario
31cce741a Add sequence migration
269630e75 Add preliminary documentation for database conversion
c19be34e7 Add rudimentary test for db migration
0958c06b8 Implement database migration to other system
c3b0f6b64 Add feature shell for database conversion
35ec657ef Bump types-tabulate==0.8.9 precommit
a5beacbdd Bump types-tabulate from 0.8.8 to 0.8.9
2dd655eda Bump pre-commit from 2.18.1 to 2.19.0
5080245a7 Bump ccxt from 1.81.43 to 1.81.81
0756027e3 BUmp types-python-dateutil precommit
69b79cd79 Bump types-python-dateutil from 2.8.14 to 2.8.15
1ae74c119 Bump flake8-tidy-imports from 4.6.0 to 4.7.0
77a22a6b1 Bump fastapi from 0.75.2 to 0.76.0
74b309cf5 Bump jsonschema from 4.4.0 to 4.5.1
30cc8e92a Bump mkdocs-material from 8.2.12 to 8.2.14
df48399a9 Bump cryptography from 37.0.1 to 37.0.2
f71b2624a then -> than
30d6eeffd Fix migration bug
b58e811b1 Move trade/order Models to their own class
af1a5e044 Extract base and Pairlock from models file
3221726d8 Update migration to use boolean value
4a7515e66 Add test for 0.0 case
1436bc1a7 Update list-strategies command
f43ae0ea4 logged balance details
d79b90a98 consistent exchange name
45b328af2 explicitly call cleanup when cleaning backtest
bfc789865 Report profit only on filled entries.
277e07589 update/fix some comments and docs
eca8d16c6 Minor fix and enhancement for TC51.
f5f599c7f Add LowProfitPairs only_per_side option
dc0c1bf87 Only fetch accounts when authenticated.
149704e74 Fix wrong type
6fdcf3a10 Support both position modes on OKX
2da284b92 Properly type side for create_order
68a97a898 Disable scheduled notification in CI
108903f7f Add DCA order adjust test
70bac41d8 Add more backtest test scenarios
182a6f475 Minor typos.
5b3eaa300 Ensure advanced strategy template is runnable
d11c44940 Slightly reword docs
2d9be6dac move open_rate updating to close_bt_order
29f1edbde Cleanup. Remove stray new line.
2bed0eab0 BT: Update trade open_rate on first filled order.
25c74e26d Models:Trade: Revert trade open_rate update.
1a37c6ff4 Bump ccxt to 1.81.43
ae01afdd0 Models:Trade: Fix open_rate updates.
dbecc097d Models:Trade: Update trade open_rate based on lastest order.
b2f33944e Add preliminary backtesting test
5c82cce06 Fix new test failures
ce035a594 Add bot_loop_start() call in plotting.py
091cb4fb8 Reduce no stake amount verbosity
eb996a152 Fix fee handling for futures trades
8e1cdb910 Update setup.sh
7a5762991 Keep Backtest-metrics aligned
3f64c6307 Maintain compatibility with old backtest results
1e2523af6 Fix some assumptions on the data
4c7460107 Freqtradebot: Cleanup stray debug messages.
59397cdd1 Freqtradebot: Fix full cancel logging location.
b83cd95a0 Tests: add basic testcases for entry adjustment.
2a6efab8a Don't use deprecated abstractclassmethod decorator
38dffe1ed types-tabulate - pre-commit update
24ce90ba9 Bump types-tabulate from 0.8.7 to 0.8.8
67dd9be95 Bump sqlalchemy from 1.4.35 to 1.4.36
71ae92274 Bump pre-commit dependency
49c1b310c Bump pre-commit types
ba28fa6c3 Bump cryptography from 36.0.2 to 37.0.1
9de0652b2 Bump jinja2 from 3.1.1 to 3.1.2
093bea423 Bump types-requests from 2.27.20 to 2.27.25
73aafb886 Bump ccxt from 1.80.61 to 1.81.16
4990534bf Bump mypy from 0.942 to 0.950
3d730661e Bump mkdocs-material from 8.2.10 to 8.2.12
a0e27d82a Bump types-python-dateutil from 2.8.12 to 2.8.14
7160f9085 Update summary examples
f9244aad9 Fix on max drawdown formula to match tests
4e43194df BT: Refactor open order management.
2cedbe570 Fix documentation mishap
9d205132d Revert unintended comment change.
8c19953cd Quick exit when order should be maintained.
8b5d454b5 Fix subtle bug in trades download
e49b3ef05 Improve message formatting
f6a7e6b78 Add prepend option to download-data
11d447cd5 Add support for download-data "until"
ad0c5d944 Refactor entry adjustment for backtesting.
f9977c26e Full cancel only for non DCA trades.
17650d7e6 Maintain existing order. Update functionality and documentation
bc5048e4f Update to backtesting.md
444425907 Fix hyperopt-loss interface to enforce kwargs
5ff2261b7 Improve test to explicitly test for dates
9bc6bbe47 Improve test for max_drawdown calculations
e8aec967d Update on note
086cc6be9 Correction on tests
4de0fdbfc Minor edits found during review
662319210 improve doc wording
737bdfe84 Use "side" parameter when calling Pairlocks
144e4da96 Update stoploss guard tests
b0a8bf302 Show lock side
4942d7369 update pairlock tests
845f960a4 realign pairlock naming to side
fc201bb4f implement pairlock side further
420836b1b Update test naming
7c79d937e Properly type "side" parameter
b7cada1ed Convert ProtectionReturn to dataclass
9e199165b Update protection-interface to support per-side locks
6ff3b178b Add direction column to pairlocks
0f943c482 PEP8 code compliance
76558f284 Fix user cancellation functionality.
d24ee9032 Update usage in backtest. No functional update.
d9f838a65 Update template usage to reflect changes.
3166739ec Update strategy callback params and description.
95e009b9c Update adjustment functionality and add cancelation option
2cac1b7dc Add new (user cancellation) reason.
541147c80 Update documentation to match feature changes.
17da4ca09 Use order_date_utc
698c25f13 Fix issues reported by flake.
237d116d8 Update existing tests to use the new func name.
452f44206 Add new callback to advanced template.
bf5799ef9 Add new functionality to backtesting.
f8a7fdd5e Add new callback to strategy interface.
317c1e074 Add option to handle_cancel_enter to prevent closing trade.
76c545ba0 Reorganize, rename, redescribe and add new functionality
e5d4f7766 Add new cancel reason for when replacing orders.
16b6b0822 Update docs to include info on new functionality.
c8e468783 Plots and hyperopt
47a6ef4f0 Max relative drawdown
da0688b6a Revert "Add exchange id for binance Futures"
3c8387ab6 Add exchange id for binance Futures