示例#1
0
    def __init__(self, symbol, strategy, buyingRatio):
        ''' constructor '''

        self.__symbol = symbol
        self.__strategy = strategy
        self.__startDate = strategy.startDate
        self.__buyingRatio = buyingRatio

        # order id
        self.__stopOrderId = None
        self.__stopOrder = None
        self.__buyOrder = None

        self.__smaShort = Sma(10)
        self.__smaMid = Sma(60)
        self.__smaLong = Sma(200)
        self.__smaVolumeShort = Sma(10)
        self.__smaVolumeMid = Sma(60)
        self.__movingLowShort = MovingLow(10)
        self.__movingLowWeek = MovingLow(3)

        #state of previous day
        self.__previousTick = None
        self.__previousSmaShort = None
        self.__previousMovingLowShort = None
        self.__previousMovingLowWeek = None
        self.__previousSmaMid = None
        self.__previousSmaLong = None
        self.__previousSmaVolumeShort = None
        self.__previousSmaVolumeMid = None
示例#2
0
    def __init__(self, configDict):
        ''' constructor '''
        super(SMAStrategy, self).__init__("smaStrategy")
        self.configDict = configDict

        self.symbols = None

        # order id
        self.__stopOrderId = None
        self.__stopOrder = None
        self.__buyOrder = None

        self.__smaShort = Sma(10)
        self.__smaMid = Sma(60)
        self.__smaLong = Sma(300)

        #state of privious day
        self.__previousTick = None
        self.__previousSmaShort = None
        self.__previousSmaMid = None
        self.__previousSmaLong = None
 def testSma(self):
     sma = Sma(period=3)
     expectedAvgs = [1, 1.5, 2, 3, 4]
     for index, number in enumerate(range(1, 6)):
         self.assertEqual(expectedAvgs[index], sma(number))