| Overall Statistics |
|
Total Trades 0 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 -1.412 Tracking Error 0.146 Treynor Ratio 0 Total Fees $0.00 |
from QuantConnect.Indicators.CandlestickPatterns import Piercing, Doji, Harami
class MultidimensionalVerticalCoreWave(QCAlgorithm):
def Initialize(self):
self.SetStartDate(2021, 1, 1) # Set Start Date
self.SetCash(100000) # Set Strategy Cash
self.symbol = "EURUSD"
self.resol = Resolution.Minute
self.fx = self.AddForex(self.symbol, self.resol, Market.Oanda)
self.indicators = [Piercing(self.symbol), Doji(self.symbol), Harami(self.symbol)]
# Setup consolidator to update indicator
consolidator = QuoteBarConsolidator(1)
consolidator.DataConsolidated += self.consolidation_handler
self.SubscriptionManager.AddConsolidator(self.symbol, consolidator)
# set warmup period
self.SetWarmUp(20)
def consolidation_handler(self, sender, consolidated):
for indicator in self.indicators:
indicator.Update(consolidated)
def OnData(self, data):
if self.IsWarmingUp:
return
piercing = self.indicators[0].Current.Value
doji = self.indicators[1].Current.Value
harami = self.indicators[2].Current.Value
self.Debug(harami)
if not self.Portfolio[self.symbol].Invested:
if harami == 1:
self.MarketOrder(self.symbol, 50)
if self.Portfolio[self.symbol].Invested:
if harami == -1:
self.MarketOrder(self.symbol, -50)