1. 在哪可以獲取股票、基金、指數等的數據介面,需要把這些數據顯示在網站上
股票數據的獲取目前有如下兩種方法可以獲取:
1. http/javascript介面取數據
2. web-service介面
1.http/javascript介面取數據
1.1Sina股票數據介面
以大秦鐵路(股票代碼:601006)為例,如果要獲取它的最新行情,只需訪問新浪的股票數據
介面:
http://hq.sinajs.cn/list=sh601006
這個url會返回一串文本,例如:
var hq_str_sh601006="大秦鐵路, 27.55, 27.25, 26.91, 27.55, 26.20, 26.91, 26.92,
22114263, 589824680, 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開始。
http://www.cnblogs.com/luluping/archive/2010/11/15/1877817.html
2. 股票數據介面怎麼獲取一般是怎麼收費的
股票數據介面去證券交易所買的,一年服務費千萬。
LEVEL-2行情,數據比較清楚,並且比較全。資金流向,十檔盤口,買賣提示,等等,具體可以看大智慧或同花順LEVEL-2的相關介紹,他們的比較權威,比較全面。
股票行情數據是由交易所有償提供的,一般是給券商、行情分析軟體供應商等,且不得轉發從事商業服務。股票數據的獲取目前有如下兩種方法可以獲取:http/javascript介面取數據或者web-service介面。
(2)javascrip讀取股票數據擴展閱讀:
一、股票軟體一般都提供了介面,例如通達信、同花順、大智慧,這些軟體裡面,都有公式系統,這個公式系統,就是介面。你可以參考軟體裡面的別的公式,編寫自己的公式,這樣就可以得到相應的數據了。
如果是機構,有專門提供這種API介面的。例如微盛的金融實時行情API介面。但這種方式,需要程序員才搞得懂,一般人用不起來。
二、股票實時行情,可以通過兩個方法來進行查看:
第一種,在網路搜索頁面直接輸入股票代碼,如:000717,網路輸入後,即可在搜索結果中看到,其中分時,就是該股票在當天的實時走向。
第二種,通過炒股軟體,如東財,同花順等,在開啟後,直接輸入,股票代碼,如600854,點擊回車。進入的第一個頁面就是該股票在當天的實時行情。
三、PP材料的成型溫度在160-220℃,注塑成型時要將模具溫度恆定在這個范圍。油溫機具有加熱冷卻功能,其控溫范圍分為常溫到180℃,常溫到300℃,常溫到300℃以上等多種控溫類型。水冷機其本身只有冷卻功能,沒有加熱功能,控溫時達不到160-220℃。另外,還有一種水溫機,其同時具有加熱冷卻功能,其控溫范圍分為常溫到98℃,常溫到120℃,常溫到150℃,常溫到180℃。綜上所述,PP材料注塑應該選用油溫機,而且其控溫范圍需在常溫到300℃范圍
3. 請問怎樣用Java獲取股票行情歷史數據新浪、搜狐、百度財經都可以......
publicclassStockConnection{
publicstaticvoidmain(String[]args){
URLur=null;
try{
//搜狐股票行情歷史介面
// ur=newURL("http://q.stock.sohu.com/hisHq?code=cn_300228&start=20130930&end=20131231&stat=1&order=D&period=d&callback=historySearchHandler&rt=jsonp");
//新浪股票行情歷史介面
ur=newURL("http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?&rand=random(10000)&symbol=sh600000&end_date=20150809&begin_date=20000101&type=plain");
HttpURLConnectionuc=(HttpURLConnection)ur.openConnection();
BufferedReaderreader=newBufferedReader(newInputStreamReader(ur.openStream(),"GBK"));
Stringline;
while((line=reader.readLine())!=null){
System.out.println(line);
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
4. java 如何實現 獲取實時股票數據
一般有三種方式:
網頁爬蟲。採用爬蟲去爬取目標網頁的股票數據,去GitHub或技術論壇(如CSDN、51CTO)上找一下別人寫的爬蟲集成到項目中。
請求第三方API。會有專門的公司(例如網路API市場)提供股票數據,你只需要去購買他們的服務,使用他們提供的SDK,仿照demo開發實現即可。如下圖所示:
5. 易語言怎麼讀取實時股票數據
易語言讀取實時股票數據方法如下:
1、獲取API介面:可以到證券交易所神此纖、財經網站或第三方數據服務商申請獲取股扒搏票行情數據的API介面。
2、使用網路編程函數進行數據訪問:使用易語言的網路編程相關函數,如HttpGet、Wininet_OpenURL等,訪問API介面獲取實時股票行情數據。
3、解析數據:獲取到的數據可能是JSON或XML格式的數據,需要使用相關函數對數據進行解析,取出需要的數據。
4、顯示數據:將解析得到的數據顯示在界面上,以便用戶游仿查看。
6. 網站如何顯示指定一個股票股價的數據,需要會自動更新的那種
方法很多:自動刷新,如果是K線圖,自動刷新圖片,然後在伺服器端自動生成最新的圖片;或者用ActiveX
常式:
test.htm
<html>
<title>test</title>
<head>
<script language="vbscript">
Function bytes2BSTR(vIn)
Dim strReturn,i,ThisCharCode,innerCode,Hight8,Low8,NextCharCode
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function
</script>
<script language="JavaScript">
function getData(stockcode)
{
var oBao = new ActiveXObject("Microsoft.XMLHTTP");
oBao.open("POST","st.asp?code="+stockcode,false); //這里的st.asp是常式二,如果你有自己的股票信息,你可以直接調用自己的。
oBao.send();
sdata = bytes2BSTR(oBao.ResponseBody);
return sdata;
}
function UTCTime(){
dis.innerHTML=(getData('000718'));
setTimeout("UTCTime()", 30000); //這里的30000是指5分鍾,每1000為1秒鍾
}
</script>
</head>
<body onLoad="UTCTime()" >
<span id="dis"></span>
</body>
</html>
常式二,該常式是從www.stockstar.com獲取最新的股票信息,對於反回的結果,你可以根據具體情況通過字元串處理來做到。
如果你自己有最新股票信息,那你可以不用st.asp
st.asp
<%
code=request.querystring("code")
if code="" then code="000000"
function getData(stockcode)
set oBao = server.createObject("Microsoft.XMLHTTP")
oBao.open "GET","http://quote.stockstar.com/stock/external_dealp.asp?code=szag"&stockcode,false
oBao.send()
sdata = bin2str(oBao.ResponseBody)
set oBao=nothing
getData=sdata
end function
function bin2str(bin)
dim tmp,ustr
tmp=""
for i=1 to LenB(bin)-1
ustr=AscB(MidB(bin,i,1))
if ustr>127 then
i=i+1
tmp=tmp&chr(ustr*256+AscB(MidB(bin,i,1)))
else
tmp=tmp&chr(ustr)
end if
next
bin2str=tmp
end function
strStock=mid(getData(code),12000)
strStock=mid(strStock,instr(strStock,"·Ö¼Û±í"))
strStock=mid(strStock,795)
strStock=left(strStock,instr(strStock,"</table>")+7)
response.write strStock
%>
7. 股票數據介面怎麼找
股票數據介面用免費的股票行情軟體就行,真正有用的數據只有與交易所有協議的機構才能得到,其他人是弄不到的,而且收費昂貴非專業機構也用不起的。
8. 在編程中如何能能獲得股票的數據 例如當前價,最高價,最低價,當前成交量等等
要看使和什麼數據了,每個軟體數據的存儲格式不同,有的還是加密存儲的(如指南針)。
以常見的錢龍數據來說吧(錢龍是最簡單的存儲格式)當前價,最高價,最低價,當前成交量等等都是以隨機文件存儲的長整型數據。下面是讀取錢龍數據的C源碼,你可以參考一下:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
typedef struct { ------->定義數據類型
unsigned long date; ------->定義日期為長整
unsigned long open; ------->定義開盤為..
unsigned long high; ------->定義最高為..
unsigned long low; ------->定義最低為..
unsigned long close; ------->定義收盤為..
unsigned long travl; ------->定義成交量..
unsigned long traca; ------->定義成交額..
char unuse[12];
} RECORD;
RECORD reco;
int readrec(FILE *);
void main()
{
FILE *fp;
if((fp = fopen("000001.day","rb")) == NULL) // 打開深發展日線
{ printf("Error: Can't open 000001.DAY !\n");
exit(0); }
readrec(fp);
fclose(fp);
if(getch()==0) getch();
exit(0);
}
int readrec(FILE *fp)
{
float fn;
while (! feof(fp)) {
fread(&reco,sizeof(RECORD),1,fp);
printf("%10lu ",reco.date);
fn=float(reco.open)/1000;
printf("%8.2f ",fn);
fn=float(reco.high)/1000; .
printf("%8.2f ",fn); .
fn=float(reco.low)/1000; .
printf("%8.2f ",fn); .
fn=float(reco.close)/1000; .
printf("%8.2f ",fn); .
printf("%8lu ",reco.travl); .
printf("%8lu\n",reco.traca);
}
printf("\n");
return 0;
9. 如何使用 Yahoo Finance stock API 獲取股票數據
1、通過API獲取實時數據
請求地址
http://finance.yahoo.com/d/quotes.csv?s=<股票名稱>&f=<數據列選項>
參數
s _ 表示股票名稱,多個股票之間使用英文加號分隔,如」XOM+BBDb.TO+JNJ+MSFT」,羅列了四個公司的股票:XOM, BBDb.TO, JNJ, MSFT。
f _ 表示返回數據列,如」snd1l1yr」。更詳細的參見雅虎股票 API f 參數對照表。
2、通過API獲取歷史數據
請求地址
http://ichart.yahoo.com/table.csv?s=<string>&a=<int>&b=<int>&c=<int>&d=<int>&e=<int>&f=<int>&g=d&ignore=.csv
參數
s _ 股票名稱
a _ 起始時間,月
b _ 起始時間,日
c _ 起始時間,年
d _ 結束時間,月
e _ 結束時間,日
f _ 結束時間,年
g _ 時間周期。Example: g=w, 表示周期是』周』。d->』日』(day), w->』周』(week),m>』月』(mouth),v->』dividends only』一定注意月份參數,其值比真實數據-1。如需要9月數據,則寫為08。
3、通過API獲取深滬股票數據
雅虎的API是國際性的,支持查詢國內滬深股市的數據,但代碼稍微變動一下,如浦發銀行的代號是:600000.SS。規則是:上海市場末尾加.ss,深圳市場末尾加.sz。
10. 如何編程從免費股票軟體中提取實時數據
自己寫程序的話,一種方法是從已提供的信息源,例如webservice獲取數據。還有種辦法就是去連接提供即時信息的網頁硬解析。
代碼舉例如下:
Created on Thu Jul 23 09:17:27 2015
@author: jet
"""
DAY_PRICE_COLS = ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20', 'turnover']
DAY_PRICE_URL = '%sapi.finance.%s/%s/?code=%s&type=last'
INDEX_KEY = ['SH', 'SZ', 'HS300', 'SZ50', 'GEB', 'SMEB']
INDEX_LIST = {'SH': 'sh000001', 'SZ': 'sz399001', 'HS300': 'sz399300',
'SZ50': 'sh000016', 'GEB': 'sz399006', 'SMEB': 'sz399005'}
INDEX_DAY_PRICE_COLS= ['date', 'open', 'high', 'close', 'low', 'volume',
'chg', '%chg', 'ma5', 'ma10', 'ma20',
'vma5', 'vma10', 'vma20']
K_TYPE_KEY = ['D', 'W', 'M']
K_TYPE_MIN_KEY = ['5', '15', '30', '60']
K_TYPE = {'D': 'akdaily', 'W': 'akweekly', 'M': 'akmonthly'}
MIN_PRICE_URL = '%sapi.finance.%s/akmin?scode=%s&type=%s'
PAGE_TYPE = {'http': 'http://', 'ftp': 'ftp://'}
PAGE_DOMAIN = {'sina': 'sina.com.cn', 'ifeng': 'ifeng.com'}
URL_ERROR_MSG = '獲取失敗,請檢查網路狀態,或者API埠URL已經不匹配!'
get_hist_data.py
# -*- coding: utf-8 -*-
"""
Created on Thu Jul 23 09:15:40 2015
@author: jet
"""
import const as ct
import pandas as pd
import json
from urllib2 import urlopen,Request
def get_hist_data(code = None, start = None, end = None, ktype = 'D'):
"""
功能:
獲取個股歷史交易數據
--------
輸入:
--------
code:string
股票代碼 比如:601989
start:string
開始日期 格式:YYYY-MM-DD 為空時取到API所提供的最早日期數據
end:string
結束日期 格式:YYYY-MM-DD 為空時取到最近一個交易日數據
ktype:string(default=D, 函數內部自動統一為大寫)
數據類型 D=日K線,W=周K線,M=月K線,5=5分鍾,15=15分鍾
30=30分鍾,60=60分鍾
輸出:
--------
DataFrame
date 日期
open 開盤價
high 最高價
close 收盤價
low 最低價
chg 漲跌額
p_chg 漲跌幅
ma5 5日均價
ma10 10日均價
ma20 20日均價
vma5 5日均量
vma10 10日均量
vma20 20日均量
turnover換手率(指數無此項)
"""
code = code_to_APIcode(code.upper())
ktype = ktype.upper()
url = ''
url = get_url(ktype, code)
print(url)
js = json.loads(ping_API(url))
cols = []
if len(js['record'][0]) == 14:
cols = ct.INDEX_DAY_PRICE_COLS
else:
cols = ct.DAY_PRICE_COLS
df = pd.DataFrame(js['record'], columns=cols)
if ktype in ct.K_TYPE_KEY:
df = df.applymap(lambda x:x.replace(u',', u''))
for col in cols[1:]:
df[col]=df[col].astype(float)
if start is not None:
df = df [df.date >= start]
if end is not None:
df = df[df.date <= end]
df = df.set_index('date')
return df
def code_to_APIcode(code):
"""
功能:
驗證輸入的股票代碼是否正確,若正確則返回API對應使用的股票代碼
"""
print(code)
if code in ct.INDEX_KEY:
return ct.INDEX_LIST[code]
else:
if len(code) != 6:
raise IOError('code input error!')
else:
return 'sh%s'%code if code[:1] in ['5', '6'] else 'sz%s'%code
def get_url(ktype, code):
"""
功能:
驗證輸入的K線類型是否正確,若正確則返回url
"""
if ktype in ct.K_TYPE_KEY:
url = ct.DAY_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
ct.K_TYPE[ktype], code)
return url
elif ktype in ct.K_TYPE_MIN_KEY:
url = ct.MIN_PRICE_URL % (ct.PAGE_TYPE['http'], ct.PAGE_DOMAIN['ifeng'],
code, ktype)
return url
else:
raise IOError('ktype input error!')
def ping_API(url):
"""
功能:
向API發送數據請求,若鏈接正常返回數據
"""
text = ''
try:
req = Request(url)
text = urlopen(req,timeout=10).read()
if len(text) < 15:
raise IOError('no data!')
except Exception as e:
print(e)
else:
return text
#測試入口
print(get_hist_data('601989','2015-07-11','2015-07-22'))