github freqtrade/freqtrade 2024.2

latest releases: 2024.4, 2024.3
2 months ago

Highlighted changes

  • Introduce a new pairlist, MarketCapPairList, which sorts pairs based on CoinGecko's market capitalization ranking.
  • Implement the storage of order tags within the order object, allowing for tagging on a per-order basis.
  • Enhance caching mechanisms for pairlists requiring candle data.
  • Implement active checks to prevent the creation of Unified accounts on Bybit, encouraging the use of standard subaccounts instead.
  • Address issues in Bybit resulting from recent API updates.
  • Enhance the formatting of Telegram messages, particularly when special characters are used in enter/exit tags.
  • Remove the stoploss_order_id field and utilize order objects to manage open stoploss orders.

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
0a8719c61 Bump Version to 2024.2
d6b01a6ff Assert for exact equality
01266ed7e Align test results ...
5402d276d Add header to warning box, reorder Boxes
d5c01f748 Bump ccxt from 4.2.47 to 4.2.51
d9f4c62f1 Add warning about excessive use of position_adjustment
080d9b55f Bump fastapi from 0.109.2 to 0.110.0
4ff888488 Bump cryptography from 42.0.4 to 42.0.5
e2a486f85 Bump nbconvert from 7.16.0 to 7.16.1
313de7b8a Bump mkdocs-material from 9.5.9 to 9.5.11
c2998f3d7 Bump pydantic from 2.6.1 to 2.6.2
9805cd768 Bump orjson from 3.9.14 to 3.9.15
c06e4ee89 Bump the pytest group with 1 update
d80ed7e33 Bump Docker Python version from 3.11.7 to 3.11.8
e2d3774b0 Clearer wallets variable/parameter wording
aad327b1f Update comment around funding fees
3e0755b8a Enhance funding-fee call test to account for different timezones
f164b8935 Ensure pytz is updated regularily by pinning it
c663016b4 Improve some type safety
9ac7149c4 Add check to verify that "since" is properly respected.
0acde2890 Remove pointless comment
f4ad1e802 chore: Remove wrong typehint
e30fa3a44 Remove duplicate pairlistmanager init
db83b0cdb Update typehint for candle_cache
4cfd5d004 Improve ohlcv pair cache with since_ms
3680e199c Fix range-stability filter downloading too little data
4e87169a0 Use set to reduce iterations
c013c76e6 Bump cryptography from 42.0.3 to 42.0.4
0199e7d3d Add type-hint to exchange_has dict
b3ba2cee1 Bump ccxt to 4.2.47
411f60647 Fix some tests due to new method
f53c019d2 Update "exchange_has" validation with new fallbacks
3497f7946 Add test for fetch_order_emulated
65af7750e Add fetch_order_emulated to support exchanges without proper fetch_order method
f6e2030bf chore: update pre-commit hooks
00bde70f7 Fix / improve styling in test class
434b8a423 bump types-requests pre-commit
82876570a Bump ruff from 0.2.1 to 0.2.2
a200b5524 Update sqlalchemy in pre-commit
39941a7ac Improve formatting in drawdown calc
66f483910 Further increase test coverate of max_drawdown
6aa1bbf57 Bump sqlalchemy from 2.0.26 to 2.0.27
381576b8f Bump pre-commit from 3.6.1 to 3.6.2
549b9f62f Bump tensorboard from 2.15.2 to 2.16.2
edb5431a7 Bump orjson from 3.9.13 to 3.9.14
4241db2fe Bump scikit-learn from 1.4.0 to 1.4.1.post1
c966f8314 Bump plotly from 5.18.0 to 5.19.0
f361824b1 Bump cryptography from 42.0.2 to 42.0.3
8675f86d1 Bump urllib3 from 2.2.0 to 2.2.1
0979d0b6e Bump the pytest group with 1 update
4c3879cb5 Bump the types group with 1 update
69a0f4c46 Fix bybit spot live tests
61e09ac71 Update telegram help with new wording
583b2fc69 Fail if unified account is detected.
e06b70eb0 Add log message for Bybit accout type
3250f4225 Improve validate_exchange
a5d1ae319 docs: Update sql_cheatsheet.md
ebd439cdd Remove unused import
78d8a4df2 Use "ohlcv_with_cache" for further pairlists
4bcf2c423 Don't tick on ttl cache
7b36a0fc4 Add explicit test for ohlcv_with_cache
bcfe7ef54 Refactor ohlcv caching to exchange class
8033faa2f Update pairlist cache behavior in VolumePairList
3f3760c0a Use Markdown V1 - update tests
4761bf242 Change enter_tag, exit_reason, mix_tag performance messages from HTML to Markdown to fix some string encoding issues.
c0da1b692 Fix edge-case when calculating cagr
a0b7df70d Added escaping to enter and exit tags on telegram performance messages.
60b12c1d9 Double newlines between functions ...
fd48991fb Fix duplicate parentheses
1696aa391 Adjust tests for new fields
fb54c9ffe Add open_fill_date stuff to json schema
0f85ef099 Simplify trade_model serializations
c6d1c1a98 Add dt_ts_none helper
c1d718484 Adjust for ccxt exception hierarchy change
a22181d72 Enable caching for "filter only" Volumepairlist
7f7e9ec87 Add additional test case for VolumePairlist in range mode
6c9b9e91e enhance volumpairlist range test
d01e9cf29 Improve log message
86da9cb65 Simplify some pairlist conditions
57fd0e379 Clarify processing_mode for RemotePairlist
280737447 Don't load empty dataframes - skip these
3d6079ae1 Add debug output showing the pair to be converted
f2a731201 Update sqlalchemy pre-commit
72290365d telegram: ensure msg update test uses the correct edit_message_text call
fd737af69 use query.edit_message_text to simplify telegram class
0740a1339 Bump sqlalchemy from 2.0.25 to 2.0.26
0ba27ddee Bump the pytest group with 2 updates
2c1ea2d25 Bump tensorboard from 2.15.1 to 2.15.2
8ca905b45 Bump python-telegram-bot from 20.7 to 20.8
903ae3367 Bump mkdocs-material from 9.5.8 to 9.5.9
7d74a4c19 Bump tqdm from 4.66.1 to 4.66.2
7e8e36c6b Bump ccxt from 4.2.39 to 4.2.42
d5aec91a4 Bump pre-commit from 3.6.0 to 3.6.1
f10c8f9c3 Bump uvicorn from 0.27.0.post1 to 0.27.1
3aa2d0c30 Slightly improve memory-usage of kraken-convert
a83b5abb5 Allow wildcards for pairs filter
f89147fd4 Allow limiting kraken pairs to `--pairs` selection
adf63a45c Align new-config  documentation examples
ce6b62f86 Bump numpy from 1.26.3 to 1.26.4
01a00ad04 Bump nbconvert from 7.14.2 to 7.16.0
9f449dd34 Bump ruff from 0.2.0 to 0.2.1
68fd7d7ff Bump mkdocs-material from 9.5.7 to 9.5.8
a0c246fa9 Bump ccxt from 4.2.35 to 4.2.39
7223a6c50 Bump pre-commit/action from 3.0.0 to 3.0.1
bf1f08cd2 chore: add dependency groups for regular updates,
3e5a572fc Allow int as trade-id parameter
43bab85b8 fix strategy-updater docs
d2e9d36de chore: Update ordering of requirements in setup.py
e50fac34a Bump technical to 1.4.3
8d0250407 chore: update pre-commit hooks
4aef5676d update tool.ruff configuration to match 2.0 version
73e2e034a Remove unused argument
b4f030fd5 Bump pydantic from 2.5.3 to 2.6.1
b9245aef2 Bump orjson from 3.9.12 to 3.9.13
646aca7a3 Bump fastapi from 0.109.0 to 0.109.2
a675d2b02 Bump cryptography from 42.0.1 to 42.0.2
667a8cc59 Bump peter-evans/create-pull-request from 5 to 6
e773276dd Bump ruff from 0.1.15 to 0.2.0
87e813a3d Bump mkdocs-material from 9.5.6 to 9.5.7
5114be42c Bump urllib3 from 2.1.0 to 2.2.0
440382ae6 Bump ccxt from 4.2.25 to 4.2.35
ab7364c62 Bump aiohttp from 3.9.2 to 3.9.3
696118268 Bump uvicorn from 0.27.0 to 0.27.0.post1
cb2aaa7bb Fix wording fully.
35e1421d5 Reduce whitespace
0f9e84658 Update Tests data to work with new cached levtiers
2989b4276 Update cached binance leverage tiers
3711fa509 Improve formatting of leverage
c5948693a enable sub-minute backtest detail timeframes
846948499 chore: Split stoploss tests from freqtradebot
57df7d9ec chore: convert test dir to package
80f6fbbae chore: Move bot-related tests to test subdir
0d14b7a80 perf: only create detail timedelta object once for detail backtests
ad121c19b Allow <1m timeframes for utility modes
67c3bad97 Fix misspelled comment
0bc5c876c Fix GITHUB_REF variable interpolation in ci.yml
13ee90725 Fix syntax error
7082a8073 add debugging for GITHUB_REF
cd484bd48 Update extract-branch-name to new syntax using GITHUB_OUTPUT
d1a96af5e Add ft_order_Tag to backtest test
6ba896609 chore: Add minified parameter docstring to to_json method
78a1c7247 keep ft_order_tag for backtest responses
0fa0f49b7 Add adjustment order tagging in strategy callbacks docs
6806fab1b Fix migration not triggering
79b8496f3 Fix backtesting not setting entry_tag out of position adjustments
d664e7683 Add some tests
398b93bee Fix rpc test
2d704a77b Improve formatting
830a004df Move response handling to interface wrappermethod
535ff387f add order_tag handlig to running bot
95e51bf81 allow adjust_trade_position to return tuples in backtesting
e8288a34c add ft_order_tag to backtesting
39ffee381 Improve type hint
ccd4c715c add order-tag to serialize / unserialize methods
d82bfc9fa Add order_tag to orders model
c59ae30e3 chore: Add minified parameter docs to to_json method
cfc6d3b32 Apply "Dependencies" label to pull requests
d219983f5 Bump ruff version
6c27b27d4 Bump version to 2024.2-dev
36d4f10a6 chore: update pre-commit hooks
470a239e8 Formatting ...
01baea8aa Test exceptions / errors
4a580fc72 Add test validating cache
d691ffe9d Test more diff. scenario
eb7fbb009 Improve doc wording
63aac1a2c update docs
17af69435 remove mode, add max_rank, modify test
b02e15b16 Bump lightgbm from 4.2.0 to 4.3.0
23ac9e145 Fix generator test
b72078e76 use get_pair_base_currency
076ca7520 Slightly refactor pairlist test
132e143b9 Minor comment fix
f8dc161ab add 2 more final tests
e0f7b62b5 fix initial tests
c854cef31 fix precommit
006639820 add simple test
bf17236e9 fix typo in the docs
60812983e fix error
bbec51685 remove can_filter, and use log_once
ad0f88796 fix: logical error
e76888882 Fix typehint
3ab226a09 Remove unused import
58058f019 Fix migration test
6eaf42fe3 Default order_date to dt_now if it's not set via ccxt and wasn't previously set.
88ba82d4f Fix more tests
acbea4e26 Fix some tests after update_stoploss_date removal
b9a43b8e2 Don't store 'stoploss_last_updated' explicitly
59b348657 Update migrations
9f3c6f2dc Fix some tests and comments
de91261f7 fix pre-commit
e8fcac491 use number_assets instead of limit
95af462e8 fix pre-commit
d3506c249 update docs
bc8c5e743 rename to PairList
ef8712f4d tidy up
fdf9cc1b7 tidy up codes
442ca86d1 add market check
d578c910b remove unused lines
5bb4824aa add log print to see the time
f29fcb31e debug
8055140e6 simplify code
96a6c00ac add mode
09cb6cb02 remove debug
1f0a2ab24 forgot ()
35467619c add logger
bb684dd61 empty pairlist
adf07dd3e remove cache for noe
ef528fa69 option B
e10ab8c54 test gen_pairlist
a5862dcc4 add log message
1cd08c96a filter the pairlist
2eb3b73a9 cut the list to top x
70cc2942d wrong arg name
1e4920059 early stage of marketcapfilter
dc9c4da95 Improve integration test stability
14660f54f Remove duplicate call to update_trade_state
e19908328 Fix test ...
206809d2e Update emergency sell test
501e256c5 Fix further stoploss test
f0073078e Fix stop order test
a39b329e3 Fix line-length
68f940238 Fix further test
600e311b3 Fix test test_handle_stoploss_on_exchange_custom_stop
33bd433c2 Don't run against all orders, only consider open sl orders.
1db473264 Fix some more tests
ae3f62cf9 Fix RPC tests
cbfebd397 Use a trade for test that actually has an open stop order
c6ffe82a7 Update more tests
642714493 Fix stoploss test
c35b308ad Fix some tests
28e2bfaf1 Fix types of "has" calls
15058d3ce Add type hints to manage_trade_orders,
8234879b5 stoploss_order_id removal tests
b33a9059a Fix some more tests
13780d596 Remove further usage
41e40e621 Update some initial tests
c2b32769a Remove further occurance in bot file
e8be011e2 update manage_trade_stoploss_orders: remove unrelevant TODO
aaa82e1fa remove all occurence of stoploss_order_id in trade_model, update api schemas, update rpc_delete
2bb68ca53 remove stoploss_order_id from LocalTrade class
df8f1b932 update manage_trade_stoploss_orders description
9d82de15d first updated proposition of handle_stoploss_on_exchange, add sl_orders helper
ea828ccb4 remove legacy sl management code from create_stoploss_order
2565d509a remove legacy sl management code from handle_insufficient_funds
d5a075905 add open_sl_orders helper, use it in cancel_stoploss_on_exchange
9214af690 update cancel_stoploss_on_exchange to cancel all sl orders of trade
cac777cb2 add property has_open_sl_orders to trade model

Don't miss a new freqtrade release

NewReleases is sending notifications on new releases.