Commit Graph

2113 Commits

Author SHA1 Message Date
Matthias
8a9407bac9 Don't hard-fail when fetch_ticker doesn't return a value
closes #5477
2021-08-25 07:13:59 +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
c004942588 Merge branch 'feat/short' into pr/samgermain/5378 2021-08-24 20:53:45 +02:00
Matthias
f4242106d9 Merge branch 'develop' into feat/short 2021-08-24 20:53:21 +02:00
Matthias
60b476611c Simplify a number of tests by relying on default arguments 2021-08-24 20:51:59 +02:00
Matthias
f9f32a15bb Update plotting tests for new strategy interface 2021-08-24 20:30:42 +02:00
Matthias
b40f985b13 Add short-exit logic to backtesting 2021-08-24 20:02:40 +02:00
Matthias
11bd8e912e Fix some tests 2021-08-24 06:52:28 +02:00
Matthias
7a977a8eaf Merge branch 'feat/short' into pr/samgermain/5378 2021-08-24 06:28:16 +02:00
Matthias
957551ea97 Merge branch 'develop' into feat/short 2021-08-24 06:25:06 +02:00
Matthias
faf5cfa66d Update some tests for updated backtest interface 2021-08-23 21:35:28 +02:00
Sam Germain
317a454c0e Removed shorting from tests/optimize/hyperopts/default_hyperopt.py and created another tests/optimize/hyperopts/short_hyperopt.py with long and shorting 2021-08-23 00:24:49 -06:00
Sam Germain
0afeb269ad Removed unnecessary TODOs 2021-08-23 00:15:35 -06:00
Sam Germain
8644449c33 Removed changes from tests/strategy/strats that hyperopted short parameters, because these are supposed to be legacy tests 2021-08-22 21:47:02 -06:00
Sam Germain
5ca3f49cb5 merged with feat/short after feat/short added styling and comment changes PR 2021-08-22 21:37:20 -06:00
Masoud Azizi
127f470bc3 .* ADDED 2021-08-20 19:29:33 +02:00
Masoud Azizi
40ad451019 Download-data log process added
Download-data log process added

pytest assert solved
2021-08-20 14:52:56 +00:00
Matthias
ba5abb20bd Run compat ci for gate.io 2021-08-20 06:30:27 +02:00
Sam Germain
092780df9d condensed strategy methods down to 2 2021-08-18 16:52:34 -06:00
Sam Germain
d4a7d2d444 Added short and exit_short to strategy 2021-08-18 16:52:20 -06:00
Sam Germain
e2d5299116 Name changes for strategy 2021-08-18 13:22:54 -06:00
Matthias
f7087feeb1
Merge pull request #5347 from Axel-CH/custom_order_price
Custom order price
2021-08-18 20:59:40 +02:00
Matthias
9951f51079 Update test to ensure direction of movement is correct 2021-08-18 20:24:19 +02:00
axel
2fb9f6e2f4 rename custom price max distance option in config, update formula and test associated 2021-08-18 05:07:37 -04:00
Matthias
acb00cd072 Use realistic threshold for "get_fee" test 2021-08-18 06:25:52 +02:00
Matthias
4164f93853 Simplify fiat_convert and handle multi-mappings 2021-08-17 20:50:52 +02:00
Matthias
f471915828 Add test for refresh_latest_ohlcv caching 2021-08-17 06:44:36 +02:00
axel
6ab99369f2 Merge branch 'develop' of https://github.com/freqtrade/freqtrade into custom_order_price 2021-08-16 23:26:29 -04:00
axel
faff40577a fix test_execute_buy In case of custom entry price 2021-08-16 15:33:05 -04:00
axel
3ea4b2ba00 add custom_price_max_distance_percent security to get_valid_price, update tests 2021-08-16 15:18:57 -04:00
Matthias
0264d77d86 Fix test for fixed typo 2021-08-16 20:02:25 +02:00
slowy07
f24a951ec5 fix: typo spelling grammar 2021-08-16 19:16:24 +07:00
Matthias
6b2ef36a56 Prevent directory traversal in UI Serving
Checking for directory base

closes #5427
2021-08-16 06:47:53 +02:00
Matthias
abddb3ef25 Add test for directory traversal 2021-08-16 06:45:23 +02:00
Matthias
fa4ec9f83e Add explicit test for get_sell_trade_entry 2021-08-15 14:52:24 +02:00
Matthias
3406b889b6 First test 2021-08-14 17:06:28 +02:00
Matthias
c456cfc312 Merge branch 'develop' into pr/Axel-CH/5347 2021-08-14 09:13:30 +02:00
axel
20cc60bfde update get_valid_price function and test cases to handle inputs with try catch 2021-08-13 11:06:15 -04:00
axel
dbf7f34ecb add unit test to function get_valid_price 2021-08-12 15:30:49 -04:00
axel
ae11be3970 manage None or string value returned by custom_entry_price and add unit test for those cases 2021-08-12 14:47:01 -04:00
Matthias
e03784d98d Fix filled exception
closes #5404
2021-08-12 05:02:56 +00:00
Matthias
bfc3968ab3
Merge pull request #5400 from freqtrade/limit_dry_market_slippage
Add max-slippage limiting for dry-run orders to avoid insane market o…
2021-08-12 06:54:55 +02:00
Rokas Kupstys
f6267c7514 Fix buy_tag not being saved to trade object.
Column is mistakenly excluded because advise_buy() creating this column runs after code detecting presence of buy_tag column.
2021-08-11 15:21:23 +03:00
Matthias
61c076563f Add max-slippage limiting for dry-run orders to avoid insane market order fills 2021-08-11 12:11:29 +02:00
Matthias
0b6aedbc4c
Merge pull request #5395 from freqtrade/fix/hyperopt-show
Stream hyperopt-result in small batches
2021-08-10 19:54:02 +02:00
Matthias
039d6384ed Stream hyperopt-result in small batches
Avoiding memory-exhaustion on huge hyperopt results

closes #5305
closes #5149
2021-08-10 10:12:57 +02:00
Matthias
3f160c7144 Cache dataframe before cutting the first candle
This allows providing the "current closed" candle in all cases.
2021-08-10 09:14:29 +02:00
Matthias
cf27968b97 Properly preserve trade's low during backtesting 2021-08-09 19:38:56 +02:00
Matthias
895b912c71 Fix recently introduced lookahead bias in backtesting
closes #5388
2021-08-09 14:54:47 +02:00
Matthias
a5f796bc97 refactor ohlcvdata_to_dataframe to advise_all_indicators 2021-08-09 14:53:18 +02:00
Matthias
599ae15460 Parametrize tests 2021-08-09 11:35:27 +02:00
Matthias
f17942b68f Fix random test failure 2021-08-09 11:18:18 +02:00
Sam Germain
de4b0d1f7c Merged with feat/short 2021-08-09 00:24:25 -06:00
Sam Germain
06206335d9 Added tests for interest_function 2021-08-09 00:00:50 -06:00
Matthias
47f641d12f Remove hyperopt-pickle result support 2021-08-09 07:04:18 +02:00
Sam Germain
8e941e6836 Changed interest implementation 2021-08-08 17:09:17 -06:00
Sam Germain
0545a0ed3c Replaced the term margin with leverage when it should say leverage 2021-08-08 17:04:24 -06:00
Matthias
756112c84d
Merge pull request #5374 from freqtrade/rem_legacy_hyperopt
Remove legacy hyperopt
2021-08-08 12:42:52 +02:00
Matthias
be240566ba Fix random test failure 2021-08-08 10:57:20 +02:00
Matthias
faf16a64e5 Remove legacy hyperopt file support 2021-08-08 10:22:45 +02:00
Matthias
92ed7c0bf8 Merge branch 'develop' into feat/short 2021-08-07 09:42:25 +02:00
Matthias
6532aba765
Merge pull request #5360 from freqtrade/hyperopt_protections
Hyperopt protections and Boolean parameter
2021-08-07 09:42:05 +02:00
Sam Germain
b9356a5564 Autopep8 formatting 2021-08-06 16:35:39 -06:00
axel
0aeebc9d53 add test for custom exit price 2021-08-05 17:57:45 -04:00
axel
2cf781f3dd add freqtradebot execute_buy test in custom entry price case 2021-08-04 18:32:39 -04:00
Matthias
ad0e4a8567 Add BooleanParameter 2021-08-04 20:52:56 +02:00
Matthias
b73768acd1 Fix bug in property overwriting prevention 2021-08-04 20:21:56 +02:00
Matthias
3c41223333 Add test for protections-hyperopt 2021-08-04 20:01:28 +02:00
Matthias
a661e0db6e Deprecate protections from config 2021-08-04 19:43:16 +02:00
Matthias
091bf7c4d2 Output protection space 2021-08-04 06:50:14 +02:00
axel
bc3e6deb1c remove specific test for buy with custom entry 2021-08-03 17:09:52 -04:00
axel
b3dafb378e remove use_custom_entry_price as a config option 2021-08-03 16:54:28 -04:00
axel
00939b63f2 flake 8 fixes 2021-08-03 16:25:18 -04:00
axel
d9c9b7d7fc restore interface test file 2021-08-03 16:02:10 -04:00
axel
3d8c3ffd38 fix syntax error in unit test 2021-08-03 15:57:23 -04:00
axel
f11f5d17e9 add feature custom entry price for live 2021-08-03 15:57:23 -04:00
Sam Germain
d88e2ae603 Merge branch 'develop' into margin-db 2021-08-02 23:58:44 -06:00
Matthias
adb33e763b
Merge pull request #5350 from freqtrade/environment_vars
Add environment variable support
2021-08-02 20:48:23 +02:00
Matthias
c981641441 Don't fail if strategy doesn't contain sell signal 2021-08-02 20:30:46 +02:00
Matthias
d8d8261f1b
Merge pull request #5318 from samgermain/combined_exchange_buy_sell
combined exchange.buy and exchange.sell
2021-08-02 20:11:09 +02:00
Matthias
3c5f06d5c0
Update tests/exchange/test_exchange.py 2021-08-02 08:31:33 +02:00
Matthias
5ead95b06b
Merge pull request #5245 from sauces1313/RangeStabilityFilterMax
Range stability filter max
2021-08-02 08:06:36 +02:00
Matthias
b63eda3a2b Some minor cleanup and improved test coverage 2021-08-02 07:15:09 +02:00
Sam Germain
047df0c212 Removed leverage references 2021-08-01 03:01:47 -06:00
Sam Germain
90a61b1765 Changed tests in tests/test_persistence.py to use usdt prices 2021-07-31 20:44:49 -06:00
Matthias
6f8519d0a3 Add environment variable support 2021-07-31 19:26:56 +02:00
Matthias
c5e3348b89 Migrations for indexes should run in a seperate session
closes #5349
2021-07-31 16:36:28 +02:00
Sam Germain
bc42516f68 test_update_limit_order has both a buy and sell leverage short order 2021-07-31 01:05:37 -06:00
Matthias
6abd352c0f Add test for backtesting dataframe cache 2021-07-31 08:44:09 +02:00
Sam Germain
26be620f71 Removed LocalTrade.set_is_short 2021-07-31 00:20:25 -06:00
Sam Germain
fadb0de7c7 Removed excess modes stop_loss method, removed models.is_opening_side models.is_closing_side 2021-07-31 00:12:53 -06:00
Matthias
35bf2a59a8 Improve test reliability (fix fluky test) 2021-07-30 21:02:55 +02:00
Matthias
138b126d03
Merge pull request #5299 from kevinjulian/feat/kevinjulian/add-buy-signal-name
Add buy signal name
2021-07-30 08:23:11 +02:00
Matthias
71838dc51a
Merge pull request #5285 from freqtrade/backtest_startup_afte_populates
Remove startup-candles after populating buy/sell signals
2021-07-30 07:01:26 +02:00
Matthias
cf4d1875dd Use prohibitedIn instead of isRestricted 2021-07-29 06:56:37 +02:00
Sam Germain
25c527ee67 combined exchange.buy and exchange.sell, Adding dummy mock to create_order in tests in test_freqtradebot 2021-07-28 14:55:06 -06:00
Sam Germain
3fb7f983f8 Added is_short and leverage to __repr__ 2021-07-28 12:25:56 -06:00
Sam Germain
195badeb80 Changed liquidation_price to isolated_liq 2021-07-28 12:25:56 -06:00
Sam Germain
6ad9b535a9 persistence all to one test file, use more regular values like 2.0 for persistence tests 2021-07-28 12:25:56 -06:00
Sam Germain
a900570f1a Added enter_side and exit_side computed variables to persistence 2021-07-28 12:25:56 -06:00
Sam Germain
b801eaaa54 Changed the name of a test to match it's equivelent
Removed test-analysis-lev
2021-07-28 12:25:56 -06:00
Sam Germain
af8875574c updated mkdocs and leverage docs
Added tests for set_liquidation_price and set_stop_loss
updated params in interestmode enum
2021-07-28 12:25:56 -06:00
Sam Germain
256160740e Updated interest and ratio calculations to correct functions 2021-07-28 12:25:56 -06:00
Sam Germain
8e52a3a29c updated ratio_calc_profit function 2021-07-28 12:25:55 -06:00
Sam Germain
b0476ebd3e All persistence margin tests pass
Flake8 compliant, passed mypy, ran isort .
2021-07-28 12:25:55 -06:00
Sam Germain
60572c9e0d Took liquidation price out of order completely 2021-07-28 12:25:55 -06:00
Sam Germain
0fc9d6b6ac Moved leverage and is_short variables out of trade constructors and into conftest 2021-07-28 12:25:55 -06:00
Sam Germain
b7b6d87c27 Pass all but one test, because sqalchemy messes up 2021-07-28 12:25:55 -06:00
Sam Germain
b1098f0120 Added liquidation_price check to test_stoploss_reinitialization_short 2021-07-28 12:25:55 -06:00
Sam Germain
811cea288d Added checks for making sure stop_loss doesn't go below liquidation_price 2021-07-28 12:25:55 -06:00
Sam Germain
0bd71f87d0 made leveraged test names unique
test_adjust_stop_loss_short, test_update_market_order_shortpasses
2021-07-28 12:25:55 -06:00
Sam Germain
286427c04a Moved interest calculation to an enum 2021-07-28 12:25:55 -06:00
Sam Germain
be3a9390fe Switched migrations.py check for stake_currency back to open_rate, because stake_currency is no longer a variable 2021-07-28 12:25:55 -06:00
Sam Germain
a4403c0814 fixed rpc_apiserver test fails, changed test_persistence_long to test_persistence_leverage 2021-07-28 12:25:55 -06:00
Sam Germain
0ffc85fed9 Set default leverage to 1.0 2021-07-28 12:25:55 -06:00
Sam Germain
78708b27f2 Updated tests to new persistence 2021-07-28 12:25:55 -06:00
Matthias
e0d42d2eb7 Fix migrations, revert some parts related to amount properties 2021-07-28 12:25:55 -06:00
Sam Germain
e4d4d1d1f1 Wrote all tests for shorting 2021-07-28 12:25:55 -06:00
Sam Germain
f194673001 Updated ratio calculation, updated short tests 2021-07-28 12:25:55 -06:00
Sam Germain
5ac03762f0 Kraken interest test comes really close to passing
Added more trades to conftest_trades
2021-07-28 12:25:55 -06:00
Sam Germain
68d3699c19 Turned amount into a computed property 2021-07-28 12:25:55 -06:00
Sam Germain
efcc2adacf About 15 margin tests pass 2021-07-28 12:25:55 -06:00
Sam Germain
f5d7deedf4 added exception checks to LocalTrade.leverage and LocalTrade.borrowed 2021-07-28 12:25:55 -06:00
Sam Germain
d07fe1586c Set leverage and borowed to computed properties 2021-07-28 12:25:55 -06:00
Sam Germain
c24ec89dc4 Started some pytests for short and leverage
1 short test passes
2021-07-28 12:25:55 -06:00
Sam Germain
000932eed0 Adding templates for leverage/short tests
All previous pytests pass
2021-07-28 12:25:55 -06:00
sauces1313
4675d85b90
Merge branch 'freqtrade:develop' into RangeStabilityFilterMax 2021-07-25 02:37:56 -05:00
sauces1313
34c8a5afaf remove second filter, add max option 2021-07-25 07:24:55 +00:00
kevinjulian
0fcbe097c0 remove blankspace 2021-07-23 21:06:38 +07:00
kevinjulian
7a0cb95ffb fix testcase 2021-07-23 20:43:27 +07:00
kevinjulian
b9c2489b73 remove SN 2021-07-23 18:41:29 +07:00
kevinjulian
ba0fa1120a revert rename naming 2021-07-23 18:39:18 +07:00
kevinjulian
acfaa39e54 revert back test_rpc_api_server 2021-07-23 18:34:18 +07:00
kevinjulian
8032257fdf revert test_pairlist 2021-07-23 18:30:25 +07:00
kevinjulian
aea5da0c73 changes testcase 2021-07-23 11:42:43 +07:00
kevinjulian
b01daa8bbc expose buy_tag to api 2021-07-22 13:09:05 +07:00
kevinjulian
46f2a20a98 run flake8 2021-07-22 02:00:51 +07:00
kevinjulian
235c1afd09 add buy_tag on telegram 2021-07-22 01:53:15 +07:00
kevinjulian
49886874aa rename to buy_tag 2021-07-21 20:05:35 +07:00
kevinjulian
66a7070170 run linter 2021-07-20 23:56:03 +07:00
kevinjulian
5d04d6ffa7 fix edge testcase 2021-07-20 23:40:32 +07:00
kevinjulian
cbfedf8b29 fix backtest testcase 2021-07-20 23:25:00 +07:00
kevinjulian
3d8b2d601d fix test persistance 2021-07-20 20:23:47 +07:00
Kevin Julian
edf9c08f06
Merge branch 'develop' into feat/kevinjulian/add-buy-signal-name 2021-07-20 19:19:46 +07:00
kevinjulian
ed30c023cd fix some testcase 2021-07-20 19:08:14 +07:00
kevinjulian
ec526b3f96 fix testcase 2021-07-20 16:22:04 +07:00
kevinjulian
7d04005218 add test and migration 2021-07-20 16:14:48 +07:00
Matthias
e4b42b2b5b
Merge pull request #5284 from samgermain/merge_get_buy_sell_rate
Merge get_buy_rate and get_sell_rate
2021-07-20 06:54:47 +02:00
Matthias
365479f5e0 Remove startup-candles after populating buy/sell signals
closes #5242
2021-07-18 11:06:41 +02:00
Matthias
adef5d89f3 Fix failing test after webserver merge 2021-07-18 11:06:14 +02:00
Matthias
7b7d9c02d7
Merge pull request #5243 from freqtrade/feat/webservermode_progress
Introduce webserver mode subcommand
2021-07-18 10:48:55 +02:00
Sam Germain
7c27525bd8 Merge get_buy_rate and get_sell_rate 2021-07-17 22:51:20 -06:00
Matthias
4899b06b31
Merge pull request #5273 from freqtrade/fix/profit_calc
fix calculation logic for /profit
2021-07-16 19:19:28 +02:00
Sam Germain
804bc8134f Merge branch 'develop' into example_json_filename_extensions 2021-07-16 02:05:08 -06:00
Sam Germain
b7dc2989e7 flake8 adjustments 2021-07-16 02:03:25 -06:00
Matthias
2e95df4d8d Update docs for /profit output 2021-07-15 20:12:44 +02:00
Matthias
697bf92f6f Add test for get_starting_balance method 2021-07-14 21:10:25 +02:00
Matthias
02d716a8be Fix api test 2021-07-14 21:03:57 +02:00
Matthias
3451687135
Merge pull request #5255 from freqtrade/improve_dynamic_stake
Improve dynamic stake with multiple bots on the same exchange
2021-07-14 06:45:48 +02:00
Sam Germain
362436f7d2 Renamed example config files so they are .json so that syntax highlighting is all correct. Explicitly listed each one in .gitignore to prevent a real config file from being uploaded accidently 2021-07-13 19:39:23 -06:00
anasyusef
91e5562ae0 style: apply flake8 formatting 2021-07-12 13:22:36 +00:00
anasyusef
313cf6a013 test: add test for parsing db uri 2021-07-12 12:28:34 +00:00
Matthias
6a8e8875a2 Test new behaviour 2021-07-12 06:54:06 +02:00
Matthias
b41c234440 Extract Closed profit calculation to trade object 2021-07-12 06:54:06 +02:00
Matthias
ed77889d6b Add explicit tests for _validate_stake_amount 2021-07-12 06:52:59 +02:00
Matthias
7ea0a74c53 Default to proposed stake 2021-07-11 14:11:41 +02:00
Rokas Kupstys
0e4466ca1e Implement strategy-controlled stake sizes. Expose self.wallet to a strategy. 2021-07-11 12:38:58 +03:00
Matthias
72a103f32d Properly test webserver startup in standalone mode 2021-07-10 10:21:25 +02:00
Matthias
225522762b
Merge pull request #5231 from nightshift2k/enhancement/range-based-volumefilter
Range based VolumeFilter
2021-07-08 07:22:37 +02:00
Matthias
76e51cddba
Merge pull request #5246 from nightshift2k/feature/offsetfilter
new filter OffsetFilter for offsetting incoming pairlists
2021-07-07 21:06:23 +02:00
Matthias
682f880630 Slightly simplify if statement, add additional test 2021-07-07 20:05:56 +02:00
nightshift2k
c44e87cd30 added tests for `OffsetFilter
to `test_pairlist.py`
2021-07-07 12:06:55 +02:00
nightshift2k
f30e300f18 adjusted test_pairlist.py for fixed rolling sum 2021-07-07 11:28:35 +02:00
Matthias
b7a9853d9a Increase test coverage 2021-07-06 21:04:52 +02:00
Matthias
a4bd862323 Fix fluky test 2021-07-06 20:29:04 +02:00
Matthias
005da97183 extract backtesting abort functionality 2021-07-06 19:48:28 +02:00
Matthias
5474d5ee64 Move webserver start command to seperate file 2021-07-06 19:48:28 +02:00
Matthias
b44d215b90 Add test for backtest via APII 2021-07-06 19:48:28 +02:00
Matthias
8566306010 Add test for start_websever 2021-07-06 19:48:28 +02:00
Matthias
edb8c4f0e5 Fix tests for webserver mode 2021-07-06 19:48:28 +02:00
Kevin Julian
0f3d34eaf4
Merge branch 'develop' into agefilter-max-days-listed 2021-07-06 19:47:18 +07:00
kevinjulian
502c69dce3 change short desc 2021-07-06 19:36:42 +07:00
Matthias
dec523eef0 Display verison of installed FreqUI 2021-07-06 07:20:05 +02:00
nightshift2k
1e87225e91 added test_VolumePairList_range to test_pairlist.py 2021-07-05 20:59:27 +02:00
Matthias
eb3ead4930
Merge pull request #5229 from kevinjulian/telegram-balance
compact low balance currencies
2021-07-05 06:56:35 +02:00
kevinjulian
9e548657e0 fix testcase 2021-07-04 21:08:46 +07:00
Matthias
898bef1837
Merge pull request #5219 from freqtrade/hyperopt_paramfile
automatic Hyperopt paramfile
2021-07-04 13:56:52 +02:00
kevinjulian
b722e12350 compact low balance currencies 2021-07-04 02:44:48 +07:00
kevinjulian
3d9f3eeb07 feat(agefilter): add max_days_listed 2021-07-03 23:58:04 +07:00
Matthias
dc8abd77df Fix import order 2021-07-03 15:45:00 +02:00
Rokas Kupstys
3686efa08a Add range property to CategoricalParameter and DecimalParameter, add their tests.
At the moment we can keep a single code path when using IntParameter, but we have to make a special hyperopt case for CategoricalParameter/DecimalParameter. Range property solves this.
2021-07-03 16:02:45 +03:00
Matthias
9d6860337f
Merge pull request #5212 from rokups/rk/trailing-stop-2
Trailing stoploss in backtesting v2
2021-07-03 08:39:30 +02:00
Matthias
3503fdb4ec Improve tests for newly added methods 2021-07-03 08:38:55 +02:00
Matthias
e034f11dcc Improve test for hyperopt_show 2021-06-30 20:21:33 +02:00
Rokas Kupstys
bc0742ae67 Fix extremely optimistic results when using a combination of custom_stoploss and trailing_stop. 2021-06-30 09:10:50 +03:00
Matthias
645da51b5f Add test for parameter loading 2021-06-30 06:55:10 +02:00
Matthias
dcf53ac3ff Add test for try_eport_params 2021-06-30 06:33:40 +02:00
Matthias
ff61b8a2e7 Disable parameter export from tests 2021-06-29 20:57:16 +02:00
Matthias
8ca0076332 Fix small typos 2021-06-29 06:50:47 +02:00