freqtradebot.get_fee changed to is_maker and fee_open_is_maker fee_close_is_maker passed to Trade in execute_entry
This commit is contained in:
parent
99acadbb13
commit
562de904ad
@ -570,32 +570,21 @@ class FreqtradeBot(LoggingMixin):
|
|||||||
logger.info(f"Bids to asks delta for {pair} does not satisfy condition.")
|
logger.info(f"Bids to asks delta for {pair} does not satisfy condition.")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
def get_fee(
|
def is_maker(
|
||||||
self,
|
self,
|
||||||
pair: str,
|
|
||||||
side: str,
|
side: str,
|
||||||
is_short: bool = False,
|
|
||||||
):
|
):
|
||||||
'''
|
'''
|
||||||
:param pair: Unified CCXT symbol
|
:param side: One of entry, or exit # TODO: stoploss
|
||||||
:param side: One of entry, exit or stoploss
|
|
||||||
:param is_short: True for short trades
|
|
||||||
'''
|
'''
|
||||||
order_type = self.config['order_types'][side]
|
order_type = self.config['order_types'][side]
|
||||||
if order_type == 'limit':
|
if order_type == 'limit':
|
||||||
if (
|
return (
|
||||||
side == 'entry' and self.config['entry_pricing']['price_side'] == 'same' or
|
side == 'entry' and self.config['entry_pricing']['price_side'] == 'same' or
|
||||||
side == 'exit' and self.config['exit_pricing']['price_side'] == 'same'
|
side == 'exit' and self.config['exit_pricing']['price_side'] == 'same'
|
||||||
):
|
)
|
||||||
taker_or_maker = 'maker'
|
|
||||||
else:
|
|
||||||
taker_or_maker = 'taker'
|
|
||||||
else:
|
else:
|
||||||
taker_or_maker = 'taker'
|
return True
|
||||||
return self.exchange.get_fee(
|
|
||||||
symbol=pair,
|
|
||||||
taker_or_maker=taker_or_maker
|
|
||||||
)
|
|
||||||
|
|
||||||
def execute_entry(
|
def execute_entry(
|
||||||
self,
|
self,
|
||||||
@ -696,6 +685,8 @@ class FreqtradeBot(LoggingMixin):
|
|||||||
funding_fees = self.exchange.get_funding_fees(
|
funding_fees = self.exchange.get_funding_fees(
|
||||||
pair=pair, amount=amount, is_short=is_short, open_date=open_date)
|
pair=pair, amount=amount, is_short=is_short, open_date=open_date)
|
||||||
if trade is None:
|
if trade is None:
|
||||||
|
open_maker = self.is_maker('entry')
|
||||||
|
close_maker = self.is_maker('exit')
|
||||||
trade = Trade(
|
trade = Trade(
|
||||||
pair=pair,
|
pair=pair,
|
||||||
base_currency=base_currency,
|
base_currency=base_currency,
|
||||||
@ -704,8 +695,10 @@ class FreqtradeBot(LoggingMixin):
|
|||||||
amount=amount,
|
amount=amount,
|
||||||
is_open=True,
|
is_open=True,
|
||||||
amount_requested=amount_requested,
|
amount_requested=amount_requested,
|
||||||
fee_open=self.get_fee(pair, 'entry'),
|
fee_open=self.exchange.get_fee(symbol=pair, taker_or_maker=('maker' if open_maker else 'taker')),
|
||||||
fee_close=self.get_fee(pair, 'exit'),
|
fee_close=self.exchange.get_fee(symbol=pair, taker_or_maker=('maker' if close_maker else 'taker')),
|
||||||
|
fee_open_is_maker=open_maker,
|
||||||
|
fee_close_is_maker=close_maker,
|
||||||
open_rate=enter_limit_filled_price,
|
open_rate=enter_limit_filled_price,
|
||||||
open_rate_requested=enter_limit_requested,
|
open_rate_requested=enter_limit_requested,
|
||||||
open_date=open_date,
|
open_date=open_date,
|
||||||
|
Loading…
Reference in New Issue
Block a user