Commit Graph

823 Commits

Author SHA1 Message Date
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
9a82898d6b Merge branch 'develop' into feat/freqai 2022-08-09 06:22:57 +02:00
robcaulk
d830105605 *BREAKING CHANGE* remove unnecessary arguments from populate_any_indicators(), accommodate tests 2022-07-31 17:05:29 +02:00
Kavinkumar
a4bada3ebe
Partial exit using average price (#6545)
Introduce Partial exits
2022-07-31 14:19:04 +02:00
Matthias
845cecd38f Add stoploss or liquidation property 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
Matthias
70b7a254af Update some areas to use default docstring formatting 2022-07-24 16:51:48 +02:00
Matthias
8fa6e8b4ba Remove freqAI model bridge in favor of self.freqai 2022-07-23 17:08:05 +02:00
robcaulk
5559e605b8 small PR conversation resolutions 2022-07-22 17:46:14 +02:00
Matthias
f6bfd89cef Merge branch 'develop' into feat/freqai 2022-07-16 18:14:34 +02:00
Matthias
7d6b3d0e02 Update hyperopt param docs to be clear that non-conclusive parameters will be ignored 2022-07-11 08:17:16 +02:00
Matthias
e52f82b565 Add leverage to custom_stake_amount callback
closes #7047
2022-07-08 19:44:20 +02:00
robcaulk
a6077ac7f4 Merge feat/freqai into develop to get new features 2022-07-03 16:17:13 +02:00
robcaulk
4ff0ef7359 fix bug returning multiple targets for training 2022-07-03 12:15:59 +02:00
robcaulk
4d472a0ea1 merging datarehaul into scanning branch 2022-06-16 00:22:49 +02:00
Matthias
1ddd5f1901 Update docstring throughout the bot. 2022-06-09 19:41:08 +02:00
Matthias
a790bad1e4 Add entry_tag to leverage callback
closes #6929
2022-06-05 10:24:54 +02:00
Matthias
3549176370 Update missleading docstring
closes #6913
2022-05-31 17:52:45 +02:00
Matthias
8e2c7e1298 extract detect_parameters to separate function 2022-05-30 07:26:26 +02:00
Matthias
eaa656f859 Hyperoptable parameters can be instance attributes 2022-05-30 07:07:47 +02:00
Matthias
386d3e0353 Rename stop/roi loading method 2022-05-30 06:52:44 +02:00
Matthias
ad8ff10a05 Minor doc changes 2022-05-30 06:32:46 +02:00
Matthias
e6affcc23e Move parameter file loading to hyper-mixin 2022-05-29 16:39:52 +02:00
Matthias
1ee08d22d2 Delay parameter init
closes #6894
2022-05-29 16:39:52 +02:00
Matthias
537d10c627 Improve some typing 2022-05-25 20:43:43 +02:00
Matthias
3e66275c98 Refactor bot_start to separate function
to be reused further ...
2022-05-25 20:01:21 +02:00
Matthias
d6773bc32c
Merge pull request #6886 from freqtrade/fix/typing
Fix/typing
2022-05-24 19:41:59 +02:00
robcaulk
31ae2b3060 alleviate FutureWarning in sklearn about ensuring svm model features are passed with identical order 2022-05-24 14:46:16 +02:00
Matthias
7f3853bbcd
Merge pull request #6883 from freqtrade/makeProcessCandlesTrue
Change default value of process_only_new_candles to True since False …
2022-05-24 07:03:14 +02:00
Matthias
23e089061b
Merge pull request #6870 from freqtrade/should_exit_list
Should exit list
2022-05-24 06:57:50 +02:00
Matthias
0a713faca8 Fix some type errors 2022-05-24 06:54:16 +02:00
Matthias
f1a72e448a Align interfaces and strategy templates 2022-05-24 06:54:16 +02:00
Matthias
7f4161ff78 Add typehints to strategy wrapper 2022-05-24 06:54:16 +02:00
Matthias
42ae8ba6fb Refactor hyperopt parameters to separate file 2022-05-23 20:18:09 +02:00
robcaulk
5c4014ee62 Change default value of process_only_new_candles to True since False is an uncommon usecase for expert strategy devs 2022-05-23 10:24:58 +02:00
Matthias
3692fcd3d5 Improve exit signal sequence 2022-05-22 11:01:18 +02:00
Matthias
bdb904e714 Should_exit should return all sell signals 2022-05-22 10:17:49 +02:00
robcaulk
22bd5556ed add self-retraining functionality for live/dry 2022-05-15 17:42:15 +02:00
Matthias
b58e811b14 Move trade/order Models to their own class 2022-05-08 17:45:20 +02:00
Matthias
d11c44940e Slightly reword docs
remove some Note-boxes - people tend to skip these.
2022-05-06 06:42:01 +02:00
eSeR1805
04c51d2d1a
Merge branch 'develop' into feat_readjust_entry 2022-05-01 21:42:15 +03:00
Matthias
995c48b642 Merge branch 'develop' into pairlocks_direction 2022-05-01 14:59:04 +02:00
eSeR1805
3be2afdd88
Merge branch 'develop' into feat_readjust_entry 2022-04-30 13:39:23 +03:00
Sam Germain
4a6f1e90c3 Merge branch 'develop' into bot-start 2022-04-29 22:23:42 -06:00
eSeR1805
17650d7e60
Maintain existing order. Update functionality and documentation 2022-04-29 00:10:17 +03:00
eSeR1805
eb23170c43
Merge branch 'develop' into feat_readjust_entry 2022-04-28 23:06:52 +03:00
Rokas Kupstys
6d99222320 Add 'exit_tag' parameter to 'custom_exit_price' callback. 2022-04-26 10:01:51 +03:00
Sam Germain
d92761b2b1 Revert "strategy callback on_whitelist_update"
This reverts commit 39798dc1192161c3060830dd4684571aa86b7821.
2022-04-25 17:48:43 -06:00
Sam Germain
bf7da35e31 strategy callback on_whitelist_update 2022-04-25 17:48:07 -06:00
Sam Germain
0b90e1d309 Added bot_start callback to strategy interface 2022-04-25 17:47:12 -06:00
Matthias
500fdc2759 run mypy also against tests 2022-04-25 11:12:35 +02:00
Matthias
562e36c3ec Remove Interface V1 support 2022-04-25 07:01:27 +02:00
Matthias
6623192108 improve doc wording 2022-04-24 14:39:13 +02:00
Matthias
737bdfe844 Use "side" parameter when calling Pairlocks 2022-04-24 14:33:24 +02:00
Matthias
fc201bb4ff implement pairlock side further 2022-04-24 14:33:24 +02:00
Matthias
84f5a4d5bc Fix indentation 2022-04-23 10:51:24 +02:00
Patel Kaushal
ba305e93ed
Ref: timeseries friendly merge_ordered in merge_informative_pair function 2022-04-21 18:35:41 +05:30
eSeR1805
3166739ec9
Update strategy callback params and description. 2022-04-18 21:17:39 +03:00
eSeR1805
d65b64a46f
Merge branch 'develop' into feat_readjust_entry 2022-04-16 15:20:50 +03:00
eSeR1805
f8a7fdd5ed
Add new callback to strategy interface. 2022-04-16 15:04:22 +03:00
Matthias
4019c05fee Update entry/exit timeout documentation
the type of order is now an Order, no longer a dictionary.

closes #6691
2022-04-16 06:48:12 +02:00
Matthias
baefda80d1 Enable flake8 E226 rule 2022-04-11 18:02:06 +02:00
Matthias
ffff45e76b simplify exit message 2022-04-10 08:44:49 +02:00
Matthias
114591048c Always call custom_sell - also when there's a new enter signal 2022-04-09 17:17:49 +02:00
Matthias
ef18d09161 Call custom_exit also when the trade is not in profit and exit_profit_only is set. 2022-04-09 16:50:38 +02:00
Matthias
299dd84cfe
Merge pull request #6656 from freqtrade/use_sell_signal
Use sell signal -> use_exit_signal
2022-04-06 19:46:46 +02:00
மனோஜ்குமார் பழனிச்சாமி
7e97e58820 renamed enter-side 2022-04-06 06:32:13 +05:30
Matthias
b1378efdeb ignore_roi_if_buy_signal -> ignore_roi_if_entry_signal 2022-04-05 20:21:39 +02:00
Matthias
4897731030 use_sell_signal -> use_exit_signal 2022-04-05 20:10:20 +02:00
Matthias
5ce5c70be6 sell_profit_offset -> exit_profit_offset 2022-04-05 20:03:27 +02:00
Matthias
bba9629a2a Rename sell_profit_only to exit_profit_only 2022-04-05 20:00:35 +02:00
Matthias
2a46e6a214 Change some sell terminology 2022-04-05 06:50:44 +02:00
Matthias
6d9218cb34 sell_signal -> exit_signal 2022-04-04 17:11:11 +02:00
Matthias
1917527179 custom_sell -> custom_exit 2022-04-04 17:04:43 +02:00
Matthias
cd146bfa8f emergency_sell -> emergency_exit 2022-04-04 17:03:27 +02:00
Matthias
54ad130bb9 Update force_sell to force_exit 2022-04-04 16:59:27 +02:00
Matthias
f8783c908e Add side to custom_entry_price 2022-04-04 16:48:27 +02:00
Matthias
283d04a5ad Update docstring wording 2022-04-03 19:36:32 +02:00
Matthias
9dfb3db1aa Update local variable 2022-04-03 19:22:59 +02:00
Matthias
8acffbc1d8 sell_type -> exit_type 2022-04-03 11:18:36 +02:00
Matthias
bcf326a035 Initial steps to change bid/ask pricing to enter/exit 2022-03-27 18:03:49 +02:00
Matthias
0624817242 update unfilledtimeout settings to entry/exit 2022-03-26 11:55:11 +01:00
Matthias
6f1b14c013 Update buy_timeout and sell_timeout methods 2022-03-25 19:57:06 +01:00
Matthias
cd11ba3489 Fix naming in interface.py 2022-03-25 15:36:30 +01:00
Matthias
dcfa3e8648 Update SellType to ExitType 2022-03-25 06:55:37 +01:00
Matthias
c07883b1f9 Move ExitCheckTuple to enums 2022-03-25 06:50:18 +01:00
Matthias
8d111d357a Update SellCheckTuple to new naming 2022-03-25 06:46:29 +01:00
Matthias
d7f76ee452 Update confirm_trade_exit to use sell_reason terminology 2022-03-25 06:37:40 +01:00
Matthias
b1e3ead88b Merge branch 'develop' into feat/short 2022-03-22 20:28:38 +01:00
Matthias
95f69b905a Remove ticker_interval support 2022-03-20 09:00:53 +01:00
Matthias
72fd937a74 INTERFACE_VERSION to 3 2022-03-20 08:30:14 +01:00
Matthias
9b2ec5e653 Fix missleading variable naming 2022-03-17 06:58:08 +01:00
Matthias
a89c1da19f Fix 2 bugs in ROI calculation 2022-03-16 20:12:09 +01:00
Matthias
b044dd2c45 Update custom_sell to custom_exit 2022-03-12 11:37:56 +01:00
Matthias
28046c6a22 Change populate_buy_trend to populate_entry_trend 2022-03-12 09:38:28 +01:00
Matthias
efc313b28b
Merge pull request #6512 from freqtrade/short_order_types
Short order types renamal
2022-03-12 09:32:16 +01:00
Matthias
b9b5d749bb Fix typo causing an implicit bug 2022-03-12 08:58:59 +01:00
Matthias
12c909d8a8 Add can_short to sample strategies 2022-03-12 07:00:57 +01:00
Matthias
0aa170ac95 Check can_short in live-mode as well. 2022-03-12 06:58:22 +01:00
Matthias
1c9dbb512a Initial attempt at is_short_strategy block 2022-03-11 19:29:40 +01:00
Matthias
e492bf3159 Update order_types to use entry/exit definition 2022-03-09 06:37:08 +01:00
Matthias
3ff261e22c Update order time in force to use entry/exit wording 2022-03-07 19:55:15 +01:00
Matthias
5ab72ac082 chore: realign enums imports 2022-03-03 07:07:33 +01:00
Matthias
551fe7d820
Merge pull request #6440 from clover-es/feat/short
Add leverage strategy to new-strategy command
2022-02-25 15:18:46 +01:00
Matthias
d973ba1f5d Add leverage callback to advanced template 2022-02-23 20:19:52 +01:00
Matthias
8952829adc Merge branch 'develop' into feat/short 2022-02-23 06:28:15 +01:00
Matthias
70f4305dfa don't allow short trades in spot mode 2022-02-21 19:19:12 +01:00
Matthias
08803524bd align variable naming to use current_time 2022-02-12 15:21:46 +01:00
Matthias
0c6d92a7a6 Merge branch 'develop' into feat/short 2022-02-11 17:02:04 +01:00
Matthias
4ea79a32e4 Use Order object for ft_timeout check 2022-02-05 16:28:47 +01:00
Matthias
cf7edace2b
Merge pull request #6312 from freqtrade/short_informative_decorator
Short informative decorator
2022-01-30 15:33:52 +01:00
Matthias
8a6823deb1 Convert InformativeData to dataclass 2022-01-29 19:59:54 +01:00
Matthias
463714832d Merge branch 'develop' into feat/short 2022-01-29 14:19:30 +01:00
Matthias
c620e38c7d Informative decorator updates for futures 2022-01-28 19:17:46 +01:00
Matthias
002226f5fd Update setting to max_entry_position_adjustment 2022-01-27 16:57:50 +01:00
Matthias
13978e9893
Merge pull request #6276 from clover-es/feat/short
Add support for shorts in strategy.stoploss_from_absolute()
2022-01-25 19:11:05 +01:00
Stefano Ariestasia
0fa7986369
Merge branch 'freqtrade:develop' into pos_adjust 2022-01-25 10:30:18 +09:00
Matthias
194a5ce3cc Update advanced strategy template with missing methods 2022-01-24 07:02:02 +01:00
Matthias
e252830229 Add entry_tag to "entry" callbacks 2022-01-24 07:02:01 +01:00
Matthias
daee59f4f1 Reorder interface methods 2022-01-23 19:20:31 +01:00
Matthias
09db4bcadd Don't use strings, use methods directly 2022-01-23 17:00:00 +01:00
Matthias
821a9d9cdc Add current_time to check_timeout functions for convenience 2022-01-23 08:10:35 +01:00
Guillermo Rodríguez
17ae6a0c78 Harmonize short parameter name in stoploss_from_open() 2022-01-22 18:01:56 +01:00
Guillermo Rodríguez
40cd478c6d Calculate stoploss_from_absolute for shorts 2022-01-22 18:01:02 +01:00
Matthias
f090dcc597 Merge branch 'develop' into feat/short 2022-01-22 17:56:01 +01:00
Matthias
7bef9a9b3e Extract timeout handling from freqtradebot class 2022-01-22 15:59:10 +01:00
Stefano Ariestasia
ac93eea585 update 2022-01-19 21:58:24 +09:00
Stefano Ariestasia
5525fdae1a add max_buy_position_adjustment as attribute 2022-01-19 16:50:13 +09:00
Matthias
1fb48a1f53 Add TODO-lev for "stoploss_from_absolute". 2022-01-18 16:52:34 +01:00
Matthias
6c4b261469 Convert nan to None in get_signal. 2022-01-16 08:04:39 +01:00
Guillermo Rodríguez
d28287880c Add support for shorts in strategy.stoploss_from_open
Signed-off-by: Guillermo Rodríguez <guillebep@gmail.com>
2022-01-15 04:30:30 +01:00
Reigo Reinmets
0bca07a32a Added min_stake, max_stake. Removed pair as its included in trade. 2022-01-08 17:20:02 +02:00
Matthias
711a6a6dbc Merge branch 'develop' into pr/xataxxx/6079 2022-01-02 22:21:41 +01:00
Matthias
ddfbe55e7c Merge branch 'develop' into feat/short 2022-01-01 19:16:49 +01:00
Matthias
b1b2eebd11 Change sequence of ROI/sell signal to favor sell-signal 2021-12-30 20:00:58 +01:00
Reigo Reinmets
3d336a736e Improve documentation. 2021-12-29 14:51:57 +02:00
Wade Dyck
a26c82b7cc Also check candle_type_def when creating the pairlist and getting the ohlcv. 2021-12-27 16:51:02 -07:00
Reigo Reinmets
de79d25caf Refactoring to use strategy based configuration 2021-12-24 12:38:43 +02:00
Reigo Reinmets
30673f84f9 Flake8 compatibility 2021-12-18 11:00:25 +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
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
Matthias
edd80c3006 Merge branch 'develop' into feat/short 2021-12-09 06:34:07 +01:00
Matthias
9b9d61c6d6 Remove SPOT_ candletype 2021-12-08 14:38:09 +01:00
Matthias
d89cbda7b8 Use candle_type_def where possible 2021-12-08 14:15:54 +01:00
Matthias
ac2fb08aea Small updates while reviewing 2021-12-07 20:21:49 +01:00
Reigo Reinmets
fd875786fd Initial very crude DCA implementation attempt. Very alpha.
No backtesting support.
2021-12-07 11:16:11 +02:00
Matthias
d0467b30ba Add strategy_version to API response 2021-12-04 14:49:45 +01:00
Matthias
848a2d5383 Merge branch 'develop' into pr/dvdmchl/5929 2021-12-04 14:40:15 +01:00
Matthias
2080bf0952 Fix some formatting errors, add test for strategy version 2021-12-04 14:40:05 +01:00
Matthias
2f17fa2765 Update more to use candleType 2021-12-03 14:15:35 +01:00
Matthias
5493212672 More candletype changes 2021-12-03 13:04:31 +01:00
Matthias
c20157e64f Add compatibility code for existing informative_pairs implementation 2021-11-28 15:43:04 +01:00
Sam Germain
8761649fd7 Added candle_type in doc strings 2021-11-27 02:55:42 -06:00
Matthias
51e54a666c Merge branch 'feat/short' into pr/samgermain/5780 2021-11-23 19:01:07 +01:00
Matthias
ce0593c0e1 Merge branch 'develop' into feat/short 2021-11-23 07:35:26 +01:00
Rokas Kupstys
78a00f2518 Use market data to get base and quote currencies in @informative() decorator. 2021-11-22 09:27:45 +02:00
Sam Germain
920151934a Added candle_type to a lot of methods, wrote some tests 2021-11-21 17:48:14 -06:00
Dardon
d4fd13bf50 Telegram and log prints strategy version. 2021-11-20 16:26:07 +00:00
Matthias
f40221dd9f Merge branch 'develop' into feat/short 2021-11-18 20:20:01 +01:00
Matthias
4eb9038358 Some more fixes to % formatting 2021-11-11 15:06:16 +01:00
Matthias
ce2aa1dc69 Small formatting upgrades 2021-11-11 12:06:18 +01:00
Matthias
ae0e72a945 Provide strategy with copied objects
avoids accidental modification of crucial elements in a trade object
part of #5828
2021-11-08 19:59:29 +01:00
Matthias
ebc38159b8 Merge branch 'develop' into feat/short 2021-11-06 15:24:52 +01:00
Matthias
431b96de98 Merge branch 'develop' into pr/theluxaz/5710 2021-11-03 19:43:36 +01:00
Matthias
c094ac5762 Merge branch 'develop' into feat/short 2021-10-30 19:45:19 +02:00
incrementby1
a50bde10de Merge https://github.com/freqtrade/freqtrade into personal-branch 2021-10-27 15:52:10 +02:00
Matthias
f80d3d48e4 Add default to minimal_roi to avoid failures
closes #5796
2021-10-27 06:33:49 +02:00
incrementby1
c3f3bdaa2a Add "allow_position_stacking" value to config, which allows rebuys of a pair
Add function unlock_reason(str: pair) which removes all PairLocks with reason
Provide demo strategy that allows buying the same pair multiple times
2021-10-26 00:04:40 +02:00
Simon Ebner
f7926083ca Clean up unclosed file handles
Close all file handles that are left dangling to avoid warnings such as

```
ResourceWarning: unclosed file <_io.TextIOWrapper
name='...' mode='r' encoding='UTF-8'> params = json_load(filename.open('r'))
```
2021-10-24 23:15:05 +02:00
theluxaz
69a59cdf37 Fixed flake 8, changed sell_tag to exit_tag and fixed telegram functions 2021-10-18 23:56:41 +03:00
Matthias
bc10b451fe Revert wrong condition 2021-10-17 09:46:39 +02:00
Sam Germain
5fbe76cd7e isolated conditionals in interface stoploss method 2021-10-14 05:10:28 -06: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
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
Sam Germain
729957572b updated strategy stop_loss_reached to work for shorts 2021-10-09 14:39:11 -06:00
Sam Germain
7f7f377a90 updated a test, put in TODO-lev 2021-10-07 05:03:38 -06: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
4fd00db630 Use "combined" enter_tag column 2021-09-26 15:22:37 +02:00
Matthias
2a678bdbb4 Update buy_tag column to long_tag 2021-09-26 08:37:44 +02:00
Matthias
a0ef89d910 Also support column-transition for V1 strategies 2021-09-22 20:52:55 +02:00
Matthias
0e13d57e57 Update advise_* methods to entry/exit 2021-09-22 20:42:31 +02:00
Matthias
5928ba9c88 Test and document leverage strategy callback 2021-09-22 20:14:52 +02:00
Matthias
7a5c7e7020 Update some tests to use StrategyV3 2021-09-21 19:33:33 +02:00
Sam Germain
778f0d9d0a Merged feat/short into lev-strat 2021-09-19 17:44:12 -06:00
Rokas Kupstys
713e7819f7 [SQUASH] Remove mypy import. 2021-09-18 15:27:58 +03:00
Rokas Kupstys
e4ca42faec [SQUASH] Update stoploss_from_absolute to behave more like stoploss_from_open and add a test for it. 2021-09-18 10:48:53 +03:00
Rokas Kupstys
7e6aa9390a [SQUASH] Unconditionally include quote currency when asset is explicitly specified. Added docs suggesting to use string formatting to make strategy independent of configured stake currency. 2021-09-18 10:48:53 +03:00
Rokas Kupstys
e88c4701bb [SQUASH] Address PR comments. 2021-09-18 10:48:53 +03:00
Matthias
bb6ae682fc Small simplifications 2021-09-18 10:48:53 +03: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
f81df19b93 [TMP] Make tests not fail for now. 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
f2a1d9d2fc [SQUASH] Address PR comments. 2021-09-18 10:48:18 +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
Rokas Kupstys
d84ef34740 A helper to calculate stoploss value from absolute price. 2021-09-18 10:48:18 +03:00
Matthias
a89c67787b Replace some more occurances of 'buy' 2021-09-18 09:23:53 +02:00
Matthias
4d558879e9 Merge branch 'feat/short' into pr/samgermain/5378 2021-09-17 19:33:35 +02:00