Example #1
0
def calcEMA(stock_code, date, period):
    if ITERATOR_COUNT >= MAX_ITERATOR:
        EXPMA = MA.calcMA(stock_code, date, period)
        # print "MIN Dateļ¼š " +date+ " MA:"+ str(EXPMA)
        return EXPMA
    else:
        global ITERATOR_COUNT
        ITERATOR_COUNT = ITERATOR_COUNT + 1

        close_today = bd.getBasicData("CLOSE_TODAY", stock_code, date)
        pday = du.convertDateToString(bd.getStockDate(stock_code, date, 1), "%Y-%m-%d")
        EXPMA_pday = calcEMA(stock_code, pday, period)
        EXPMA = 2 * (close_today - EXPMA_pday) / (period + 1) + EXPMA_pday
        # print date + ": EXPMA: "+str(EXPMA_PDAY)+" CLOSE: " + str(CLOSE_TODAY) + " EXPMA = " +str(EXPMA)
        return round(EXPMA, 3)
Example #2
0
def calcBBI(stock_code, date, period1, period2, period3, period4):
    MA1 = MA.calcMA(stock_code, date, period1)
    MA2 = MA.calcMA(stock_code, date, period2)
    MA3 = MA.calcMA(stock_code, date, period3)
    MA4 = MA.calcMA(stock_code, date, period4)
    return round((MA1 + MA2 + MA3 + MA4) / 4, 3)
Example #3
0
def calcDMA(stock_code, date, period1, period2):
    MA1 = MA.calcMA(stock_code, date, period1)
    MA2 = MA.calcMA(stock_code, date, period2)
    DMA = MA1 - MA2
    return round(DMA, 3)