예제 #1
0
파일: WindAlert.py 프로젝트: yuangs/PyWind
def vpup():
    '提取持仓与价格变动超过一定幅度的期货合作信息'
    codes = pw.getCodes()
    dic = {}
    for code in codes:
        data = w.wsd(code, "close,pct_chg,oi,oi_chg", "ED-1TD").Data
        if isinstance((data[1][-1]), float):
            price = data[0][-1]
            price_chg = data[1][-1]
            oi = data[2][-1]
            oi_chg = data[3][-1]
        else:
            price = data[0][-2]
            price_chg = data[1][-2]
            oi = data[2][-2]
            oi_chg = data[3][-2]
        if oi != 0:
            oichg = oi_chg / oi
        else:
            oichg = 0
        if abs(oichg) > 0.05 and abs(price_chg) > 1.5:
            dic[code] = ' '.join(['Oichg:%.2f%%' % (100 * oichg), 'Oi:%.0f' % oi,
                                  'Pricechg:%.2f%%' % price_chg, 'Price:%.0f' % price])
        else:
            pass
    return dic
예제 #2
0
파일: WindAlert.py 프로젝트: yuangs/PyWind
def alert(chg=3.1):
    '定义警示函数,扫描所有品种的涨幅幅,若超过某个限定的阈值,则发送邮件提醒自己注意!'
    codes = pw.getActivecodes()
    dic = {}
    for code in codes:
        data = w.wsd(code, "close,pct_chg,oi,oi_chg", "ED-0TD").Data
        price = data[0][0]
        price_chg = data[1][0]
        if price:
            if price_chg > chg:
                dic[code] = [price, price_chg]
            else:
                pass
        else:
            print('没有有效的返回数据!')
    return dic
예제 #3
0
파일: WindAlert.py 프로젝트: yuangs/PyWind
             'FU.SHF': '50',
             'BU.SHF': '10',
             'RU.SHF': '10',
             'ZC.CZC': '100',
             'AU.SHF': '1000',
             'V.DCE': '5',
             'NI.SHF': '1',
             'CF.CZC': '5',
             'C.DCE': '10',
             'M.DCE': '10',
             'WH.CZC': '20'}

CODES = list(TRADEUNIT.keys())


codes = pw.getCodes()
# print(codes)


def totalAmount(codes, baseDate='20160706', backwardDays=0):
    tradeTotal = 0
    baseDate = baseDate
    backDays = backwardDays
    backwardDays = 'ED-' + str(backwardDays) + "TD"
    for code in codes:
        data = w.wsd(code, "open,high,low,close,volume,oi,pct_chg", backwardDays,
                     baseDate)
        dt = data.Data
        for i in range(backDays + 1):
            date = data.Times[i]
            o = dt[0][i]