Overall Statistics
Total Trades
0
Average Win
0%
Average Loss
0%
Compounding Annual Return
0%
Drawdown
0%
Expectancy
0
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.701
Tracking Error
0.174
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
Portfolio Turnover
0%
# region imports
from AlgorithmImports import *
# endregion
import AlgorithmImports as aim
import datetime as dt


class Test(QCAlgorithm):

    def Initialize(self):
        self.Ticker = 'JNJ'
        self.finalDate = dt.datetime(year=2024, month=1, day=10)
        # self.startDate = dt.datetime(year=2012, month=1, day=1) #always start on 1/1
        self.startDate = dt.datetime(year=2019, month=1, day=1) #always start on 1/1
        
        self.SetStartDate(self.startDate.year, self.startDate.month, self.startDate.day)
        self.SetEndDate(self.finalDate.year, self.finalDate.month, self.finalDate.day)
        self.SetCash(100000)

        self.UniverseSettings.Resolution = aim.Resolution.Daily
        self.AddUniverse(self.__SelectCoarse, self.__SelectFine)

        self.Date = dt.datetime.min


    def __SelectCoarse(self, coarse: List[CoarseFundamental]) -> List[Symbol]:
        Coarse = [c.Symbol for c in coarse if c.Symbol.Value.upper() == self.Ticker.upper()]

        return Coarse


    def __SelectFine(self, fine: List[FineFundamental]) -> List[Symbol]:
        for f in fine:
            Date = f.EarningReports.FileDate.Value

            if self.Date != Date:
                self.Debug('File Date: {:s}'.format(Date.strftime('%m-%d-%Y')))
                self.Date = Date

        return []