Overall Statistics
Total Trades
1
Average Win
0%
Average Loss
0%
Compounding Annual Return
-33.284%
Drawdown
68.300%
Expectancy
0
Net Profit
-45.173%
Sharpe Ratio
-0.61
Probabilistic Sharpe Ratio
0.688%
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0
Beta
0
Annual Standard Deviation
0.334
Annual Variance
0.111
Information Ratio
-0.61
Tracking Error
0.334
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
KO.KO 2S
class MultidimensionalCalibratedChamber(QCAlgorithm):

    def Initialize(self):
        self.SetStartDate(1973, 9, 11)  # Set Start Date
        self.SetEndDate(1975, 3, 7)
        self.SetCash(100000)  # Set Strategy Cash
        self.AddEquity('SPY', Resolution.Daily)
        self.symbol = self.AddData(KO, 'KO', Resolution.Daily).Symbol

    def OnData(self, data):
        if data.ContainsKey(self.symbol):
            self.Plot('KO', 'Open', data[self.symbol].Open)
            self.Plot('KO', 'High', data[self.symbol].High)
            self.Plot('KO', 'Low', data[self.symbol].Low)
            self.Plot('KO', 'Close', data[self.symbol].Close)
            self.Plot('KO', 'Volume', data[self.symbol].Volume)
            
        
        if not self.Portfolio.Invested:
            self.SetHoldings(self.symbol, 1)
        
class KO(PythonData):
    ''' Weather based rebalancing'''

    def GetSource(self, config, date, isLive):
        source = "https://raw.githubusercontent.com/thisisneon/importdata/main/cola_1973_1975.csv"
        return SubscriptionDataSource(source, SubscriptionTransportMedium.RemoteFile);


    def Reader(self, config, line, date, isLive):
        # If first character is not digit, pass
        if not (line.strip() and line[0].isdigit()): return None

        data = line.split(',')
        ko = KO()
        ko.Symbol = config.Symbol
        ko.Time = datetime.strptime(data[0].split(' ')[0], '%m/%d/%Y') 
        ko.Value = float(data[4])
        ko['Open'] = float(data[1])
        ko['High'] = float(data[2])
        ko['Low'] = float(data[3])
        ko['Close'] = float(data[4])
        ko['Volume'] = float(data[6])
        
        
        return ko