Overall Statistics
Total Trades
13
Average Win
3.29%
Average Loss
-1.90%
Compounding Annual Return
2148.311%
Drawdown
6.400%
Expectancy
-0.090
Net Profit
16.592%
Sharpe Ratio
3.626
Probabilistic Sharpe Ratio
83.279%
Loss Rate
67%
Win Rate
33%
Profit-Loss Ratio
1.73
Alpha
2.476
Beta
0.322
Annual Standard Deviation
0.687
Annual Variance
0.472
Information Ratio
3.55
Tracking Error
0.688
Treynor Ratio
7.736
Total Fees
$0.00
class ParticleVerticalAtmosphericScrubbers(QCAlgorithm):

    def Initialize(self):
        
        self.tickerOne = "AMD"
        self.tickerTwo = "SPY"
        
        self.SetStartDate(2017, 1, 16)  # Set Start Date
        self.SetEndDate(2017, 2, 2)  # Set End Date
        self.SetCash(1000)  # Set Strategy Cash
        self.AddEquity("AMD", Resolution.Minute, extendedMarketHours = True)
        self.Securities[self.tickerOne].FeeModel = ConstantFeeModel(0)
        #self.SetDataNormalizationMode(DataNormalizationMode.Raw)
        
        self.Schedule.On(self.DateRules.EveryDay(), self.TimeRules.At(15, 59), Action(self.purchase))

        
    def OnData(self, data):
        
        if self.Portfolio.Invested and self.Securities[self.tickerOne].Price <= self.sellPrice:
            self.LimitOrder(self.tickerOne, -self.Portfolio[self.tickerOne].Quantity, self.Securities[self.tickerOne].Price*.5)

    def purchase(self):
        self.sellPrice = self.Securities[self.tickerOne].Price * 0.991
        self.dailyClose = self.Securities[self.tickerOne].Price
        if not self.Portfolio.Invested:
            self.SetHoldings(self.tickerOne, 1)

    def OnOrderEvent(self, fill):
        if fill.Status == 3:
            if fill.Direction == 0:
                direction = "Buy"
                self.Debug(str(direction) + " " + str(fill.FillQuantity) + " @ " + str(fill.FillPrice))
            else:
                direction = "Sell"
                self.Debug(str(direction) + " " + str(fill.FillQuantity) + " @ " +str(fill.FillPrice) + " Loss: " + 
                str( (fill.FillPrice-self.dailyClose)/self.dailyClose ))