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:
# 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()
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