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
-2.502
Tracking Error
0.095
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
Portfolio Turnover
0%
#region imports
from AlgorithmImports import *
import torch
#endregion
class LiquidUniverseSelection(QCAlgorithm):
    
    filtered_by_price = None
    changes = None
    
    def initialize(self):
        self.set_start_date(2019, 1, 11)  
        self.set_end_date(2019, 7, 1) 
        self.set_cash(100000)  
        self.add_universe(self.coarse_selection_filter)

    def coarse_selection_filter(self, coarse):
    
        sorted_by_dollar_volume = sorted(coarse, key=lambda x: x.dollar_volume, reverse=True)  
        
        filtered_by_price = [x.symbol for x in sorted_by_dollar_volume if x.price > 10]
       
        return filtered_by_price[:8]
    
    #1. Create a function on_securities_changed
    def on_securities_changed(self, changes):
        #2. Save securities changed as self.changes
        self.changes = changes
        #3. Log the changes in the function
        # self.log(f"on_securities_changed({self.time}:: {changes}")
        self.log("get here")
        # self.log(str(torch.cuda.is_available()))
        
        # self.debug(f"on_securities_changed({self.time}:: {changes}")