Commit Graph

1191 Commits

Author SHA1 Message Date
Reigo Reinmets
e50b07ecb4 Make code compatible. 2022-01-11 12:05:57 +02:00
Reigo Reinmets
94f2c99989 Temporary fix for lazy loading. Probably we can do it better. 2022-01-11 11:43:32 +02:00
Reigo Reinmets
fbf026ac43 Fix sorting of imports. 2022-01-10 20:43:57 +02:00
Reigo Reinmets
26f2db4777 Fix notify_enter attempting to fetch rate during testing. 2022-01-10 20:30:32 +02:00
Reigo Reinmets
91b89c8c42 Improve docs, fix telegram message to show current rate. 2022-01-08 21:30:42 +02:00
Reigo Reinmets
195d601b8e Fix notification message showing "Current rate" as the initial buy order desired rate. 2022-01-08 17:41:59 +02:00
Reigo Reinmets
0bca07a32a Added min_stake, max_stake. Removed pair as its included in trade. 2022-01-08 17:20:02 +02:00
Sam Germain
c61acb9f19 removed rename todos 2022-01-08 03:09:47 -06:00
Matthias
6ad521a0f7 Update apply_fee_conditional with note about futures 2022-01-06 10:22:28 +01:00
Sam Germain
3d22497177 add warning for futures dust to freqtradebot.apply_fee_conditional 2022-01-05 00:57:36 -06:00
Matthias
711a6a6dbc Merge branch 'develop' into pr/xataxxx/6079 2022-01-02 22:21:41 +01:00
Sam Germain
33ab3c1bea Removed some todo-lev comments 2022-01-01 14:10:24 -06:00
Matthias
ddfbe55e7c Merge branch 'develop' into feat/short 2022-01-01 19:16:49 +01:00
Matthias
c06496e66f Update some more TODO-lev's 2021-12-31 16:49:47 +01:00
Matthias
39f8c5719b Fix exception on exchange shutdown 2021-12-31 11:24:56 +01:00
Aezo Teo
1f773671ed updated tests and telegram 2021-12-29 21:24:12 +08:00
Reigo Reinmets
4b654b2713 Reduce logging. 2021-12-27 19:48:18 +02:00
Reigo Reinmets
2a728c676e Improve documentation. Fix bug. 2021-12-27 19:41:33 +02:00
Matthias
17f037cec6 Extract order_fee handling from update_trade_state 2021-12-27 16:07:43 +01:00
Reigo Reinmets
bc8fc3ab09 We can actually call recalc_open_trade_value less since it's being called eventually anyway. 2021-12-26 20:09:18 +02:00
Reigo Reinmets
bd5520bee2 Adjust comments, fix stoploss_on_exchange for slower closed orders. 2021-12-26 20:03:10 +02:00
Matthias
d3f3c49b13 Fix minor "gotchas" 2021-12-26 15:29:10 +01:00
Reigo Reinmets
de79d25caf Refactoring to use strategy based configuration 2021-12-24 12:38:43 +02:00
Reigo Reinmets
ac690e9215 Remove unnecessary returns. 2021-12-23 18:49:11 +02:00
Reigo Reinmets
2e23e88fc1 Re-add back the log i accidentally removed. 2021-12-22 11:49:43 +02:00
Reigo Reinmets
d70ddeef9a Remove whitespace. Darn IntelliJ. 2021-12-22 11:43:48 +02:00
Reigo Reinmets
e439ae1fea Update wallet balance on every order close, not only trade close 2021-12-22 11:20:03 +02:00
Reigo Reinmets
c9243fb4f6 Use buy side for price since mostly used for DCA. 2021-12-20 22:45:46 +02:00
Reigo Reinmets
f6d36ce56b Fix the dca order not being counted bug. 2021-12-20 22:07:42 +02:00
Reigo Reinmets
5da38f3613 Fix typo. Make sure trade is market open. 2021-12-19 10:36:47 +02:00
Reigo Reinmets
db2f0660fa Some more compatibility fixes. 2021-12-18 11:15:59 +02:00
Reigo Reinmets
b094430c26 Restructure for less complexity. Flake8 2021-12-18 11:01:06 +02:00
Reigo Reinmets
cc28f73d7f Hopefully fix orders being left lingering and trade not updating once they are complete 2021-12-17 22:29:41 +02:00
Reigo Reinmets
462270bc5a Fix a case where the amount was not recalculated. Added additional temporary logging. 2021-12-16 22:57:56 +02:00
Reigo Reinmets
7200659b35
Merge branch 'freqtrade:develop' into dca 2021-12-15 23:17:44 +02:00
Matthias
f9aa36f291 Don't hard-fail when executing emergency sell fails
closes #6068
2021-12-15 19:37:35 +01:00
Reigo Reinmets
9be29c6e92 Theoretically fix second order timeout/canceling deleting the whole order. 2021-12-13 20:44:18 +02:00
Reigo Reinmets
468076cf54 This has to be reset since otherwise it will not handle live limit orders after first buy. 2021-12-13 20:32:13 +02:00
Reigo Reinmets
d4b31263ca Fix open rate being None formatting error. 2021-12-13 13:54:01 +02:00
Reigo Reinmets
6f6e7467f5 Fix potential problem. 2021-12-13 11:17:24 +02:00
Reigo Reinmets
1362bd9626 Fix potential problem. 2021-12-13 02:46:37 +02:00
Reigo Reinmets
2c3e5fa080 Remove extra logging. 2021-12-13 02:30:29 +02:00
Reigo Reinmets
1017b68af9 Fix some unit-tests. Use common trade entry code. 2021-12-13 02:27:09 +02:00
Reigo Reinmets
71147d2899 Attempt to support limit orders for position adjustment. 2021-12-11 18:25:05 +02:00
Reigo Reinmets
f11a40f144 Improve documentation on adjust_trade_position and position_adjustment_enable 2021-12-11 17:14:04 +02:00
Reigo Reinmets
f97662e816 Add position_adjustment_enable config keyword to enable it. 2021-12-11 00:28:12 +02:00
Reigo Reinmets
c179951cca Expect stake_amount, not actual amount of pair from strategy for DCA. 2021-12-10 20:42:24 +02:00
Reigo Reinmets
fde6779873 Some code improvements. Still some bugs. 2021-12-09 14:47:44 +02:00
Reigo Reinmets
fd875786fd Initial very crude DCA implementation attempt. Very alpha.
No backtesting support.
2021-12-07 11:16:11 +02:00
Matthias
f71b7a4e76 Merge branch 'develop' into feat/short 2021-12-02 06:53:15 +01:00
Matthias
5ce1eeecf5 Reorder messages to be sent in correct order
buy first, then buy fill,
sell first, then sell fill.
2021-12-01 19:57:24 +01:00
Matthias
67f3570bf3 Merge branch 'develop' into feat/short 2021-12-01 07:21:36 +01:00
Matthias
542963c7a6 Reduce code complexity by combining buy and buy_fill methods 2021-11-30 19:45:20 +01:00
Matthias
80ed5283b2 Add forcesell market/limit distinction 2021-11-27 09:10:18 +01:00
Matthias
338fe333a9 Allow forcebuy to specify order_type 2021-11-24 20:20:58 +01:00
Matthias
c26c0b6822 Merge branch 'feat/short' into short_buy_tag_compat 2021-11-21 19:31:59 +01:00
Matthias
fb519a5b39 Add comment with reasoning to ignore leverage in min_amount calculation 2021-11-21 10:28:40 +01:00
Matthias
36deced00b Remove more buy_tag references 2021-11-21 09:55:10 +01:00
Matthias
7d77aff289 Add some compatibility around buy_tag 2021-11-21 09:24:20 +01:00
Matthias
9aed76ba17 Integrate leverage() to freqtradebot 2021-11-19 19:23:48 +01:00
Matthias
f40221dd9f Merge branch 'develop' into feat/short 2021-11-18 20:20:01 +01:00
Matthias
8638e6fe47 Simplify tradingmode parsing 2021-11-18 19:58:44 +01:00
Sam Germain
e7fad04eb9 Merge branch 'feat/short' into funding-fee-dry-run 2021-11-14 03:15:22 -06:00
Sam Germain
430aa0903f Removed redundent TODO-levs 2021-11-13 19:45:41 -06:00
Matthias
6b40792f80
Merge branch 'feat/short' into funding-fee-dry-run 2021-11-12 08:06:29 +01:00
Sam Germain
c8c2d89893 exchange.get_funding_fees returns 0 by default 2021-11-11 19:10:56 -06:00
Sam Germain
592b7e0ce3 All test_update_funding_fees tests pass 2021-11-11 17:49:32 -06:00
Matthias
f8d30abd79 Handle order returns that contain trades directly
binance market orders - and potentially other exchanges
2021-11-10 19:43:36 +01:00
Sam Germain
b87f8e7034 Removed unnecessary todo comments 2021-11-10 00:59:53 -06:00
Matthias
23a566b478 validate_stake_amount should not be a private method 2021-11-10 06:38:24 +01:00
Sam Germain
bea37e5ea3 moved dry run check for funding fees to exchange 2021-11-08 01:58:09 -06:00
Matthias
1dd6872b80
Merge pull request #5843 from Theagainmen/patch-2
Update warning message open trades
2021-11-07 11:07:16 +01:00
Matthias
4595c1e73c Slightly reformat to simplify new change 2021-11-07 10:55:11 +01:00
Sam Germain
252e45ebf2 Merge branch 'feat/short' into funding-fee-dry-run 2021-11-06 22:46:00 -06:00
Sam Germain
48b34c8fd0 Fixed issues with funding-fee being miscalculated on trade objects in freqtradebot 2021-11-06 21:03:18 -06:00
Matthias
ebc38159b8 Merge branch 'develop' into feat/short 2021-11-06 15:24:52 +01:00
Sam Germain
cb97c6f388 Updated time to utc in test_update_funding_fees, some funding rate key errors because a timestamp is likely not in utc 2021-11-06 05:56:58 -06:00
Matthias
7a907a7636 Add Emergencyselling after X timeouts have been reached 2021-11-06 11:48:49 +01:00
Matthias
d99eaccb5a Fix exception when using okex
closes #5842
2021-11-05 19:47:13 +01:00
Theagainmen
2115a3ed12
Update warning message open trades
This shouldn't confuse user when just reloading their bot.
2021-11-05 18:49:10 +01:00
Sam Germain
8a4236198f Added test_update_funding_fees in freqtradebot, test currently fails 2021-11-03 22:52:37 -06:00
Matthias
6b90b4a144 Test "get-signal" 2021-10-31 10:53:30 +01:00
Matthias
dffe76f109 Don't double-loop to generate profits 2021-10-31 10:49:56 +01:00
Matthias
17432b2823 Improve some stylings 2021-10-24 09:15:05 +02:00
Sam Germain
3eda9455b9 Added dry run capability to funding-fee 2021-10-23 21:59:47 -06:00
Matthias
1267374c8a Small fixes to tests 2021-10-20 19:21:38 +02:00
theluxaz
905f3a1a50 Removed exit_tag from Trade objects. 2021-10-20 17:58:50 +03:00
theluxaz
1fdc4425dd Changed exit_tag to be represented as sell_reason 2021-10-20 01:26:15 +03:00
theluxaz
69a59cdf37 Fixed flake 8, changed sell_tag to exit_tag and fixed telegram functions 2021-10-18 23:56:41 +03:00
Sam Germain
053aecf111 reformatted check_handle_timedout 2021-10-18 01:01:29 -06:00
Sam Germain
e4682b78c5 updates suggested on github 2021-10-18 00:28:32 -06:00
Sam Germain
bcbe8f229c Merge branch 'feat/short' into lev-freqtradebot 2021-10-13 19:02:57 -06:00
theluxaz
96cab22a8c Fixed some bugs for live sell_tags. 2021-10-14 01:03:15 +03:00
theluxaz
0f670189eb quick typo fix 2021-10-13 02:14:07 +03:00
theluxaz
b151cf032b Merge branch 'develop' of https://github.com/theluxaz/freqtrade into main
# Conflicts:
#	freqtrade/freqtradebot.py
#	freqtrade/optimize/backtesting.py
2021-10-13 02:01:26 +03:00
theluxaz
02243b1a2b minifix 2021-10-13 01:34:29 +03:00
theluxaz
80b71790bc Added some bigfixes for sell_tag 2021-10-13 01:22:53 +03:00
theluxaz
b898f86364 Added sell_tag and buy/sell telegram performance functions 2021-10-13 00:02:28 +03:00
Matthias
f290ff5c9a Re-add schedule.run_pending 2021-10-12 19:10:38 +02:00
Sam Germain
86cbd0039f Fixed bugs 2021-10-12 02:24:35 -06:00
Matthias
70000b5843 Use scheduler as Object, not the automatic Singleton 2021-10-11 20:28:23 +02:00
Sam Germain
d5a1385fdc Changes described on github 2021-10-11 04:14:59 -06:00
Sam Germain
855b26f846 Parametrized more time machine tests in test_update_funding_fees 2021-10-11 01:31:21 -06:00
Sam Germain
3b962433fb Switched shcedule to perform every 15 minutes 2021-10-10 02:55:04 -06:00
Sam Germain
81cf4653a9 Fixed failing test_process_trade_creation, test_order_book_depth_of_market, test_handle_stoploss_on_exchange_trailing 2021-10-09 17:35:57 -06:00
Sam Germain
94f0be1fa9 Added is_short=(signal == SignalDirection.SHORT) inside freqtradebot.create_trade 2021-10-09 16:32:22 -06:00
Sam Germain
85e86ec09d Fixed failing test_check_handle_timedout_buy_usercustom 2021-10-09 15:14:33 -06:00
Sam Germain
b83933a10a Added gateio and kucoin funding fee times 2021-10-09 13:09:11 -06:00
Sam Germain
057b048f31 Started added timezone offset stuff 2021-10-09 12:27:40 -06:00
Sam Germain
795d51b68c Switched scheduler to get funding fees every hour for any exchange 2021-10-09 11:27:26 -06:00
Sam Germain
39be675f1f Adjusted time to utc in schedule 2021-10-09 10:52:07 -06:00
Sam Germain
e367f84b06 Added more update_funding_fee tests, set exchange of default conf 2021-10-07 04:20:53 -06:00
Sam Germain
29e582c6d9 Fixed time format for schedule and update_funding_fees conf is mocked better 2021-10-05 01:42:46 -06:00
Sam Germain
928c4edace removed side from execute_trade_exit 2021-10-03 23:22:51 -06:00
Sam Germain
2a2b759419 patch_get_signal test updates 2021-10-03 17:41:01 -06:00
Sam Germain
70db228f24 Merge branch 'feat/short' into funding-fee 2021-10-03 02:15:54 -06:00
Sam Germain
09ef0781a1 switching limit_buy_order_usdt and limit_sell_order_usdt to limit_order(enter_side[is_short]) and limit_order(exit_side[is_short]) 2021-10-03 01:52:58 -06:00
Sam Germain
3823ca4162 Merge branch 'test-freqtradebot-usdt' into lev-freqtradebot 2021-10-02 20:26:52 -06:00
Sam Germain
87ff65d31e Fixed failing test_handle_protections 2021-10-02 04:06:22 -06:00
Sam Germain
b3656ddfc9 Merge branch 'feat/short' into lev-freqtradebot 2021-10-02 03:36:32 -06:00
Sam Germain
e8b4cf6eaa Merge branch 'develop' into feat/short 2021-10-02 03:15:12 -06:00
Matthias
5f23af5802 Rename update_open_trades to clarify it's only called at startup 2021-09-30 07:24:16 +02:00
Sam Germain
157223f6ab datetime.utc -> datetime.now(timezone.utc) 2021-09-29 22:32:02 -06:00
Sam Germain
af6afd0ac2 Revert "Replace datetime.utcnow with datetime.now(timezone.utc)"
This reverts commit c4ac876183.
2021-09-29 22:27:21 -06:00
Sam Germain
c4ac876183 Replace datetime.utcnow with datetime.now(timezone.utc) 2021-09-29 22:16:44 -06:00
Sam Germain
545b62d746 Merge branch 'feat/short' into funding-fee 2021-09-27 23:34:09 -06:00
Sam Germain
1a132758d0 merged with feat/short 2021-09-27 23:26:20 -06:00
Matthias
6fb0d14f80 changed naming for signal variable 2021-09-27 07:07:49 +02:00
Matthias
a926f54a25 Add "side" parameter to custom_stake_amount 2021-09-26 19:35:54 +02:00
Matthias
84e013de2d Update confirm_trade_entry to support "side" parameter 2021-09-26 19:33:22 +02:00
Matthias
9a6d8977de
Merge pull request #5605 from peterwilli/fix-sell-cancel-webhook-error
fixed webhook "unsupported format string passed to NoneType." error
2021-09-23 20:17:35 +02:00
Peter Willemsen
692e91a26d changed close date from datetime.utcnow() to datetime.now(timezone.utc) 2021-09-23 10:28:15 +02:00
Peter Willemsen
b0de4d333e fixed webhook error 2021-09-21 23:20:40 +02:00
Matthias
dd0db7ee5d Split protection-notification into global and per-pair 2021-09-20 19:23:40 +02:00
Matthias
a0fb43c6ca Add pairlock-notification 2021-09-20 19:12:59 +02:00
Sam Germain
d7c7448632 merged lev-freqtradebot with lev-strat 2021-09-19 19:06:43 -06:00
Sam Germain
778f0d9d0a Merged feat/short into lev-strat 2021-09-19 17:44:12 -06:00
Sam Germain
60a678fea7 merged with feat/short 2021-09-19 17:02:09 -06:00
Rokas Kupstys
5dc78a0c66 [SQUASH] Get rid of _initialize() and fix informatives for dynamic pairlists. 2021-09-18 10:48:53 +03:00
Rokas Kupstys
dfa61b7ad2 [SQUASH] Fix informatives for each pair not being created because dataprovider was not available.
Fix not being able to have informative dataframe of a pair in whitelist.
2021-09-18 10:48:53 +03:00
Rokas Kupstys
1fdb656334 Add a decorator which can be used to declare populate_indicators() functions for informative pairs. 2021-09-18 10:48:18 +03:00
Matthias
4d558879e9 Merge branch 'feat/short' into pr/samgermain/5378 2021-09-17 19:33:35 +02:00
Sam Germain
4c91126c49 some short freqtradebot parametrized tests 2021-09-16 03:23:45 -06:00
Sam Germain
98b00e8daf merged with feat/short 2021-09-15 22:28:10 -06:00
Sam Germain
5f6384a961 Added tests to freqtradebot 2021-09-14 17:18:57 -06:00
Sam Germain
49acfc887f merged with lev-exchange 2021-09-13 00:00:22 -06:00
Sam Germain
2aaf60205e Merge branch 'feat/short' into lev-exchange 2021-09-12 23:41:34 -06:00
Sam Germain
83e1067af7 leverage to exchange.create_order 2021-09-12 23:39:08 -06:00
Sam Germain
9de946fdac added collateral and trading mode to freqtradebot and leverage prep 2021-09-10 23:39:31 -06:00
Sam Germain
694460c8e0 merged with feat/short 2021-09-10 23:16:12 -06:00
Sam Germain
cb155764eb Short side options in freqtradebot 2021-09-10 11:47:27 -06:00
Sam Germain
9f16464b12 Removed unnecessary TODOs 2021-09-10 10:32:46 -06:00
Sam Germain
83bd674ba7 Added side to execute_trade_exit 2021-09-10 03:25:54 -06:00
Sam Germain
6486b904b5 merged with feat/short 2021-09-10 02:57:17 -06:00
Sam Germain
f4e26a616f Exchange stoploss function takes side 2021-09-09 15:47:49 -06:00
Sam Germain
1f38088d7b Merged with develop 2021-09-09 13:56:46 -06:00
Sam Germain
ee874f461c Removed TODO: change to exit-reason, exit_order_status 2021-09-09 13:14:48 -06:00
Sam Germain
f5b01443ad buy/short -> entry order, sell/exit_short -> exit order 2021-09-09 02:10:12 -06:00
Sam Germain
d54117990b Added funding_fee method headers to exchange, and implemented some of the methods 2021-09-09 01:19:34 -06:00
Sam Germain
8bcd444775 real-time updates to funding-fee in freqtradebot 2021-09-08 14:15:25 -06:00
Sam Germain
695a8fc73b comment updates, formatting, TODOs 2021-09-08 03:09:39 -06:00
Sam Germain
1379ec7402 Updated log messages for freqtradebot 2021-09-08 03:04:01 -06:00
Sam Germain
b2f289e404 Fixed freqtradebot failing tests 2021-09-08 02:16:25 -06:00
Sam Germain
a1c9a4d619 freqtradebot local name changes 2021-09-08 02:09:36 -06:00
Sam Germain
362dc20406 notify_buy -> notify_enter, notify_sell -> notify_exit 2021-09-08 02:06:01 -06:00
Sam Germain
e1f846f22f sell_lock -> exit_lock 2021-09-08 02:04:31 -06:00
Sam Germain
e0092a85e9 handle_cancel_buy/sell -> handle_cancel_enter/exit 2021-09-08 02:04:20 -06:00
Sam Germain
be93c75e44 reupdate_buy_order_fees -> reupdate_enter_order_fees 2021-09-08 02:03:40 -06:00
Sam Germain
aac05029e1 safe_sell_amount -> safe_exit_amount 2021-09-08 02:03:24 -06:00
Sam Germain
5dda227342 comment change 2021-09-08 01:53:42 -06:00
Sam Germain
53006db2b7 Updated log messages for freqtradebot 2021-09-08 01:48:22 -06:00
Sam Germain
3057a5b9b8 freqtradebot local name changes 2021-09-08 01:40:22 -06:00
Sam Germain
786dcb50eb safe_sell_amount -> safe_exit_amount 2021-09-08 01:20:52 -06:00
Sam Germain
323683d44f some more TODOs 2021-09-08 01:18:53 -06:00
Sam Germain
8ad53e99ce reupdate_buy_order_fees -> reupdate_enter_order_fees 2021-09-08 01:14:16 -06:00
Sam Germain
3656625747 comment updates, formatting, TODOs 2021-09-08 01:12:08 -06:00
Sam Germain
88a5a30a50 handle_cancel_buy/sell -> handle_cancel_enter/exit 2021-09-08 00:53:09 -06:00
Sam Germain
528d1438c9 sell_lock -> exit_lock 2021-09-08 00:49:04 -06:00
Sam Germain
8f38d6276f notify_buy -> notify_enter, notify_sell -> notify_exit 2021-09-08 00:45:55 -06:00
Sam Germain
e13b0414d8 Merge branch 'lev-strat' into lev-freqtradebot 2021-09-08 00:00:53 -06:00
Sam Germain
f5248be043 Changed funding fee tracking method, need to get funding_rate and open prices at multiple candles 2021-09-06 15:47:24 -06:00
Sam Germain
7eab855476 Merge branch 'feat/short' into lev-exchange 2021-09-04 20:15:36 -06:00
Sam Germain
d6d5bae2a1 New funding fee methods 2021-09-04 16:33:06 -06:00
Sam Germain
b854350e8d Changed funding fee implementation 2021-09-04 16:31:09 -06:00
Sam Germain
b7891485b3 Created FundingFee class and added funding_fee to LocalTrade and freqtradebot 2021-09-04 16:20:07 -06:00
Matthias
2e50948699 Fix some tests 2021-09-04 20:23:51 +02:00
Matthias
ca44d2e092 Merge branch 'feat/short' into pr/samgermain/5378 2021-09-04 19:54:34 +02:00
Matthias
5184cc7749 Merge branch 'develop' into feat/short 2021-09-02 07:03:14 +02:00
Matthias
ef9c1addcf Add expired to list of canceled statuses 2021-08-27 19:54:53 +02:00
Matthias
c4be52d1c3 rename execute_sell to execute_trade_exit 2021-08-26 06:53:42 +02:00
Matthias
63844d39f6 Rename execute_buy to execute_entry 2021-08-26 06:48:26 +02:00
Matthias
6b93c71d15 Small refactorings, use only enter_long columns 2021-08-25 06:49:06 +02:00
Matthias
b951f59f89 Fix patch_get_signal 2021-08-24 21:03:13 +02:00
Matthias
6524edbb4e Simplify should_exit interface 2021-08-24 20:47:54 +02:00
Matthias
f3b6a0a797 Fix some type errors 2021-08-24 20:40:35 +02:00
Matthias
9a03cb96f5 Update get_signal 2021-08-24 20:24:51 +02:00
Matthias
46285cd77e Fix some namings in freqtradebot 2021-08-24 20:07:39 +02:00
Matthias
b40f985b13 Add short-exit logic to backtesting 2021-08-24 20:02:40 +02:00
Matthias
957551ea97 Merge branch 'develop' into feat/short 2021-08-24 06:25:06 +02:00
Matthias
56759cea7b Add "high fee rate" blocker to fees from trades
part of #5415 (potentially fixing this)
2021-08-22 14:37:45 +02:00