Commit Graph

6369 Commits

Author SHA1 Message Date
Brook Miles
aee2591490 add stoploss_from_open() as a strategy_helper 2021-03-17 17:58:23 +09:00
Matthias
79d4585dad Add check to ensure close_profit_abs is filled on closed trades
Technically, this should not be possible, but #4554 shows it is.

closes #4554
2021-03-16 19:24:03 +01:00
Matthias
b191663a7e Adapt hyperopt templates to be better aligned
closes #3027
2021-03-14 19:49:46 +01:00
Matthias
0b35c0571f Allow custom fee to be used during dry-run
closes #3696
2021-03-14 19:37:57 +01:00
Matthias
b57c150654 Final balance should include forcesold pairs 2021-03-14 09:48:40 +01:00
Matthias
cd8d9f2930
Merge pull request #4534 from rokups/patch-1
Provide access to strategy instance from hyperopt class.
2021-03-13 17:14:47 +01:00
Matthias
3b99f04a78
Merge pull request #4535 from freqtrade/fix/backtestperformance
Improve backtest performance after enabling compounding
2021-03-13 16:51:00 +01:00
Matthias
0320c8dc92 Improve tests for trades_proxy 2021-03-13 15:51:27 +01:00
Rokas Kupstys
5e872273d1 Provide access to strategy instance from hyperopt class. 2021-03-13 15:13:42 +02:00
Matthias
d1acc8092c Improve backtest performance 2021-03-13 10:17:14 +01:00
Jackson Law
425cd7adba Create event loop manually if uvloop is available
asyncio.get_event_loop() does not call new_event_loop()
if current_thread() != main_thread()
2021-03-12 16:16:03 -08:00
Matthias
441d3fad39
Merge pull request #4513 from freqtrade/fix/4511
Fix stoploss order problem with FTX
2021-03-11 19:39:44 +01:00
Matthias
ef9977fc1e Make stake_amount + stake_currency mandatory for backtesting 2021-03-10 10:43:44 +01:00
Matthias
0db5c9746f
Merge pull request #4454 from freqtrade/backtest_compound_speed
Backtest compound, wallet, ...
2021-03-10 10:07:40 +01:00
Matthias
99583bbd0c Fix problem with FTX
where cancelled orders are "cancelled", not "canceled"
2021-03-09 20:21:08 +01:00
Th0masL
37e6006169 Fix order_by in trades command 2021-03-08 23:21:56 +02:00
Matthias
4b550dab17 Always reset fake-databases
Otherwise results may stick around for the next strategy
2021-03-08 19:40:29 +01:00
Matthias
0b81b58d28 Use pandas.values.tolist instead of itertuples
speeds up backtesting
closes #4494
2021-03-07 11:28:54 +01:00
Matthias
02d7dc4780 Increase cache size to be large enough to hold all pairs
closes #4483
2021-03-06 19:55:02 +01:00
Matthias
b515609d73
Merge pull request #4490 from Th0masL/add_trade_id
Add the trade ID to Telegram Buy/Sell/Cancel messages
2021-03-06 15:40:34 +01:00
Th0masL
ad0e60b5b6 Add trade_id to Cancel messages and reduced lines length 2021-03-06 15:07:47 +02:00
Matthias
eed8c94dd9
Merge pull request #4488 from patrick310/patch-1
Add strategy name to HyperOpt results filename
2021-03-06 13:48:12 +01:00
Th0masL
03b89e7f78 Add trade_id in Telegram messages 2021-03-06 00:04:12 +02:00
Matthias
a405d578da Introduce forcebuy ordertype to allow specifiying a different ordertype for forcebuy / forcesells 2021-03-05 20:22:04 +01:00
Patrick Weber
4532222010
Fixed line length in HyperOpt for new name
Fixed line length errors and multiple f strings to facilitate strategy being added in the name
2021-03-05 13:16:49 -06:00
Matthias
5196306407 Remove deprecated profit return value 2021-03-05 20:03:49 +01:00
Patrick Weber
345f7404e9
Add strategy name to HyperOpt results filename
This just extends the HyperOpt result filename by adding the strategy name. This allows analysis of HyperOpt results folder with no additional necessary context. An alternative idea would be to expand the result dict, but the additional static copies are non value added.
2021-03-05 12:56:11 -06:00
Matthias
731ab5d2a7 Fix too long line errors 2021-03-05 19:22:57 +01:00
Matthias
bc05d03126 Make best / worst day absolute 2021-03-05 19:21:09 +01:00
raoulus
0968ecc1af added "Median profit" column to hyperopt -> export-csv 2021-03-04 17:27:04 +01:00
Matthias
078b77d41b Fix crash when using unlimited stake and no trades are made 2021-03-02 16:12:22 +01:00
Joe Schr
55a315be14 fix: avg_stake_amount should not be NaN if df is empty 2021-03-02 13:38:55 +01:00
Matthias
6eb253c31e
Merge pull request #4469 from freqtrade/rpc/locks
Add RPC methods to remove locks
2021-03-02 10:41:08 +01:00
Matthias
4bb6a27745 Don't catch errors that can't happen 2021-03-02 06:59:58 +01:00
Matthias
007ac7abb5 Add telegram pair unlocking 2021-03-01 20:09:40 +01:00
Matthias
6640156ac7 Support deleting locks via API 2021-03-01 19:50:39 +01:00
Matthias
6eef6d41bc
Merge pull request #4465 from freqtrade/dependabot/pip/develop/arrow-1.0.2
Bump arrow from 0.17.0 to 1.0.2
2021-03-01 09:30:11 +01:00
Matthias
2083cf6ddf Fix mypy errors introduced by Arrow update 2021-03-01 08:57:57 +01:00
Matthias
3d65ba2dcb Add rpc method to delete locks 2021-03-01 07:51:33 +01:00
Matthias
bba9b9e819 Don't use __root__ directly for api response 2021-03-01 07:08:44 +01:00
Matthias
4b689f5b88
Merge pull request #4420 from freqtrade/dependabot/pip/develop/mypy-0.812
Bump mypy from 0.790 to 0.812
2021-02-28 15:30:44 +01:00
Matthias
aba034ff40 Fix mypy problem after mypy 0.800 upgrade 2021-02-28 11:04:30 +01:00
Matthias
54ccbd9370
Merge pull request #4391 from squat0001/develop
Add dust level to balance command in telegram
2021-02-28 10:36:44 +01:00
Matthias
a13dc3cdde Use sensible defaults for balance_dust_level 2021-02-28 09:57:52 +01:00
Matthias
9cb37409fd Explicitly convert starting-balance to float 2021-02-28 09:56:29 +01:00
Florian Reitmeir
0895407811 add balance_dust_level parameter to make telegram less chatty 2021-02-28 08:51:32 +01:00
Matthias
05f057fe72 Stringify favicon path
potentially closes #4459
2021-02-28 08:48:28 +01:00
Matthias
b2e9295d7f Small stylistic fixes 2021-02-27 19:57:42 +01:00
Matthias
324b9dbdff Simplify wallet code 2021-02-27 10:33:25 +01:00
Matthias
f5bb5f56f1 Update documentation with backtesting compounding possibilities 2021-02-27 09:33:00 +01:00
Matthias
98f3142b30 Improve handling of backtesting params 2021-02-27 09:33:00 +01:00
Matthias
86f9409fd2 fix --stake-amount parameter 2021-02-27 09:33:00 +01:00
Matthias
fc256749af Add test for backtesting _enter_trade 2021-02-27 09:33:00 +01:00
Matthias
60db6ccf45 Add test for subclassing 2021-02-27 09:33:00 +01:00
Matthias
53a57f2c81 Change some types
Fix types of new model object
2021-02-27 09:33:00 +01:00
Matthias
03eb23a4ce 2 levels of Trade models, one with and one without sqlalchemy
Fixes a performance issue when backtesting with sqlalchemy, as that
uses descriptors for all properties.
2021-02-27 09:33:00 +01:00
Matthias
394a6bbf2a Fix some type errors 2021-02-27 09:33:00 +01:00
Matthias
52acacbed5 Check min-trade-stake in backtesting 2021-02-27 09:33:00 +01:00
Matthias
f04f07299c Improve backtesting metrics 2021-02-27 09:33:00 +01:00
Matthias
7913166453 Improve performance by updating wallets only when necessary 2021-02-27 09:33:00 +01:00
Matthias
37d7d2afd5 Wallets should not recalculate close_profit for closed trades 2021-02-27 09:33:00 +01:00
Matthias
f367375e5b ABS drawdown should show wallet high and low values 2021-02-27 09:33:00 +01:00
Matthias
aed23d55c2 Add starting balance to profit cumsum calculation 2021-02-27 09:33:00 +01:00
Matthias
0d2f877e77 Use absolute drawdown calc 2021-02-27 09:32:59 +01:00
Matthias
74fc4bdab5 Shorten debug log 2021-02-27 09:32:59 +01:00
Matthias
72f21fc5ec Add trade-volume metric 2021-02-27 09:32:59 +01:00
Matthias
35e6a9ab3a Backtest-reports should calculate total gains based on starting capital 2021-02-27 09:32:59 +01:00
Matthias
8d61a26382 Allow dynamic stake for backtesting and hyperopt 2021-02-27 09:32:59 +01:00
Matthias
e4abe902fc Enable compounding for backtesting 2021-02-27 09:32:59 +01:00
Matthias
959ff99046 Add Dry-run wallet CLI option 2021-02-27 09:32:59 +01:00
Matthias
0754a7a78f total_open_trades_stake should support no-db mode 2021-02-27 09:32:59 +01:00
Matthias
0faa6f84dc Improve Wallet logging disabling for backtesting 2021-02-27 09:32:59 +01:00
Matthias
20455de2a9 Small enhancements to docs 2021-02-27 09:32:59 +01:00
Matthias
081b9be45c use get_all_locks to get locks for backtest result 2021-02-27 09:32:59 +01:00
Matthias
e32b2097f0 Use timestamp in UTC timezone for ROI comparisons 2021-02-27 09:32:59 +01:00
Matthias
712d503e6c Use sell-reason value in backtesting, not the enum object 2021-02-27 09:32:59 +01:00
Matthias
b5177eadab Extract close method for exchange 2021-02-27 09:32:59 +01:00
Matthias
4ce4eadc23 remove only ccxt objects when hyperopting 2021-02-27 09:32:59 +01:00
Matthias
9361aa1c95 Add wallets to backtesting 2021-02-27 09:32:59 +01:00
Matthias
f0a154692d Wallets should use trade_proxy 2021-02-27 09:32:59 +01:00
JoeSchr
642e3be7c5
Fix(strategy/interface.py): comment typo
`advice_buy` -> `advise_buy`
2021-02-26 23:17:59 +01:00
Matthias
0bb80d1442
Merge pull request #4446 from Xanders/patch-1
Webhook JSON format
2021-02-26 20:03:07 +01:00
Matthias
7d87c44c35
Merge pull request #4436 from Th0masL/forcesell_type
Allow changing the order_type for forcesell
2021-02-26 19:42:00 +01:00
Xanders
7281e794b4
Fix too long line at webhook.py 2021-02-26 21:31:33 +03:00
Xanders
fc69240e6d
Add JSON-encoded webhooks 2021-02-26 17:46:23 +03:00
Matthias
1b3b389109 Remove binanceje, add ftx to config selector
closes #4441
2021-02-26 07:58:15 +01:00
Th0masL
006f31129e Reduced length of the line 2021-02-25 05:23:24 +02:00
Th0masL
117f0064ed Allow changing the order_type for forcesell 2021-02-25 05:02:08 +02:00
Matthias
c71ecd3680 Fix wrong pair-content in strategy-analysis notebook and documentation
closes #4399
2021-02-22 20:04:36 +01:00
Matthias
228e51b60b Fix #4405 2021-02-22 13:34:52 +01:00
Matthias
3629892fc3 Stoploss-guard should use the trade_limit or more
fix #4404
2021-02-20 19:38:44 +01:00
Matthias
245e39e523 dry-run should be a bool, not a string 2021-02-20 19:17:26 +01:00
Matthias
2b0d2070d0 Avoid crash with /delete
When a trade is deleted between querying the database and actually
handling the trade.

closes #4326
2021-02-18 12:49:14 +01:00
Matthias
b5a9ce2894 Download data in the right format as well ...
closes #4393
2021-02-18 09:26:35 +01:00
Matthias
11b20d6932 Add config to hyperopt_loss_function documentation 2021-02-17 07:04:29 +01:00
Matthias
eff0d46ea1
Merge pull request #4375 from flomerz/pass_processed_data
pass data and config to loss function
2021-02-16 20:06:50 +01:00
Matthias
009a447d8a Adjust documentation for new parameter in loss functions 2021-02-16 19:51:09 +01:00
Florian Merz
3e06cd8b3a pass data and config to loss function 2021-02-16 10:11:33 +01:00
Matthias
1a3e7191ed
Merge pull request #4116 from squat0001/develop-squat
Develop squat
2021-02-15 07:15:11 +01:00
Florian Reitmeir
5c263c7ffd add backtesting results abs profit min/abs profit max, to get a better view if a strategy has a enough money to succeed 2021-02-14 19:41:12 +01:00
Matthias
ee74bc1f52 timeframe is mandatory, no need to use .get() 2021-02-14 11:01:12 +01:00
Matthias
da89838b5c Set bittrex limits as returned by the exchange
closes #4181
2021-02-14 10:32:55 +01:00
Matthias
5622bb3247 Make candle_limit optionally timeframe dependent 2021-02-14 10:29:45 +01:00
Matthias
7ecf8f8b80 Cleanup candle_limit usage 2021-02-14 10:08:05 +01:00
Matthias
6f77ec063e Fix cookieError on python<3.8
Only occurs in combination with api-server enabled,
due to some hot-fixing starlette does.
Since we load starlette at a later point, we need to replicate
starlette's behaviour for now, so sameSite cookies don't create a
problem.

closes #4356
2021-02-14 07:22:08 +01:00
Matthias
73d91275c4 Reset sell_order_status if a new sell-order is placed
closes #4365
2021-02-14 07:11:07 +01:00
Eko Aprili Trisno
af98e025d1
Merge branch 'develop' into patch-1 2021-02-14 02:12:38 +07:00
Eko Aprili Trisno
ba32708ed4
Update telegram.py 2021-02-14 01:40:04 +07:00
Matthias
d4c8be915c Use fstring where possible 2021-02-13 16:11:49 +01:00
Matthias
e7acee7904 Improve coin value output by rounding coin specific 2021-02-13 16:05:56 +01:00
Matthias
072abde9b7 Introduce round_coin_value to simplify coin rounding 2021-02-13 16:05:35 +01:00
Matthias
dd23f6bcbc Fix type for getting pairs 2021-02-11 20:29:31 +01:00
Matthias
843fb204e9 Fix problem with inf values returned from dataframe for api methods 2021-02-11 20:21:31 +01:00
Matthias
aa79574c0c Position-size should NEVER be over available_capital
Part of #4353
2021-02-11 17:09:31 +01:00
Matthias
7ee149da5d Improve plotting errorhandling
closes #4327
2021-02-08 20:08:32 +01:00
Matthias
c5ab3a80a5 Check if order is a dict before parsing
closes #4331
2021-02-08 19:35:22 +01:00
Matthias
f6cdc6d9a2
Merge pull request #4325 from freqtrade/refresh_order_skip
Refresh order skip
2021-02-07 08:23:22 +01:00
Edvinas Selskas
694f55c0a5
Use suggested link 2021-02-06 14:43:50 +00:00
Matthias
d5cf837c0f Parse regular cancel_order call to update orders table 2021-02-06 09:23:10 +01:00
Edvinas Selskas
bc8fda8d63
Update sample_strategy.py
Fix test
2021-02-06 03:13:53 +00:00
Edvinas Selskas
0a43988f3f
Fix sample strategy documentation link
Noticed that the current link is dead. I think this would be the most appropriate link in this case.
2021-02-06 03:02:37 +00:00
Matthias
aec22c5c3d introduce skip_open_order_update parameter
skips startup-open-order-update
closes #4128
2021-02-05 20:17:53 +01:00
Matthias
2c71b3b118
Merge pull request #4309 from freqtrade/extract_stake_amount
Move get_trade_stake_amount to wallets
2021-02-05 19:47:30 +01:00
Matthias
1310a7b547 Fix bug with wrong conversion for BTCST/BTC
This can happen if a pair starts with the stake-currency

closes #4307
2021-02-04 19:58:44 +01:00
raoulus
99b2214d1f setting resize_keyboard=True for slightly smaller Telegram buttons 2021-02-04 15:27:18 +01:00
Matthias
e8e5acc2e2 Fix import in strategy template 2021-02-03 20:15:08 +01:00
Matthias
024849d844
Merge pull request #4285 from freqtrade/ui_deploy
Deploy FreqUI into webserver
2021-02-03 20:09:31 +01:00
Matthias
b8cb39462c Move get_trade_stake_amount to wallets
this way it can be easier used by other functions
2021-02-03 20:00:33 +01:00
Eko Aprili Trisno
54d0ac9d20
Update telegram.py 2021-02-04 01:19:23 +07:00
Eko Aprili Trisno
21d3635e8d
Update telegram.py 2021-02-04 01:16:27 +07:00
Eko Aprili Trisno
69d62ef383
Add Refresh / Reload Button on rpc/Telegram 2021-02-04 01:06:52 +07:00
Matthias
cfd0bb8964 Extract min stake amount from bot to exchange class 2021-02-02 19:47:21 +01:00
Matthias
fa8156b321
Merge pull request #4282 from pan-long/patch-1
Fix a bug when compare sell_profit_offset
2021-02-02 08:22:38 +01:00
Matthias
3d9b4034e6 Use already calculated current_profit for sell_profit_offset comparison 2021-02-02 08:06:19 +01:00
Matthias
52acf9aaf6 Fix "disappearing pairs" bug
closes #4277
2021-02-01 19:40:31 +01:00
Matthias
2c80388b40 Fix valueerror in case of empty array files 2021-02-01 06:28:49 +01:00
Matthias
06e2bc94c3 Deploy to subdirectory 2021-01-31 16:01:00 +01:00
Matthias
e4a085027b Add test for UI methods 2021-01-31 15:27:00 +01:00
Matthias
28be71806f Install html file as well 2021-01-31 15:13:51 +01:00
Matthias
a87a885ccd Don't use Path object to return fileresponses 2021-01-31 14:54:58 +01:00
Matthias
7b3d99819f Fix bug with not cleaning UI folder 2021-01-31 14:50:54 +01:00
Matthias
944d674eeb Store freqUI version and read it again 2021-01-31 14:50:54 +01:00
Matthias
2af1d2d639 Extract last FreqUI version from api response 2021-01-31 14:50:54 +01:00
Matthias
e928d2991d Add fallback file 2021-01-31 14:50:54 +01:00
Matthias
f05f2c45e8 Allow deleting of UI only 2021-01-31 14:50:54 +01:00
Matthias
a1a35115ad Extract get_ui_download_url 2021-01-31 14:50:54 +01:00
Matthias
87ed2d7502 Write some tests for UI Downloading 2021-01-31 14:50:54 +01:00
Matthias
a47616eed4 Add UI installation subcommand 2021-01-31 14:50:54 +01:00
Matthias
27970b424d Add webUI serving to api-server 2021-01-31 14:50:54 +01:00
Matthias
5724371a4f Fix types for numpy 1.20.0 upgrade 2021-01-31 11:21:23 +01:00
Pan Long
4cc93151c5
Fix a bug when compare sell_profit_offset
It should be comparing the ratio instead of absolut profit.

Also updated the comment.
2021-01-31 12:14:09 +08:00
Matthias
16dad8b6d4 Allow custom_stoploss to cooperate with stoploss on exchange 2021-01-30 20:11:18 +01:00
Matthias
ea0ffbae73 use profit_ratio in calculate_cum_profit 2021-01-29 19:06:57 +01:00
Matthias
5cdd9dd445 Cache markets in the exchange object 2021-01-28 19:47:32 +01:00
Matthias
65459086a3
Merge pull request #4268 from freqtrade/backtest_trade_object
Backtest trade object
2021-01-27 19:10:21 +01:00
Matthias
a9b4d6de33 Check for existance of ask key in ticker
closes #4267
2021-01-26 17:18:55 +01:00
Tho Pham (Alex)
8f529f48da
Update freqtrade/freqtradebot.py use is_open.is_(True)
Co-authored-by: Matthias <xmatthias@outlook.com>
2021-01-26 07:38:25 +07:00
Matthias
c659150d9f Also print trade_duration in seconds to json 2021-01-25 19:42:34 +01:00
Tho Pham (Alex)
c22cccb55b
Fix operator does not exist: boolean = integer 2021-01-25 12:24:47 +07:00
Matthias
62e43539c9 Limit max_open_trades to maximum available pairs
closes #4008
2021-01-24 19:59:54 +01:00
Matthias
789a980a30 Fix tests for new export format 2021-01-24 19:42:32 +01:00
Matthias
deb8432d33 Streamline trade to dataframe conversion 2021-01-24 08:58:41 +01:00
Matthias
8ee264bc59 Don't use profit_percent for backtesting results anymore 2021-01-24 08:58:41 +01:00
Matthias
48977493bb Backtesting does not need to convert to BacktestResult object 2021-01-24 08:58:41 +01:00
Matthias
3b51545d23 Add trade_duration to to_json 2021-01-24 08:58:41 +01:00
Matthias
16f9675356 Fix whitelist expansion problem 2021-01-23 20:40:27 +01:00
Matthias
31e0b09643 Rename config.json.example
it's really the config dedicated to bittrex,
so the name should reflect this in beeing config_bittrex.json.example
2021-01-22 19:18:34 +01:00
Matthias
5c0f98b518 Blacklist Poloniex - as ccxt does not provide a fetch_order endpoint 2021-01-20 19:31:17 +01:00
Matthias
7c80eeea95 Add use_custom_stoploss to optimize_report 2021-01-19 22:51:12 +01:00
Matthias
20591b539a
Merge pull request #4228 from baartch/develop
Extending the Telegram Bot command /status with the possibility to query specific trade_ids
2021-01-19 20:08:49 +01:00
Andreas Brunner
a68a546dd9 _rpc_trade_status argument datatype optimizations 2021-01-18 15:26:53 +01:00
Andreas Brunner
eb95d970e9 flake8 beautify 2021-01-17 21:26:55 +01:00
Andreas Brunner
d21eff0d52 fix, if an non existing trade_id is provided 2021-01-17 21:21:31 +01:00
Andreas Brunner
3ea33d1737 updating doc and help with new /status argument 2021-01-17 21:15:17 +01:00
Andreas Brunner
6d40814dbf extend status bot command to query specific trades 2021-01-17 20:39:35 +01:00
Matthias
a8bae3a381 Don't update trade fees for dry-run orders 2021-01-17 20:31:27 +01:00
Matthias
53c208197d Add bot_name setting
allows naming the bot to simply differentiate when running different
bots.
2021-01-16 16:19:49 +01:00
Matthias
3fefb6f1c8
Merge pull request #4215 from freqtrade/refactor/backtest
Small backtest refactor, introduce calling `bot_loop_start` in backtesting
2021-01-16 09:32:19 +01:00
Matthias
d74376726a api-server should fully support max_open_trades=-1 2021-01-15 20:47:12 +01:00
Matthias
baef8b4f79
Merge pull request #4197 from nas-/develop
Added support for regex in whitelist
2021-01-15 07:34:49 +01:00
Matthias
bf5868c96d Add testcase for nonexisting pairs on whitelist 2021-01-15 07:10:17 +01:00
nas-
f72d53351c Added ability to keep invalid pairs while expanding expand_pairlist 2021-01-15 06:37:57 +01:00
Matthias
0b65fe6afe Capture backtest start / end time 2021-01-14 19:09:25 +01:00
Matthias
9147106259 call bot_loop_start() in backtesting to allow setup-code to run 2021-01-14 19:09:25 +01:00
Matthias
baa1142afa Use preprocessed to get min/max date in hyperopt 2021-01-14 19:09:21 +01:00
Matthias
9d4cdcad10 Extract backtesting of one strategy 2021-01-14 19:04:42 +01:00
Matthias
f3de0dd3eb Fix support for protections in hyperopt
closes #4208
2021-01-14 06:53:40 +01:00
Matthias
47a06c6213 Fix enable/reenable of swagger UI endpoint 2021-01-12 19:28:22 +01:00
Matthias
ac43591c44 Fix failing api when max_open_trades is unlimited 2021-01-12 19:24:37 +01:00
Matthias
6007d5182a
Merge pull request #4147 from hoeckxer/ignore_expired_candle
Ignoring candles that have expired within timeframe
2021-01-12 19:04:16 +01:00
hoeckxer
1f6a71fdd9 Reformat code on new version 2021-01-12 08:24:11 +01:00
hoeckxer
71f45021b9 Removed redundant statement 2021-01-12 07:35:30 +01:00
hoeckxer
e328182bd7 Changed workings so it only needs to timing-parameter, instead of also requiring a boolean value 2021-01-12 07:30:39 +01:00
nas-
4d7ffa8c81 Added suppoort for regex in whitelist 2021-01-12 01:13:58 +01:00
Matthias
63a579dbab Add sell_profit_offset parameter
Allows defining positive offsets before enabling the sell signal
2021-01-11 19:30:25 +01:00
Matthias
f159c46438 Include stoploss_on_exchange in stoploss_guard
fix #4183
2021-01-11 07:55:01 +01:00
Matthias
5102dfd6df
Merge pull request #4144 from freqtrade/improve_informativepair
Improve merge_informative_pairs to properly merge correct timeframes
2021-01-09 10:15:59 +01:00
Matthias
8631a54514 Fix test due to pyjwt2.0 2021-01-08 19:34:01 +01:00
Matthias
bf182dc01e Fix wrong key usage in trade_history_timebased 2021-01-07 20:03:34 +01:00
Matthias
b43ef474ad Fix expired candle implementation
Improve and simplify test by passing the current time to the function
2021-01-07 07:51:49 +01:00
Matthias
c9e477214f Allow protections to be set in the strategy 2021-01-06 16:37:09 +01:00
Matthias
e69dac2704 Fix bug in RPC history mode when no data is found 2021-01-06 15:38:46 +01:00
Matthias
91f8667881 DOn't update open orders in dry-run mode 2021-01-06 09:57:36 +01:00
hoeckxer
c0f170fdb9 Merge branch 'develop' into ignore_expired_candle 2021-01-05 21:00:08 +01:00
hoeckxer
65d91a3a58 isort fix 2021-01-05 15:36:34 +01:00
hoeckxer
573de1cf08 Fixed flake8 warnings 2021-01-05 15:30:29 +01:00
hoeckxer
e3f3f36298 Changes based on review comments 2021-01-05 14:49:35 +01:00
hoeckxer
c9ed2137bb Simplified return statements
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-05 09:07:46 +01:00
Erwin Hoeckx
67306d943a
Update interface.py
Simplified return value, thereby including the situation where the time simply hasn't expired yet
2021-01-05 07:33:34 +01:00
Erwin Hoeckx
9a93a0876a
Update interface.py
Adjusted comment
2021-01-05 07:32:07 +01:00
hoeckxer
844df96ec7 Making changes so the build checks are satisified (imports & flake8)
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-05 07:06:53 +01:00
hoeckxer
614a996597 First commit about ignoring expired candle
Signed-off-by: hoeckxer <hawkeyenl@yahoo.com>
2021-01-04 20:49:24 +01:00
Matthias
07bc0c3fce Improve merge_informative_pairs to properly merge correct timeframes
explanation in #4073, closes #4073
2021-01-04 13:49:38 +01:00
Matthias
5ca2cd3a1e Change defaults to log only errors 2021-01-03 07:18:41 +01:00
Matthias
634d6f3898 Change logging to stderr 2021-01-03 07:15:45 +01:00
Matthias
26c3463403 Stake-amount supports unlimited, too 2021-01-03 06:49:10 +01:00
Matthias
cff50f9f66 Add response-model for show_config 2021-01-03 06:49:10 +01:00
Matthias
ca0bb7bbb8 Don't require RPC for strategy 2021-01-03 06:49:07 +01:00
Matthias
e6176d43f3 Optional RPC dependency 2021-01-03 06:49:07 +01:00
Matthias
3dc37dd79d Add types for deps 2021-01-03 06:49:07 +01:00
Matthias
336dd1a29c Rename api_models to api_schemas 2021-01-03 06:49:07 +01:00
Matthias
84ced92002 Fix mock-tests missing some fields 2021-01-03 06:49:07 +01:00
Matthias
29f4dd1dcd Enhance some response models 2021-01-03 06:49:07 +01:00
Matthias
718f2b24d2 Don't use relative imports 2021-01-03 06:49:07 +01:00
Matthias
b2ab553a31 Rename api_server2 module to apiserver 2021-01-03 06:49:04 +01:00
Matthias
eb20f6e7d0 Align auth token to flask version to prevent user-logout 2021-01-03 06:49:04 +01:00
Matthias
346542e5cd Remove flask dependency 2021-01-03 06:49:04 +01:00
Matthias
68d148e72d Allow configuration of openAPI interface 2021-01-03 06:49:04 +01:00
Matthias
1717121f10 Properly use JWT secret key 2021-01-03 06:49:04 +01:00
Matthias
790f833653 Some more tests around api_auth 2021-01-03 06:49:04 +01:00
Matthias
776ce57f55 Remove api_server 2021-01-03 06:49:04 +01:00
Matthias
54a50b1fb4 Fix some tests 2021-01-03 06:49:04 +01:00
Matthias
9f873305eb Improve response models 2021-01-03 06:49:04 +01:00
Matthias
9350f505bc Implement missing methods 2021-01-03 06:49:04 +01:00
Matthias
e23898d17b Improve some tests 2021-01-03 06:49:04 +01:00
Matthias
9ee1d88355 Implement more endpoints 2021-01-03 06:49:04 +01:00
Matthias
73a29e6d74 Improve tests, implement more fastapi methods 2021-01-03 06:49:04 +01:00
Matthias
a18d66e108 Add more endpoints to fastapi 2021-01-03 06:49:04 +01:00
Matthias
4b86700a0f Implement more endpoints 2021-01-03 06:48:56 +01:00
Matthias
5e4c4cae06 Fix auth providers 2021-01-03 06:48:53 +01:00
Matthias
86d0700884 Move models to apimodels 2021-01-03 06:46:25 +01:00
Matthias
6594278509 Reorder endpoints 2021-01-03 06:46:25 +01:00
Matthias
eac74a9dec Implement auth in fastapi 2021-01-03 06:46:25 +01:00
Matthias
619b855d5f Add version endpoint 2021-01-03 06:46:25 +01:00
Matthias
a862f19f82 Allow retrieval of rpc and config via dependencies 2021-01-03 06:46:25 +01:00
Matthias
1e38fec61b Initial fastapi implementation (Ping working) 2021-01-03 06:46:25 +01:00
Matthias
9e3224ccc0
Merge pull request #4089 from freqtrade/feat/stoploss_custom
introduce custom stoploss
2020-12-31 10:33:33 +01:00
Matthias
512e163355 change docstring to better reflect what the method is for 2020-12-31 09:48:49 +01:00
Matthias
bd7600ff06 Small visual changes 2020-12-31 09:43:24 +01:00
Matthias
04624aae40 Add documentation for wildcard-blacklist 2020-12-30 12:30:50 +01:00
Matthias
0affacd39a Support invalid regex blacklist from config 2020-12-30 10:14:22 +01:00
Matthias
9feabe707f Fix RPC methods to allow wildcards (and validate wildcards) 2020-12-30 09:57:31 +01:00
Matthias
704cf14383 Add expand_pairlist method 2020-12-30 09:55:44 +01:00
Matthias
2fdda8e448 plot-profit should fail gracefully if no trade is within the selected timerange
closes #4119
2020-12-30 08:30:41 +01:00
Matthias
b607740dd1 Fix kraken balance bug if open buy orders exist 2020-12-29 20:06:37 +01:00
Matthias
0d4cf32086 Slightly adapt to pandas incompatibility 2020-12-28 09:50:48 +01:00
Matthias
a87c273903 Refactor RPC modules so handlers don't inherit RPC directly 2020-12-24 09:09:23 +01:00
Matthias
1508e08ea5 Move fiatconvert init to RPC class 2020-12-24 08:39:00 +01:00
Matthias
516e56bfaa Move init of _config to apiserver parent 2020-12-23 20:50:32 +01:00
Matthias
f11fd2fee1 Sort imports 2020-12-23 17:00:02 +01:00
Matthias
67193bca3d Move pairlists to be a plugin submodule 2020-12-23 16:54:35 +01:00
Matthias
7cef5ac217
Merge pull request #4092 from MrKrautee/telegram
Telegram: specify custom keyboard in config
2020-12-23 16:25:37 +01:00
Christof
74bcd82c3d Exception msg 2020-12-23 16:00:01 +01:00
Christof
cd1a8e2c42 better error msg 2020-12-22 12:39:27 +01:00
Christof
be28b42bfa Exception for invalid keyboard config 2020-12-22 12:34:21 +01:00
Matthias
39579b6e5d
Merge pull request #4093 from freqtrade/ohlcv_limit
set ohlcv limit on ccxt calls
2020-12-21 19:34:50 +01:00
Christof
5423c21be0 keyboard type 2020-12-20 22:51:40 +01:00
Christof
f39dde121a moved keyboard config validation to __inti__ 2020-12-20 22:36:56 +01:00
Christof
18a24d75ef cleanup 2020-12-20 21:31:01 +01:00
Christof
c1b8ad7232 renaming, comments, cleanups 2020-12-20 21:31:01 +01:00
Christof
43091a26ce simple tests 2020-12-20 21:28:57 +01:00
Christof
5b2902fcbc cleanup 2020-12-20 21:28:57 +01:00
Christof
16baca5eeb fixed: too complex warning 2020-12-20 21:28:57 +01:00
Christof
d901a86165 typo 2020-12-20 21:28:57 +01:00
Christof
75e4758936 changed config params, added fill area in subplots 2020-12-20 21:28:57 +01:00
Christof
cc39cf97dd revert to former create_plotconfig behaviour 2020-12-20 21:28:57 +01:00
Christof
4531c924da PEP8 2020-12-20 21:28:57 +01:00
Christof
fb3d82ccb9 cleanup 2020-12-20 21:28:57 +01:00
Christof
fdd4b40c34 fixed subplots, empty create plot_config if its not given by strategie 2020-12-20 21:28:57 +01:00
Christof
daa1727e2b Exeption for fill_area.traces 2020-12-20 21:28:57 +01:00
Christof
3fdfc06a1e label for fill_area added and documentation updated 2020-12-20 21:28:57 +01:00
Christof
ecadfdd98e fixed:advanced config. added. feature: fill area between traces by advanced configuration. 2020-12-20 21:28:57 +01:00
Christof
6b44545d37 sort order imports 2020-12-20 21:06:45 +01:00
Christof
621105df9a renaming shortcut_btns to keyboard 2020-12-20 21:06:45 +01:00
Christof
5b3ffd5141 better log msg, comments 2020-12-20 21:06:45 +01:00
Christof
e92bcb00f6 telegram: specify custom shortcut bottons (keyboard) in config.json 2020-12-20 21:06:45 +01:00
Matthias
8d3f096a97 AgeFilter does not require tickers 2020-12-20 20:08:54 +01:00
Matthias
d7daa86434 Add bybit subclass 2020-12-20 19:59:46 +01:00
Matthias
7d2395ddb7 Add limit parameter to fetch_ohlcv 2020-12-20 19:33:04 +01:00
Matthias
9d5961e224 Rename method to custom_stoploss 2020-12-20 11:17:50 +01:00
Matthias
277342f167 Rename flag to "use_custom_stoposs" 2020-12-20 11:12:22 +01:00
Matthias
8574751a07 Add stoploss_value to strategy template 2020-12-20 10:49:22 +01:00
Matthias
6892c08e9b Improve docstring 2020-12-19 13:18:06 +01:00
Matthias
b2c1098316 more docs for dynamic stoploss method 2020-12-19 12:03:18 +01:00
Matthias
f7b54c2415 Allow and document time-based custom stoploss
closes #3206
2020-12-19 11:46:49 +01:00
Matthias
a414b57d54 Experiment with custom stoploss interface 2020-12-18 06:56:56 +01:00
Matthias
8f6aefb591 Extract stoploss assignment 2020-12-18 06:56:56 +01:00
Matthias
768a24c375 Add stoplossvalue interface 2020-12-18 06:56:56 +01:00
Matthias
4e7f914e92 Improve test for AgeFilter, fix bug in Agefilter 2020-12-17 13:34:53 +01:00
Matthias
266031a6be Disallow PerformanceFilter for backtesting
closes #4072
2020-12-16 19:24:47 +01:00
Matthias
d1fda28d2e Fix typehints 2020-12-15 20:59:58 +01:00
Matthias
3c85d5201f Use async to get candle data for pairlists 2020-12-15 20:38:26 +01:00
Matthias
c8dde63227 Allow test-pairlist to run with verbosity 2020-12-15 09:23:40 +01:00
Matthias
69901c1314 Provide pair to _validate_pairs in pairlists 2020-12-15 09:23:40 +01:00
Matthias
39fec25ae0 add optional Cache arguments to refresh_pairs method 2020-12-15 09:23:27 +01:00
Matthias
9f5c4ead15 Remove support for 3.6 2020-12-14 19:18:54 +01:00
Matthias
7c6357cc45
Merge pull request #4041 from freqtrade/plugins/protections_backtest
Introduce Protection Plugins
2020-12-13 11:08:24 +01:00
Matthias
657b002a81 Explicitly check for False in fetch_ticker 2020-12-13 10:59:29 +01:00
Matthias
7eab33de08 Merge branch 'develop' into plugins/protections_backtest 2020-12-13 10:31:33 +01:00
Matthias
8a2fbf6592 Small cleanup of protection stuff 2020-12-13 10:16:09 +01:00
Matthias
181b88dc75 Don't accept too high fees, assuming they are erroneous
Forces fallback to "detection from trades"
2020-12-12 10:52:27 +01:00
Matthias
c784e5780e
Merge pull request #4054 from freqtrade/models_open_price
Models open price
2020-12-11 06:31:02 +01:00
Matthias
95fd3824da Finish renamal of open_trade_price to open_value 2020-12-10 19:36:52 +01:00
Matthias
201cc67e05 Rename open_trade_price to "open_trade_value" 2020-12-10 19:21:20 +01:00
Matthias
76594d5dde
Merge pull request #3799 from imxuwang/issue3783
Introduce Telegram /stats endpoint
2020-12-10 15:41:09 +01:00
Matthias
ca99d484fc Refactor to use list comprehension 2020-12-10 07:39:50 +01:00
Matthias
33f330256b Reorder commands on telegram init 2020-12-09 20:36:30 +01:00
Matthias
f1af2972e2 Ensure non-defined attributes fail correctly
Remove unnecessary check, as stoploss cannot be none (it's mandatory and
a number)
2020-12-09 07:55:08 +01:00
Matthias
c37bc307e2 Small finetunings to documentation 2020-12-07 16:12:03 +01:00
Matthias
f047297995 Improve wording, fix bug 2020-12-07 15:48:06 +01:00
Matthias
3ab5514697 Add API endpoint for /stats 2020-12-07 15:07:08 +01:00
Matthias
81410fb404 Document /stats for telegram 2020-12-07 15:03:16 +01:00
Matthias
e873cafdc4 Beautify code a bit 2020-12-07 14:54:39 +01:00
Matthias
effc96e92b Improve tests for backtest protections 2020-12-07 11:39:01 +01:00
Matthias
5849d07497 Export locks as part of backtesting 2020-12-07 11:39:01 +01:00
Matthias
bb51da8297 Fix slow backtest due to protections 2020-12-07 11:39:01 +01:00
Matthias
75a5161650 Support multis-strategy backtests with protections 2020-12-07 11:39:01 +01:00
Matthias
a3f9cd2c26 Only load protections when necessary 2020-12-07 11:39:01 +01:00
Matthias
e2d15f4082 Add parameter to enable protections for backtesting 2020-12-07 11:39:01 +01:00
Matthias
32189d27c8 Disable output from plugins in backtesting 2020-12-07 11:39:01 +01:00
Matthias
9f34aebdaa Allow closing trades without message 2020-12-07 11:39:01 +01:00
Matthias
b606936eb7 Make changes to backtesting to incorporate protections 2020-12-07 11:39:01 +01:00
Matthias
98c88fa58e Prepare protections for backtesting 2020-12-07 11:39:01 +01:00
Matthias
3426e99b8b Improve formatting of protection startup message 2020-12-07 11:37:57 +01:00
Matthias
64d6c7bb65 Update developer docs 2020-12-07 11:17:11 +01:00
Matthias
0e2a43ab4d Add duration_explanation functions 2020-12-07 11:12:09 +01:00
Matthias
c993831a04 Add protections to startup messages 2020-12-07 10:57:01 +01:00
Matthias
d4799e6aa3 Implement *candle definitions 2020-12-07 10:54:26 +01:00
Matthias
a93bb6853b Document *candles settings, implement validations 2020-12-07 10:47:13 +01:00
Matthias
eb952d77be Move lookback_period to parent __init__ 2020-12-07 08:27:14 +01:00
Matthias
f06b58dc91 Test MaxDrawdown desc 2020-12-07 08:23:10 +01:00
Matthias
089c463cfb Introduce max_drawdown protection 2020-12-07 08:23:10 +01:00
Matthias
9d6f3a89ef Improve docs and fix typos 2020-12-07 08:23:10 +01:00
Matthias
768d7fa196 Readd optional for get_pair_locks - it's necessary 2020-12-07 08:23:10 +01:00
Matthias
ad746627b3 Fix lock-loop 2020-12-07 08:23:10 +01:00
Matthias
4351a26b4c Move stop_duration to parent class
avoids reimplementation and enhances standardization
2020-12-07 08:23:10 +01:00
Matthias
6d0f16920f Get Longest lock logic 2020-12-07 08:23:10 +01:00
Matthias
dce2364672 Add stoploss per pair support 2020-12-07 08:23:10 +01:00
Matthias
8f958ef723 Improve login-mixin structure 2020-12-07 08:23:10 +01:00
Matthias
8d9c66a638 Add LogginMixin to freqtradebot class to avoid over-logging 2020-12-07 08:23:10 +01:00
Matthias
be57ceb252 Remove confusing entry
(in this branch of the if statement, candle_date is empty
2020-12-07 08:23:10 +01:00
Matthias
5e3d2401f5 Only call stop methods when they actually support this method 2020-12-07 08:23:10 +01:00
Matthias
2cd54a5933 Allow disabling output from plugins 2020-12-07 08:23:10 +01:00
Matthias
8ebd6ad200 Rename login-mixin log method 2020-12-07 08:23:10 +01:00
Matthias
2e5b9fd4b2 format profit in low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias
e29d918ea5 Avoid double-locks also in per pair locks 2020-12-07 08:23:10 +01:00
Matthias
fc97266dd4 Add "now" to lock_pair method 2020-12-07 08:23:10 +01:00
Matthias
59091ef2b7 Add helper method to calculate protection until 2020-12-07 08:23:10 +01:00
Matthias
5133675988 Apply all stops in the list, even if the first would apply already 2020-12-07 08:23:10 +01:00
Matthias
9484ee6690 Test for low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias
bb06365c50 Improve protection documentation 2020-12-07 08:23:10 +01:00
Matthias
1f703dc341 Improve protection documentation 2020-12-07 08:23:10 +01:00
Matthias
00d4820bc1 Add low_profit_pairs 2020-12-07 08:23:10 +01:00
Matthias
9f6c2a583f Better wording for config options 2020-12-07 08:23:10 +01:00
Matthias
8dbef6bbea Add test for cooldown period 2020-12-07 08:23:10 +01:00
Matthias
fe0afb9883 Implement calling of per-pair protection 2020-12-07 08:23:10 +01:00
Matthias
2a66c33a4e Add locks per pair 2020-12-07 08:23:10 +01:00
Matthias
ff7ba23477 Simplify enter_positions and add global pairlock check 2020-12-07 08:23:10 +01:00
Matthias
05be33ccd4 Simplify is_pair_locked 2020-12-07 08:23:10 +01:00
Matthias
56975db2ed Add more tests 2020-12-07 08:23:10 +01:00
Matthias
816703b8e1 Improve protections work 2020-12-07 08:23:10 +01:00
Matthias
f39a534fc0 Implement global stop (First try) 2020-12-07 08:23:10 +01:00
Matthias
3447f1ae53 Implement first stop method 2020-12-07 08:23:10 +01:00
Matthias
a0bd2ce837 Add first version of protection manager 2020-12-07 08:23:10 +01:00
Matthias
b6b9c8e5cc Move "slow-log" to it's own mixin 2020-12-07 08:23:10 +01:00
Matthias
51fbd0698c Move get_logs to be static method 2020-12-06 19:57:48 +01:00
Matthias
245c19f5e9 Add simple test for /stats call 2020-12-05 14:48:56 +01:00
Matthias
aa27c9ace2 Reorder methods in telegram
/stats is closely related to /profit
2020-12-05 14:39:50 +01:00
Matthias
143423145c Refactor most of the logic to rpc.py
this way /stats can be used by other RPC methods too
2020-12-05 14:38:42 +01:00
Matthias
c556d1b37e Make /stats working 2020-12-05 14:06:46 +01:00
Matthias
8f61b68b2a Merge branch 'develop' into pr/imxuwang/3799 2020-12-05 14:06:23 +01:00
Matthias
058d40a72c Fix telegram /daily command without arguments 2020-12-05 08:16:40 +01:00
Matthias
2fbbeb970b Gracefully handle cases where no buy price was found
closes #4030
2020-12-04 07:42:16 +01:00
Matthias
22595e6f92
Merge pull request #3929 from radwayne/roi_trailing_backtest
change backtesting behaviour if roi and trailing-stop happen at the same time
2020-12-03 19:40:46 +01:00
Matthias
36b7edc342 Update typing errors 2020-12-01 19:57:09 +01:00
Matthias
dda5bcbc8d
Merge pull request #4009 from mrsegen/patch-4
[Pairlist] Add PerformanceFilter
2020-11-30 07:48:15 +01:00
Leif Segen
e7a035eefe Lint 2020-11-28 12:29:31 -06:00
Leif Segen
323c0657f8 Sort by profit after sort by count/pair 2020-11-28 12:17:03 -06:00
Leif Segen
6a74c57c3d Pair name-based sorting.
Attempt at more rational string sorting. Change test to show not working as expected.
2020-11-28 11:33:25 -06:00
Matthias
e40d97e05e Small formatting improvements 2020-11-28 17:52:29 +01:00
Matthias
5d3f59df90 Add best / worst trade 2020-11-28 17:45:56 +01:00
Matthias
a00f852cf9 Add best / worst pair to summary statistics 2020-11-28 17:37:10 +01:00
Leif Segen
03c5714399 Use explicit merge without depending on library detail. Add no trades case. 2020-11-28 09:45:17 -06:00
Leif Segen
e1d42ba78c Alphabetize 2020-11-28 09:44:01 -06:00
Matthias
a47d8dbe56 Small refactor, avoiding duplicate calculation of profits 2020-11-28 11:35:29 +01:00
Leif Segen
37d2e476df isort imports 2020-11-28 01:59:30 -06:00
Leif Segen
966c6b308f Satisfy linter. 2020-11-28 01:34:18 -06:00
Leif Segen
cfbd1c4c43
Merge branch 'develop' into patch-4 2020-11-28 01:17:34 -06:00
Leif Segen
662ec32073 Add test cases 2020-11-28 01:15:36 -06:00
Leif Segen
91b4c80d35 Remove unused parameters 2020-11-27 22:18:49 -06:00
Leif Segen
380cca2252 Remove unused imports 2020-11-27 22:00:48 -06:00
Leif Segen
7cbd89657f Initial step towards implementing proposed code 2020-11-27 21:24:40 -06:00
Matthias
af1b3721fb remove duplicate settings check 2020-11-27 20:28:17 +01:00
Matthias
95c3c45ec9 Remove long deprecated settings that moved from experimental to
ask_strategy
2020-11-27 20:24:32 +01:00
Matthias
fefb4b23d0 revise logic in should_sell 2020-11-27 09:24:53 +01:00
Matthias
81d08c4def Add detailed backtest test verifying the ROI / trailing stop collision 2020-11-27 08:24:56 +01:00
Matthias
dddbc799f9 have kraken stoploss-limit support trailing stop 2020-11-26 19:40:36 +01:00
Matthias
1d56c87a34 Fully support kraken limit stoploss 2020-11-25 21:40:39 +01:00
Matthias
53231d94a9
Merge pull request #3975 from freqtrade/volatility_filter
RangeStabilityFilter filter - filter for pairs without much movement
2020-11-25 19:17:06 +01:00
Matthias
c14c0f60a1 Add Support for kraken stoploss-limit 2020-11-25 16:27:27 +01:00
Matthias
6810192992 Update docstring for new filter 2020-11-25 15:14:36 +01:00
Matthias
8ae604d473 Ensure we're not running off of empty dataframes 2020-11-25 15:14:36 +01:00
Matthias
0d349cb355 Small finetuning 2020-11-25 15:14:36 +01:00
Matthias
8f1d2ff070 Renamd volatilityFilter to RangeStabilityFilter 2020-11-25 15:14:29 +01:00
Matthias
0104c9fde6 Fix double logging 2020-11-25 14:31:34 +01:00
Matthias
ceb50a7807 use exception handler when downloading data
closes #3992
2020-11-25 07:57:27 +01:00
Matthias
bd98ff6332 Update docstring in all pairlists 2020-11-24 20:24:51 +01:00
Matthias
006436a18d Require use_sell_signal to be true for edge
Otherwise edge will have strange results, as
edge runs with sell signal, while the bot runs without sell signal,
causing results to be invalid

closes #3900
2020-11-24 07:47:35 +01:00
Matthias
730c9ce471 Add Max_open_trades to summary metrics 2020-11-24 06:57:26 +01:00
Matthias
29c6a9263d Protect against 0 values 2020-11-22 15:50:44 +01:00
Matthias
2e1551a2eb Improve tests of volatilityfilter 2020-11-21 19:57:17 +01:00
Matthias
f8fab5c4f8 Add tests for failure cases 2020-11-21 15:51:39 +01:00
Matthias
109824c9a8 Add VolatilityFilter 2020-11-21 15:39:00 +01:00
Matthias
fb86d8f8ff Add get_historic_ohlcv_as_df to support VolatilityFilter 2020-11-21 15:28:50 +01:00
Matthias
4d60a4cf4e Add warning to StochRSI in sample strategy
closes #2961
2020-11-21 11:32:46 +01:00
Matthias
e8e3ca0c3c Catch ValueError from trade_conversion
closes #3967
2020-11-21 10:57:19 +01:00
Matthias
83861fabde Fix #3967, move TradeList type to constants 2020-11-21 10:52:15 +01:00
Matthias
5ed85963a9 Allow forcebuy price to be a string by converting it to float
fix #3970
2020-11-21 10:39:49 +01:00
Matthias
fa0fcfb492
Merge pull request #3939 from drdux/historic-pair
Historic pair
2020-11-19 19:46:08 +01:00
Matthias
7a8b274a44 Merge branch 'develop' into pr/imxuwang/3799 2020-11-19 13:18:03 +01:00
Matthias
52c9a2c37f Convert np to None when loading hdf5 trades to allow duplicate detection 2020-11-19 07:31:54 +01:00
Matthias
9621734adc Allow setting datafromat via configuration
closes #3953
2020-11-17 06:53:38 +01:00
Matthias
05f0cc787c Plotting should use startup_candles too
closes #3943
2020-11-14 09:28:00 +01:00
Matthias
164105acf2 Adjust startup_candle_count of sample strategies 2020-11-14 08:25:57 +01:00
Matthias
08b52926c8 Catch asyncio.TimeoutError when reloading async markets 2020-11-13 10:43:48 +01:00
Matthias
4eb96cfc4f Allow locks to be gathered even when the bot is stopped 2020-11-13 06:51:45 +01:00
Daniel Goller
2d6bfe1592 only skip pair validation rather than all of it 2020-11-12 11:32:45 +00:00
Daniel Goller
2424ac94c2 skip the check for active markets with flag for existing StaticPairList 2020-11-12 11:29:46 +00:00
Daniel Goller
2640dfee93 Revert "Added ConstPairList handler to skip validation of pairs if you want to backtest a pair that's not live any more, e.g. expiring contracts."
This reverts commit 13da8f9368.
2020-11-12 11:27:30 +00:00
Daniel Goller
916776bb53 Option to skip exchange validation, required to backtest pairs that are not live on the exchange any more. 2020-11-09 08:37:38 +00:00
Daniel Goller
13da8f9368 Added ConstPairList handler to skip validation of pairs if you want to backtest a pair that's not live any more, e.g. expiring contracts. 2020-11-09 08:34:40 +00:00
Matthias
2af1c80fd5 Convert _rpc_show_config to static method 2020-11-08 11:26:02 +01:00
radwayne
8e03fee868
Update interface.py
Changed The should_sell() method, to handle the case where both ROI and trailing stoploss are reached in backtest.
2020-11-06 13:56:46 +01:00
Matthias
b58d6d38b5 Use correct fields in telegram 2020-11-03 08:59:11 +01:00
Matthias
d1dab23283 Remove deprecated api fields 2020-11-03 08:59:11 +01:00
Matthias
cf89a773da Standardize trade api outputs
there should be no difference between current_profit and close_profit
 it's always profit, and the information if it's a closed trade is available elsewhere
2020-11-03 08:58:57 +01:00
Matthias
887d78171c
Merge pull request #3857 from freqtrade/arrow_deprecation_timestamp
Convert timestamp to int_timestamp for all arrow occurances
2020-11-02 16:40:43 +01:00
Matthias
e73203acb8 FIx bug with dmmp 2020-11-01 10:51:07 +01:00
Matthias Spiller
78874fa865 informative_pairs does not honor dataformat 2020-10-31 10:53:51 +00:00
Matthias
f4d39f2a12 Improve test coverage of deploy_commands 2020-10-29 07:44:03 +01:00
Matthias
19fcbc92a7 Remove stake-currency for download-data - it's not needed 2020-10-29 07:43:40 +01:00
Matthias
5cb3735a57 Improve error when hyperopt-loss-function is missing 2020-10-28 07:58:55 +01:00
Matthias
72f61f4682 Remove optional, now is not optional 2020-10-27 10:08:24 +01:00
Matthias
5c8779b155 Sort imports 2020-10-27 08:11:57 +01:00
Matthias
6c913fa617 Fix locking - should round before storing to have a consistent picture 2020-10-27 08:01:31 +01:00
Matthias
e602ac3406 Introduce Pairlocks middleware 2020-10-27 07:06:06 +01:00
Matthias
b8c12f6576 Test if return value is an exception when downloading historic data 2020-10-23 07:50:40 +02:00
Matthias
50e7418d24 Merge branch 'develop' into pr/imxuwang/3799 2020-10-22 08:05:09 +02:00
Matthias
9999017953 Fix small bug in case of duplicate locks 2020-10-22 08:04:48 +02:00
Matthias
2f91f87ad3 Merge branch 'develop' into pr/imxuwang/3799 2020-10-22 07:55:48 +02:00
Matthias
cf1a726198 Rename table to be inline with other table naming 2020-10-22 07:35:59 +02:00
Matthias
a143f7bc43 Improve pairlock docstrings 2020-10-21 19:35:57 +02:00
Matthias
fd6018f67a Fix dependency sorting 2020-10-21 06:21:13 +02:00
Matthias
adffd402ea Replace some pointless occurances of arrow 2020-10-20 20:11:38 +02:00
Matthias
7a092271c5 Merge branch 'develop' into arrow_deprecation_timestamp 2020-10-20 20:01:54 +02:00
Matthias
5f63fdd8ad Use better lock message 2020-10-20 19:40:39 +02:00
Matthias
64e680d7ee Document new api method 2020-10-20 19:30:00 +02:00
Matthias
1156f5e686 Use constant for times 2020-10-20 19:21:13 +02:00
Matthias
0daf77f313 Don't check for lock start date 2020-10-20 19:21:13 +02:00
Matthias
cd2866eaec Add rest endpoint for /locks 2020-10-20 19:21:13 +02:00
Matthias
7a9768ffa6 Add /locks Telegram endpoint 2020-10-20 19:21:13 +02:00
Matthias
7caa6cfe31 Add tests for pairlock 2020-10-20 19:21:13 +02:00
Matthias
e513871fd5 Persist pairlocks
closes #3034
2020-10-20 19:21:13 +02:00
Matthias
6eab20e337 Use constant to format datetime 2020-10-20 19:21:13 +02:00
Matthias
2d04c2dd4f Fix small bug when cancel-order does not contain id
happens with kraken ...
2020-10-20 06:24:46 +02:00
Xu Wang
1c27aaab72 Declare type of 'dur'. 2020-10-18 20:24:13 +01:00
Matthias
cf2ae788d7 Convert backtesting rows to Tuples for performance gains 2020-10-18 17:16:57 +02:00
Matthias
5d3a67d324 Don't debug-log during backtesting.
Even though log-messages are surpressed, calling "debug" will always
have to do something.
2020-10-18 16:38:16 +02:00
Matthias
b80a219d03 Improve typehints for backtesting 2020-10-18 16:35:23 +02:00
Matthias
380e6628e0 Merge branch 'develop' into feat/backtest_speedup_serialize 2020-10-18 16:19:04 +02:00
Matthias
2591a34db4 Don't use arrow objects for backtesting 2020-10-18 16:18:52 +02:00
Matthias
8cdc795a44 Rename persistence.init to init_db 2020-10-16 08:15:18 +02:00
Matthias
ec713ff5ae Convert _rpc_analysed_history_full to static method 2020-10-16 06:26:57 +02:00
Matthias
07da21e633 Fix problem when limit is > max allowed limit 2020-10-13 20:38:02 +02:00
Matthias
8165cc11df Change get_next_limit_in_list to use list comprehension 2020-10-13 20:30:35 +02:00
Matthias
8962b6d5c9 Add Bittrex subclass to correctly handle L2 orderbook 2020-10-13 20:09:43 +02:00
Matthias
077374ac42 Implement generic solution for l2 limited limit 2020-10-13 20:02:47 +02:00
Matthias
ecddaa663b Convert timestamp to int_timestamp for all arrow occurances 2020-10-13 06:24:01 +02:00
Matthias
44e374878c Fix mypy errors due to new version 2020-10-12 19:28:14 +02:00
Matthias
23bad8fd9f Rename DefahltHyperoptLoss function to ShortTradeDurHyperOptLoss 2020-10-10 14:22:29 +02:00
Matthias
f676156ec7 Implement division/0 checks for win and loss columns in edge
closes #3839
2020-10-09 06:39:13 +02:00
Matthias
23278e52db remove obsolete logging statements 2020-10-08 20:22:59 +02:00
Matthias
e8f2c09f08 Extract handling of left open trades to seperate method 2020-10-08 20:11:45 +02:00
Matthias
52502193c4 Backtesting should not double-loop for sell signals 2020-10-07 20:59:05 +02:00
Matthias
8c2f763193 Add test to ensure --hyperopt-loss is mandatory 2020-10-05 20:36:16 +02:00
Matthias
378b214a56 Remove hyperopt-loss default option
Force users to make a concious choice on a hyperopt-loss function
2020-10-05 19:27:28 +02:00
Matthias
584d095295
Merge pull request #3835 from freqtrade/hyperopt_trailing_output
Fix Hyperopt trailing output
2020-10-05 19:09:02 +02:00
Matthias
b86a602ad4 Update typehint 2020-10-05 16:17:37 +02:00
Matthias
40b61bbfe3 Adjust trailing-stop to be python compliant 2020-10-05 07:44:12 +02:00
Matthias
301598bac9
Merge pull request #3818 from freqtrade/rpc/candlehistory
Rpc/candlehistory
2020-10-04 09:34:25 +02:00
Matthias
c9b3766fa3 Remove rest_dump
it's just a wrapper around jsonify with no benefits
2020-10-04 09:14:46 +02:00
Matthias
63e1cba597 fix some typos 2020-10-04 09:12:52 +02:00
Matthias
cb74c9bcde Fix hyperopt output 2020-10-03 13:27:06 +02:00
Matthias
176006da29 Sort imports 2020-10-02 07:00:45 +02:00
Matthias
66b77d2f53 Fix some types 2020-10-02 06:52:43 +02:00
Matthias
62110dc2fc Add buy / sell signal count to dataframe interface 2020-09-29 06:35:47 +02:00
Matthias
350fcc071e Don't use __code__
__code__ is a special method name used by python already
source:
https://docs.python.org/3/reference/datamodel.html#special-method-names
2020-09-29 06:35:47 +02:00
Matthias
b38f68b3b0 Add 404 when strategy is not found 2020-09-29 06:35:47 +02:00
Matthias
becccca3d1 Add test for __code__ loading 2020-09-29 06:35:47 +02:00
Matthias
ba10bd7756 Add strategy code to __code__ 2020-09-29 06:35:47 +02:00
Matthias
4b6b7f8343 Add timeframe to candle return values 2020-09-29 06:35:47 +02:00
Matthias
f82d39e1b0 Enhance restclient and add tests for new api methods 2020-09-29 06:35:47 +02:00
Matthias
bb4993dc20 Add new endpoints to the documentation 2020-09-29 06:35:47 +02:00
Matthias
c0654f3caf Add resiliancy against not having a analyzed dataframe yet 2020-09-29 06:35:47 +02:00
Matthias
c59a1be154 show_config should not use freqtrade object 2020-09-29 06:35:47 +02:00
Matthias
1de248fe38 add list_available_pairs endpoint 2020-09-29 06:35:47 +02:00
Matthias
6a59740f83 Strategies should be a nested object 2020-09-29 06:35:47 +02:00
Matthias
32e6ea314c Return strategy with analyzed data 2020-09-29 06:35:47 +02:00
Matthias
18bbfdd341 Add /strategies endpoint 2020-09-29 06:35:47 +02:00
Matthias
f227f6a755 Use passed in config object to allow this to work in webserver mode 2020-09-29 06:35:47 +02:00
Matthias
bf0e75e2a5 Include data start and end date in dataframe api 2020-09-29 06:35:47 +02:00
Matthias
b93ad8840a Return date column unmodified 2020-09-29 06:35:47 +02:00
Matthias
482f1faa88 Don't fail if no buy-signal is present 2020-09-29 06:35:46 +02:00
Matthias
f5dc10e4ae Add pair_history endpoint 2020-09-29 06:35:46 +02:00
Matthias
677078350f Add plot_config endpoint 2020-09-29 06:35:46 +02:00
Matthias
133ca9c770 Convert types to support valid json 2020-09-29 06:35:46 +02:00
Matthias
a38b33cd9c Support limiting analyzed history 2020-09-29 06:35:46 +02:00
Matthias
9dfbc1a7ff Add analyzed_history endpoint 2020-09-29 06:35:46 +02:00
Xu Wang
7bce2cd29d Add trade duration by win/loss. 2020-09-28 20:30:20 +01:00
Matthias
6977ffdbf9 Merge branch 'develop' into isort_config 2020-09-28 20:21:55 +02:00
Matthias
253b7b763e Apply isort to freqtrade codebase 2020-09-28 19:40:46 +02:00
Xu Wang
627e221b65 Use tabulate to create sell reason message. 2020-09-27 20:23:13 +01:00
Matthias
6e70ae6e95 Improve code quality 2020-09-27 19:40:55 +02:00
Matthias
8de9c46110 Document hyperopt-filename usage 2020-09-27 17:09:33 +02:00
Matthias
3cb1a9a5a9 Support loading results from a specific hyperopt history file 2020-09-27 17:03:30 +02:00
Matthias
c42a924df8 Load latest file 2020-09-27 16:50:42 +02:00
Matthias
ff96cf154c Keep hyperopt result history 2020-09-27 16:33:26 +02:00
Matthias
b736691e0e Remove hyperopt --continue 2020-09-27 16:18:28 +02:00
Xu Wang
44ad0f631c Summarize trade reason for telegram command /stats. 2020-09-26 22:40:54 +01:00
Matthias
bb27b236ce Remove unused arguments 2020-09-26 14:55:12 +02:00
Matthias
ff3e2641ae generate_backtest_stats must take config options from the strategy
config

as a strategy can override certain options.
2020-09-25 20:47:37 +02:00
Matthias
378f03a5b1 Add relevant parameters to stored backtest result 2020-09-25 06:37:40 +02:00
Matthias
fa18274e9a
Merge pull request #3798 from freqtrade/fix/wallets_dont_reset
Fix wallets dont reset
2020-09-24 19:22:14 +02:00
Matthias
66ca596e7c
Merge pull request #3787 from freqtrade/rpc/telegram_settings
Allow Notification finetuning for telegram messages
2020-09-23 10:20:43 +02:00
Xu Wang
28411da83e Add the telegram command function template. 2020-09-22 22:28:12 +01:00
Matthias
6b46a35b19 Fix bug of balances not disappearing 2020-09-22 19:37:31 +02:00
Matthias
c349499985 Also add 2w (supported by kraken) 2020-09-20 11:18:45 +02:00
Matthias
a31de431ed Explicitly convert to type to string 2020-09-19 20:38:42 +02:00
HumanBot
a95dbdbde4
Added 1M and 1y timeframes
Huobi Pro allows monthly and yearly data downloading
2020-09-19 14:31:23 -04:00
Matthias
2554dc48e4 Add test for notification settings 2020-09-19 20:29:44 +02:00