航亞科技股票歷史數據查詢介面
『壹』 目前,比較好的收費的股票數據介面,有數暢、閃電、銀江,是嗎
1、銀江網路行情介面是什麼概念,與券商的提供的免費軟體有什麼區別?
答:在互聯網還不是很普及的時候,大部分看盤軟體都是用硬體圖文卡通過閉路電視信號接受行情,隨著互聯網越來越普及,各家股票軟體公司都開始用互聯網傳輸數據,他們都有各自的行情數據介面。【銀江網路介面】是【銀江證券投資決策系統】網路版的行情介面,同時兼容分析家(通視卡)介面規范,也可供分析家、飛狐交易師、益盟操盤手、麟龍、乾坤、融易等分析軟體接收高速股票行情使用。所以如果你的軟體帶有圖文卡選項,並且是通視卡數據標准,基本上就可以使用銀江介面,注意:介面安裝的時候需要關閉所有相關軟體,安裝好以後,不需要單獨啟動銀江介面。第一次啟動相關股票軟體,選擇使用圖文卡接收接就會啟動銀江,以後啟動股票軟體就會自動啟動銀江介面的。
2、目前有哪些兼容的通視卡標准數據介面,銀江介面有什麼特點?
答:目前兼容的數據介面有數暢、網際風、王者、倚天金融快車、銀江等品牌,與其他介面相比銀江有以下特點:
◆大部分的兼容介面以及券商提供的免費軟體都是採用請求式數據傳輸方式,打開一隻股票畫面,數據才會自動下載,不打開的股票頁面,該畫面數據不會下載到本地硬碟上,所以如果網路不好,或者伺服器不好,就極為耽誤看盤。而且因為本地請求到的數據太少。分析軟體里的公式指標也沒法自動發揮作用,想實時預警或者選股什麼的,都沒法准確運行,這也是很多人不願意使用證券公司提供的免費軟體的原因。銀江網路行情介面,採用的是主動推送方式能將所有數據主動推送到本地硬碟,所以任意打開一個股票頁面,股票行情都能立即顯示。此時用分析軟體裡面預警和指標公式選股,都是最准確的。
◆銀江介面支持最多4個股票軟體同時運行接受當日的動態行情。擁有一套銀江網路行情介面,相當於擁有分析家、飛狐交易師、益盟操盤手等多個經典分析軟體。(注意:歷史數據需要單個軟體分別補充。)
◆銀江介面行情佔用系統資源少,運行高速穩定,各種數據全面、速度快,每分鍾9筆10筆是常見的,自動補充當日分時,自動更新F10資料,支持信息地雷,支持補充當日分筆數據。銀江網路行情介面是目前唯一支持分析家信息地雷、財務數據、除權數據自動下載支持分析家最好的介面,也是目前唯一支持益盟操盤手2.72版自動下載財務數據、除權數據、補充5分鍾線的介面。
◆支持代理伺服器,無論是win98還是win2000、xp、win2003都運行穩定流暢,多伺服器支持,不用擔心行情中斷。
◆一個會員號可以在任意電腦上面使用,但是同一時間只能一台電腦在線。
◆價格便宜,是眾多介面中價格最低的,傳輸數據全面,性能最好的介面。
3、銀江網路行情軟體支持那些版本的股票軟體?
答:銀江網路目前支持的股票軟體版本是分析家4.0---分析家2006 v6.0、飛狐交易師專業版4.06版以下、益盟操盤手2.72版以下等版本比較低一點的股票軟體,隨著互聯網的普及,各家股票軟體公司都關閉了圖文卡兼容介面,發展自己的行情數據介面,所以最新版的股票軟體大都不再提供圖文卡介面。所以也就不能再使用兼容數據介面以及銀江了。高版本的股票軟體裡面,目前網路上面流傳的只有飛狐交易師網路版4.9的D版可以使用銀江介面,益盟操盤手軟體網路上面流傳的3.04以上的D版都是將2.72的操盤手改了下版本號,並不是真正的高版本操盤手,2.72以上的操盤手要看行情必須使用正版才行。
『貳』 如何通過雪球查詢股票之前的變動狀況
一. 雪球公司介紹
雪球 聰明的投資者都在這里。
web 1.0:新聞資訊,股價信息,K線圖
web 2.0:SNS 訂閱,分享,聊天
web 3.0:移動 APP,交易閉環
雪球現在員工數還不到100,其中技術人員佔一半。去年9月C輪融資4kw刀。我們現在的技術棧由下列組件組成:Java,Scala,Akka,Finagle,Nodejs,Docker ,Hadoop。我們當前是租用IDC機房自建私有雲,正在往「公私混合雲」方向發展。
在雪球上,用戶可以獲取滬深港美2w+股票的新聞信息,股價變化情況,也可以獲取債券,期貨,基金,比特幣,信託,理財,私募等等理財產品的各類信息,也可以關注雪球用戶建立的百萬組合,訂閱它們的實時調倉信息,還可以關注雪球大V。雪球當前有百萬日活躍用戶,每天有4億的API調用。App Store 財務免費榜第 18 名。歷史上曾排到財務第二,總免費榜第 19。
二. 雪球當前總體架構
作為一個典型的移動互聯網創業公司,雪球的總體架構也是非常典型的設計:
最上層是三個端:web端,android端和iOS端。流量比例大約為 2:4:4 。web3.0 的交易功能,在 web 端並不提供。
接入層以及下面的幾個層,都在我們的自建機房內部。雪球當前只部署了一個機房,還屬於單機房時代。正在進行「私有雲+公有雲混合部署」方案推進過程中。
我們當前使用 nodejs 作為 web 端模板引擎。nodejs 模塊與android 和 ios 的 app 模塊一起屬於大前端團隊負責。
再往下是位於 nginx 後面的 api 模塊。跟 linkedin 的 leo 和微博的 v4 一樣,雪球也有一個遺留的大一統系統,名字就叫 snowball 。最初,所有的邏輯都在 snowball 中實現的。後來慢慢的拆出去了很多 rpc 服務,再後來慢慢的拆出去了一些 http api 做成了獨立業務,但即便如此,snowball 仍然是雪球系統中最大的一個部署單元。
在需要性能的地方,我們使用 netty 搭建了一些獨立的介面,比如 quoto server,是用來提供開盤期間每秒一次的股價查詢服務,單機 qps 5w+,這個一會再細說;而 IM 服務,起初設計里是用來提供聊天服務,而現在,它最大的用途是提供一個可靠的 push 通道,提供 5w/s 的消息下發容量,這個也一會再細說。
雪球的服務化拆分及治理採用 twitter 開源的 finagle rpc 框架,並在上面進行了一些二次開發和定製。定製的功能主要集中在 access log 增強,和 fail fast,fail over 策略及降級開關等。 finagle 的實現比較復雜,debug 和二次開發的門檻較高,團隊內部對此也進行了一些討論。
雪球的業務比較復雜,在服務層中,大致可以分為幾類:第一類是web1.0,2.0 及基礎服務,我們稱為社區,包括用戶,帖子,新聞,股價,搜索等等,類比對象就是新浪財經門戶+微博;第二類是組合及推薦,主要提供股票投資策略的展示和建議,類比對象是美國的motif;第三類是通道,類似股市中的「支付寶」,接入多家券商,提供瞬間開戶,一鍵下單等等各種方便操作的功能。
雪球的業務實現中,包含很多非同步計算邏輯,比如搜索建索引,比如股票漲跌停發通知,比如組合收益計算等等,為此,我們設計了一個獨立的 Thread/Task 模塊,方便管理所有的後台計算任務。但隨著這些 task 越來越多,邏輯差異越來越大,一個統一的模塊並不是總是最佳的方案,所以,我們又把它拆成了兩大類:流式的,和批量式的。
雪球的推薦體系包括組合推薦「買什麼」和個性化推薦。我們最近正在重新梳理我們的大數據體系,這個感興趣的話可以單聊。
最下面是基礎設施層。雪球基礎設施層包括:redis,mysql,mq,zk,hdfs,以及容器 docker。
線上服務之外,我們的開發及後台設施也很典型:gitlab開發,jenkins打包,zabbix 監控系統向 openfalcon 遷移,redimine向confluence遷移,jira,以及內部開發的 skiing 後台管理系統。
** 三. 雪球架構優化歷程**
首先描述一下標題中的「股市動盪」定語修飾詞吧:
上證指數從年初的3000點半年時間漲到了5000多,6月12號達到最高點5200點,然後就急轉直下,最大單日跌幅 8.48%,一路跌回4000點以下。最近一周都在3900多徘徊。
3月最後一周,A股開戶 166萬戶,超過歷史最高紀錄 2007年5月第二周165萬戶。
4月份,證監會宣布A股支持單用戶開設多賬戶。
6月底,證金公司代表國家隊入場救市。
7月份,證監會宣布嚴打場外配資。
中國好聲音廣告第一晚,帶來超過平時峰值200倍的注冊量
挑戰:小 VS 大:
小:小公司的體量,團隊小,機器規模小
大:堪比大公司的業務線數量,業務復雜度,瞬間峰值沖擊
雪球的業務線 = 1個新浪財經 + 1 個微博 + 1 個 motif + 1 個大智慧/同花順。由於基數小,API調用瞬間峰值大約為平時峰值的 30+ 倍。
挑戰:快速增長,移動互聯網 + 金融,風口,A股大盤劇烈波動。
首先,在app端,在我們核心業務從 web2.0 sns 向 3.0 移動交易閉環進化的過程中,我們開發了一個自己的 hybrid 框架:本地原生框架,加離線 h5 頁面,以此來支撐我們的快速業務迭代。當前,雪球前端可以做到 2 周一個版本,且同時並行推進 3 個版本:一個在 app store 等待審核上線,一個在內測或公測,一個在開發。我們的前端架構師孟祥宇在今年的 wot 上有一個關於這方面的詳細分享,有興趣的可以稍後再深入了解。
雪球App實踐—構建靈活、可靠的Hybrid框架 http://wot.51cto.com/2015mobile/ http://down.51cto.com/data/2080769
另外,為了保障服務的可用性,我們做了一系列的「端到端服務質量監控」。感興趣的可以搜索我今年4月份在環信SM meetup上做的分享《移動時代端到端的穩定性保障》。其中在 app 端,我們採用了一種代價最小的數據傳輸方案:對用戶的網路流量,電池等額外消耗幾乎為0
每個請求里帶上前一個請求的結果
succ or fail : 1 char
失敗原因:0 - 1 char
請求介面編號: 1 char
請求耗時:2 - 3 char
其它:網路制式,etc
炒股的人大多都會盯盤:即在開盤期間,開著一個web頁面或者app,實時的看股價的上下跳動。說到「實時」,美股港股當前都是流式的數據推送,但國內的A股,基本上都是每隔一段時間給出一份系統中所有股票現價的一個快照。這個時間間隔,理論上是3秒,實際上一般都在5秒左右。 交了錢簽了合同,雪球作為合作方就可以從交易所下屬的數據公司那裡拿到數據了,然後提供給自己的用戶使用。
剛才介紹總體架構圖的時候有提到 quote server ,說到這是需要性能的地方。
業務場景是這樣的,雪球上個人主頁,開盤期間,每秒輪詢一次當前用戶關注的股票價格變動情況。在內部,所有的組合收益計算,每隔一段時間需要獲取一下當前所有股票的實時價格。起初同時在線用戶不多,這個介面就是一個部署在 snowball 中的普通介面,股價信息被實時寫入 redis ,讀取的時候就從 redis 中讀。後來,A股大漲,snowball 抗不住了。於是我們就做了一個典型的優化:獨立 server + 本地內存存儲。開盤期間每次數據更新後,數據接收組件主動去更新 quote server 內存中的數據。 後續進一步優化方案是將這個介面以及相關的處理邏輯都遷移到公有雲上去。
對於那些不盯盤的人,最實用的功能就是股價提醒了。在雪球上,你除了可以關注用戶,還可以關注股票。如果你關注的某隻股票漲了或跌了,我們都可以非常及時的通知你。雪球上熱門股票擁有超過 50w 粉絲(招商銀行,蘇寧雲商)粉絲可以設置:當這支股票漲幅或跌幅超過 x%(默認7%)時提醒我。曾經連續3天,每天超過1000股跌停,證監會開了一個會,於是接下來2天超過1000股漲停
原來做法:
股票漲(跌)x%,掃一遍粉絲列表,過濾出所有符合條件的粉絲,推送消息
新做法:
預先建立索引,開盤期間載入內存
1%:uid1,uid2
2%:uid3,uid4,uid5
3%:uid6
問題:有時候嫌太及時了:頻繁跌停,打開跌停,再跌停,再打開。。。的時候
內部線上記錄:
4台機器。
單條消息延時 99% 小於 30秒。
下一步優化目標:99% 小於 10 秒
IM 系統最初的設計目標是為雪球上的用戶提供一個聊天的功能:
送達率第一
雪球IM:Netty + 自定義網路協議
Akka : 每個在線client一個actor
推模式:client 在線情況下使用推模式
多端同步:單賬號多端可登錄,並保持各種狀態同步
移動互聯網時代,除了微信qq以外的所有IM,都轉型成了推送通道,核心指標變成了瞬間峰值性能。原有架構很多地方都不太合適了。
優化:
分配更多資源:推送賬號actor池
精簡業務邏輯:重復消息只存id,實時提醒內容不推歷史設備,不更新非活躍設備的session列表等等
本地緩存:拉黑等無法精簡的業務邏輯遷移到本地緩存
優化代碼:非同步加密存儲,去除不合理的 akka 使用
akka這個解釋一下:akka 有一個自己的 log adapter,內部使用一個 actor 來處理所有的 log event stream 。當瞬間峰值到來的時候,這個 event stream 一下子就堵了上百萬條 log ,導致 gc 顛簸非常嚴重。最後的解決辦法是,繞過 akka 的 log adapter,直接使用 logback 的 appender
線上記錄:5w/s (主動限速)的推送持續 3 分鍾,p99 性能指標無明顯變化
7月10號我們在中國好聲音上做了3期廣告。在廣告播出之前,我們針對廣告可能帶來的對系統的沖擊進行了壓力測試,主要是新用戶注冊模塊,當時預估廣告播出期間2小時新注冊100萬
壓測發現 DB 成為瓶頸:
昵稱檢測 cache miss > 40%
昵稱禁用詞 where like 模糊查詢
手機號是否注冊 cache miss > 80%
注冊新用戶:5 insert
優化:
redis store:昵稱,手機號
本地存儲:昵稱禁用詞
業務流程優化:DB insert 操作同步改非同步
下一步優化計劃:
將 sns 系統中所有的上行操作都改成類似的非同步模式
介面調用時中只更新緩存,而且主動設置5分鍾過期,然後寫一個消息到 mq 隊列,隊列處理程序拿到消息再做其它耗時操作。
為了支持失敗重試,需要將主要的資源操作步驟都做成冪等。
前置模塊HA:
合作方合規要求:業務單元部署到合作方內網,用戶的敏感數據不允許離開進程內存
業務本身要求:業務單元本身為有狀態服務,業務單元高可用
解決方案:
使用 Hazelcast In-Memory Data Grid 的 replication map 在多個 jvm 實例之間做數據同步。
java 啟動參數加上 -XX:+DisableAttachMechanism -XX:-UsePerfData,禁止 jstack,jmap 等等 jdk 工具連接
關於前置模塊,其實還有很多很奇葩的故事,鑒於時間關系,這里就不展開講了。以後有機會可以當笑話給大家講。
組合凈值計算性能優化:
一支股票可能在超過20萬個組合里(南車北車中車,暴風科技)
離線計算,存儲計算後的結果
股價3秒變一次,涉及到這支股票的所有組合理論上也需要每 3 秒重新計算一次
大家可能會問,為什麼不用戶請求時,實時計算呢?這是因為「組合凈值」中還包括分紅送配,分股,送股,拆股,合股,現金,紅利等等,業務太過復雜,開發初期經常需要調整計算邏輯,所以就設計成後台離線計算模式了。當前正在改造,將分紅送配邏輯做成離線計算,股價組成的凈值實時計算。介面請求是,將實時計算部分和離線計算部分合並成最終結果。
實際上,我們的計算邏輯是比較低效的:循環遍歷所有的組合,對每個組合,獲取所有的價值數據,然後計算。完成一遍循環後,立即開始下一輪循環。
優化:
分級:活躍用戶的活躍組合,其它組合。
批量:拉取當前所有股票的現價到 JVM 內存里,這一輪的所有組合計算都用這一份股價快照。
關於這個話題的更詳細內容,感興趣的可以參考雪球組合業務總監張岩楓在今年的 arch summit 深圳大會上的分享:構建高可用的雪球投資組合系統技術實踐 http://sz2015.archsummit.com/speakers/201825
最後,我們還做了一些通用的架構和性能優化,包括jdk升級到8,開發了一個基於 zookeeper 的 config center 和開關降級系統
四. 聊聊關於架構優化的一些總結和感想
在各種場合經常聽說的架構優化,一般都是優化某一個具體的業務模塊,將性能優化到極致。而在雪球,我們做的架構優化更多的是從問題出發,解決實際問題,解決到可以接受的程度即可。可能大家看起來會覺得很凌亂,而且每個事情單獨拎出來好像都不是什麼大事。
我們在對一個大服務做架構優化時,一般是往深入的本質進行挖掘;當我們面對一堆架構各異的小服務時,「架構優化」的含義其實是有一些不一樣的。大部分時候,我們並不需要(也沒有辦法)深入到小服務的最底層進行優化,而是去掉或者優化原來明顯不合理的地方就可以了。
在快速迭代的創業公司,我們可能不會針對某一個服務做很完善的架構設計和代碼實現,當出現各種問題時,也不會去追求極致的優化,而是以解決瓶頸問題為先。
即使我們經歷過一回將 snowball 拆分服務化的過程,但當我們重新上一個新的業務時,我們依然選擇將它做成一個大一統的服務。只是這一次,我們會提前定義好每個模塊的 service 介面,為以後可能的服務化鋪好路。
在創業公司里,重寫是不能接受的;大的重構,從時間和人力投入上看,一般也是無法承擔的。而「裱糊匠」式做法,哪裡有性能問題就加機器,加緩存,加資料庫,有可用性問題就加重試,加log,出故障就加流程,加測試,這也不是雪球團隊工作方式。我們一般都採用最小改動的方式,即,准確定義問題,定位問題根源,找到問題本質,制定最佳方案,以最小的改動代價,將問題解決到可接受的范圍內。
我們現在正在所有的地方強推3個數據指標:qps,p99,error rate。每個技術人員對自己負責的服務,一定要有最基本的數據指標意識。數字,是發現問題,定位根源,找到本質的最重要的依賴條件。沒有之一。
我們的原則:保持技術棧的一致性和簡單性,有節制的嘗試新技術,保持所有線上服務依賴的技術可控,簡單來說,能 hold 住。
能用cache的地方絕不用db,能非同步的地方,絕不同步。俗稱的:吃一塹,長一智。
特事特辦:業務在發展,需求在變化,實現方式也需要跟著變化。簡單的來說:遺留系統的優化,最佳方案就是砍需求,呵呵。
『叄』 如何獲取實時的股票行情信息,有相關的公用介面或者數據源嗎
實時股票數據介面
股票數據的獲取目前有如下兩種方法可以獲取:
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開始。
0:」大秦鐵路」,股票名字;
1:」27.55″,今日開盤價;
2:」27.25″,昨日收盤價;
3:」26.91″,當前價格;
4:」27.55″,今日最高價;
5:」26.20″,今日最低價;
6:」26.91″,競買價,即「買一」報價;
7:」26.92″,競賣價,即「賣一」報價;
8:」22114263″,成交的股票數,由於股票交易以一百股為基本單位,所以在使用時,通常把該值除以一百;
9:」589824680″,成交金額,單位為「元」,為了一目瞭然,通常以「萬元」為成交金額的單位,所以通常把該值除以一萬;
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="http://hq.sinajs.cn/list=sh601006"
charset="gb2312">/script>
/javascript">
var
elements=hq_str_sh601006.split(",");
document.write("current
price:"+elements[3]);
這段代碼輸出大秦鐵路(股票代碼:601006)的當前股價
current
price:14.20
如果你要同時查詢多個股票,那麼在URL最後加上一個逗號,再加上股票代碼就可以了;比如你要一次查詢大秦鐵路(601006)和大同煤業(601001)的行情,就這樣使用URL:
http://hq.sinajs.cn/list=sh601003,sh601001
查詢大盤指數,比如查詢上證綜合指數(000001):
http://hq.sinajs.cn/list=s_sh000001
伺服器返回的數據為:
var
hq_str_s_sh000001="上證指數,3094.668,-128.073,-3.97,436653,5458126";
數據含義分別為:指數名稱,當前點數,當前價格,漲跌率,成交量(手),成交額(萬元);
查詢深圳成指數:
http://hq.sinajs.cn/list=s_sz399001
對於股票的K線圖,日線圖等的獲取可以通過請求http://image.sinajs.cn/…./…/*.gif此URL獲取,其中*代表股票代碼,詳見如下:
查看日K線圖:
http://image.sinajs.cn/newchart/daily/n/sh601006.gif
分時線的查詢:
http://image.sinajs.cn/newchart/min/n/sh000001.gif
日K線查詢:
http://image.sinajs.cn/newchart/daily/n/sh000001.gif
周K線查詢:
http://image.sinajs.cn/newchart/weekly/n/sh000001.gif
月K線查詢:
http://image.sinajs.cn/newchart/monthly/n/sh000001.gif
1.2
Bai&Google的財經數據
在,
google中搜索某隻股票代碼時,將會在頭條顯示此股票的相關信息,例如在google搜索601006時,
第一條搜索結果如下圖:
通過點擊左邊的圖片我們發現會將此圖片鏈接到sina財經頻道上,也就是說google股票數據的獲取也是從sina獲取。後經抓包分析,發現google也是採用1.1中介紹的介面。
Bai的股票數據來自的財經頻道
http://stock..com/
1.3
其他方式
除了sina,等網站提供股票信息外,其他網站也有類似的介面。我們分析了一款論壇上採用的股票插件,
其中有關於實時股票數據獲取的介紹,詳見如下代碼,其中可以看到有些數據來自sina。
以下是ASP示例:
=5
then
stockdata=gethttp("http://hq.sinajs.cn/list=sh"&code&"")
if
not len(stockdata)=0 then
stockdata=split(stockdata,chr(34))(1)
end if
if
len(stockdata)=0
then
stockdata="0,0,0,0,0,0,0,0,0,0,0,0"
else
stockdatasplit=split(stockdata,",")
stockdata=""&exstock.checkstr(stockdatasplit(0))&","&stockdatasplit(1)&","&stockdatasplit(2)&","&stockdatasplit(3)&","&stockdatasplit(4)&","&stockdatasplit(5)&","&formatdatetime(""&stockdatasplit(30)&"
"&stockdatasplit(31)&"",0)&""
end
if
『0=股票名稱,1=開盤價格,2=昨收盤價格,3=當前價格,4=最高價,5=最低價,6=更新時間
getstockdata=stockdata
end
function
function getstockimg(code)
dim
rndnum,addnum,checkcode,imgsource
if len(code)=5
then
getstockimg="http://image.sinajs.cn/newchart/daily/n/sh"&code&".gif"
end
if
imgsource="http://finance.sina.com.cn"
case
3
getstockimg="http://hq.gazxfe.com/stockchart/realline.chart?"&code&"&1003&SZ
500 330"
imgsource="http://hq.gazxfe.com"
case
4
getstockimg="http://chartse.stockstar.com/chartserver?code="&code&""
imgsource="http://www.stockstar.com/"
end
select
getstockimg=split(""&getstockimg&"||"&imgsource&"","||")
end
function
function getastockimg()
dim
rndnum,addnum,checkcode
dim
getastockimgb,imgsource
addnum=6
randomize:rndnum=cint(rnd*addnum)
select
case rndnum
case
0
getastockimg="http://202.109.106.1/gifchartse/gif/000001.gif"
getastockimgb="http://202.109.106.1/gifchartse/gif/399001.gif"
imgsource="http://www.stockstar.com/"
case
1
getastockimg="http://money.163.com/special/100.gif?C39"
getastockimgb="http://money.163.com/special/101.gif?HrS"
imgsource="http://www.163.com"
case
2
getastockimg="http://www.10jqka.com.cn/curve/realtime/index2.php?code=1a0001&w=180&h=140"
getastockimgb="http://www.10jqka.com.cn/curve/realtime/index2.php?code=399001&w=180&h=140"
imgsource="http://www.10jqka.com.cn"
case
3
getastockimg="http://chart.cnlist.com/stockchart/realline.chart?1a0001&1002&SZ
180
140"
getastockimgb="http://chart.cnlist.com/stockchart/realline.chart?399001&1002&SZ
180
140"
imgsource="http://chart.cnlist.com/"
case
4
getastockimg="http://image.sinajs.cn/newchart/small/ish000001.gif?1189176558328"
getastockimgb="http://image.sinajs.cn/newchart/small/isz399001.gif?1189176558328"
imgsource="http://www.sinajs.cn"
case
5
getastockimg="http://218.1.72.66/cgi/pic/sh/realtime/JA000001164143.png"
getastockimgb="http://218.1.72.66/cgi/pic/sz/realtime/JA399001164143.png"
imgsource="http://www.cnstock.com/"
case
6
getastockimg="http://222.73.29.85/img/000001.png"
getastockimgb="http://222.73.29.85/img/399001.png"
imgsource="http://www.eastmoney.com/"
end
select
getastockimg=split(""&getastockimg&"||"&getastockimgb&"||"&imgsource&"","||")
end
function
%>
2.
web-service介面
2.1 CHINAstock的web-service:
http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx
中國股票行情數據
WEB 服務(支持深圳和上海股市的全部基金、債券和股票),數據即時更新。輸出GIF分時走勢圖、日/周/月 K
線圖、及時行情數據(股票名稱、行情時間、最新價、昨收盤、今開盤、漲跌額、最低、最高、漲跌幅、成交量、成交額、競買價、競賣價、委比、買一 - 買五、賣一 -
賣五)。此WEB服務提供了如下幾個介面:
2.1.1
getStockImageByCode
GET
股票GIF分時走勢圖
INput:theStockCode =
股票代號,如:sh000001
POST /WebServices/ChinaStockWebService.asmx
HTTP/1.1
Host: www.webxml.com.cn
Content-Type:
text/xml; charset=utf-8
Content-Length:
length
SOAPAction:
"http://WebXml.com.cn/getStockImageByCode"
string
Output:
2.1.2
getStockImageByteByCode
獲得中國股票GIF分時走勢圖位元組數組
INput:theStockCode
= 股票代號,如:sh000001
POST /WebServices/ChinaStockWebService.asmx
HTTP/1.1Host: www.webxml.com.cnContent-Type: text/xml;
charset=utf-8Content-Length: lengthSOAPAction:
"http://WebXml.com.cn/getStockImageByteByCode"
string
返回的數據如下:
hkMyt4m4VkJtstbv8A
2.1.3
getStockImage_kByCode
直接獲得中國股票GIF日/周/月 K
線圖(545*300pixel/72dpi)
INPUT: theStockCode =
股票代號
theType = K 線圖類型(D:日[默認]、W:周、M:月),
POST
/WebServices/ChinaStockWebService.asmx HTTP/1.1Host:
www.webxml.com.cnContent-Type: text/xml; charset=utf-8Content-Length:
lengthSOAPAction: "http://WebXml.com.cn/getStockImage_kByCode" string
string
比如按照下圖所示輸入:
返回的結果就是周K線圖:
2.1.4
getStockImage_kByteByCode
獲得中國股票GIF日/周/月 K
線圖位元組數組
Input:theStockCode = 股票代號,如:sh000001
POST
/WebServices/ChinaStockWebService.asmx HTTP/1.1Host:
www.webxml.com.cnContent-Type: text/xml; charset=utf-8Content-Length:
lengthSOAPAction: "http://WebXml.com.cn/getStockImage_kByteByCode" string string
HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8Content-Length: length
base64Binary
比如按照下圖輸入:
返回的結果就是周K線圖位元組數組
hkMyt4m4VkJtstbv8A
2.1.5
getStockInfoByCode
獲得中國股票及時行情
input:theStockCode
= 股票代號
POST /WebServices/ChinaStockWebService.asmx HTTP/1.1Host:
www.webxml.com.cnContent-Type: text/xml; charset=utf-8Content-Length:
lengthSOAPAction: "http://WebXml.com.cn/getStockInfoByCode"
string
返回的值一個一維字元串數組
String(24),結構為:String(0)股票代號、String(1)股票名稱、String(2)行情時間、String(3)最新價(元)、String(4)昨收盤(元)、String(5)今開盤(元)、String(6)漲跌額(元)、String(7)最低(元)、String(8)最高(元)、String(9)漲跌幅(%)、String(10)成交量(手)、String(11)成交額(萬元)、String(12)競買價(元)、String(13)競賣價(元)、String(14)委比(%)、String(15)-String(19)買一
- 買五(元)/手、String(20)-String(24)賣一 - 賣五(元)/手。
Web
service的方法類似於現在concurrent項目的DBWS數據的獲取,都是通過SOAP協議向DBWS伺服器獲取相關的數據。
利用雅虎查中國股票
http://quote.yahoo.com/d/quotes.csv?s=MSFT&f=slc1wop
返回微軟的股票價格
"MSFT","4:00pm
- 30.70",+1.04,"21.46 -
30.75",29.77,29.66
http://quote.yahoo.com/d/quotes.csv?s=000969.SZ&f=slc1wop
這個返回安泰科技的,一般有半個小時的延遲。
但是s=000969.sz
這個後面的sz是深圳的意思, 滬市是SS後綴
『肆』 請問怎樣用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();
}
}
}
『伍』 在哪可以獲取股票、基金、指數等的數據介面,需要把這些數據顯示在網站上
股票數據的獲取目前有如下兩種方法可以獲取:
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
『陸』 如何獲取滬深股票歷史行情數據 http://hq.sinajs.cn/list=sh601006可以拿到實時數據, 但拿不到歷史數據
股票軟體都可以下載更新歷史數據的
『柒』 有什麼免費的股票數據web api
免費的很多,例如新浪的web api。但這種會被對方封IP。
其實免費的,最好是使用股票軟體中自帶的介面。例如通達信、同花順、大智慧的公式系統。這些軟體裡面可編寫公式,通過這些公式,就可按自己要求得到對應的股票數據了。
如果是機構,有專業的這種API介面的提供。例如微盛的金融實時行情API介面,但這種需要軟體人員才搞得懂,一般人沒法使用。
『捌』 怎麼用益盟操盤手查股票歷史數據
微信打開搜號碼搜索生活百事通就知道了K
『玖』 上證指數歷史數據在哪裡可以看到呢
適用股票分析軟體、上證網以及其他證券網站均可查詢!
股市指數是由證券交易所或金融服務機構編制的、表明股票行市變動的一種供參考的數字。
通過指數,對於當前各個股票市場的漲跌情況我們可以直觀地看到。
股票指數的編排原理還是比較錯綜復雜的,那學姐就不在這里細講了,點擊下方鏈接,教你快速看懂指數:新手小白必備的股市基礎知識大全
一、國內常見的指數有哪些?
會由股票指數的編制方法和性質來分類,股票指數有五種類型:規模指數、行業指數、主題指數、風格指數和策略指數。
這當中,最頻繁遇見的當屬規模指數,比如我們熟知的「滬深300」指數,它說明的是在滬深市場中交易活躍,且代表性和流動性都很好的300家大型企業股票的整體情況。
當然還有,「上證50 」指數也屬於規模指數,代表的是上海證券市場代表性好、規模大、流動性好的50 只股票的整體情況。
行業指數代表的則是某個行業目前的整體狀況。比如說「滬深300醫葯」就算是一個行業指數,代表滬深300中的醫葯行業股票,反映該行業公司股票的整體表現。
某一主題的整體情況是用主題指數作為代表的,就好比人工智慧、新能源汽車這些方面,以下是相關指數:「科技龍頭」、「新能源車」等。
想了解更多的指數分類,可以通過下載下方的幾個炒股神器來獲取詳細的分析:炒股的九大神器免費領取(附分享碼)
二、股票指數有什麼用?
經過文章前面的介紹,大家可以知道,指數選取了市場中具有代表性的一些股票,因此,指數能夠幫助我們比較快速的了解到市場的整體漲跌情況,這也是對市場的熱度做一個簡單的了解,甚至可以預測未來的走勢是怎麼樣的。具體則可以點擊下面的鏈接,獲取專業報告,學習分析的思路:最新行業研報免費分享
應答時間:2021-09-06,最新業務變化以文中鏈接內展示的數據為准,請點擊查看
