Ejemplo n.º 1
0
def get_dfcfw_fund_SHSZ(url=ct.DFCFW_ZS_SHSZ):
    data = cct.get_url_data_R(url)
    # vollist=re.findall('{data:(\d+)',code)
    vol_l=re.findall('\"([\d\D]+?)\"',data)
    dd={}
    # print vol_l
    # print len(vol_l)
    if len(vol_l)==2:
        # for x in range(len(vol_l):
        data=vol_l[0].split(',')
        data2=vol_l[1].split(',')
        if len(data[3]) >2:
            dd['svol']=round(float(data[3])/100000000,1)
            dd['zvol']=round(float(data2[3])/100000000,1)
        else:
            dd['svol']=data[3]
            dd['zvol']=data2[3]
            # print data[3],data2[3]
        dd['scent']=data[5]
        dd['sup']=data[6].split('|')[0]
        dd['zcent']=data2[5]
        dd['zup']=data2[7].split('|')[0]
        df=get_zs_VolRatio()
        if len(df['amount'])>0:
            radio_t = cct.get_work_time_ratio()
            # print radio_t
            # print df.loc['999999','amount']
            # print type(dd['svol'])
            log.debug("type:%s radio_t:%s"%(type(dd['svol']),radio_t))
            if isinstance(dd['svol'],str) and dd['svol'].find('-')==0:
                log.info("svol:%s"%dd['svol'])
            else:
                dd['svol']="%s->%s"%((dd['svol'],round(dd['svol']/(df.loc['999999','amount']/10000000)/radio_t,1)))
                dd['zvol']="%s->%s"%((dd['zvol'],round(dd['zvol']/(df.loc['399001','amount']/10000000)/radio_t,1)))
        # dd['zzb']=data[1]
        # dd['sjlr']=data[2]
        # dd['sjzb']=data[3]
        # dd['time']=vol_l[1]

    else:
        log.info("Fund_f NO Url:%s"%url)
    return dd
    block_path = tdd.get_tdx_dir_blocknew() + '062.blk'
    status_change = False

    # all_diffpath = tdd.get_tdx_dir_blocknew() + '062.blk'
    while 1:
        try:
            # df = sina_data.Sina().all
            df = rl.get_sina_Market_json('all')
            top_now = rl.get_market_price_sina_dd_realTime(df, vol, type)
            # print top_now.loc['300208','name']
            # top_now.to_hdf("testhdf5", 'marketDD', format='table', complevel=9)
            df_count = len(df)
            now_count = len(top_now)
            del df
            gc.collect()
            radio_t = cct.get_work_time_ratio()
            time_Rt = time.time()
            # top_now = top_now[top_now.buy > 0]
            time_d = time.time()
            if time_d - time_s > delay_time:
                status_change = True
                time_s = time.time()
                top_all = pd.DataFrame()
            else:
                status_change = False
            # print ("Buy>0:%s" % len(top_now[top_now['buy'] > 0])),
            if len(top_now) > 10 or cct.get_work_time():
                # if len(top_now) > 10 and len(top_now[:20][top_now[:20]['buy'] > 0]) > 3:
                # if len(top_now) > 10 and not top_now[:1].buy.values == 0:
                #     top_now=top_now[top_now['percent']>=0]
                if len(top_all) == 0:
Ejemplo n.º 3
0
            # df = sina_data.Sina().all
            # top_now = tdd.getSinaAlldf(market='cx', vol=ct.json_countVol, type=ct.json_countType)
            # top_now = tdd.getSinaAlldf(market='次新股',filename='cxg', vol=ct.json_countVol, type=ct.json_countType)
            time_Rt = time.time()
            top_now = tdd.getSinaAlldf(market='雄安特区',
                                       filename='xatq',
                                       vol=ct.json_countVol,
                                       type=ct.json_countType)
            # top_now = tdd.getSinaAlldf(market=u'新股与次新股',filename='cxg', vol=ct.json_countVol, type=ct.json_countType)

            # top_now = tdd.getSinaAlldf(market='混改', filename='mnbk',vol=ct.json_countVol, type=ct.json_countType)

            # top_dif = top_now
            # top_now.to_hdf("testhdf5", 'marketDD', format='table', complevel=9)
            now_count = len(top_now)
            radio_t = cct.get_work_time_ratio()
            # top_now = top_now[top_now.buy > 0]
            time_d = time.time()
            if time_d - time_s > delay_time:
                status_change = True
                time_s = time.time()
                top_all = pd.DataFrame()
            else:
                status_change = False
            # print ("Buy>0:%s" % len(top_now[top_now['buy'] > 0])),
            if len(top_now) > 10 or cct.get_work_time():
                time_Rt = time.time()
                if len(top_all) == 0 and len(lastpTDX_DF) == 0:
                    cct.get_terminal_Position(position=sys.argv[0])

                    time_Rt = time.time()
Ejemplo n.º 4
0
def get_dfcfw_fund_SHSZ(url=ct.DFCFW_ZS_SHSZ):
#    sina = Sina()
    dd = Sina().get_stock_code_data('999999,399001',index=True)
#    sh =  dd[dd.index == '000001']
    sh =  dd[dd.index == '999999']
    if len(sh) >0 and not sh.name.values[0] == '上证指数':
        log.error('sh data is error')
    sz = dd[dd.index == '399001']
    if len(sh) == 0 or len(sz) == 0:
        data = cct.get_url_data_R(url,timeout=15)
        log.info("url:%s"%(url))
        # vollist=re.findall('{data:(\d+)',code)
        vol_l = re.findall('\"([\d\D]+?)\"', data)
        dd = {}
        # print vol_l
        # print len(vol_l)
        if len(vol_l) == 2:
            # for x in range(len(vol_l):
            data = vol_l[0].split(',')
            data2 = vol_l[1].split(',')
            # print data[3],data2[3],len(data[3]),len(data2[3])
            if len(data[3]) > 2 and len(data2[3]) > 2 :
                dd['svol'] = round(float(data[3]) / 100000000, 1)
                dd['zvol'] = round(float(data2[3]) / 100000000, 1)
            else:
                dd['svol'] = data[3]
                dd['zvol'] = data2[3]
                # print data[3],data2[3]
            dd['scent'] = data[5]
            dd['sup'] = data[6].split('|')[0]
            dd['zcent'] = data2[5]
            dd['zup'] = data2[7].split('|')[0]
            df = get_zs_VolRatio()
            if len(df['amount']) > 0:
                radio_t = cct.get_work_time_ratio()
                # print radio_t
                # print df.loc['999999','amount']
                # print type(dd['svol'])
                log.debug("type:%s radio_t:%s" % (type(dd['svol']), radio_t))
                if isinstance(dd['svol'], str) and dd['svol'].find('-') == 0:
                    log.info("svol:%s" % dd['svol'])
                else:
                    svol_r = round(
                        dd['svol'] / (df.loc['999999', 'amount'] / 10000000) / radio_t, 1)
                    svol_v = round(
                        svol_r * (df.loc['999999', 'amount'] / 10000000), 1)
                    zvol_r = round(
                        dd['zvol'] / (df.loc['399001', 'amount'] / 10000000) / radio_t, 1)
                    zvol_v = round(
                        svol_r * (df.loc['399001', 'amount'] / 10000000), 1)
                    dd['svol'] = "%s-%s-%s" % ((dd['svol'], svol_v, svol_r))
                    dd['zvol'] = "%s-%s-%s" % ((dd['zvol'], zvol_v, zvol_r))
            # dd['zzb']=data[1]
            # dd['sjlr']=data[2]
            # dd['sjzb']=data[3]
            # dd['time']=vol_l[1]

        else:
            log.info("Fund_f NO Url:%s" % url)
    else:
        dd = {}
        # print vol_l
        # print len(vol_l)
        #var C1Cache={quotation:["0000011,上证指数,3113.18,121762623488,4.41,0.14%,463|197|656|143,536|280|1187|217","3990012,
        #深证成指,9816.71,145863270400,-10.08,-0.10%,463|197|656|143,536|280|1187|217"]}
        if len(sh) == 1 and len(sz) == 1:
            dd['svol'] = round(float(sh.turnover) / 100000000, 1)
            dd['zvol'] = round(float(sz.turnover) / 100000000, 1)
                # print data[3],data2[3]
            dd['scent'] = str(round((sh.close[0] - sh.llastp[0]) / sh.llastp[0] *100,2))+'%'
            dd['sup'] = round((sh.close[0] - sh.llastp[0]),2)
            dd['zcent'] = str(round((sz.close[0] - sz.llastp[0]) / sz.llastp[0] *100,2))+ '%'
            dd['zup'] = round((sz.close[0] - sz.llastp[0]),2)
            df = get_zs_VolRatio()
            if len(df['amount']) > 0:
                radio_t = cct.get_work_time_ratio()
                # print radio_t
                # print df.loc['999999','amount']
                # print type(dd['svol'])
                svol_r = round(
                    dd['svol'] / (df.loc['999999', 'amount'] / 10000000) / radio_t, 1)
                svol_v = round(
                    svol_r * (df.loc['999999', 'amount'] / 10000000), 1)
                zvol_r = round(
                    dd['zvol'] / (df.loc['399001', 'amount'] / 10000000) / radio_t, 1)
                zvol_v = round(
                    svol_r * (df.loc['399001', 'amount'] / 10000000), 1)
                dd['svol'] = "%s-%s-%s" % ((dd['svol'], svol_v, svol_r))
                dd['zvol'] = "%s-%s-%s" % ((dd['zvol'], zvol_v, zvol_r))
    return dd