github freqtrade/freqtrade 2024.1

latest releases: 2024.4, 2024.3, 2024.2...
3 months ago

Highlighted changes

  • Enhanced telegram Entry / exit notifications.
  • Remove deprecated sell_reason (in favor of exit_reason)from rpc methods (mainly impacts webhook configurations).
  • FreqUI: Add timeframe / timerange to load backtest screen.
  • FreqUI: Improved log visualization.
  • FreqUI: fixed mobile height issues, resulting in odd behavior and missed functionality.
  • Kraken - support different order types (PO, IOC).
  • Kraken: Restore stoploss on exchange functionalities.
  • Huobi - Rename to HTX - as the exchange rebranded.
  • Improved list-data command output.
  • Allow full exits through adjust_trade_position() callback.

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
4342aa3bf Update version number to 2024.1
7af524ff9 Bump aiohttp from 3.9.1 to 3.9.2
effe2b536 Bump cryptography from 41.0.7 to 42.0.1
0fa7f9e47 Bump types-requests pre-commit
84913f2ea Bump peter-evans/dockerhub-description from 3 to 4
1450d9e9c Bump mkdocs-material from 9.5.4 to 9.5.6
4394fd134 Bump uvicorn from 0.26.0 to 0.27.0
3a6393e2d Bump types-requests from 2.31.0.20240106 to 2.31.0.20240125
990f9e03f Bump pytest-asyncio from 0.21.1 to 0.23.4
0b549fc7f Bump ccxt from 4.2.21 to 4.2.25
589066593 Add BTC/USDT to test markets
99b11c088 add available_parameters
f42fd2580 Improve function naming better reflecting what it aims to do
a20fe8cd0 Update docs example box
c398504f2 fix tests
dd3fbfcfd + return type
f0562c391 remove debug, reduce duplicate code -> init_check, add docs example for save_to_file
027ce4337 refresh_period not necessary for a local file
fd2165852 extend error except, add saving to a file of processed pairlist + docs
8f0dbc6be Improve common mistakes docs
8d72ee358 Improve code styles ...
0077f3c9a Code style improvements
6aa4de4d2 Tests for enhanced list-data functionality
817aaa164 Enhance list-data (detailed) view with "candles" column
ea9c51570 use resample_freq where possible
2fe6fe14a Simplify volumepairlist footprint slightly
85dd371ee use prepared timedelta object for backtesting
55fe379e1 Bump ccxt from 4.2.15 to 4.2.21
96a8263c5 trades_to_ohlcv_multi test adjustment
79ecca3e4 Add test for trades-conversation on different dates
267f2e352 Add trades-generator
1ae3b1e62 Fix weekly resamples to ensure they're on monday.
34ac2dc9a Further improve ohlcv test
efe332a39 Fix wrong test comment
8fd2dcd25 Impove tests for yearly resample
48ea43f95 Fix yearly resample timeframe
6b78dac6f Re-align naming for resample_freq generator
0a40a345f use timeframe_as_resample_freq for trade_parallel analysis
656b32814 Have trade_converter use timeframe_as_resample_freq
c9c44a471 Extract resample_interval generation
5167f6936 Prepare converter to work on 1s data.
fdf88a801 Improve test showing that 1m and 1s conversion is identical.
087c59cfb Fix data generation bug with 3m data
83480d90f Extend test range to more timeframes
67abfcf4d Add generic ohlcv_to_dataframe_multi test to ensure code works for diff. timeframe ranges
00e4c5174 Prep conftest for 1s data generation
a1b93dc91 Improve call sequence
f1d002a73 chore: update pre-commit hooks
991a279b2 Removed duplicated key
5b879df2b Improve indentation
d19113800 restored accidentally deleted lines
85658bb63 Update rpi wheels for pyarrow 15.0.0
3b5c2ea0d Bump scipy from 1.11.4 to 1.12.0
06630a599 Bump psutil from 5.9.7 to 5.9.8
0f1e7ed65 Bump actions/cache from 3 to 4
fbb91ca33 Bump mkdocs-material from 9.5.3 to 9.5.4
713d9fdc8 Bump ruff from 0.1.13 to 0.1.14
3681e3e75 Bump nbconvert from 7.14.1 to 7.14.2
32d77f808 Bump pytest-random-order from 1.1.0 to 1.1.1
d58b941bf Bump jsonschema from 4.20.0 to 4.21.1
34df71026 Bump pyarrow from 14.0.2 to 15.0.0
f324f8775 Bump scikit-learn from 1.3.2 to 1.4.0
00f8f0526 Bump orjson from 3.9.10 to 3.9.12
3d5620a42 Bump uvicorn from 0.25.0 to 0.26.0
e704c2def shorten configuration code
d534f2014 Account for kraken specialcase in tests
612ec38e5 Don't skip trades if the exchange doesn't do inclusive filtering
ac5b12cfd Improve kraken pagination behavior
f9b6830b7 update fetch_trades info data to kraken response format
8a64f0b88 Fix fetch_trades tests
15da4aa9b Update tests for added fetch_trades arg
c16757509 Move extracting trade pagination id to fetch_trades
b56c663be Add regular / fallback test.
501a9a8c9 Improve error message, add test for trade_pagination_id validation
c333c9c5a Improve kraken trades pagination logic
11dd349c2 Update ccxt online test name to htx
d355f011d Invert exchange_class mapping
ef80772fc Rename class and tests
ff95adb2e Update supported exchanges, add mapping
5b1cda923 Update Huboi brandin to htx
50864c731 chore: improve documentation for plotting custom features
5bfda534b feat: allow custom user features to be plotted in backtesting (freqai)
73b30cf3f Update ta-lib documentation links
8cbdcbd50 Bump ccxt min version
42ea4821f Bump kraken to 4.2.15
b7ab7dd25 Update tests for new kraken stoploss behavior
c2d6ab2fa Add unified kraken stoploss settings
6069670ce Remove kraken custom stoploss handling
c248bb27e use safe_price for adjust_entry_price callback
a4d078efd chore: update pre-commit hooks
e18fbbd97 Clarify points as per comments
78ca939ae pin prompt-toolkit to compatible version in jupyter dockerfile
dc5c1e130 Bump ccxt from 4.2.9 to 4.2.14
91ceb5c19 Bump markdown from 3.5.1 to 3.5.2
d073692ca Bump nbconvert from 7.14.0 to 7.14.1
e1b8742b1 Bump ruff from 0.1.11 to 0.1.13
d866bb6f0 Bump fastapi from 0.108.0 to 0.109.0
2737de1fd Remove extra EOF newline
a41b72ca1 Add backtesting vs hyperopt result difference explanations
ea1b3c38f remove last utcnow usage
291478a97 Bump docker images to 3.11.7
29d2fc2e1 Skip freqAI tests on py3.12
59cc60776 Don't force-patch torch if it ain't installed.
c79502cb4 Pin torch to <3.12
f124f2daa Exclude further dependencies
026f98962 Don't install catboost on 3.12 for now
9a2ed3503 Run CI against 3.12
d412a8fc1 Simplify emc test setup
fbed3fad7 Fix non-asserting test
393df83a9 Implement enter_tag initialization to avoid futures warning
e967dfa14 Adjust api test after column expansion
4aab57ce6 Add test for pandas deprecation warning
5841c6543 Remove unused test param
338ff6626 Only load environment variables when config is allowed
629a6be26 Rename methods to make exposure explicit
4896e04c4 Improve formatting
a53adb95e Remove container-name from ft-jupyter compose file
6fc1884e8 Update link
cd392fbbd Slightly update formatting in arguments
bcebb4d80 Bump jinja2 from 3.1.2 to 3.1.3
cb9fa734d Improve test resiliance
3f27c2792 Remove trailing newline
883f50854 Add NoDBContext to pairlist evaluation functions
3caf964c4 Add NoDbContext context manager
7fcbe9788 Extract database cleanup functions to persistence package
225c94c0f Reduce log level in rpc default handler
a9287359a chore: update pre-commit hooks
962417bde Update typing to account for correctly typed sqlalchemy responses
34c183856 Bump Sqlalchemy in pre-commit
3b7288eda Bump sqlalchemy from 2.0.23 to 2.0.25
72c41ec2c Bump types-tabulate pre-commit
5be32cd80 Bump types-tabulate from 0.9.0.3 to 0.9.0.20240106
37dacdff0 Bump pre-commit dateutil
671ce25a2 Bump types-python-dateutil from 2.8.19.14 to 2.8.19.20240106
a8228f0ea Bump types-requests pre-commit
0b3126a0f Bump ruff from 0.1.9 to 0.1.11
4686d2202 Bump nbconvert from 7.13.1 to 7.14.0
2304f852f Bump ccxt from 4.2.2 to 4.2.9
68d2d24f2 Bump numpy from 1.26.2 to 1.26.3
67f608fb5 Bump types-requests from 2.31.0.20231231 to 2.31.0.20240106
1b70e9b07 Point users to the pair naming docs when download-data yields no pairs.
7c7ddb3b1 Fix improt sorting
69e9ab90d Adjust tests for new messaging scheme
28b555223 Improve entry message
b27f99dbc Add note about removing fiat_display_currency.
6121c7ed8 Remove pointless condition (freqtradebot only ever exists in dry/live modes).
394c260eb Update runmode to 'backtest' in some test cases
582f51ccd Add runmode "dry_run" to default configuration
74bb1a29b Fix indentation
ddb42879e Fix type errors
53b24ea69 Update webhook documentation
80071dd2d Adjust tests for improved telegram output
545096cc4 feat: improve telegram message formatting
9f682b582 Improve Coin formatter naming
209e7033c Fix tests for newly added field
7f69a0681 Use Type-hinting for telegram messages
20b2f2506 Add quote currency to entry/exit msgs
88524db29 Remove leading whitespace
e1ad87a56 Extract number-formatters from misc
65009373e add round_value incl. tests
7f84996c1 Send correct Profit for both exit types
90df6bcd5 Remove pointless parenteses
3237cad8c Fix test naming from sell to exit
2a11597ad Improve exit message wording
59ec3fd86 Always send order-type to exit notifications
685fef1ee Improve buy message FIAT formatting
690a3599d Simplify exit msg method further
e4977d4cb Don't assign the original message dict for no reason
7b78e66e7 Ajust some leverage calls
8726d6392 Remove unnecessary calculations for exit msg
5e9a929e9 Further simplify msg formatting
c3ce11c22 Simplify enter_tag call
0ab54b88c Improve leverage formatting
934e72656 Simplify exit message fiat handling
b950128c4 Update freqai-running.md
86a9968bd Fix bug in exit message formatting
2bceb35b7 Circumvent edge-case in exit notifications
e7eb1c132 Improve startup sequence to avoid certain timing errors
fdc573f2f Add rudimentary test for funding_rate fix
02d124b85 Improve naming of funding-rate migration
3eade3e8d Move binance_mig test file to utils
6cce45583 Test migrate_data wrapper
f028bdf34 Improve funding fee migration logic
983764ad0 Add "migrate funding fee timeframe" logic
a12f36879 Move binance migration to behind migrations gate
c9dd99a4b Enhance test to properly capture correct downloading of different futures types
67d3dca49 Fix funding-fee downloading in the wrong timeframe
d5d3188b9 Load "correct" timeframes (mark vs. funding fees)...
50287ce55 ensure funding_fee_timeframe is always set
3c1bbd961 Improve funding_fee_calc method structure
ec1b2e1da Remove further deprecated metric report
73970d27b Remove deprecated bt-output option
0224c50c9 remove sell_reason from msg types
b0fdf6ac5 Update Tests for removed sell_reason field
682b462d8 Remove sell_reason from exit notification fields
22307913d Reduce caching to 5min to speed up UI refreshes in case of open orders.
b9786b979 Better test rate-caching logic
abda629a7 Use time-machine for get_entry_rate test
a4fca5b1f Enhance test naming
903062d47 Improve if formatting
b6a71f2d2 __repr__ should use utc datetime...
7a6888dfd Split stoploss test into 2 for easier testing
f3da2c6fd Simplify and fix handle_stoploss_on_exchange test
ce63eb30a Remove unused test param
a9380f0d5 Update freqai.md
316812f42 Help direct people to freqai support
fa368a9a4 Improve trailing stoploss test with time_machine
9030e1041 Remove USDT from documentation about "supported crypto currencies".
2c3cef5de don't assume 'type' to be present at all times
e722d8145 Fake order response should contain order_id
10dbf4783 Improve exchange_response formatting
a2160e450 add exchange_response logging to funding_fee endpoint
842727202 Fix identifier_typos
c07f2caa4 Update config_freqai.example.json
f0e82592c Bump types-requests pre-commit
501f629c0 Bump pytest from 7.4.3 to 7.4.4
80dbb0dd0 Bump ast-comments from 1.2.0 to 1.2.1
0552df2fe Bump fastapi from 0.105.0 to 0.108.0
e4b843405 Bump pymdown-extensions from 10.5 to 10.7
d2802ad49 Bump ccxt from 4.1.98 to 4.2.2
a9906f078 Bump types-requests from 2.31.0.10 to 2.31.0.20231231
b17c0cd4a Add Note about minimal_roi time used
0575e222b Fix random test failure due to missing backtesting cleanup
1c5a699ae Fix typo and missing type def
292ef85d9 Add additional, optional arguments to metadata files
b3c9be1cd Refactor get_bt_resutlist to reduce code complexity
13e329f17 Align methods
b9f4a2354 Add documentation for kraken time-in-force
9746d3806 Add post-only order test for kraken
ae68d0203 Simplify test for kraken order creation
9896ddf71 Add Kraken TimeInForce support
f6de7d952 Add "wraps" handler to telegram wrapper
3a8752207 Fix odd db caching problem in telegram
7ccddb5d5 Fix typo
e9c04debf Fix tests due to new exit behavior
79e15591e Improve condition for last exit
b62661d8c Improve final exit message
e5e3002d4 Simplify exit message
e664527da Align backtest and bot method
063b55d41 Fix doc typo
ce7061c93 Bump version to 2024.1-dev
d78a5798e Fix further warning message due to old Parallel import
16958eaef Update sklearn import
2c5cca4be Reinforcement learning does support 3.11 just fine.
39b2a096a Ignore adjust_trade values that would invert position
3f44f56f6 Remove  bool from get_required_startup because its unused.
cd28244cf Add and optimized test cases to verify consitent timerange behaviour within freqai.
94363061a Attempt fix timerange problem
4f2d7b858 Slightly enhance logging for clarity
663b1e11f Add timeframe info into 'increase startup_candle_count' log message
2d6a49013 Fix duplicated data loading and timerange for populate_features
9e2e60e7a Correct conditions for remaining stake checking
bb2024f78 Add "full partial exit" logic to backtesting
e96f4f0e5 Improve adjust_trade_position documentation
6218d732b Only download tradable pairs
9f1599b7f fix pre-commit
e541c95c4 fix partial exit test
90332128b allow trade to be closed via partial exit call if remaining amount is exactly 0

Don't miss a new freqtrade release

NewReleases is sending notifications on new releases.