Commit Graph

665 Commits

Author SHA1 Message Date
Matthias
5bc84dca56 Fix from_json with new attributes 2023-07-10 06:38:18 +02:00
Matthias
accc1b509b Simplify class setups without inheritance 2023-06-29 12:16:10 +00:00
Matthias
be062c5fbe Fix frequent notification bug due to stop order 2023-06-24 08:10:31 +02:00
Matthias
757c6dc5ca Use Self typing 2023-06-23 18:15:06 +02:00
Matthias
c7f4dc1651 Merge branch 'develop' into pr/Axel-CH/8779 2023-06-20 17:43:50 +02:00
Matthias
d08bad7288 Fix trade_from_json 2023-06-20 17:10:04 +02:00
Matthias
ac4e3028d2 Clean up some code 2023-06-20 17:09:31 +02:00
Matthias
f3f5b63b7f Remove duplicate attributes 2023-06-20 16:43:32 +02:00
axel
a98e8ef201 retreive open orders from orders list, not from db 2023-06-19 12:28:55 -04:00
Matthias
7af14d1985 Fix random test failure 2023-06-17 18:26:08 +02:00
axel
171c4f182d update test_adjust_entry_maintain_replace test case, fix first RPC test 2023-06-17 00:06:30 -04:00
axel
6e8c765ece add has_open_orders to Trade model property 2023-06-16 16:15:24 -04:00
axel
8e0faf4aaa fix more tests, remove legacy conditions from update_trade function 2023-06-15 14:29:08 -04:00
axel
20a2b27498 update LocalTrade model orders related property type 2023-06-15 14:11:21 -04:00
axel
60a50a2ea8 fix test_handle_stoploss_on_exchange, add more orders related hybrid_properties to Trade classes 2023-06-15 11:56:41 -04:00
axel
9cdff0b0a5 fix first important tests in test_freqtradebot, update and fix on order related Trade class hybrid_properties 2023-06-15 01:55:13 -04:00
axel
450fc5763f fix test test_freqtradebot.py::test_execute_entry 2023-06-14 14:20:14 -04:00
axel
057f852e06 fix localTrade and trade classe miroring, fix persistence tests 2023-06-14 11:40:30 -04:00
axel
4874d10455 Replace open_order_id property by open_orders in Trade model, first test update 2023-06-13 02:11:34 -04:00
Matthias
9a7794c520 Improve behavior for when stoploss cancels without content
closes #8761
2023-06-12 20:29:23 +02:00
Matthias
9d0f488de7 Some more edits due to arrow 2023-05-19 07:15:24 +02:00
Matthias
af8fbad281 Improve Date timezone useage 2023-05-14 08:54:26 +02:00
Matthias
2a9e50a6a9 Add test testing create-table statement creation for different sql dialects
closes #8561
2023-04-27 19:43:33 +02:00
Matthias
c4a0910908 Handle special case where exit order is for more than the trade amount ... 2023-04-25 15:56:51 +02:00
Matthias
6a271317bc use stop_price_param for dry stops
closes #8555
2023-04-25 08:53:02 +02:00
Matthias
b2b19915e6 Limit enter_tag and exit_reason to their actual field lenght
closes #8486
2023-04-12 07:19:36 +02:00
Matthias
a6d2233b95 Use constant for custom field lengths 2023-04-11 21:05:14 +02:00
Matthias
f5a5c2d6b9 Improve imports 2023-04-08 16:44:33 +02:00
Matthias
fa3a81b022 convert Keys to enum 2023-04-08 16:28:50 +02:00
Matthias
7ff30c6df8 Add additional, typesafe getters 2023-04-08 16:24:38 +02:00
Matthias
7751768b2e Store initial_time value 2023-04-08 16:13:16 +02:00
Matthias
ac817b7808 Improve docstrings for key-value store 2023-04-08 10:09:31 +02:00
Matthias
c083723698 Add initial version of key value store 2023-04-08 10:07:03 +02:00
Matthias
916e1bbc7c
Merge pull request #8412 from freqtrade/fix/partial_stops
support partially filled stops
2023-04-01 15:18:42 +02:00
Matthias
861c577138 Support partially filled stop orders
closes #8374
2023-03-29 07:05:39 +02:00
Matthias
0cb28f3d82 Use kwarg for rounding_mode, update tests with additional parameter 2023-03-26 11:00:41 +02:00
Matthias
d0d0cbe1d1 Implement price_to_precision logic for stoploss 2023-03-26 10:37:18 +02:00
Matthias
ee205ddc86 Improve trade.from_json when stops are used 2023-03-25 20:26:56 +01:00
Matthias
9c6a49436b Export amount/price precisions per trade 2023-03-25 11:42:19 +01:00
Matthias
62c8dd98d5 Use combination of thread-local and asyncio-aware session context 2023-03-18 19:28:22 +01:00
Matthias
b7709126f9 remove .query completely 2023-03-16 18:07:22 +01:00
Matthias
e579ff9532 Simplify pairlock querying 2023-03-16 06:48:12 +01:00
Matthias
ae361e1d5d Update more .query usages 2023-03-16 06:44:53 +01:00
Matthias
8865af9104 Remove .query from pairlock 2023-03-15 21:21:00 +01:00
Matthias
aa54b77702 Rename _session to sessoin 2023-03-15 21:12:06 +01:00
Matthias
8073989c98 Remove more usages of .query 2023-03-15 21:10:47 +01:00
Matthias
d45599ca3b Fix some type errors 2023-03-15 21:09:25 +01:00
Matthias
b469addffb remove usage of .query from regular models 2023-03-15 21:00:30 +01:00
Matthias
95ff59a21c Improve documentation for get_trades_proxy 2023-03-15 07:23:54 +01:00
Matthias
25fd4a04d6 Update sqlalchemy QueryPropertyDescriptor to match latest version 2023-03-06 06:34:37 +01:00
Matthias
f0cbb4f949 Expose relative realized profit 2023-03-04 18:20:31 +01:00
Matthias
c03c3a5706 improve order REPR display 2023-03-03 18:12:41 +01:00
Matthias
103bd9e2f2 keep Trade.session private 2023-03-02 07:26:50 +01:00
Matthias
b980f45b2b Fix test mypy errors 2023-03-02 06:23:01 +01:00
Matthias
f0f72fdd33 Don't define "mapped" on LocalTrade class 2023-03-01 20:32:32 +01:00
Matthias
388dfec50b Remove last type error 2023-03-01 20:32:32 +01:00
Matthias
874413ccc5 Fix some style violations 2023-03-01 20:32:32 +01:00
Matthias
4a35d32b6a Improve trade stop types 2023-03-01 20:32:32 +01:00
Matthias
a1166b1077 allow null fee on calc_base_close 2023-03-01 20:32:32 +01:00
Matthias
e5c9cde36f Update trades_proxy typing 2023-03-01 20:32:32 +01:00
Matthias
7c09c01788 Add some more typehints 2023-03-01 20:32:32 +01:00
Matthias
0f914cf2bd Use Mapped for LocalTrade
this won't initialize sqlalchemy, as the base class is not inheriting from sqlalchemy.
2023-03-01 20:32:32 +01:00
Matthias
d175ab495b Move SessionType to base module 2023-03-01 20:32:32 +01:00
Matthias
764001a4c2 Don't reuse variable 2023-03-01 20:32:32 +01:00
Matthias
b65cff0adc Update "Query" type 2023-03-01 20:32:32 +01:00
Matthias
db4f4498dc Experimentally type query property ... 2023-03-01 20:32:32 +01:00
Matthias
0691bbaad9 Update some db types 2023-03-01 20:32:32 +01:00
Matthias
101d9ab87f Improvements - tests runnable again 2023-03-01 20:32:32 +01:00
Matthias
65a5cf64df Re-type session 2023-03-01 20:32:32 +01:00
Matthias
608a7c2d38 Add safe_close_rate 2023-03-01 20:32:31 +01:00
Matthias
e59eaf33e0 Update _session to session 2023-03-01 20:32:31 +01:00
Matthias
47b66f3220 More fun with types 2023-03-01 20:32:31 +01:00
Matthias
491f49388c "Mapped" for trade_model 2023-03-01 20:32:31 +01:00
Matthias
bb116456a9 Update Types for Order object 2023-03-01 20:32:31 +01:00
Matthias
13b1a3e737 Properly pairlock columns using mapped 2023-03-01 20:32:31 +01:00
Matthias
98791752a9 Update TradeModels to mapped_column 2023-03-01 20:32:31 +01:00
Matthias
0bd9b00132 Pairlock to mappedColumn 2023-03-01 20:32:31 +01:00
Matthias
39a658eac2 Update DeclarativeBase 2023-03-01 20:32:31 +01:00
Matthias
3c019e0e16 tentative augmented typing of Trade object 2023-03-01 20:32:31 +01:00
Matthias
9d455f58b1 Improve some trade model Types 2023-03-01 20:32:31 +01:00
Matthias
829e10ff87 Improve Type for models.py 2023-03-01 20:32:31 +01:00
Matthias
b62830031f Dummy-type query objects 2023-03-01 20:32:31 +01:00
Matthias
a553a9923a Update types for pairlock 2023-03-01 20:32:31 +01:00
Matthias
f89b63b0c5 Fix dry-run stoploss orders filling "in place" after restart. 2023-02-18 19:25:11 +01:00
Matthias
81619fb4a0 Properly use sqlalchemy column types 2023-02-06 19:51:51 +01:00
Matthias
448505fbfb Fix minor issue where amount could be empty in rest calls 2023-01-31 20:38:18 +01:00
Matthias
020dc3c6e1 filled-date shouldn't update again 2023-01-27 20:21:29 +01:00
Matthias
8108a48f39 Follow PEP 484 - no implicit optionals 2023-01-21 20:01:56 +01:00
Matthias
305b067e48 Support having no Amount/Price available from the exchange initially 2023-01-08 13:55:09 +01:00
Matthias
fd694f14c2 Add new order columns, ft_amount and ft_price 2023-01-08 13:53:08 +01:00
Matthias
550ab2b8e8 Improve select_order to only consider filled where needed. 2023-01-08 11:24:04 +01:00
Matthias
cd4faa9c59 keep max_stake_amount through backtests 2022-12-27 18:08:20 +01:00
Matthias
62c4675e29 Remove some deprecated fields from the API 2022-12-27 14:28:07 +01:00
Matthias
cb66663fd2 show max_stake_amount in API 2022-12-27 14:28:07 +01:00
Matthias
55001bf321 Keep max_stake_amount (only relevant for DCA orders). 2022-12-27 14:28:07 +01:00
Matthias
bad6fe77d3 Remove deprecated trade property 2022-12-18 17:21:50 +01:00
Matthias
d73fd42769 Fix flake8 error introduced with 6.0 update 2022-11-28 06:38:35 +01:00
Matthias
436b314c80 add safe_remaining
fixes #7757
2022-11-17 19:07:47 +00:00
Matthias
afcb86f422 Improve migration types 2022-11-17 10:25:51 +00:00
Matthias
ee0e59157c Update join relationship of orders table to selectin
closes #6791 by slightly improving performance in this area.
2022-11-12 16:34:00 +01:00
Matthias
f43f967040 Improve handling of unfilled stoploss orders in edge-cases 2022-11-08 20:34:18 +01:00
Matthias
d1591883a6 add missing datetime conversion in fromJson 2022-10-21 07:01:47 +02:00
Matthias
bd424a877b Add Trade from_json method 2022-10-20 20:33:08 +02:00
Matthias
0e8cf366f5 Keep trade state in LocalTrade 2022-10-17 06:57:26 +02:00
Matthias
e82baf5f60 Use helper-method to modify trades_open 2022-10-16 16:45:16 +02:00
Matthias
063511826c Update stoploss on exchange logic
closes #7424
2022-09-17 17:11:00 +02:00
Matthias
9f266cbcb2 Allow safe_price for market stop orders 2022-09-17 17:11:00 +02:00
Matthias
16573b19e3 Fix migration syntax error 2022-09-03 19:51:44 +02:00
Matthias
ed4cc18cdd Migration to check order funding fee 2022-09-03 15:19:40 +02:00
Matthias
0f483ee31f Use "since last order" approach for live as well. 2022-09-03 15:01:42 +02:00
Matthias
df50b1928d Fix funding fee calculation for backtesting 2022-09-03 15:01:42 +02:00
Matthias
11fbfd3402 Remove unnecessary assignment 2022-09-01 19:39:20 +02:00
Matthias
6636f17e0f Simplify usage of amount_to_contract precision 2022-08-25 07:08:22 +02:00
Matthias
32faad9333 Fix backtest calculation problem with DCA
closes #7287
2022-08-24 20:36:08 +02:00
Matthias
fe7108ae75 Convert amount to contracts before comparing for close
closes #7279
2022-08-23 06:37:38 +02:00
Matthias
78b161e14c add contract_size to database 2022-08-23 06:37:38 +02:00
Matthias
87a3115073 Add get_open_trade_count() to simplify getting open trade count. 2022-08-21 17:08:27 +02:00
Matthias
42eb508515 Attempt fix of #7184 2022-08-19 07:09:46 +02:00
Matthias
76a3e97e05 Add migrations end message
closes #7251
2022-08-19 06:39:51 +02:00
Matthias
8d182768f9 stoploss should also use trimmed prices 2022-08-17 09:57:11 +02:00
Matthias
24690c1918 Don't convert open_rate to precision
this may cause more problems than it solves.
2022-08-16 18:32:00 +02:00
Matthias
3b44dc52e1 Minor corrections 2022-08-16 18:10:48 +02:00
Matthias
a73e4f8e41 Truncate amount before comparing for closure 2022-08-16 09:49:53 +02:00
Matthias
1dd56e35d5 Ensure comparisions align when closing a trade 2022-08-16 08:21:02 +02:00
Matthias
c3f159bd57 Add precision fields to database 2022-08-15 19:58:40 +02:00
Matthias
6c32331740 Move precision calculations to standalone functions 2022-08-15 08:43:58 +02:00
Matthias
e3a5b97b45 Update recalc_from_trades to use FtPrecise 2022-08-13 08:43:56 +02:00
Matthias
0e61c2d057 Replace Decimal with FtPrecise in trade_model 2022-08-13 08:43:56 +02:00
eSeR1805
f755df2568
Merge branch 'develop' into feature_keyval_storage
Update rpc/telegram to use MAX_MESSAGE_LENGTH.
2022-08-11 11:26:45 +03:00
Matthias
bfa859e618 Remove unnecessary method (simplify) 2022-08-06 17:46:58 +02:00
Matthias
5250189f77 Add Rollback function to Trade
simplifies Session work
2022-08-06 17:03:49 +02:00
Matthias
d75e0a9820 Fix Flake8 errors after flake update 2022-08-01 06:43:59 +02:00
Kavinkumar
a4bada3ebe
Partial exit using average price (#6545)
Introduce Partial exits
2022-07-31 14:19:04 +02:00
Matthias
d046f0cc5e Improve method wording for liquidation price setter 2022-07-30 16:11:31 +02:00
Matthias
845cecd38f Add stoploss or liquidation property 2022-07-30 16:10:16 +02:00
Matthias
15752ce3c2 Rename set_stoploss method to be fully private 2022-07-30 16:10:16 +02:00
Matthias
9852733ef7 Improve tests to align with modified logic 2022-07-30 16:10:16 +02:00
Matthias
995be90f91 Liquidation should be a separate exit type 2022-07-30 16:10:16 +02:00
Matthias
b7167ec880 Fix wrong fee calclulation for gateio futures 2022-07-09 08:51:59 +02:00
Matthias
6f0721ae2b Update dry-order-fix to use sqlalchemy internals 2022-07-04 17:17:39 +02:00
Matthias
6da3fa08e4 Update migrations to also support Postgres
closes #7038
2022-07-04 11:14:59 +02:00
Matthias
53e5483daa Store StopPrice for dry-run orders
closes #6996
2022-06-22 06:31:51 +02:00
eSeR1805
c420304b33
Delete custom data before the trade. 2022-06-19 20:03:56 +03:00
Matthias
0d967f93ba Improve performance of some RPC calls
These don't need orders to be loaded. As a side-effect, this will
also reduce the strain on the database.
2022-06-19 16:13:04 +02:00
eSeR1805
ce9d9d7e60
Finish renaming persistant storage infrastructure. 2022-06-19 16:02:24 +03:00
eSeR1805
365527508b
Rename files. 2022-06-19 15:59:21 +03:00
eSeR1805
9fdb8b07ac
Rename persistant storage infrastructure. 2022-06-19 15:56:50 +03:00
eSeR1805
0009b987e4
Merge branch 'develop' into feature_keyval_storage 2022-06-19 13:32:25 +03:00
Matthias
0168343b76 Add trading-volume to api schema 2022-06-18 16:53:25 +02:00
Matthias
40c9abc7e1 Add trading volume to /profit output 2022-06-18 11:40:32 +02:00