Overall Statistics |
Total Orders 0 Average Win 0% Average Loss 0% Compounding Annual Return 0% Drawdown 0% Expectancy 0 Start Equity 100000 End Equity 100000 Net Profit 0% Sharpe Ratio 0 Sortino Ratio 0 Probabilistic Sharpe Ratio 0% Loss Rate 0% Win Rate 0% Profit-Loss Ratio 0 Alpha 0 Beta 0 Annual Standard Deviation 0 Annual Variance 0 Information Ratio -0.417 Tracking Error 0.159 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 Lowest Capacity Asset Portfolio Turnover 0% |
from AlgorithmImports import * class PensiveFluorescentYellowParrot(QCAlgorithm): def Initialize(self): self.SetStartDate(2000, 1, 1) # Set Start Date self.years = 0.5 self.log(f'years={self.years}') self.set_warm_up(int(252*self.years), Resolution.DAILY) self.universe_settings.schedule.on(self.date_rules.week_start()) self.add_universe(self._select) def _select(self, fundamentals: List[Fundamental]) -> List[Symbol]: selected = sorted([x for x in fundamentals if x.company_profile.market_cap > 0], key=lambda f: f.company_profile.market_cap, reverse=True) if not selected: return Universe.UNCHANGED limit = 3000 if len(selected) > limit: selected = selected[:limit] last = selected[-1] # Log details of the selected symbols after sorting by market cap if self.time.year > 2023 and self.time.month > 11: self.debug(f"{self.years} :: {self.time} >> Fundamental Selection (#{len(selected)}). Lowest Market Cap: {last.symbol} ({last.symbol.value}): {last.market_cap}") self.plot('Market Cap', 'Lowest', last.market_cap) return Universe.UNCHANGED