| Overall Statistics |
|
Total Trades 1 Average Win 0% Average Loss 0% Compounding Annual Return 0% Drawdown 0% Expectancy 0 Net Profit 0% Sharpe 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 0 Tracking Error 0 Treynor Ratio 0 Total Fees $1.85 Estimated Strategy Capacity $0 Lowest Capacity Asset GC W6S8T2U7M6CD |
from AlgorithmImports import *
class CustomSlippageModel:
def GetSlippageApproximation(self, asset, order):
return 1
class BasicTemplateFuturesAlgorithm(QCAlgorithm):
def Initialize(self):
self.SetStartDate(2013, 10, 8)
self.SetEndDate(2013, 10, 10)
self.SetCash(1000000)
#self.SetSecurityInitializer(self.CustomSecurityInitializer)
futureGold = self.AddFuture(Futures.Metals.Gold)
futureGold.SetFilter(0, 182)
def CustomSecurityInitializer(self, security):
seeder = FuncSecuritySeeder(self.GetLastKnownPrices)
seeder.SeedSecurity(security)
security.SetSlippageModel(CustomSlippageModel())
def OnData(self,slice):
if not self.Portfolio.Invested:
for chain in slice.FutureChains:
# Select a contract
contracts = list(filter(lambda x: x.Expiry > self.Time + timedelta(90), chain.Value))
if len(contracts) == 0: continue
contract = sorted(contracts, key = lambda x: x.Expiry, reverse=True)[0]
# Buy the contract
self.MarketOrder(contract.Symbol , 1)
else:
self.Quit()