| Overall Statistics |
|
Total Trades 317 Average Win 0.05% Average Loss -0.04% Compounding Annual Return 3.708% Drawdown 7.200% Expectancy 0.378 Net Profit 4.706% Sharpe Ratio 0.439 Loss Rate 37% Win Rate 63% Profit-Loss Ratio 1.18 Alpha -0.039 Beta 0.629 Annual Standard Deviation 0.074 Annual Variance 0.006 Information Ratio -1.613 Tracking Error 0.05 Treynor Ratio 0.052 Total Fees $325.23 |
namespace QuantConnect
{
public class LiquidateOverTimeAlgorithm : QCAlgorithm
{
private int _initialQuantity = 0;
private decimal _frequency = 60m;
public override void Initialize()
{
SetStartDate(2016, 1, 1);
AddEquity("SPY", Resolution.Daily);
}
public override void OnData(Slice data)
{
if (!Portfolio.HoldStock)
{
_initialQuantity = 0;
SetHoldings("SPY", 1);
Log("Buy SPY on " + Time);
}
else
{
var quantity = (int)Math.Ceiling(_initialQuantity / _frequency);
Order("SPY", -Math.Min(quantity, Portfolio["SPY"].Quantity));
}
}
public override void OnOrderEvent(OrderEvent orderEvent)
{
if (orderEvent.Status == OrderStatus.Filled)
{
var quantity = orderEvent.FillQuantity;
_initialQuantity = Math.Max(_initialQuantity, quantity);
}
}
}
}