| Overall Statistics |
|
Total Trades 10377 Average Win 0.01% Average Loss -0.01% Compounding Annual Return -31.718% Drawdown 12.400% Expectancy -0.219 Net Profit -12.034% Sharpe Ratio -9.136 Loss Rate 60% Win Rate 40% Profit-Loss Ratio 0.94 Alpha -0.603 Beta 18.828 Annual Standard Deviation 0.033 Annual Variance 0.001 Information Ratio -9.632 Tracking Error 0.033 Treynor Ratio -0.016 Total Fees $0.00 |
import io, requests
import numpy as np
import pandas as pd
from datetime import timedelta
trade_assets = ['EURAUD', 'EURNZD', 'GBPAUD', 'GBPNZD', 'AUDUSD', 'NZDUSD']
leverage_ratio = 1.0
class BasicTemplateAlgorithm(QCAlgorithm):
def Initialize(self):
self.SetStartDate(2019,1,1) #Set Start Date
self.SetEndDate(2019,5,3) #Set End Date
self.SetCash(100000) #Set Strategy Cash
self.SetBrokerageModel(BrokerageName.OandaBrokerage)
for asset in trade_assets: self.AddForex(asset, Resolution.Hour, Market.Oanda, True, 1.0)
self.History(512, Resolution.Hour)
self.SetBenchmark("EURUSD")
def OnData(self, data):
portfolio_weights = np.random.rand(len(trade_assets))
portfolio_weights /= np.sum(np.abs(portfolio_weights))
portfolio_weights *= leverage_ratio
for i, asset in enumerate(trade_assets):
self.SetHoldings(asset, portfolio_weights[i])