Overall Statistics
Total Trades
387
Average Win
0.45%
Average Loss
-0.42%
Compounding Annual Return
49.533%
Drawdown
15.900%
Expectancy
0.052
Net Profit
20.871%
Sharpe Ratio
1.463
Loss Rate
49%
Win Rate
51%
Profit-Loss Ratio
1.07
Alpha
-0.149
Beta
2.081
Annual Standard Deviation
0.298
Annual Variance
0.089
Information Ratio
0.689
Tracking Error
0.224
Treynor Ratio
0.209
Total Fees
$571.65
namespace QuantConnect
{
    public partial class BootCampTask : QCAlgorithm
    {
        private IEnumerable<Symbol> filteredByPrice;
        private SecurityChanges _changes = SecurityChanges.None;
        
        public override void Initialize()
        {
            SetStartDate(2019, 1, 11); 
            SetEndDate(2019, 7, 1);  
            SetCash(100000);             
            AddUniverse(CoarseSelectionFilter);
            UniverseSettings.Resolution = Resolution.Daily;
            
            //1. Set the leverage to 2 
            UniverseSettings.Leverage = 2.0m;
        }
        
        public IEnumerable<Symbol> CoarseSelectionFilter(IEnumerable<CoarseFundamental> coarse)
        {	
        	var sortedByDollarVolume = coarse.OrderByDescending(x => x.DollarVolume);
        	filteredByPrice = sortedByDollarVolume.Where(x => x.Price > 10).Select(x => x.Symbol);
        	filteredByPrice = filteredByPrice.Take(10);
        	return filteredByPrice;
        }
	
        public override void OnSecuritiesChanged(SecurityChanges changes)
        {
        	_changes = changes;
        	Log($"OnSecuritiesChanged({UtcTime}):: {changes}");
        	foreach (var security in changes.RemovedSecurities)
    		{
    			if (security.Invested)
    			{
    				Liquidate(security.Symbol);
    			}
    		}
    		
    		//2. Now that we have more leverage, set the allocation to set the allocation to 18% each instead of 10%
    		foreach (var security in changes.AddedSecurities)
    		{
    			SetHoldings(security.Symbol, 0.18m);
    		}
        }
        
    }
}