Exemplo n.º 1
0
	def _calc_historical_200_day_sma(self,symbol):
		retArray = [];
		prArray = [];
		today = date.today()
		enddate = today.strftime("%Y%m%d")
		today_ordinal = date.toordinal(today)
		start_ordinal = today_ordinal - 380;
		startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
		#print startdate 
		#print enddate 
		retArray.append(symbol)
		prArray.append(symbol)
		xx = yahoostock.get_historical_prices(symbol,startdate,enddate)
		#print xx
		#print xx[1]

		for i in range (1,241):
		    #print "%d" % (i)
		    #print xx[i]
	    	    x2 = xx[i];
	    	    prArray.append(x2[1])
	
		for i in range (1,self.numSma+1):
	    	    sma = 0.0
	    	    for mm in range (i,i+200):
			sma += float(prArray[mm]);
	    	    sma = sma / 200.0
	    	    retArray.append(sma)

		return [retArray, prArray]
Exemplo n.º 2
0
def _fetch_historical_200_day_ema(symbol):
    retArray = []
    retArray.append(symbol)
    today = date.today()
    enddate = today.strftime("%Y%m%d")
    today_ordinal = date.toordinal(today)
    start_ordinal = today_ordinal - 60
    startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
    #print startdate
    #print enddate
    ema = float(_fetch_200_day_sma(symbol))
    retArray.append(ema)
    xx = yahoostock.get_historical_prices(symbol, startdate, enddate)
    mult = 0.004975
    one_minus_mult = 1 - float(mult)

    for i in range(1, 30):
        x2 = xx[i]
        price = float(x2[1])
        print ema, price, mult, one_minus_mult
        newema = (ema - price * mult) / one_minus_mult
        retArray.append(newema)
        ema = newema

    return retArray
Exemplo n.º 3
0
def _calc_historical_200_day_sma(symbol):
    retArray = []
    priceArray = []
    today = date.today()
    enddate = today.strftime("%Y%m%d")
    today_ordinal = date.toordinal(today)
    start_ordinal = today_ordinal - 350
    startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
    #print startdate
    #print enddate
    retArray.append(symbol)
    priceArray.append(symbol)
    xx = yahoostock.get_historical_prices(symbol, startdate, enddate)
    for i in range(1, 241):
        x2 = xx[i]
        priceArray.append(x2[1])

    for i in range(1, 30):
        sma = 0.0
        for mm in (i, i + 200):
            sma += float(priceArray[i])
        sma = sma / 200
        retArray.append(sma)

    return [retArray, priceArray]
Exemplo n.º 4
0
def _fetch_historical_200_day_ema(symbol):
	retArray = [];
	retArray.append(symbol)
	today = date.today()
	enddate = today.strftime("%Y%m%d")
	today_ordinal = date.toordinal(today)
	start_ordinal = today_ordinal - 60;
	startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
	#print startdate 
	#print enddate 
	ema = float(_fetch_200_day_sma(symbol));
	retArray.append(ema)
	xx = yahoostock.get_historical_prices(symbol,startdate,enddate)
	mult = 0.004975
	one_minus_mult = 1 - float(mult);

	for i in range (1,30):
	    x2 = xx[i];
	    price = float (x2[1]);
	    print ema,price,mult,one_minus_mult
	    newema = (ema - price*mult)/one_minus_mult;
	    retArray.append(newema)
	    ema = newema

	return retArray
Exemplo n.º 5
0
    def _calc_historical_200_day_sma(self,symbol):
        retArray = [];
        prArray = [];
        today = date.today()
        enddate = today.strftime("%Y%m%d")
        today_ordinal = date.toordinal(today)
        start_ordinal = today_ordinal - 380;
        startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
        #print startdate 
        #print enddate 
        retArray.append(symbol)
        prArray.append(symbol)
        xx = yahoostock.get_historical_prices(symbol,startdate,enddate)

        for i in range (1,241):
            x2 = xx[i];
            prArray.append(x2[4])
    
        for i in range (1,self.numSma+1):
            sma = 0.0
            for mm in range (i,i+200):
                sma += float(prArray[mm]);
            sma = sma / 200.0
            retArray.append(sma)

        return [retArray, prArray]
Exemplo n.º 6
0
def _fetch_historical_data(symbol,days):
	today = date.today()
	enddate = today.strftime("%Y%m%d")
	today_ordinal = date.toordinal(today)
	start_ordinal = today_ordinal - days;
	startdate = (date.fromordinal(start_ordinal)).strftime("%Y%m%d")
	retArray = yahoostock.get_historical_prices(symbol,startdate,enddate)
	return retArray