Пример #1
0
def send_report(today):
    #dates = da.stockdaily_cud.load_trade_dates()
    #today = dates[0].trade_date    
    stock_nos = da.stockdaily_cud.load_for_buy(today)
    l = []
    for row in stock_nos:
        code = comm.get_market_codes(row.stock_no)
        if not code['pinyin'] : continue
        l.append('<a href="http://stockhtm.finance.qq.com/sstock/ggcx/%s.shtml"><img src="http://image.sinajs.cn/newchart/daily/n/%s%s.gif" /></a>' % (row.stock_no,code['pinyin'],row.stock_no) )
    #print "".join(l)
    subject='%s trend_3=321 and range_3>5 ORDER BY range_3 desc ' % ( datetime.datetime.now().strftime('%Y-%m-%d') )
    util.emailsmtp.sendmail(subject,"".join(l),['*****@*****.**']) 
Пример #2
0
    def POST(self):
    	i = web.input(sql="")
    	rows = list(dbr.query(i.sql))

    	l = []
    	for r in rows:
    		code = comm.get_market_codes(r.stock_no)
        	if not code['pinyin'] : continue
        	l.append(web.storage(stock_no=r.stock_no,pinyin2=code['pinyin']) )    		 

    	r = web.storage(stocks=l,query=i.sql,count = len(l)) 
     	return render.index(r)
Пример #3
0
    def POST(self):
        i = web.input(sql="")
        rows = list(dbr.query(i.sql))

        l = []
        for r in rows:
            code = comm.get_market_codes(r.stock_no)
            if not code['pinyin']: continue
            l.append(web.storage(stock_no=r.stock_no, pinyin2=code['pinyin']))

        r = web.storage(stocks=l, query=i.sql, count=len(l))
        return render.index(r)
Пример #4
0
def send_report(today):
    #dates = da.stockdaily_cud.load_trade_dates()
    #today = dates[0].trade_date
    stock_nos = da.stockdaily_cud.load_for_buy(today)
    l = []
    for row in stock_nos:
        code = comm.get_market_codes(row.stock_no)
        if not code['pinyin']: continue
        l.append(
            '<a href="http://stockhtm.finance.qq.com/sstock/ggcx/%s.shtml"><img src="http://image.sinajs.cn/newchart/daily/n/%s%s.gif" /></a>'
            % (row.stock_no, code['pinyin'], row.stock_no))
    #print "".join(l)
    subject = '%s trend_3=321 and range_3>5 ORDER BY range_3 desc ' % (
        datetime.datetime.now().strftime('%Y-%m-%d'))
    util.emailsmtp.sendmail(subject, "".join(l), ['*****@*****.**'])
Пример #5
0
def parse_data_and_import_to_db(lfile,i):
    today = datetime.datetime.now().strftime('%Y-%m-%d')
    pkids = da.dailyrecords.load_pkids(today)

    with open(lfile,'rb') as f:
        lines = f.readlines()
        f.close()

    rows=[]
    for a in lines:
        fields = a.split(',')
        if(len(fields)<30):continue

        if fields[30] != today:
            break

        stockno = regex.findall(a)
        if not stockno: break

        #if exist,update,
        raise_drop = Decimal(fields[3]) - Decimal(fields[2])
        raise_drop_rate = raise_drop / Decimal(fields[1]) * 100 if Decimal(fields[1]) != 0 else 0

        #
        stock_name = fields[0].split('"')[1].decode('gbk').encode("utf-8")
        #da.stockbaseinfos.update(stockno[0],stock_name,fields[1],fields[3],fields[4],fields[5],int(fields[8])/100,fields[9],fields[30])
        stock_market_no = comm.get_market_codes(stockno[0])['plate']
        if pkids and stockno[0] in pkids.keys():
            da.dailyrecords.update(pkids[stockno[0]],open_price=fields[1],high_price=fields[4],
            low_price=fields[5],close_price=fields[3],volume=int(fields[8])/100,amount=fields[9],
            adj_close=fields[2],
            raise_drop = raise_drop,
            raise_drop_rate = raise_drop_rate ,
            stock_market_no = stock_market_no,
            last_update=datetime.datetime.now())
            continue

        #else insert
        rows.append({'stock_no':stockno[0],'date':fields[30],'open_price':fields[1],'high_price':fields[4],
            'low_price':fields[5],'close_price':fields[3],'volume':int(fields[8])/100,'amount': fields[9] ,
            'adj_close':fields[2],
            'raise_drop':raise_drop,
            'raise_drop_rate':raise_drop_rate,
            'stock_market_no' : stock_market_no,
            'create_date':datetime.datetime.now()})

    ##insert into
    da.stockbaseinfos.import_daily_records('stock_daily_records',rows)
Пример #6
0
def parse_data_and_import_to_db(lfile, i):
    today = datetime.datetime.now().strftime('%Y-%m-%d')
    pkids = da.dailyrecords.load_pkids(today)

    with open(lfile, 'rb') as f:
        lines = f.readlines()
        f.close()

    rows = []
    for a in lines:
        fields = a.split(',')
        if (len(fields) < 30): continue

        if fields[30] != today:
            break

        stockno = regex.findall(a)
        if not stockno: break

        #if exist,update,
        raise_drop = Decimal(fields[3]) - Decimal(fields[2])
        raise_drop_rate = raise_drop / Decimal(fields[1]) * 100 if Decimal(
            fields[1]) != 0 else 0

        #
        stock_name = fields[0].split('"')[1].decode('gbk').encode("utf-8")
        #da.stockbaseinfos.update(stockno[0],stock_name,fields[1],fields[3],fields[4],fields[5],int(fields[8])/100,fields[9],fields[30])
        stock_market_no = comm.get_market_codes(stockno[0])['plate']
        if pkids and stockno[0] in pkids.keys():
            da.dailyrecords.update(pkids[stockno[0]],
                                   open_price=fields[1],
                                   high_price=fields[4],
                                   low_price=fields[5],
                                   close_price=fields[3],
                                   volume=int(fields[8]) / 100,
                                   amount=fields[9],
                                   adj_close=fields[2],
                                   raise_drop=raise_drop,
                                   raise_drop_rate=raise_drop_rate,
                                   stock_market_no=stock_market_no,
                                   last_update=datetime.datetime.now())
            continue

        #else insert
        rows.append({
            'stock_no': stockno[0],
            'date': fields[30],
            'open_price': fields[1],
            'high_price': fields[4],
            'low_price': fields[5],
            'close_price': fields[3],
            'volume': int(fields[8]) / 100,
            'amount': fields[9],
            'adj_close': fields[2],
            'raise_drop': raise_drop,
            'raise_drop_rate': raise_drop_rate,
            'stock_market_no': stock_market_no,
            'create_date': datetime.datetime.now()
        })

    ##insert into
    da.stockbaseinfos.import_daily_records('stock_daily_records', rows)