Refactor get_best_pair to persistence

This commit is contained in:
Matthias
2019-10-29 11:15:33 +01:00
parent f20f5cebbe
commit ab117527c9
3 changed files with 23 additions and 5 deletions

View File

@@ -421,6 +421,15 @@ class Trade(_DECL_BASE):
for pair, rate, count in pair_rates
]
@staticmethod
def get_best_pair():
best_pair = Trade.session.query(
Trade.pair, func.sum(Trade.close_profit).label('profit_sum')
).filter(Trade.is_open.is_(False)) \
.group_by(Trade.pair) \
.order_by(desc('profit_sum')).first()
return best_pair
@staticmethod
def get_open_trades() -> List[Any]:
"""

View File

@@ -225,11 +225,7 @@ class RPC:
)
profit_all_perc.append(profit_percent)
best_pair = Trade.session.query(
Trade.pair, sql.func.sum(Trade.close_profit).label('profit_sum')
).filter(Trade.is_open.is_(False)) \
.group_by(Trade.pair) \
.order_by(sql.text('profit_sum DESC')).first()
best_pair = Trade.get_best_pair()
if not best_pair:
raise RPCException('no closed trade')