Commit Graph

517 Commits

Author SHA1 Message Date
Matthias 6ff3b178b0 Add direction column to pairlocks 2022-04-24 14:33:24 +02:00
Matthias baefda80d1 Enable flake8 E226 rule 2022-04-11 18:02:06 +02:00
Matthias 77c840c2a4 Fix syntax-error in exit_reason migration 2022-04-10 15:10:13 +02:00
Matthias 850760bc00 Remove migration from very old database
(database without Orders table)
2022-04-10 08:43:30 +02:00
Matthias 8e98a2ff9f api - provide assset_currency via API 2022-04-09 16:42:18 +02:00
Matthias 28b58712fb Add compatibility shim for trade.entry_trade 2022-04-06 19:13:46 +02:00
மனோஜ்குமார் பழனிச்சாமி 7e97e58820 renamed enter-side 2022-04-06 06:32:13 +05:30
Matthias 4cd4edf08b Update exit_reasons while migrating the database 2022-04-04 19:52:26 +02:00
Matthias 69491c1430 Update more wording to "exit" 2022-04-03 19:39:13 +02:00
Matthias 2d2bea17e7 sell_order_status -> exit_order_status 2022-04-03 11:17:01 +02:00
Matthias a27c837d18 Update sell_reason to exit_reason 2022-04-03 10:41:35 +02:00
Matthias cd78792f48 Improve some telegram terminology 2022-04-03 10:40:13 +02:00
Matthias e894f620c2 Improve compatibility 2022-04-03 08:15:23 +02:00
Matthias 543aa74278 update sell_reason to exit_reason 2022-04-02 20:04:29 +02:00
Matthias 94274e4823 Remove order.leverage column 2022-03-31 06:57:16 +02:00
Matthias 1c0946833d Fix bug in exit-count detection 2022-03-25 16:06:03 +01:00
Matthias dcfa3e8648 Update SellType to ExitType 2022-03-25 06:55:37 +01:00
Matthias e545ac1978 Revert condition to exploit lazy evaluation 2022-03-23 19:41:57 +01:00
Matthias 4fd0681265 Combine stake_amount recalculation 2022-03-20 20:00:30 +01:00
Matthias cfa9458bcc Merge branch 'develop' into feat/short 2022-03-13 15:38:12 +01:00
Matthias 9107819c95 Fix order migration "forgetting" average 2022-03-13 14:42:15 +01:00
Matthias d2a163e2cf rename column to liquidation_price 2022-03-07 17:16:33 +01:00
Matthias 6360ef029c Simplify and align liquidation price handling 2022-03-06 16:27:55 +01:00
Matthias 667054e1ad Reorder methods in trade object 2022-03-06 15:07:07 +01:00
Matthias 46e17c9762 Fix stoploss_pct set wrongly for short trades 2022-03-06 15:07:04 +01:00
Matthias cc38f0656d Explicitly check for None to determine if initial stoploss was set
closes #6460
2022-03-06 15:06:57 +01:00
Matthias be4bc4955c Explicitly check for None to determine if initial stoploss was set
closes #6460
2022-03-05 14:12:14 +01:00
Matthias 8943d42509 Update telegram notifications to properly detect shorts 2022-03-04 19:42:33 +01:00
Sam Germain 488da9b875 Merge branch 'develop' into feat/short 2022-03-03 13:51:52 -06:00
Matthias e9456cdf15 Update trade response to use a single Order object 2022-03-02 19:58:08 +01:00
Matthias 17c9c3caf3 Enable orders via API 2022-03-02 19:58:08 +01:00
Matthias 1b07ad92cf Merge branch 'feat/short' into pr/samgermain/6467 2022-02-28 20:07:19 +01:00
Matthias 1d27cbd01f Simplify leverage_prep interface 2022-02-28 19:34:10 +01:00
Matthias 33be14e7e2 Update stake_amount calculation with multiple entries when using leverage 2022-02-27 17:09:29 +01:00
Matthias 1b6548c8d8 Don't modify leverage through DCA 2022-02-27 15:44:23 +01:00
Matthias eed516a5c6 Update DCA logic to some extend 2022-02-27 15:44:23 +01:00
Matthias bcfa73d492 Add "nr_of_successfull_entries" 2022-02-27 15:44:23 +01:00
Sam Germain 78194559f4 persistence.adjust_stop_loss accounts for leverage 2022-02-26 13:55:37 -06:00
Matthias 018c620057 Fix 0 Division error on exchanges without average
closes #6461
2022-02-26 08:19:45 +01:00
Matthias 6562511137 add trade_direction to trade object 2022-02-24 20:05:56 +01:00
Matthias fd936e26ae Merge branch 'develop' into feat/short 2022-02-24 19:56:42 +01:00
Matthias 53452c8d64
Merge pull request #6437 from freqtrade/update_trade
Migrate trade updating to use order model
2022-02-23 19:56:02 +01:00
Matthias 8952829adc Merge branch 'develop' into feat/short 2022-02-23 06:28:15 +01:00
Matthias 1f9ed0beff Add test for wal mode 2022-02-22 19:39:55 +01:00
Matthias 02ce0dc02e Set journal mode to wal for sqlite databases
closes #6353
2022-02-22 19:31:58 +01:00
Matthias fddacfedaa Remove returntype 2022-02-20 16:47:02 +01:00
Matthias a24586cd41 Update migrations for new column 2022-02-20 16:32:04 +01:00
Matthias dc7bcf5dda Update failing test 2022-02-20 14:29:26 +01:00
Matthias db540dc990 Orders should also store fee if in receiving currency 2022-02-20 14:24:27 +01:00
Matthias 508e677d70 Fix some tests to call update_trade with order object 2022-02-19 16:43:38 +01:00
Matthias 1b1216fc87 Rename update_trade method 2022-02-19 16:43:38 +01:00
Matthias c13eed2178 use Order object to update trade 2022-02-19 16:43:38 +01:00
Matthias 3785f04be7 Handle empty min stake amount as observed on FTX
(closes #6429)
2022-02-19 06:39:43 +01:00
Matthias e981d644e1 Add toto-lev for order-leverage 2022-02-16 19:24:59 +01:00
Matthias 119d4d5204 select_order should use ft_order_side, not the exchange specific one 2022-02-12 17:06:03 +01:00
Matthias 0c6d92a7a6 Merge branch 'develop' into feat/short 2022-02-11 17:02:04 +01:00
Matthias 9f47853661
Merge pull request #6235 from freqtrade/backtest_order_timeout
Backtest order timeout
2022-02-09 07:12:35 +01:00
Matthias 303b12efd8
Merge pull request #6273 from freqtrade/pg_migrations
Update database migrations for PG and mariadb
2022-02-06 14:39:02 +01:00
Matthias 808cefe526 Update order_selection logic 2022-02-05 16:28:47 +01:00
Matthias 4ea79a32e4 Use Order object for ft_timeout check 2022-02-05 16:28:47 +01:00
Matthias 7ac44380f7 Extract backtest order closing to models class 2022-02-05 16:28:46 +01:00
Matthias f7a1cabe23 Add first version to fill orders "later" in backtesting 2022-02-05 16:28:21 +01:00
Matthias 6ed237a72a
Merge pull request #6272 from stash86/fix-docs
Add more info on Telegram's status message
2022-02-05 16:22:45 +01:00
Sam Germain de557f1386 models.update removed TODO-lev 2022-02-03 17:48:34 -06:00
Sam Germain f58b92bb86 exchange.create_order removed default for leverage 2022-02-03 17:48:08 -06:00
Matthias 29879bb415 Update wording to entry/exit 2022-02-03 19:11:35 +01:00
Sam Germain b8f4cebce7 exchange.liquidation_price methods combined, dry_run check on exchange for liquidation price 2022-01-31 12:18:25 -06:00
Sam Germain 0c13e387fe moved liquidation_price method to exchange classes 2022-01-31 12:16:43 -06:00
Sam Germain 69a6223ca0 implemented binance.get_maintenance_ratio_and_amt 2022-01-31 12:15:54 -06:00
Sam Germain 5796d95a95 Added gateio and okex isolated liquidation formulas 2022-01-31 12:15:54 -06:00
Sam Germain ba02605d77 Isolated liq branch passes all tests and has the general structure that it is supposed to, but is patchy, and doesnt get the correct maintenance amt and maintenance margin rate yet 2022-01-31 12:15:54 -06:00
Sam Germain 92c94bb62a added position and wallet_balance to LocalTrade.set_isolated_liq 2022-01-31 12:15:54 -06:00
Sam Germain d26a068adf rearanged isolated_liq in models a bit 2022-01-31 12:15:54 -06:00
Sam Germain a087d03db9 Added liquidation_price function 2022-01-31 12:15:54 -06:00
Sam Germain 689174ea0d removed TODO-lev comments 2022-01-31 04:12:37 -06:00
Matthias 7aae9565c7 Only look at buy orders when looking to recalculate trade value 2022-01-30 14:08:42 +01:00
Matthias 463714832d Merge branch 'develop' into feat/short 2022-01-29 14:19:30 +01:00
Stefano Ariestasia ed71f777a3 Merge branch 'fix-docs' of https://github.com/stash86/freqtrade into fix-docs 2022-01-26 07:07:00 +00:00
Stefano Ariestasia 1f26709aca changes 2022-01-26 07:06:52 +00:00
Stefano Ariestasia 7c975df42a
Merge branch 'freqtrade:develop' into fix-docs 2022-01-25 10:30:03 +09:00
Reigo Reinmets 6613e3757a Additional fix 2022-01-23 18:09:57 +02:00
Reigo Reinmets 51b94889b2 Just in case also check for closed to avoid counting in canceled orders. 2022-01-23 17:56:41 +02:00
Reigo Reinmets 8c79d55739 Fix issue #6268 2022-01-23 17:44:16 +02:00
Stefano Ariestasia 480ed90a02 create to_json function for Order 2022-01-23 11:33:06 +00:00
Matthias f090dcc597 Merge branch 'develop' into feat/short 2022-01-22 17:56:01 +01:00
Matthias bd4014e1e6 Small cleanup 2022-01-22 15:01:27 +01:00
Stefano Ariestasia 05046b9eef Add more info on status message 2022-01-22 06:54:49 +00:00
Matthias 3d94d7df5c Update migrations for mariadb 2022-01-21 19:31:11 +01:00
Matthias c265f39323 Update sequences for postgres 2022-01-21 17:19:39 +01:00
Matthias 19948a6f89 Try fix sequence migrations 2022-01-21 16:49:08 +01:00
Matthias 5dca183b7b Combine order and Trade migrations to better facilitate migrations in advanced DB systems 2022-01-21 16:49:08 +01:00
Matthias 6c7a4230ad Update comment about funding_fees calculation 2022-01-17 19:20:47 +01:00
Reigo Reinmets 3de843ab2c Add eager-loading for orders. This allows access to trade.orders in all callbacks. 2022-01-17 13:23:37 +02:00
Reigo Reinmets 93adb436f8 Fix flake8 intention issue. 2022-01-14 20:25:29 +02:00
Reigo Reinmets 320c9ccf90 Unify functions and make it easy to get a list of filled buy orders 2022-01-14 20:02:35 +02:00
Reigo Reinmets ffe69535d8 These could be properties. 2022-01-13 20:31:03 +02:00
Reigo Reinmets 30d293bfec Fix bug with None in backtesting. 2022-01-10 20:16:11 +02:00
Reigo Reinmets 813a2cd23b Add useful helper methods for adjust_trade_position implementation 2022-01-08 17:18:37 +02:00
Sam Germain c61acb9f19 removed rename todos 2022-01-08 03:09:47 -06:00
Sam Germain 46072be011 models.__init__ exception for no interest_rates on Margin trading 2021-12-31 06:20:00 -06: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 3aca3a7133 Use parentheses instead of backslash 2021-12-18 18:55:47 +02:00
Reigo Reinmets 462270bc5a Fix a case where the amount was not recalculated. Added additional temporary logging. 2021-12-16 22:57:56 +02:00
Reigo Reinmets 71147d2899 Attempt to support limit orders for position adjustment. 2021-12-11 18:25:05 +02:00
Reigo Reinmets b7bf3247b8 Only adjust stoploss if it's set. 2021-12-10 23:17:12 +02:00
Reigo Reinmets c179951cca Expect stake_amount, not actual amount of pair from strategy for DCA. 2021-12-10 20:42:24 +02:00
Reigo Reinmets 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
Matthias 192ac88314 Update optimize-reports to enter_tag wording 2021-11-21 10:20:09 +01:00
Matthias 36deced00b Remove more buy_tag references 2021-11-21 09:55:10 +01:00
Matthias 7d77aff289 Add some compatibility around buy_tag 2021-11-21 09:24:20 +01:00
Sam Germain 54ef52692f Trade.has_no_leverage makes more sense 2021-11-20 01:06:10 -06:00
Matthias f40221dd9f Merge branch 'develop' into feat/short 2021-11-18 20:20:01 +01:00
Sam Germain 430aa0903f Removed redundent TODO-levs 2021-11-13 19:45:41 -06:00
Matthias 4eb9038358 Some more fixes to % formatting 2021-11-11 15:06:16 +01:00
Matthias d5438ed0a8 Fix docstring indents 2021-11-09 19:22:29 +01:00
Matthias f9e5a25b36 Add docstring style to Contributing 2021-11-09 07:48:25 +00:00
Matthias ebc38159b8 Merge branch 'develop' into feat/short 2021-11-06 15:24:52 +01:00
Matthias f7dc47b1c8 Add test for exit_timeout_count 2021-11-06 13:10:41 +01:00
Matthias 7a907a7636 Add Emergencyselling after X timeouts have been reached 2021-11-06 11:48:49 +01:00
Matthias 431b96de98 Merge branch 'develop' into pr/theluxaz/5710 2021-11-03 19:43:36 +01:00
Matthias dffe76f109 Don't double-loop to generate profits 2021-10-31 10:49:56 +01:00
Matthias c094ac5762 Merge branch 'develop' into feat/short 2021-10-30 19:45:19 +02:00
Matthias c579fcfc19 Add tests and documentation for unlock_reason 2021-10-30 09:51:09 +02:00
incrementby1 e9d71f26b3 small changes 2021-10-29 00:03:20 +02:00
incrementby1 658006e7ee removed wrong use of map and filter function 2021-10-28 23:29:26 +02:00
incrementby1 02e69e1667 Changes to unlock_reason:
- introducing filter
	- replaced get_all_locks with a query for speed
	. removed logging in backtesting mode for speed
	. replaced for-loop with map-function for speed

Changes to models.py:
	- changed string representation of Pairlock to also contain reason and active-state
2021-10-28 15:16:07 +02:00
incrementby1 c3f3bdaa2a Add "allow_position_stacking" value to config, which allows rebuys of a pair
Add function unlock_reason(str: pair) which removes all PairLocks with reason
Provide demo strategy that allows buying the same pair multiple times
2021-10-26 00:04:40 +02:00
theluxaz b51f946ee0 Fixed models and rpc performance functions, added skeletons for tests. 2021-10-25 23:43:22 +03:00
Matthias 22dd2ca003 Fix mypy type errors 2021-10-24 15:18:29 +02:00
Matthias 1267374c8a Small fixes to tests 2021-10-20 19:21:38 +02:00
theluxaz 905f3a1a50 Removed exit_tag from Trade objects. 2021-10-20 17:58:50 +03:00
theluxaz 1fdc4425dd Changed exit_tag to be represented as sell_reason 2021-10-20 01:26:15 +03:00
theluxaz 69a59cdf37 Fixed flake 8, changed sell_tag to exit_tag and fixed telegram functions 2021-10-18 23:56:41 +03:00
Sam Germain bcbe8f229c Merge branch 'feat/short' into lev-freqtradebot 2021-10-13 19:02:57 -06:00
Sam Germain 0dbad19b40 trading_mode default null in models.Trade 2021-10-12 20:34:19 -06:00
theluxaz b151cf032b Merge branch 'develop' of https://github.com/theluxaz/freqtrade into main
# Conflicts:
#	freqtrade/freqtradebot.py
#	freqtrade/optimize/backtesting.py
2021-10-13 02:01:26 +03:00
theluxaz 80b71790bc Added some bigfixes for sell_tag 2021-10-13 01:22:53 +03:00
theluxaz b898f86364 Added sell_tag and buy/sell telegram performance functions 2021-10-13 00:02:28 +03:00
Matthias 532a9341d2 Fix migration issue 2021-10-12 20:41:48 +02:00
Sam Germain bdad604fab Added persistence futures tests 2021-10-11 07:48:31 -06:00
Sam Germain ae3688a18a Updated LocalTrade.calc_close_trade_value formula for shorting futures 2021-10-11 05:56:27 -06:00
Sam Germain 70db228f24 Merge branch 'feat/short' into funding-fee 2021-10-03 02:15:54 -06:00
Sam Germain b3656ddfc9 Merge branch 'feat/short' into lev-freqtradebot 2021-10-02 03:36:32 -06:00
Sam Germain e8b4cf6eaa Merge branch 'develop' into feat/short 2021-10-02 03:15:12 -06:00
Sam Germain d7c7448632 merged lev-freqtradebot with lev-strat 2021-09-19 19:06:43 -06:00
Sam Germain 778f0d9d0a Merged feat/short into lev-strat 2021-09-19 17:44:12 -06:00
Sam Germain 60a678fea7 merged with feat/short 2021-09-19 17:02:09 -06:00
Sam Germain ee0ebdf0f2 merged with develop 2021-09-19 15:35:54 -06:00
Matthias 1da091dea3 ProtectionManager should return the lock just created 2021-09-19 19:41:19 +02:00
Matthias 564e0b9a1a Switch performanceFilter to use Minutes lookback resolution
closes #5060
2021-09-18 09:10:25 +02:00
Matthias 12c12d42df Add documentation for days parameter in PerformanceFilter 2021-09-18 08:30:44 +02:00
sergeykhliustin 982deeedf0
Update freqtrade/persistence/models.py
Co-authored-by: Matthias <xmatthias@outlook.com>
2021-09-17 18:23:13 +03:00
Sergey Khliustin 54ef36a497 Updates after review to PerformanceFilter days param 2021-09-17 13:45:44 +03:00
Sam Germain 0628790da9 merged lev-freqtradebot with feat/short 2021-09-16 23:49:43 -06:00
Sam Germain e78f38c7b6 Merge branch 'feat/short' into funding-fee 2021-09-16 23:32:44 -06:00
Sergey Khliustin 457e738b4a Added days parameter to PerformanceFilter 2021-09-16 14:48:02 +03:00
Sam Germain a8657bb1ce Removed backtesting funding-fee code 2021-09-16 03:50:01 -06:00
Sam Germain 98b00e8daf merged with feat/short 2021-09-15 22:28:10 -06:00
Sam Germain 5fcb69a0b5 Parametrized test_persistence 2021-09-15 18:29:17 -06:00
Sam Germain d559b6d6c6 changed add_funding_fees template 2021-09-08 19:34:54 -06:00
Sam Germain 695a8fc73b comment updates, formatting, TODOs 2021-09-08 03:09:39 -06:00
Sam Germain f8248f3771 comments, formatting 2021-09-08 00:19:21 -06:00
Sam Germain f5248be043 Changed funding fee tracking method, need to get funding_rate and open prices at multiple candles 2021-09-06 15:47:24 -06:00
Sam Germain 7eab855476 Merge branch 'feat/short' into lev-exchange 2021-09-04 20:15:36 -06:00
Sam Germain d6d5bae2a1 New funding fee methods 2021-09-04 16:33:06 -06:00
Sam Germain b7891485b3 Created FundingFee class and added funding_fee to LocalTrade and freqtradebot 2021-09-04 16:20:07 -06:00
Matthias 5184cc7749 Merge branch 'develop' into feat/short 2021-09-02 07:03:14 +02:00
Matthias ef9c1addcf Add expired to list of canceled statuses 2021-08-27 19:54:53 +02:00
Matthias 957551ea97 Merge branch 'develop' into feat/short 2021-08-24 06:25:06 +02:00
Sam Germain 6ac0ab0233 Added short functionality to exchange stoplss methods 2021-08-21 21:10:03 -06:00
Matthias e03784d98d Fix filled exception
closes #5404
2021-08-12 05:02:56 +00:00
Matthias cf27968b97 Properly preserve trade's low during backtesting 2021-08-09 19:38:56 +02:00
Sam Germain de4b0d1f7c Merged with feat/short 2021-08-09 00:24:25 -06: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 07673ef47f
Update Migrations to use the latest added columns 2021-08-03 10:25:59 +02:00
Sam Germain 5b6dbbd750 Changed order of buy_tag in migrations 2021-08-03 00:23:21 -06:00
Sam Germain d88e2ae603 Merge branch 'develop' into margin-db 2021-08-02 23:58:44 -06:00
Matthias c5e3348b89 Migrations for indexes should run in a seperate session
closes #5349
2021-07-31 16:36:28 +02:00
Sam Germain ef429afb6f Removed is_oeing_trade is_closing_trade 2021-07-31 01:22:48 -06:00
Sam Germain d6ffd23865 Merged with remote 2021-07-31 01:19:11 -06: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 aa34889c04 Don't run migrations twice 2021-07-30 07:14:35 +02: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
Matthias 317f4ebce0 Boolean sqlite fix for orders table 2021-07-28 12:25:56 -06:00
Matthias 071f6309cc Try fix migration tests 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 006a60e5a4 Added docstrings to methods 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 52def4e826 Changed InterestMode enum implementation 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 737a62be52 set initial_stop_loss in stoploss helper 2021-07-28 12:25:55 -06:00
Sam Germain f566d83839 Tried to add liquidation price to order object, caused a test to fail 2021-07-28 12:25:55 -06:00