feat: add leverage column to wallet history

This commit is contained in:
Matthias
2026-01-06 11:35:06 +01:00
parent a88dc8839d
commit 00d39bbb80
2 changed files with 6 additions and 2 deletions
+2 -1
View File
@@ -20,6 +20,7 @@ class WalletHistory(ModelBase):
currency: Mapped[str] = mapped_column(String(25), nullable=False) currency: Mapped[str] = mapped_column(String(25), nullable=False)
price: Mapped[float] = mapped_column(Float, nullable=True) price: Mapped[float] = mapped_column(Float, nullable=True)
balance: Mapped[float] = mapped_column(Float, nullable=False) balance: Mapped[float] = mapped_column(Float, nullable=False)
leverage: Mapped[float] = mapped_column(Float, nullable=False, default=1.0)
__table_args__ = ( __table_args__ = (
# Ensure one record per currency per day # Ensure one record per currency per day
@@ -29,5 +30,5 @@ class WalletHistory(ModelBase):
def __repr__(self) -> str: def __repr__(self) -> str:
return ( return (
f"WalletHistory(timestamp={self.timestamp}, currency={self.currency}, " f"WalletHistory(timestamp={self.timestamp}, currency={self.currency}, "
f"price={self.price}, balance={self.balance})" f"price={self.price}, balance={self.balance}, leverage={self.leverage})"
) )
+4 -1
View File
@@ -465,16 +465,19 @@ class Wallets:
currency=wallet.currency, currency=wallet.currency,
price=price, price=price,
balance=wallet.total, balance=wallet.total,
leverage=1.0,
) )
wallet_records.append(wallet_record) wallet_records.append(wallet_record)
for position in self.get_all_positions().values(): for position in self.get_all_positions().values():
price = self._exchange.get_conversion_rate(position.symbol, self._stake_currency) base = self._exchange.get_pair_base_currency(position.symbol)
price = self._exchange.get_conversion_rate(base, self._stake_currency)
position_record = WalletHistory( position_record = WalletHistory(
timestamp=timestamp, timestamp=timestamp,
currency=position.symbol, currency=position.symbol,
price=price, price=price,
balance=position.position, balance=position.position,
leverage=position.leverage or 1.0,
) )
wallet_records.append(position_record) wallet_records.append(position_record)
try: try: