Migration to check order funding fee
This commit is contained in:
		| @@ -212,17 +212,18 @@ def migrate_orders_table(engine, table_back_name: str, cols_order: List): | |||||||
|     ft_fee_base = get_column_def(cols_order, 'ft_fee_base', 'null') |     ft_fee_base = get_column_def(cols_order, 'ft_fee_base', 'null') | ||||||
|     average = get_column_def(cols_order, 'average', 'null') |     average = get_column_def(cols_order, 'average', 'null') | ||||||
|     stop_price = get_column_def(cols_order, 'stop_price', 'null') |     stop_price = get_column_def(cols_order, 'stop_price', 'null') | ||||||
|  |     funding_fee = get_column_def(cols_order, 'funding_fee', '0.0') | ||||||
|  |  | ||||||
|     # sqlite does not support literals for booleans |     # sqlite does not support literals for booleans | ||||||
|     with engine.begin() as connection: |     with engine.begin() as connection: | ||||||
|         connection.execute(text(f""" |         connection.execute(text(f""" | ||||||
|             insert into orders (id, ft_trade_id, ft_order_side, ft_pair, ft_is_open, order_id, |             insert into orders (id, ft_trade_id, ft_order_side, ft_pair, ft_is_open, order_id, | ||||||
|             status, symbol, order_type, side, price, amount, filled, average, remaining, cost, |             status, symbol, order_type, side, price, amount, filled, average, remaining, cost, | ||||||
|             stop_price, order_date, order_filled_date, order_update_date, ft_fee_base) |             stop_price, order_date, order_filled_date, order_update_date, ft_fee_base, funding_fee) | ||||||
|             select id, ft_trade_id, ft_order_side, ft_pair, ft_is_open, order_id, |             select id, ft_trade_id, ft_order_side, ft_pair, ft_is_open, order_id, | ||||||
|             status, symbol, order_type, side, price, amount, filled, {average} average, remaining, |             status, symbol, order_type, side, price, amount, filled, {average} average, remaining, | ||||||
|             cost, {stop_price} stop_price, order_date, order_filled_date, |             cost, {stop_price} stop_price, order_date, order_filled_date, | ||||||
|             order_update_date, {ft_fee_base} ft_fee_base |             order_update_date, {ft_fee_base} ft_fee_base {funding_fee} funding_fee | ||||||
|             from {table_back_name} |             from {table_back_name} | ||||||
|             """)) |             """)) | ||||||
|  |  | ||||||
| @@ -307,9 +308,10 @@ def check_migrate(engine, decl_base, previous_tables) -> None: | |||||||
|     # Check if migration necessary |     # Check if migration necessary | ||||||
|     # Migrates both trades and orders table! |     # Migrates both trades and orders table! | ||||||
|     # if ('orders' not in previous_tables |     # if ('orders' not in previous_tables | ||||||
|     # or not has_column(cols_orders, 'stop_price')): |     # or not has_column(cols_orders, 'funding_fee')): | ||||||
|     migrating = False |     migrating = False | ||||||
|     if not has_column(cols_trades, 'contract_size'): |     if not has_column(cols_orders, 'funding_fee'): | ||||||
|  |     # if not has_column(cols_trades, 'contract_size'): | ||||||
|         migrating = True |         migrating = True | ||||||
|         logger.info(f"Running database migration for trades - " |         logger.info(f"Running database migration for trades - " | ||||||
|                     f"backup: {table_back_name}, {order_table_bak_name}") |                     f"backup: {table_back_name}, {order_table_bak_name}") | ||||||
|   | |||||||
| @@ -892,7 +892,7 @@ class LocalTrade(): | |||||||
|             if is_exit: |             if is_exit: | ||||||
|                 # Process exits |                 # Process exits | ||||||
|                 if i == ordercount and is_closing: |                 if i == ordercount and is_closing: | ||||||
|                     # Apply funding fees only to the last order |                     # Apply funding fees only to the last closing order | ||||||
|                     self.funding_fees = funding_fees |                     self.funding_fees = funding_fees | ||||||
|  |  | ||||||
|                 exit_rate = o.safe_price |                 exit_rate = o.safe_price | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user