Commit Graph

7680 Commits

Author SHA1 Message Date
Matthias
7a2b50ce8b Update drawdown calculation to account drawdown 2022-01-04 17:07:31 +01:00
Matthias
42579c0268 Drop hyperopt results legacy mode 2022-01-04 17:06:40 +01:00
Sam Germain
b2a1124a26 Merge branch 'feat/short' of https://github.com/freqtrade/freqtrade into feat/short 2022-01-04 00:17:42 -06:00
Matthias
e57c2d64a5
Merge pull request #5888 from samgermain/contract-sizes
Convert contract size to underlying asset size
2022-01-03 21:55:19 +01:00
Matthias
d8cb61278f Simplify contract conversion code
by reusing "get_contract_size"
2022-01-03 18:12:45 +01:00
Sam Germain
707a6507b5 removed redundant todos 2022-01-02 21:46:06 -06:00
Matthias
711a6a6dbc Merge branch 'develop' into pr/xataxxx/6079 2022-01-02 22:21:41 +01:00
Matthias
2116b0729f Integration-test for DCA order 2022-01-02 20:20:56 +01:00
Matthias
209ecc8732 Fix typo in bt_progress 2022-01-02 19:38:03 +01:00
Matthias
7f88f9bf27 Revert unintended double-call of amount conversion 2022-01-02 13:11:29 +01:00
Sam Germain
33ab3c1bea Removed some todo-lev comments 2022-01-01 14:10:24 -06:00
Sam Germain
14ae327459 grouped contract methods 2022-01-01 14:08:10 -06:00
Sam Germain
3e4912979a exchange.py: removed get funding rate history 2022-01-01 14:03:26 -06:00
Sam Germain
fcded264e6 removed exchange._get_mark_price_history 2022-01-01 13:53:26 -06:00
Sam Germain
f92d47a16b exchange._contracts_to_amount and exchange._amount_to_contracts safe checks 2022-01-01 13:52:06 -06:00
Matthias
8da596f66d Implement PR feedback 2022-01-01 13:52:01 -06:00
Sam Germain
49a6ebb454 exchange class contract methods safe check for symbol 2022-01-01 13:50:50 -06:00
Sam Germain
78d1a267f0 contract-sizes tests 2022-01-01 13:50:50 -06:00
Sam Germain
d0a300a2e1 Added TODOs 2022-01-01 13:50:49 -06:00
Sam Germain
4f6203e45f Added conversions from contract size to amount for objects returned from api 2022-01-01 13:50:43 -06:00
Sam Germain
e10ceb2362 Amount to precision has _amount_to_contract_size in it 2022-01-01 13:49:09 -06:00
Sam Germain
ee63f12236 Revert "Removed leverage param from get_min_pair_stake_amount"
This reverts commit 096588550ca1de5e5edf63cf7214af037d7bc93b.
2022-01-01 13:49:09 -06:00
Sam Germain
2df5993812 _contract_size_to_amount only impacts limits.amount and not limits.cost, put _get_stake_amount_considering_leverage back in 2022-01-01 13:49:09 -06:00
Sam Germain
ef6ad0e6d7 Removed leverage param from get_min_pair_stake_amount 2022-01-01 13:49:09 -06:00
Sam Germain
3f75531105 added methods _contract_size_to_amount and _amount_to_contract_size, added _amount_to_contract_size to create_order, added contract_size_to_amount to get_min_leverage 2022-01-01 13:49:09 -06:00
Matthias
ddfbe55e7c Merge branch 'develop' into feat/short 2022-01-01 19:16:49 +01:00
Matthias
08ba5b0451 Update docs to include underwaterplot 2022-01-01 16:55:08 +01:00
Matthias
fb06a673e0 Add Underwater plot 2022-01-01 14:40:20 +01:00
Matthias
78ba2d3fc7 Add underwaterplot calculation to btanalysis 2022-01-01 14:39:58 +01:00
Matthias
a2d97eecfe Add trade parallelism plot
closes #6142
2022-01-01 14:11:51 +01:00
Matthias
9becd20f20 Improve "Missing data" messages 2022-01-01 10:37:58 +01:00
Matthias
670aed06bf Remove loop for hyperopt. 2021-12-31 17:35:08 +01:00
Matthias
0277d93a64 don't use deprecated asyncio.get_event_loop() 2021-12-31 17:27:42 +01:00
Matthias
c9296dc9a0 Uvloop_helper should use "get_running_loop" 2021-12-31 17:27:42 +01:00
Matthias
c06496e66f Update some more TODO-lev's 2021-12-31 16:49:47 +01:00
Sam Germain
9a220f6cfe removed a few todos 2021-12-31 07:30:01 -06:00
Sam Germain
46072be011 models.__init__ exception for no interest_rates on Margin trading 2021-12-31 06:20:00 -06:00
Sam Germain
867483170a binance.funding_fee_cutoff removed TODO-lev 2021-12-31 06:11:43 -06:00
Matthias
550a1eef91 Reduce "cleanup" slowdown in telegram 2021-12-31 12:54:15 +01:00
Matthias
880ee016a4
Merge pull request #6133 from rokups/rk/reduce-memory-usage
Reduce memory usage by not holding on to no longer needed data
2021-12-31 11:36:52 +01:00
Matthias
39f8c5719b Fix exception on exchange shutdown 2021-12-31 11:24:56 +01:00
Rokas Kupstys
a715083fc0 Reduce memory usage by not holding on to no longer needed data. 2021-12-31 12:10:01 +02:00
Matthias
b1b2eebd11 Change sequence of ROI/sell signal to favor sell-signal 2021-12-30 20:00:58 +01:00
Matthias
4b79d435ad
Merge pull request #6084 from aezomz/lev-telegram
Telegram and Webhook updates
2021-12-30 19:17:58 +01:00
Matthias
3c4eda14b1 Remove unused test parameter 2021-12-30 17:34:45 +01:00
Matthias
2395988bf8 Leverage defaults to 1.0, which should not be shown. 2021-12-30 17:32:36 +01:00
Matthias
45ac3b3562 Change formatting slightly 2021-12-30 17:18:46 +01:00
Aezo Teo
fa12098bff changed to suggestion 2021-12-30 20:05:17 +08:00
Matthias
bd98637ae9 Fail gracefully from plot-profit when no data is provided
closes #6132
2021-12-30 10:14:45 +01:00
Matthias
1871165d21
Merge pull request #6127 from wadedyck/download_data_futures_fix
Download data futures fix
2021-12-29 19:08:38 +01:00
Matthias
77afb7b5e2
Merge pull request #6114 from cdimauro/reduce_kucoin_logs
Reduce kucoin logs
2021-12-29 17:33:21 +01:00
Matthias
2b94fbfa74 Avoid using singleton where not necessary 2021-12-29 17:05:53 +01:00
Aezo Teo
ee7cbcd69f fixed flake8 and mypy errors 2021-12-29 21:48:50 +08:00
Aezo Teo
b6092e2e3c amended L/S for status table 2021-12-29 21:30:31 +08:00
Aezo Teo
1f773671ed updated tests and telegram 2021-12-29 21:24:12 +08:00
Reigo Reinmets
3d336a736e Improve documentation. 2021-12-29 14:51:57 +02:00
Wade Dyck
5bb2d3baea Revert "Remove the guards against downloading data in futures mode."
This reverts commit 82cdfba494.
2021-12-28 11:35:17 -07:00
Wade Dyck
60dfadf446 Don't attempt to calculate funding fees when the initial timeframe hasn't been exceeded. 2021-12-27 16:51:47 -07: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
Wade Dyck
5743b3a0b7 When getting analyzed dataframes, use candle_type_def in the pair_key as that's how they're cached. 2021-12-27 13:29:25 -07:00
Wade Dyck
82cdfba494 Remove the guards against downloading data in futures mode. 2021-12-27 12:48:42 -07:00
Wade Dyck
3d9360bb8c When backtesting, pass the candle_type to load_data. 2021-12-27 11:46:05 -07:00
Matthias
5a546855e6 Import TTLCache from cachetools
Importing from cachetools.ttl is deprecated, and will be removed in 5.0
2021-12-27 19:30:17 +01:00
Wade Dyck
5b3f907b0c Fixes a download_data bug when in futures mode.
When specifying multiple pairs to download, the json filenames were
inconsistent due to the reassignment of candle_type. Also adds the
candle_type being downloaded to a log message.
2021-12-27 11:16:38 -07: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
05a488a7a0 Further reduce log verbosity for kucoin 429000 exception 2021-12-27 17:15:30 +01:00
Matthias
ef2b326262 Reduce retrier message repetition
by combining messages, we can provide the same information in fewer log messages
2021-12-27 16:47:34 +01:00
Matthias
17f037cec6 Extract order_fee handling from update_trade_state 2021-12-27 16:07:43 +01:00
cdimauro
f77b8cbb7a Reduce KuCoin logs only for 429000 error
Only KuCoin messages for 429000 error code are logged once.

Logs functions are also simplified and optimized.

test_remove_logs_for_pairs_already_in_blacklist is simplified as well.
2021-12-26 21:09:25 +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
Reigo Reinmets
099dc07baf No longer needed since recalc_trade_from_orders always calls it. 2021-12-26 20:02:20 +02:00
Reigo Reinmets
817a65b656 This is not needed since backtesting does not have open orders. 2021-12-26 20:01:48 +02:00
Matthias
d3f3c49b13 Fix minor "gotchas" 2021-12-26 15:29:10 +01:00
cdimauro
fbaf46901e Reduce more KuCoin logs on retrier decorator
More logs are reduced, for KuCoin, on the retrier_async decorator:

_async_get_candle_history() returned exception
retrying _async_get_candle_history() still for
Giving up retrying: _async_get_candle_history()
Applying DDosProtection backoff delay
2021-12-26 09:06:26 +01:00
cdimauro
96fbf63d0b Reduce KuCoin logs on DDosProtection error messages
KuCoin APIs generate A LOT of error messages.
Consequently, logs are flooded with lines like:
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
_async_get_candle_history() returned exception:
"kucoin GET https://openapi-v2.kucoin.com/api/v1/market/candles?
symbol=PDEX-USDT&type=5min&startAt=1640317818&endAt=1640467818
429 Too Many Requests {"code":"429000","msg":"Too Many Requests"}"
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
retrying _async_get_candle_history() still for 3 times
2021-12-25 22:30:23 freqtrade.exchange.common: WARNING -
Kucoin 429 error, avoid triggering DDosProtection backoff delay.
2 tries left before giving up
2021-12-25 22:30:24 freqtrade.exchange.common: WARNING -
_async_get_candle_history() returned exception:
"kucoin GET https://openapi-v2.kucoin.com/api/v1/market/candles?
symbol=UBX-USDT&type=5min&startAt=1640317821&endAt=1640467821
429 Too Many Requests {"code":"429000","msg":"Too Many Requests"}"

Messages like:
Kucoin 429 error, avoid triggering DDosProtection backoff delay.
are logged only once for a certain period of time (default is 3600 seconds).
2021-12-25 22:32:22 +01:00
Reigo Reinmets
aa54592ec7
Merge branch 'freqtrade:develop' into dca 2021-12-25 21:06:26 +02:00
Matthias
2917cc1f2e Bitpanda's "fetch_my_trades" requires "to" argument
closes #4938
2021-12-25 14:28:22 +01:00
Reigo Reinmets
ad247b2f07
Merge branch 'freqtrade:develop' into dca 2021-12-24 12:39:09 +02:00
Reigo Reinmets
de79d25caf Refactoring to use strategy based configuration 2021-12-24 12:38:43 +02:00
Matthias
61dbb6206f Slightly reduce verbosity when reload_conf is issued
part of #6095
2021-12-23 20:33:13 +01:00
Reigo Reinmets
ac690e9215 Remove unnecessary returns. 2021-12-23 18:49:11 +02:00
Reigo Reinmets
ace0a83c0c Allow forcebuy to also buy more when trade is already open. 2021-12-23 11:57:53 +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
76e7bf6cd2
Merge branch 'freqtrade:develop' into dca 2021-12-22 02:24:21 +02:00
Reigo Reinmets
7df3e7ada4 Add base_stake_amount_ratio config param to support unlimited stakes. 2021-12-22 02:19:11 +02:00
Matthias
f88b6af26f
Merge pull request #6070 from cdimauro/suppress_logs
Suppress additional logs for pairs in blacklist
2021-12-21 21:07:15 +01:00
Matthias
e5aaef6440 Fix CI failure 2021-12-21 19:20:09 +01:00
cdimauro
6ba8b17fdd Use LoggingMixin.log_once to remove/reduce logs on pairlists 2021-12-21 09:11:57 +01: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
d9f5694965
Merge branch 'freqtrade:develop' into dca 2021-12-20 22:05:58 +02:00
Matthias
40036bc710 Force dry-run for webserver backtest mode
closes #6094
2021-12-20 19:41:33 +01:00
Matthias
a557451eee Okex uses 4h mark candle timeframe 2021-12-19 16:47:44 +01:00
Aezo Teo
ea418bc9ac added stats for long short 2021-12-19 23:24:46 +08:00
Reigo Reinmets
5da38f3613 Fix typo. Make sure trade is market open. 2021-12-19 10:36:47 +02:00
Reigo Reinmets
3aca3a7133 Use parentheses instead of backslash 2021-12-18 18:55:47 +02:00
Matthias
ddce28c12d Update data downloading to include funding_fee downloads 2021-12-18 15:32:02 +01: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
30673f84f9 Flake8 compatibility 2021-12-18 11:00:25 +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
d10fb95fce Fix typo 2021-12-17 22:27:10 +02:00
Reigo Reinmets
cea023399e
Merge branch 'freqtrade:develop' into dca 2021-12-17 21:59:58 +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
Matthias
ea38b58081 Add base_currency to allowed webhook fields
closes #6075
2021-12-16 20:18:01 +01:00
Reigo Reinmets
337af44901
Merge branch 'freqtrade:develop' into dca 2021-12-16 20:02:14 +02:00
Matthias
b2fc3e814e
Merge pull request #6055 from freqtrade/blacklist_delete
Add Blacklist delete
2021-12-16 13:41:18 +01:00
Matthias
39f0a17e62 Fix formatting 2021-12-16 07:11:35 +01: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
a7c67e8c7c
Merge branch 'freqtrade:develop' into dca 2021-12-15 08:32:12 +02: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
Matthias
793d090561 Improve log message wording for rejected stake amounts
closes #6064
2021-12-13 19:29:07 +01: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
98255c18cf
Merge branch 'freqtrade:develop' into dca 2021-12-13 02:10:13 +02:00
Matthias
3398469e55 Update PerformanceFilter to have min_profit as ratio again.
closes #6056
2021-12-12 13:21:36 +01:00
cdimauro
8dd3128ed4 Add type annotation to new logs suppression code 2021-12-12 12:32:09 +01:00
cdimauro
5b998aeca7 Remove unused import
Remove the import from copy, since deepcopy() isn't used anymore
(list.copy() is used instead).
2021-12-12 10:21:54 +01:00
cdimauro
878e16545d Suppress additional logs for pairs in blacklist
Every time that there's freqtrade "ticks", pairs in the blacklist are
checked and a warning message is displayed.
So, the logs are continuously flooded with the same warnings.

For example:
2021-07-26 06:24:45 freqtrade.plugins.pairlistmanager: WARNING -
Pair XTZUP/USDT in your blacklist. Removing it from whitelist...
2021-07-26 06:24:45 freqtrade.plugins.pairlistmanager: WARNING -
Pair SUSHIUP/USDT in your blacklist. Removing it from whitelist...
2021-07-26 06:24:45 freqtrade.plugins.pairlistmanager: WARNING -
Pair XTZDOWN/USDT in your blacklist. Removing it from whitelist...
2021-07-26 06:24:50 freqtrade.plugins.pairlistmanager: WARNING -
Pair XTZUP/USDT in your blacklist. Removing it from whitelist...
2021-07-26 06:24:50 freqtrade.plugins.pairlistmanager: WARNING -
Pair SUSHIUP/USDT in your blacklist. Removing it from whitelist...
2021-07-26 06:24:50 freqtrade.plugins.pairlistmanager: WARNING -
Pair XTZDOWN/USDT in your blacklist. Removing it from whitelist...

This patch shows the warning only the first time, by keeping track
of which pairs in the blacklist were already logged.
2021-12-12 10:20:08 +01:00
Reigo Reinmets
8dacd987b9
Merge branch 'freqtrade:develop' into dca 2021-12-12 08:31:38 +02:00
Matthias
c12f2378db
Merge pull request #6045 from freqtrade/trade_fee_fallback_value
Add unknown_fee_rate parameter
2021-12-11 20:00:01 +01:00
Matthias
b90c5e56fb Fix webserver schema bug when running in webserver mode 2021-12-11 19:46:35 +01:00
Matthias
8fdef2900e Increment API version to let clients know this is now available 2021-12-11 19:41:30 +01:00
Reigo Reinmets
71147d2899 Attempt to support limit orders for position adjustment. 2021-12-11 18:25:05 +02:00
Matthias
857f4ec125 Remove exception-handlers which catch exceptions that are never raised 2021-12-11 16:20:09 +01:00
Reigo Reinmets
f11a40f144 Improve documentation on adjust_trade_position and position_adjustment_enable 2021-12-11 17:14:04 +02:00
Matthias
8da79d0ab2 Add blacklist-control to telegram 2021-12-11 16:12:24 +01:00
Matthias
cc96db76f0 Add possibility to delete pairs from the pairlist via api 2021-12-11 15:53:44 +01:00
Matthias
e729fad99c Add unknown_fee_rate parameter 2021-12-11 15:26:08 +01:00
Matthias
17bd990053 Update funding_fee freqtradebot test 2021-12-11 09:49:48 +01:00
Reigo Reinmets
f97662e816 Add position_adjustment_enable config keyword to enable it. 2021-12-11 00:28:12 +02:00
Reigo Reinmets
b7bf3247b8 Only adjust stoploss if it's set. 2021-12-10 23:17:12 +02:00
Reigo Reinmets
1e3fc5e984 Slight code touchup 2021-12-10 22:48:00 +02:00
Matthias
6948414e47 Remove no longer necessary method _get_mark_price_history 2021-12-10 19:54:49 +01:00
Matthias
a87d2d62bb Remove no longer needed method get_funding_rate_history 2021-12-10 19:52:02 +01:00
Matthias
aabca85a5f Update _calculate_funding_fees to reuse existing async infrastructure 2021-12-10 19:50:58 +01:00
Reigo Reinmets
c179951cca Expect stake_amount, not actual amount of pair from strategy for DCA. 2021-12-10 20:42:24 +02:00
Matthias
35f9549e98 Expose drop_incomplete from refresh_latest_ohlcv 2021-12-10 07:36:25 +01:00
Reigo Reinmets
b2c2852f86 Initial backtesting support. This does make it rather slow. 2021-12-09 23:21:35 +02:00
Reigo Reinmets
00366c5c88 Additional unit-tests 2021-12-09 20:03:41 +02:00
Reigo Reinmets
fde6779873 Some code improvements. Still some bugs. 2021-12-09 14:47:44 +02:00