app.backbone.entities.bot_performance
1from sqlalchemy import Column, ForeignKey, Integer, Float, String, Date, Boolean 2from sqlalchemy.orm import relationship 3from . import Base 4 5class BotPerformance(Base): 6 __tablename__ = 'BotPerformances' 7 8 Id = Column(Integer, primary_key=True, autoincrement=True) 9 BotId = Column(Integer, ForeignKey('Bots.Id'), nullable=True) 10 DateFrom = Column(Date, nullable=False, index=True) 11 DateTo = Column(Date, nullable=False, index=True) 12 Method = Column(String, nullable=False) 13 StabilityRatio = Column(Float, nullable=False) 14 Trades = Column(Integer, nullable=False) 15 Return = Column(Float, nullable=False) 16 Drawdown = Column(Float, nullable=False) 17 RreturnDd = Column(Float, nullable=False) 18 StabilityWeightedRar = Column(Float, nullable=False) 19 WinRate = Column(Float, nullable=False) 20 Duration = Column(Integer, nullable=False) 21 Favorite = Column(Boolean, nullable=False, default=False) 22 InitialCash = Column(Float, nullable=False) 23 24 ExposureTime = Column(Float, nullable=False) 25 KellyCriterion = Column(Float, nullable=False) 26 WinratePValue = Column(Float, nullable=False) 27 SharpeRatio = Column(Float, nullable=True) 28 29 JarqueBeraStat = Column(Float, nullable=True) 30 JarqueBeraPValue = Column(Float, nullable=True) 31 Skew = Column(Float, nullable=True) 32 Kurtosis = Column(Float, nullable=True) 33 34 # Relación con otras tablas 35 Bot = relationship('Bot', back_populates='BotPerformance', lazy='joined') 36 37 BotTradePerformance = relationship('BotTradePerformance', back_populates='BotPerformance', lazy='joined', uselist=False) 38 TradeHistory = relationship('Trade', back_populates='BotPerformance', lazy='joined') 39 MontecarloTest = relationship('MontecarloTest', back_populates='BotPerformance', lazy='joined', uselist=False) 40 LuckTest = relationship('LuckTest', foreign_keys='LuckTest.BotPerformanceId', back_populates='BotPerformance', lazy='joined', uselist=False) 41 RandomTest = relationship('RandomTest', foreign_keys='RandomTest.BotPerformanceId', back_populates='BotPerformance', lazy='joined', uselist=False) 42 43 def __repr__(self): 44 return f"<BotPerformance(Id={self.Id}, Trades={self.Trades}, Return={self.Return}, Drawdown={self.Drawdown})>"
class
BotPerformance(sqlalchemy.orm.decl_api._DynamicAttributesType, sqlalchemy.inspection.Inspectable[sqlalchemy.orm.mapper.Mapper[typing.Any]]):
6class BotPerformance(Base): 7 __tablename__ = 'BotPerformances' 8 9 Id = Column(Integer, primary_key=True, autoincrement=True) 10 BotId = Column(Integer, ForeignKey('Bots.Id'), nullable=True) 11 DateFrom = Column(Date, nullable=False, index=True) 12 DateTo = Column(Date, nullable=False, index=True) 13 Method = Column(String, nullable=False) 14 StabilityRatio = Column(Float, nullable=False) 15 Trades = Column(Integer, nullable=False) 16 Return = Column(Float, nullable=False) 17 Drawdown = Column(Float, nullable=False) 18 RreturnDd = Column(Float, nullable=False) 19 StabilityWeightedRar = Column(Float, nullable=False) 20 WinRate = Column(Float, nullable=False) 21 Duration = Column(Integer, nullable=False) 22 Favorite = Column(Boolean, nullable=False, default=False) 23 InitialCash = Column(Float, nullable=False) 24 25 ExposureTime = Column(Float, nullable=False) 26 KellyCriterion = Column(Float, nullable=False) 27 WinratePValue = Column(Float, nullable=False) 28 SharpeRatio = Column(Float, nullable=True) 29 30 JarqueBeraStat = Column(Float, nullable=True) 31 JarqueBeraPValue = Column(Float, nullable=True) 32 Skew = Column(Float, nullable=True) 33 Kurtosis = Column(Float, nullable=True) 34 35 # Relación con otras tablas 36 Bot = relationship('Bot', back_populates='BotPerformance', lazy='joined') 37 38 BotTradePerformance = relationship('BotTradePerformance', back_populates='BotPerformance', lazy='joined', uselist=False) 39 TradeHistory = relationship('Trade', back_populates='BotPerformance', lazy='joined') 40 MontecarloTest = relationship('MontecarloTest', back_populates='BotPerformance', lazy='joined', uselist=False) 41 LuckTest = relationship('LuckTest', foreign_keys='LuckTest.BotPerformanceId', back_populates='BotPerformance', lazy='joined', uselist=False) 42 RandomTest = relationship('RandomTest', foreign_keys='RandomTest.BotPerformanceId', back_populates='BotPerformance', lazy='joined', uselist=False) 43 44 def __repr__(self): 45 return f"<BotPerformance(Id={self.Id}, Trades={self.Trades}, Return={self.Return}, Drawdown={self.Drawdown})>"
The base class of the class hierarchy.
When called, it accepts no arguments and returns a new featureless instance that has no instance attributes and cannot be given any.
BotPerformance(**kwargs)
A simple constructor that allows initialization from kwargs.
Sets attributes on the constructed instance using the names and
values in kwargs
.
Only keys that are present as attributes of the instance's class are allowed. These could be, for example, any mapped columns or relationships.