股票实时数据接口
easyquotation使用手册

easyquotation使用手册一、介绍easyquotationeasyquotation是一个基于Python的股票实时行情获取库,可以方便地从股票行情API获取实时行情数据。
本文将从easyquotation的安装、使用以及常见问题解决三个方面,为读者提供一份easyquotation的使用手册。
二、安装easyquotation安装easyquotation非常简单,只需按照以下步骤进行操作即可:1. 打开终端或命令行窗口,输入以下命令安装easyquotation所依赖的第三方库:```pip install -r requirements.txt```2. 下载easyquotation的源代码包,并解压到任意目录。
3. 在解压后的目录中,找到setup.py文件,然后在终端或命令行窗口中执行以下命令进行安装:```python setup.py install```三、使用easyquotationeasyquotation提供了一系列简洁的接口,以便用户方便地获取实时股票行情数据。
1. 导入easyquotation库:```pythonfrom easyquotation import use```2. 创建一个quotation对象:```pythonquotation = use('sina')```3. 获取指定股票的实时行情数据:```pythonquotation.stocks(['000001', '600000'])```4. 获取所有股票的实时行情数据:```pythonquotation.all```5. 获取指定股票的实时买卖盘数据:```pythonquotation.real(['000001', '600000'])```四、常见问题解决在使用easyquotation时,可能会遇到一些问题。
股票助手接口文档

目录一、香港股市列表 (2)二、美国股市列表 (3)三、深圳股市列表 (5)四、沪股列表 (6)五、沪深股市 (8)六、香港股市 (11)七、美国股市 (13)八、百度天气 ......................................................................................... 错误!未定义书签。
一、香港股市列表1.接口地址::8080/finance/stock/hkall2.支持格式:json3.请求方式:get/post4.请求示例::8080/finance/stock/hkall?key=您申请的KEY&page=1 请求参数说明返回参数说明JSON返回示例:{"error_code" : 0,"reason" : "SUCCESSED!","result" : {"totalCount" : "317","page" : "1","num" : "20","data" : [ {"symbol" : "00001","name" : "长和","engname" : "CHEUNG KONG","tradetype" : "EQTY","lasttrade" : "82.050","prevclose" : "83.350","open" : "83.000","high" : "83.000","low" : "81.850","volume" : "3919972","currentvolume" : "12000","amount" : "322563957","ticktime" : "2016-07-08 11:59:55","buy" : "82.050","sell" : "82.150","high_52week" : "116.800","low_52week" : "80.600","eps" : "30.720","dividend" : "2.550","stocks_sum" : "3859678500","pricechange" : "-1.300","changepercent" : "-1.5596881"},...]}}二、美国股市列表1.接口地址::8080/finance/stock/usaall2.支持格式:json3.请求方式:get/post4.请求示例::8080/finance/stock/usaall?key=您申请的KEY&page=1 请求参数说明JSON返回示例:{"error_code" : 0,"reason" : "SUCCESSED!","result" : {"totalCount" : "8965","page" : "1","num" : "20","data" : [ {"cname" : "HSBC Holdings, plc. Perpetual Sub Cap Secs", "category" : null,"symbol" : "HSEA","price" : "27.00","diff" : "0.07","chg" : "0.26","preclose" : "26.93","open" : "26.87","high" : "27.07","low" : "26.87","amplitude" : "0.74%","volume" : "67734","mktcap" : "580930009842","market" : "NYSE"},...]}}三、深圳股市列表1.接口地址::8080/finance/stock/szall2.支持格式:json3.请求方式:get/post4.请求示例::8080/finance/stock/szall?key=您申请的APPKEY&page=1JSON返回示例:{"error_code": 0,"reason": "SUCCESSED!","result": {"totalCount": "1822","page": "1","num": "20","data": [{"symbol": "sz000001","name": "平安银行","trade": "8.960","pricechange": "0.020","changepercent": "0.224","buy": "8.960","sell": "8.970","settlement": "8.940","open": "8.950","high": "8.990","low": "8.910","volume": 243674,"amount": 218229439,"code": "000001","ticktime": "13:40:30"},...]}}四、沪股列表1.接口地址::8080/finance/stock/shall2.支持格式:json3.请求方式:get/post4.请求示例::8080/finance/stock/shall?key=您申请的KEY&page=1返回参数说明JSON返回示例:{"error_code": 0, "reason": "SUCCESSED!", "result": { "totalCount": "1116", "page": "1","num": "20", "data": [{ "symbol": "sh600000", "name": "浦发银行", "trade": "15.680", "pricechange": "-0.020", "changepercent": "-0.127", "buy": "15.680", "sell": "15.690", "settlement": "15.700", "open": "15.710", "high": "15.750", "low": "15.650", "volume": 89537, "amount": 140465568, "code": "600000","ticktime": "13:44:46"},...]}}五、沪深股市1.接口地址::8080/finance/stock/hs2.支持格式:json3.请求方式:get4.请求示例::8080/finance/stock/hs?gid=sh601009&key=您申请的APPKEY请求参数说明JSON返回示例:{"resultcode": "200", "reason": "SUCCESSED!", "result": [{"data": { "buyFive": "451800", "buyFivePri": "10.050", "buyFour": "211900", "buyFourPri": "10.060", "buyOne": "345301", "buyOnePri": "10.090", "buyThree": "90919", "buyThreePri": "10.070", "buyTwo": "50200", "buyTwoPri": "10.080", "competitivePri": "10.090", "date": "2016-07-15", "gid": "sh601009", "increPer": "0.50","increase": "0.050","name": "南京银行","nowPri": "10.100","reservePri": "10.100","sellFive": "231198","sellFivePri": "10.140","sellFour": "109115","sellFourPri": "10.130","sellOne": "468699","sellOnePri": "10.100","sellThree": "27216","sellThreePri": "10.120","sellTwo": "35400","sellTwoPri": "10.110","time": "14:10:14","todayMax": "10.170","todayMin": "10.030","todayStartPri": "10.040","traAmount": "157977741.000","traNumber": "156345","yestodEndPri": "10.050"},"dapandata": {"dot": "10.100","name": "南京银行","nowPic": "0.050","rate": "0.50","traAmount": "15798","traNumber": "156345"},"gopicture": {"minurl": "/newchart/min/n/sh601009.gif", "dayurl": "/newchart/daily/n/sh601009.gif", "weekurl": "/newchart/weekly/n/sh601009.gif", "monthurl": "/newchart/monthly/n/sh601009.gif"}}],"error_code": 0}六、香港股市1.接口地址::8080/finance/stock/hk2.支持格式:json3.请求方式:get4.请求示例::8080/finance/stock/hk?num=00001&key=您申请的APPKEY请求参数说明返回参数说明JSON返回示例:{"resultcode": "200","reason": "SUCCESSED!","result": [{"data": {"gid": "hk00001","ename": "CKH HOLDINGS","name": "长和","openpri": "86.950","formpri": "86.450","maxpri": "87.400","minpri": "86.100","lastestpri": "87.000","uppic": "0.550","limit": "0.636","inpic": "87.000","outpic": "87.050","traAmount": "375859081.900","traNumber": "4324747","priearn": "2.832","max52": "116.800","min52": "80.600","date": "2016/07/15","time": "14:43:35"},"gopicture": {"minurl": "/newchart/hk_stock/min/00001.gif", "dayurl": "/newchart/hk_stock/daily/00001.gif", "weekurl": "/newchart/hk_stock/weekly/00001.gif", "monthurl": "/newchart/hk_stock/monthly/00001.gif"},"hengsheng_data": {"date": "2016/07/15","formpri": "21561.059","lastestpri": "21593.779","limit": "0.150","max52": "25634.320","maxpri": "21739.209","min52": "18278.801","minpri": "21515.350","openpri": "21589.080","time": "14:43:44","traAmount": "54904135.744000","uppic": "32.720"}}],"error_code": 0}七、美国股市1.接口地址::8080/finance/stock/usa2.支持格式:json3.请求方式:get4.请求示例::8080/finance/stock/usa?gid=aapl&key=您申请的APPKEY请求参数说明返回参数说明JSON返回示例:{"resultcode": "200", "reason": "SUCCESSED!", "result": [{"data": {"gid": "aapl","name": "苹果", "lastestpri": "98.79", "openpri": "97.39", "formpri": "96.87", "maxpri": "98.99", "minpri": "97.32", "uppic": "1.92","limit": "1.98", "traAmount": "38918997", "avgTraNumber": "28355453", "markValue": "541369200000", "max52": "132.97","min52": "89.47", "EPS": "8.98", "priearn": "11.00","beta": "1.43","divident": "2.13","ROR": "2.20","capital": "5480000000","afterpic": "98.60","afterlimit": "-0.19","afteruppic": "-0.19","aftertime": "Jul 14 07:59PM EDT","ustime": "Jul 14 04:00PM EDT","chtime": "2016-07-15 08:19:31"},"gopicture": {"minurl": "/newchartv5/usstock/min/aapl.gif","min_weekpic": "/newchartv5/usstock/min_week/aapl.gif", "dayurl": "/newchartv5/usstock/daily/aapl.gif", "weekurl": "/newchartv5/usstock/weekly/aapl.gif", "monthurl": "/newchartv5/usstock/monthly/aapl.gif"}}],"error_code": 0}。
股票实时API数据接口

股票实时API数据接口http/javascript接口取数据以大秦铁路(股票代码:601006)为例,如果要获取它的最新行情,只需访问新浪的股票数据接口:这个url会返回一串文本,例如:var hq_str_sh601006="大秦铁路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91, 26.92,, 0, 4695, 26.91, 57590, 26.90, 14700, 26.89, 14300,26.88, 15100, 26.87, 3100, 26.92, 8900, 26.93, 14230, 26.94, 25150, 26.95, 15220, 26.96, 2008-01-11, 15:05:32";这个字符串由许多数据拼接在一起,不同含义的数据用逗号隔开了,按照程序员的思路,顺序号从0开始。
0:”大秦铁路”,股票名字;1:”27.55″,今日开盘价;2:”27.25″,昨日收盘价;3:”26.91″,当前价格;4:”27.55″,今日最高价;5:”26.20″,今日最低价;6:”26.91″,竞买价,即“买一”报价;7:”26.92″,竞卖价,即“卖一”报价;8:”″,成交的股票数,由于股票交易以一百股为基本单位,所以在使用时,通常把该值除以一百;9:”0″,成交金额,单位为“元”,为了一目了然,通常以“万元”为成交金额的单位,所以通常把该值除以一万;10:”4695″,“买一”申请4695股,即47手;11:”26.91″,“买一”报价;12:”57590″,“买二”13:”26.90″,“买二”14:”14700″,“买三”15:”26.89″,“买三”16:”14300″,“买四”17:”26.88″,“买四”18:”15100″,“买五”19:”26.87″,“买五”20:”3100″,“卖一”申报3100股,即31手;21:”26.92″,“卖一”报价(22, 23), (24, 25), (26,27), (28, 29)分别为“卖二”至“卖四的情况”30:”2008-01-11″,日期;31:”15:05:32″,时间;这个接口对于JavaScript程序非常方便,通常的使用方式为,静态或动态地在页面中插入:<script type="text/javascript" src="" charset="gb2312"></script><script type="text/javascript">1var elements=hq_str_sh601006.split(",");document.write("current price:"+elements[3]);</script>这段代码输出大秦铁路(股票代码:601006)的当前股价current price:14.20如果你要同时查询多个股票,那么在URL最后加上一个逗号,再加上股票代码就可以了;比如你要一次查询大秦铁路(601006)和大同煤业(601001)的行情,就这样使用URL:,sh601001但如果你要查询大盘指数,情况会有不同,比如查询上证综合指数(000001),使用如下URL:_sh000001 服务器返回的数据为:var hq_str_s_sh000001="上证指数,3094.668,-128.073,-3.97,436653,5458126";数据含义分别为:指数名称,当前点数,当前价格,涨跌率,成交量(手),成交额(万元);查询深圳成指的URL为:_sz399001对于股票的K线图,日线图等的获取可以通过请求…./…/*.gif此URL获取,其中*代表股票代码,详见如下:查看日K线图:/daily/n/sh601006.gif分时线的查询:/min/n/sh000001.gif日K线查询:/daily/n/sh000001.gif周K线查询:/weekly/n/sh000001.gif月K线查询:/monthly/n/sh000001.gif来源:大CC。
python获取股票数据接口

python获取股票数据接⼝# encoding: utf8#部分⽹站api数据有bug,这个bug问题不是⾃⾝程序的问题,⽽是第三⽅公司股票的问题__author__ = 'nooper'import refrom math import ceilimport datetimefrom httpGet import httpGetContentfrom common import decimaldef _get_content(content):"处理腾讯股票数据接⼝信息"regex = pile(r'"(.*)"')result = regex.findall(content)if result:return result[0].split('~')def getStockPosition(code, market):"""处理股票盘⼝数据分析,分析所占的百分⽐率/q=s_pksz000858v_s_pksz000858="0.196~0.258~0.221~0.325";以 ~ 分割字符串中内容,下标从0开始,依次为:0: 买盘⼤单1: 买盘⼩单2: 卖盘⼤单3: 卖盘⼩单所占有的百分⽐百分⽐率"""if code and market:url = "/q=s_pk%s%s" % (market, code)content = httpGetContent(url)if content:result_list = _get_content(content)if result_list:stock_dict = {}stock_dict["code"] = codestock_dict["market"] = marketstock_dict["buy_big_percent"] = float(result_list[0]) # 买盘⼤单所占百分⽐stock_dict["buy_small_percent"] = float(result_list[1]) # 买盘⼩单所占百分⽐stock_dict["sell_big_percent"] = float(result_list[2]) # 卖盘⼤单所占⽐重stock_dict["sell_small_percent"] = float(result_list[3]) # 买盘⼩单所占⽐重stock_dict["date"] = datetime.date.today()return stock_dict# todo 数据对不上def getStockCashFlow(code, market):"""得到股票是资⾦流⼊流出/q=ff_sz000858v_ff_sz000858="sz000858~41773.67~48096.67~-6322.99~-5.53~10200.89~14351.02~-4150.13~-3.63~114422.25~53015.90~59770.57~五粮液~20121221";以 ~ 分割字符串中内容,下标从0开始,依次为:0: 代码1: 主⼒流⼊2: 主⼒流出3: 主⼒净流⼊4: 主⼒净流⼊/资⾦流⼊流出总和5: 散户流⼊6: 散户流出7: 散户净流⼊8: 散户净流⼊/资⾦流⼊流出总和9: 资⾦流⼊流出总和1+2+5+610: 未知11: 未知12: 名字13: ⽇期"""if code and market:url = "/q=ff_%s%s" % (market, code)content = httpGetContent(url)if content:result_list = _get_content(content)if result_list:stock_dict = {}stock_dict["code"] = codestock_dict["main_outflow"] = float(result_list[2]) # 主⼒流出stock_dict["main_netflow"] = float(result_list[3]) # 主⼒净流⼊stock_dict["small_inflow"] = float(result_list[5]) # 散户流⼊stock_dict["small_outflow"] = float(result_list[6]) # 散户流出stock_dict["small_netflow"] = float(result_list[7]) # 散户净流⼊income = stock_dict["main_inflow"] + stock_dict["small_inflow"]outcome = stock_dict["main_outflow"] + stock_dict["main_outflow"]print incomeprint outcomeprint income - outcomestock_dict["unknown_1"] = float(result_list[10])stock_dict["unknwon_2"] = float(result_list[11])stock_dict["date"] = result_list[13] # ⽇期return stock_dictdef getStockCurrentDay(code, Market):'''获取股票当⽇数据腾讯APIAPI地址:/q=sh600383sh:上海sz:深圳返回当天成交数据code:股票代码market:股票市场数据返回@return dict'''if code and Market:url = '/q=%s%s' % (Market, code)headers = {'Content-type': 'application/x-javascript; charset=GBK'}result = httpGetContent(url=url, headers=headers, charset='gbk')if result:stocklist = _get_content(result)if stocklist:stockdict = {}stockdict['code'] = code # 股票代码stockdict['name'] = unicode(stocklist[1], 'utf8') # 股票名称stockdict['last_closing'] = float(stocklist[4]) # 昨⽇收盘价格stockdict['start'] = float(stocklist[5]) # 开盘价格stockdict['end'] = float(stocklist[3]) # 当前收盘价格(可以是当前价格) stockdict['high'] = float(stocklist[33]) # 最⾼价格stockdict['low'] = float(stocklist[34]) # 最低价格stockdict['buyvol'] = int(stocklist[7]) # 外盘 todo 数据对不上stockdict["sellvol"] = int(stocklist[8]) # 内盘 todo 数据对不上stockdict['range_price'] = float(stocklist[31]) # 涨跌价格stockdict['range_percent'] = float(stocklist[32]) # 涨跌⽐%stockdict['volume'] = int(stocklist[6]) # 成交量(⼿)stockdict['total_price'] = int(stocklist[37]) # 成交额(万元)stockdict['change_rate'] = decimal(stocklist[38]) # 换⼿率stockdict['pe'] = decimal(stocklist[39]) # 市盈率stockdict['swing'] = float(stocklist[43]) # 振幅stockdict['pb'] = float(stocklist[46]) # 股票市净率stockdict['date'] = stocklist[30][:8] # 时间stockdict["block"] = False if stockdict["start"] else True #股票是否停牌return stockdictdef getStockMarket(code):"""⼤盘数据接⼝信息上证:code:000001 set=zs深证:code:399001 set=zs中⼩板:code:399005 set=zs创业板: code:399006 set=zs/qp/hq?type=snapshot&code=000001&set=zs"""url = "/qp/hq?type=snapshot&code=%s&set=zs" % coderesult = httpGetContent(url=url, charset="gbk")if result:result = eval(result)stock_dict = {}stock_dict["date"] = result[0][:10] #⽇期stock_dict["name"] = unicode(result[2], 'utf8') #名称stock_dict["range_price"] = float(result[4]) #上涨价格stock_dict["start"] = float(result[9]) #开盘价格stock_dict["high"] = float(result[11]) #最⾼价格stock_dict["low"] = float(result[13]) #最低价格stock_dict["last_closing"] = float(result[7]) #昨⽇收stock_dict["end"] = float(result[3]) #收盘价格stock_dict["total_sum"] = int(result[18]) #多少万元stock_dict["volume"] = int(result[14]) #多少⼿return stock_dicttonghuashun_headers = {"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Encoding": "gzip,deflate,sdch","Accept-Language": "zh-CN,zh;q=0.8","Cache-Control": "no-cache","Connection": "keep-alive","Host": "","User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36"}# def getstockBlock():# """# 新浪股票⿊名单数据# ”需要得到单点登录信息“## 新浪股票⿊名单个股# /stock/disallowStock# """# headers = {# 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',# 'Cache-Control': "max-age=0",# 'Host': '',# 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36', # 'Cookie': "PHPSESSID=c32fbi3m3sf0he8v1rdem3t006; gxqSignId=02d9c361fe5fc1ab; WBStore=d6acd6adea5a82d3|undefined"## }# url = "/stock/disallowStock"# content = httpGetContent(url=url, headers=headers)# if content:# soup = BeautifulSoup(content)# td_list = soup.find_all(text=pile('\d+'))# return td_listdef__convert_MIN(content):content = content.split('=')[1]content_list = content.split('|')stock_dict = {}for sub in content_list:if sub:items = sub.split('~')date = items[0]price_list = items[1].split(';')price_dict = {}for a in price_list:b = a.split(',')start = float(b[0]) #开盘价high = float(b[1]) #最⾼价格low = float(b[2]) #最低价格end = float(b[3]) #结束价格volum = int(ceil(float(b[4]))) #成交量多少买⼊total_price = int(ceil(float(b[5]))) #成交额time = b[6] #时间格式是1030,11:30,1400,1500price_dict[time] = {"high": high,'low': low,"end": end,"start": start,"volumn": volum,"total_price": total_price}stock_dict[date] = price_dictreturn stock_dictdef getStock60MIN(code, market, type=''):"""不推荐向后复权得到股票60分钟数据线API接⼝数据/api.php?p=stock_min60&info=k_sz_000005&fq=qq是向前复权b事项后复权q= 空是不复权"""if market not in ('sz', 'sh'):returnurl = "/api.php?p=stock_min60&info=k_%s_%s&fq=%s" % (market, code, type) content = httpGetContent(url=url)if content:return__convert_MIN(content)def getStock30MIN(code, market, type=''):"""30分钟数据接⼝信息/api.php?p=stock_min30&info=k_sz_000005&fq="""if market not in ('sz', 'sh'):returnurl = "/api.php?p=stock_min30&info=k_%s_%s&fq=%s" % (market, code, type) content = httpGetContent(url=url)if content:return__convert_MIN(content)def getStock15MIN(code, market, type=''):"""15分钟数据接⼝/api.php?p=stock_min15&info=k_sz_000005&fq="""if market not in ('sz', 'sh'):returnurl = "/api.php?p=stock_min15&info=k_%s_%s&fq=%s" % (market, code, type) content = httpGetContent(url=url)if content:return__convert_MIN(content)def__convert_inner(stock, stock_dict={}):stock_day = stock.split(',')if all(stock_day):date = stock_day[0] #⽇期start = float(stock_day[1]) #开盘价格high = float(stock_day[2]) #最⾼价格low = float(stock_day[3]) #最低价格end = float(stock_day[4]) #收盘价格volume = int(ceil(float(stock_day[5]))) #成交量total = int(ceil(float(stock_day[6]))) #成交额stock_dict[date] = {"date": date,'start': start,'high': high,'low': low,'end': end,'volume': volume,'total': total,}return stock_dictdef__convert_day(content):stock_list = content.split('=')[1].split('|')stock_dict = {}for stock in stock_list:if stock and stock.strip():__convert_inner(stock, stock_dict)# stock_day = stock.split(',')# date = stock_day[0] #⽇期# start = stock_day[1] #开盘价格# high = stock_day[2] #最⾼价格# low = stock_day[3] #最低价格# end = stock_day[4] #收盘价格# volume = int(ceil(float(stock_day[5]))) #成交量# total = int(ceil(float(stock_day[6]))) #成交额# stock_dict[date] = {# "date": date,# 'start': start,# 'high': high,# 'low': low,# 'end': end,# 'volume': volume,# 'total': total,# }return stock_dictdef__convert_week(content):content_list = content.split(';')regex = pile('=(.*)$')stock_dict = {}for s in content_list:p = regex.findall(s)[0]stock_list = p.split('|')for week in stock_list:if week:__convert_inner(week, stock_dict)return stock_dict#todo 测试完成def getStockDayHistory(code, market, year='2013', type=''):"""/api.php?p=stock_day&info=k_sz_000005&year=2012,2013&fq=sz:深证sh:上海return dict"""url = "/api.php?p=stock_day&info=k_%s_%s&year=%s&fq=%s" % (market, code, year, type) content = httpGetContent(url=url)if content:return__convert_day(content)#todo 测试完成def getStockWeekHistory(code, market, year='2012,2013', type=''):"""x/api.php?p=stock_week&info=k_sz_000005&year=2011,2012,2013&fq=pass"""url = "/api.php?p=stock_week&info=k_%s_%s&year=%s&fq=%s" % (market, code, year, type ) content = httpGetContent(url, tonghuashun_headers)if content:return__convert_week(content)def__convertMonth(content):passdef getStockMonthHistory(code, market, type=''):"""/api.php?p=stock_month&info=k_sz_000671&fq="""url = "/api.php?p=stock_month&info=k_%s_%s&fq=%s" % (market, code, type)content = httpGetContent(url)if content:passdef main():# g = getStock60MIN('600847', 'sh')# for k in g:# print k# print g[k]# g = getStockDayHistory("600198", "sh")# print g# import config## print getStockMarket(config.SHANGHAI)print getStockCurrentDay("600383", "sh")if__name__ == "__main__":main()。
沪深、香港、美国股票数据接口

沪深、香港、美国股票数据接口在即将到来的双十二,在聚合数据平台上的股票数据接口将参与活动,首先我们将分享下股票数据接口代码文档及返回示例,提供沪深、香港、美国股市信息。
接口名称:股票数据接口接口平台:聚合数据接口地址::8080/finance/stock/hs支持格式:json请求方式:get请求示例::8080/finance/stock/hs?gid=sh601009&key=您申请的APPKEY 调用样例及调试工具:API测试工具请求参数说明:名称类型必填说明gid string 是股票编号,上海股市以sh开头,深圳股市以sz开头如:sh601009(type为0或者1时gid不是必须)key String 是APP Keytype int 否0代表上证指数,1代表深证指数返回参数说明:名称类型说明见JSON返回示例- -JSON返回示例:{"resultcode":"200", /*返回码,200:正常*/ "reason":"SUCCESSED!","result":[{"data":{"gid":"sh601009", /*股票编号*/"name":"南京银行", /*股票名称*/"todayStartPri":"8.26", /*今日开盘价*/"yestodEndPri":"8.26", /*昨日收盘价*/"nowPri":"8.37", /*当前价格*/"todayMax":"8.55", /*今日最高价*/"todayMin":"8.25", /*今日最低价*/"competitivePri":"8.37", /*竞买价*/"reservePri":"8.38", /*竞卖价*/"traNumber":"34501453", /*成交量*/"traAmount":"290889560", /*成交金额*/"buyOne":"10870", /*买一*/"buyOnePri":"8.37", /*买一报价*/"buyTwo":"177241", /*买二*/"buyTwoPri":"8.36", /*买二报价*/"buyThree":"92600", /*买三*/"buyThreePri":"8.35", /*买三报价*/"buyFour":"87200" /*买四*/"buyFourPri":"8.34", /*买四报价*/"buyFive":"113700", /*买五*/"buyFivePri":"8.42", /*买五报价*/"sellOne":"47556", /*卖一*/"sellOnePri":"8.38", /*卖一报价*/"sellTwo":"103057", /*卖二*/"sellTwoPri":"8.39", /*卖二报价*/"sellThree":"186689", /*卖三*/"sellThreePri":"8.40", /*卖三报价*/"sellFour":"49000", /*卖四*/"sellFourPri":"8.41", /*卖四报价*/"sellFive":"214535", /*卖五*/"sellFivePri":"15.21", /*卖五报价*/"date":"2012-12-11", /*日期*/"time":"15:03:06", /*时间*/},"dapandata":{"name":"南京银行", /*大盘指数名称*/"dot":"8.37" /*大盘当前点数*/"nowPic":"0.11", /*大盘当前价格*/"rate":"1.33", /*大盘涨跌率*/"traNumber":"345014", /*大盘成交量(手)*/"traAmount":"29088", /*大盘成交金额(万元)*/ },"gopicture":{"minurl":"/newchart/min/n/sh601009.gif",/*分时K线图*/ "dayurl":"/newchart/daily/n/sh601009.gif",/*日K线图*/"weekurl":"/newchart/weekly/n/sh601009.gif",/*周K线图*/"monthurl":"/newchart/monthly/n/sh601009.gif"/*月K线图*/ }}]}----------------------------------深(上)证指数示例------------------------------------------------------------------{"error_code": 0"reason": "SUCCESSED!","result": {"dealNum": "24388041799",/*成交量*/"dealPri": "340674441059.270",/*成交额*/"highPri": "10357.417",/*最高*/"lowpri": "10121.741",/*最低*/"name": "深证成指",/*名称*/"nowpri": "10270.855",/*当前价格*/"openPri": "10200.547",/*今开*/"time": "2015-09-22 14:45:25",/*时间*/"yesPri": "10176.727"/*昨收*/},}数据接口API服务也是大数据企业的重要方向,数据API是每一个开发者必备的,也是需求量最大的数据产品。
股票网络接口

关于网络接口的安装问题最近不少朋友问到网络接口的安装问题,在此统一回答,不一定都能释疑,实为一孔之见,意在抛砖引玉。
1、置顶的网络接口集成版:⑴如果使用“转换平台”,安装网络接口时只需选择分区,不能更改目录,否则转换平台不能正确切换接口信息;⑵如果使用“泰康”兄上传的“数据接口管理程序”,网络接口可以自定路径;⑶各个接口对应的股票驱动文件如下(自定路径后 \stocknet 改为自定的路径):数畅网络:\stocknet\scstock.dll银江网络:\stocknet\yjstock.dll网上通:\stocknet\stock.dll倚天金融:\stocknet\skystock.dll环球金融:\windows\system\hqstock.dll网络闪电:\stocknet\StockRcv.dll理想飞驰:\windows\system\FCstock.dll网际风:\windows\system\wjfstk.dllHelloWorld:\stocknet\HeStock.dllTW2TS:\windows\system\tw2ts.dll2、置顶的网络接口原始安装文件:⑴总体原则:先安装网络接口,后安装股卡驱动;安装一个修改、设置一个,记录修改后的股票驱动文件名;⑵如果已经安装了股卡驱动,又不想卸载重新安装,则备份并删除相关文件(以通视卡为例)。
需备份和删除的文件共三个:c:\windows\system\stock.dll、tsdrv.dll、tsdrv32.dll。
⑶各个网络接口原始安装程序安装后,多数驱动文件在 \windows\system 下,文件名一般为:stock.dll,将其改为想用、好记的文件名。
部分网络接口安装后的驱动文件名在目标目录下,不需要改名;⑷“环球金融”安装时,路径无法更改,其固定路径为:c:\qs,安装后目录不能任意更改,否则不能正常接收信息;⑸“倚天金融”安装时有分析家、飞狐交易师“全球市场”选项。
Python获取股票历史、实时数据与更新到数据库

Python获取股票历史、实时数据与更新到数据库要做量化投资,数据是基础,正所谓“巧妇难为⽆⽶之炊”在免费数据⽅⾯,各⼤⽹站的财经板块其实已提供相应的api,如新浪、雅虎、搜狐。
可以通过urlopen相应格式的⽹址获取数据⽽TuShare正是这么⼀个免费、开源的python财经数据接⼝包,已将各类数据整理为dataframe类型供我们使⽤。
主要⽤到的函数:1.实时⾏情获取tushare.get_today_all()⼀次性获取当前交易所有股票的⾏情数据(如果是节假⽇,即为上⼀交易⽇,结果显⽰速度取决于⽹速)2.历史数据获取tushare.get_hist_data(code, start, end,ktype, retry_count,pause)参数说明:code:股票代码,即6位数字代码,或者指数代码(sh=上证指数 sz=深圳成指 hs300=沪深300指数 sz50=上证50 zxb=中⼩板 cyb=创业板)start:开始⽇期,格式YYYY-MM-DDend:结束⽇期,格式YYYY-MM-DDktype:数据类型,D=⽇k线 W=周 M=⽉ 5=5分钟 15=15分钟 30=30分钟 60=60分钟,默认为Dretry_count:当⽹络异常后重试次数,默认为3pause:重试时停顿秒数,默认为0⽽如果要进⾏完备详细的回测,每次在线获取数据⽆疑效率偏低,因此还需要⼊库下⾯是数据库设计部分表1:stocks股票表,第⼀列为股票代码,第⼆列为名称,如果get_today_all()中存在的股票stocks表中没有,则插⼊之。
表2:hdata_date⽇线表,由于分钟线只能获取⼀周内的数据,我们先对⽇线进⾏研究。
字段和get_hist_data返回值基本⼀致,多了stock_code列,并将record_date列本来是dataframe的indexstock_code,record_date, //主键open,high,close,low, //开盘,最⾼,收盘,最低volume, //成交量price_change,p_change, //价差,涨幅ma5,ma10,ma20 //k⽇收盘均价v_ma5,v_ma10,v_ma20, //(k⽇volume均值)turnover //换⼿率python⼯程⽬前有3个⽂件,main.py(主程序),Stocks.py(“股票们”类)以及Hdata.py(历史数据类)main.pyimport psycopg2 #使⽤的是PostgreSQL数据库import tushare as tsfrom Stocks import*from HData import*import datetimestocks=Stocks("postgres","123456")hdata=HData("postgres","123456")# stocks.db_stocks_create()#如果还没有表则需要创建#print(stocks.db_stocks_update())#根据todayall的情况更新stocks表#hdata.db_hdata_date_create()nowdate=datetime.datetime.now().date()codestock_local=stocks.get_codestock_local()hdata.db_connect()#由于每次连接数据库都要耗时0.0⼏秒,故获取历史数据时统⼀连接for i in range(0,len(codestock_local)):nowcode=codestock_local[i][0]#print(hdata.get_all_hdata_of_stock(nowcode))print(i,nowcode,codestock_local[i][1])maxdate=hdata.db_get_maxdate_of_stock(nowcode)print(maxdate, nowdate)if(maxdate):if(maxdate>=nowdate):#maxdate⼩的时候说明还有最新的数据没放进去continuehist_data=ts.get_hist_data(nowcode, str(maxdate+datetime.timedelta(1)),str(nowdate), 'D', 3, 0.001)hdata.insert_perstock_hdatadate(nowcode, hist_data)else:#说明从未获取过这只股票的历史数据hist_data = ts.get_hist_data(nowcode, None, str(nowdate), 'D', 3, 0.001)hdata.insert_perstock_hdatadate(nowcode, hist_data)hdata.db_disconnect()Stocks.pyimport tushare as tsimport psycopg2class Stocks(object):#这个类表⽰"股票们"的整体(不是单元)def get_today_all(self):self.todayall=ts.get_today_all()def get_codestock_local(self):#从本地获取所有股票代号和名称conn = psycopg2.connect(database="wzj_quant", user=er, password=self.password, host="127.0.0.1",port="5432")cur = conn.cursor()# 创建stocks表cur.execute('''select * from stocks;''')rows =cur.fetchall()mit()conn.close()return rowspassdef__init__(self,user,password):# self.aaa = aaaself.todayall=[]er=userself.password=passworddef db_perstock_insertsql(self,stock_code,cns_name):#返回的是插⼊语句sql_temp="insert into stocks values("sql_temp+="\'"+stock_code+"\'"+","+"\'"+cns_name+"\'"sql_temp +=");"return sql_temppassdef db_stocks_update(self):# 根据gettodayall的情况插⼊原表中没的。
python获取股票数据方法

python获取股票数据方法【实用版3篇】目录(篇1)1.获取股票数据的重要性2.Python 在获取股票数据中的应用3.使用 Python 获取股票数据的几种方法4.获取股票数据的注意事项5.总结正文(篇1)获取股票数据对于投资者来说是非常重要的。
股票数据可以帮助投资者了解股票的走势、分析市场情况,从而做出更明智的投资决策。
Python 作为一门广泛应用于数据分析和处理的编程语言,其在获取股票数据方面有着丰富的库和方法。
首先,我们来介绍一下 Python 中用于获取股票数据的几种常见方法。
方法一:使用 pandas 库pandas 库是 Python 中用于数据处理和分析的重要库,它提供了许多方便的函数来获取和处理股票数据。
使用 pandas 获取股票数据的步骤如下:1.首先,需要安装 pandas 库。
在命令行中输入以下命令即可:```pip install pandas```2.然后,通过以下代码来获取股票数据:```pythonimport pandas as pd# 获取股票数据stock_data = pd.read_csv("stock_data.csv")# 查看数据print(stock_data.head())```方法二:使用 pandas-datareader 库pandas-datareader 库是 pandas 的一个扩展库,用于方便地从互联网上下载和处理金融市场数据。
使用 pandas-datareader 获取股票数据的步骤如下:1.首先,需要安装 pandas-datareader 库。
在命令行中输入以下命令即可:```pip install pandas-datareader```2.然后,通过以下代码来获取股票数据:```pythonimport pandas_datareader.data as webimport datetime# 设置时间范围start = datetime.datetime(2020, 1, 1)end = datetime.datetime(2021, 1, 1)# 获取股票数据stock_data = web.DataReader("600000.SS", "yahoo", start, end) # 查看数据print(stock_data.head())```在使用 Python 获取股票数据时,还需要注意以下几点:1.数据源的选择:选择权威可靠的数据源,以确保获取到的数据准确无误。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[36] 成交量(手)
[37] 成交额(万)
[38] 换手率
[39] 市盈率
[40]
[41] 最高
[42] 最低
[43] 振幅
[44] 流通市值
[45] 总市值
[46] 市净率
[47] 涨停价
[48] 跌停价
[49] 量比
[50]
[51] 均价
[52] 市盈率(动)
[53] 市盈率(静)
[54]
[55]
说明
对双引号内的字符串按“~”进行分割,数据项依次为:
[0] 证券所代码
[1] 股票简称
[2] 股代码
[3] 当前价格
[4] 昨收
[5] 今开
[6] 成交量(手)
[7] 外盘
[8] 内盘
[9] 买一
[10] 买一量(手)
[11] 买二
[12] 买二量
[13] 买三
[14] 买三量
[15] 买四
[16] 买四量
股票实时数据接口
请求
举例
/q=sh600660
说明
sh600600是股票代码,将其更换为其他股票代码即可。上证股票代码前加“sh”,深圳股票代码前加“sz”。
响应
举例
v_sh600660="1~福耀玻璃~600660~18.81~18.92~18.92~86578~39928~46619~18.81~3083~18.80~4095~18.79~505~18.78~858~18.77~437~18.82~280~18.83~271~18.84~97~18.85~214~18.86~224~15:00:04/18.81/1473/S/2770713/26114|14:57:02/18.82/9/B/16581/25808|14:56:57/18.81/2/S/3762/25802|14:56:55/18.82/28/B/52696/25800|14:56:52/18.81/35/S/65847/25794|14:56:48/18.81/86/S/161836/25789~20200422153002~-0.11~-0.58~18.92~18.71~18.82/85105/159982368~86578~16275~0.43~14.72~~18.92~18.71~1.11~376.76~471.87~2.26~20.81~17.03~0.58~7892~18.80~15.08~11.45~~~1.06~16275.3081~0.0000~0~ ~GP-A~-21.59~~3.99~15.34~7.97";
[17] 买五
[18] 买五量
[19] 卖一
[20] 卖一量
[21] 卖二
[22] 卖二量
[23] 卖三
[24] 卖三量
[25] 卖四
[26] 卖四量
[27] 卖五
[28] 卖五量
[29] 最近逐笔成交
[30] 时间
[31] 涨跌
[32] 涨跌幅(%)
[33] 最高
[34] 最低
[35] 价格/成交量(手)/成交额