Overall Statistics |
Total Trades 1 Average Win 0% Average Loss 0% Compounding Annual Return 263.209% Drawdown 2.200% Expectancy 0 Net Profit 1.663% Sharpe Ratio 4.41 Loss Rate 0% Win Rate 0% Profit-Loss Ratio 0 Alpha 0.007 Beta 76.134 Annual Standard Deviation 0.192 Annual Variance 0.037 Information Ratio 4.354 Tracking Error 0.192 Treynor Ratio 0.011 Total Fees $3.29 |
import numpy as np from Signal import Signal from html import escape # python 3.x import sys ### <summary> ### Basic template algorithm simply initializes the date range and cash. This is a skeleton ### framework you can use for designing an algorithm. ### </summary> class BasicTemplateAlgorithm(QCAlgorithm): '''Basic template algorithm simply initializes the date range and cash''' def Initialize(self): '''Initialise the data and resolution required, as well as the cash and start-end dates for your algorithm. All algorithms must initialized.''' self.SetStartDate(2013,10, 7) #Set Start Date self.SetEndDate(2013,10,11) #Set End Date self.SetCash(100000) #Set Strategy Cash self.signal = Signal(self) # instantiates signal class for sending webhook data to outside server # Find more symbols here: http://quantconnect.com/data self.AddEquity("SPY", Resolution.Second) self.Debug("numpy test >>> print numpy.pi: " + str(np.pi)) self.testNotify() def OnData(self, data): '''OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here. Arguments: data: Slice object keyed by symbol containing the stock data ''' if not self.Portfolio.Invested: self.SetHoldings("SPY", 1) def testNotify(self): try: msg = "Welcome to Trade Jolt. You are receiving a BULLISH trade signal." smsMessage = "smsMessage=" + msg self.signal.setSignal(smsMessage ) try: self.Log("message escaped is {}" . format(self.signal.smsMessage)) self.Log("message timestamp s {}" . format(self.signal.timestamp)) except: self.Log("unable to load message") return self.Log('launching web hook') self.Notify.Web("http://www.tradejolt.com/wordpress/qj_sms_forwarder.php",self.signal.smsMessage) self.Log("successfully sent sms to multiple addresses ") except: self.Log("failed to send ADDITIONAL order\n ") self.Log('An unknown error occurred .' + str(sys.exc_info()[0]) ) self.emailSent = False
from html import escape import calendar import time class Signal(object): def __init__(self,algo): self.timestamp = 123456 # calendar.timegm(time.gmtime()) self.algo= algo self.smsMessage = "" def setSignal(self,msg,ts=None): self.smsMessage = escape(msg) #urlencodes the text if ts is None: self.timestamp = calendar.timegm(time.gmtime()) else: self.timestamp = ts def getSignal(self): return self.smsMessage, self.timestamp ''' usage self.signal = Signal(self) # instantiates signal class for sending webhook data to outside server self.signal.setSignal("This is some url encoded ?(#(#*# format" ,123456789) self.Notify.Web("http://www.tradejolt.com/wordpress/qj_sms_forwarder.php",self.signal) '''