導航:首頁 > 數據行情 > excel爬取股票數據

excel爬取股票數據

發布時間:2022-04-29 10:20:49

『壹』 如何以excel取得股市動態網頁資料

一、建立好一個Excel檔後,變更頁簽名稱為『現值』及『股票資料』。

二、在『股票資料』頁簽的第一格中插入web資料

三、在web窗口中查詢欲鏈接的數據,並勾核欲歃入數據的范圍

四、在匯入的數據上,右鍵單擊選擇內容,勾核開啟檔案自動更新數據,並指定每隔三分鍾自動重新取得數據。

五、在現值數據中,輸入股票名稱及張數,並且在購入值輸入購買股票的購買價值。

六、接下來依下列說明輸入功式(以第一筆數據為例):
欄位 標題 輸入公式 A欄 股號 由股票數據復制貼上 B欄 購買價 手動輸入購買當時的價位 C欄 股票現價 =VLOOKUP(A2,股票資料!A:L,3,0) D欄 終值 =L2-K2 E欄 投報率 =IF(ISERR(D2/K2)=TRUE,0,D2/K2) F欄 張數 手動輸入購買當時的張數 G欄 買價 =ROUND(B2*1000+I2,0) H欄 賣價 =C2*1000 I欄 買入手續費 =ROUND(B2*1000*0.001425,2) J欄 賣出手續費 =ROUND(C2*1000*0.004425,2) K欄 買入總值 =G2*F2 L欄 賣出總值 =(H2-J2)*F2

『貳』 如何下載股票歷史成交數據到Excel或txt

以華中智能股票軟體為例:(以Think pad X13 銳龍版筆記本電腦,Windows 10 操作為例)首先切換到要下載數據的股票K線形態,按「F1」進入「日線某某股票歷史成交」,點擊滑鼠右鍵->數據導出->導出所有數據->在「請選擇導出的類型」中選擇excel或txt
補充資料:
如何獲取所有股票歷史數據:
如果要對股市進行分析,首先就要獲取所有股票的歷史數據,只有通過股票的歷史數據,我們才能分析出股市的規律。
(以Think pad X13 銳龍版筆記本電腦,Windows 10 操作為例)
一、工具/原料
1、EXCEL2007或者以上版本,不能使用WPS
2、電腦1g內存1核處理器及以上配置
3、擁有較強邏輯分析能力以及少量智慧及以上的大腦一顆
方法/步驟:
第一步,獲取股票代碼,復制其中一部分到第一個工作表A4到A127,然後通過程序把每一個代碼寫入到不同的工作表A2位置,並對該工作表以該股票代碼命名。程序如下:
Sub 工作表命名()
For i = 4 To 127
Sheets(i).Range("a2") = "'" & Sheets(1).Range("a" & i)
Next i
For i = 4 To Sheets.Count
Sheets(i).Name = Sheets(i).Range("a2").Value
Next
End Sub
第二步,獲取股票歷史數據。代碼如下:
Private Function GetSource(sURL As String) As String
Dim oXHTTP As Object
Set oXHTTP = CreateObject("MSXML2.XMLHTTP")
oXHTTP.Open "GET", sURL, False
oXHTTP.Send
GetSource = oXHTTP.responsetext
Set oXHTTP = Nothing
End Function
Sub 歷史數據()
Dim objXML As Object
Dim txtContent As String
Dim i As Integer
Dim strCode As String
Dim gp As String
Dim kaishihang
Dim arr, arr1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9, arr10, arr11
On Error Resume Next
EndRow = Range("a65536").End(xlUp).Row
startRow = 4
If startRow <= EndRow Then
Range(Cells(startRow, 1), Cells(EndRow, 11)).Value = ""
Else
Exit Sub
End If
Set objXML = CreateObject("Microsoft.XMLHTTP")
gp = [A2]
For h = 1 To 4
For m = 1 To 4
kaishihang = [A65535].End(xlUp).Row
nian = Replace(Str(Year(Now) + 1 - h), " ", "")
ji = Replace(Str(4 + 1 - m), " ", "")
With objXML
.Open "GET", "http://quotes.money.163.com/trade/lsjyj_" + gp + ".html?year=" + nian + "&season=" + ji + "", False
.Send
If objXML.Status = 200 Then
txtContent = .responsetext
arr = Split(txtContent, "'>")
For i = 1 To UBound(arr)
arr1 = Split(arr(i), " Cells(i + kaishihang, 1) = Right(Left(arr1(0), 10), 10)
arr2 = Split(arr1(1), Chr(60))
Cells(i + kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">") + 1)
arr3 = Split(arr1(2), Chr(60))
Cells(i + kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">") + 1)
arr4 = Split(arr1(3), Chr(60))
Cells(i + kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">") + 1)
arr5 = Split(arr1(4), Chr(60))
Cells(i + kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">") + 1)
arr6 = Split(arr1(5), Chr(60))
Cells(i + kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">") + 1)
arr7 = Split(arr1(6), Chr(60))
Cells(i + kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">") + 1)
arr8 = Split(arr1(7), Chr(60))
Cells(i + kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">") + 1)
arr9 = Split(arr1(8), Chr(60))
Cells(i + kaishihang, 9) = Mid(arr9(0), InStr(arr9(0), ">") + 1)
arr10 = Split(arr1(9), Chr(60))
Cells(i + kaishihang, 10) = Mid(arr10(0), InStr(arr10(0), ">") + 1)
arr11 = Split(arr1(10), Chr(60))
Cells(i + kaishihang, 11) = Mid(arr11(0), InStr(arr11(0), ">") + 1)
Next i
End If
End With
Next m
Next h
Set objXML = Nothing
End Sub
第三步,獲取上證歷史數據,並獲取所有股票的歷史數據。程序如下:
Sub 所有股票歷史數據獲取()
Application.ScreenUpdating = False
Dim s As String, gp As String, nian As String, ji As String, s1 As String
Dim arr, arr1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9
Dim i, h As Long
Dim kaishihang
Dim LastRow As Long, r As Long
On Error Resume Next
EndRow = Sheet2.Range("a65536").End(xlUp).Row
startRow = 4
If startRow <= EndRow Then
Sheet2.Range(Sheet2.Cells(startRow, 1), Sheet2.Cells(EndRow, 9)).Value = ""
Else
Exit Sub
End If
For h = 1 To 5
For m = 1 To 4
kaishihang = Sheet2.[A65535].End(xlUp).Row
nian = Replace(Str(Year(Now) + 1 - h), " ", "")
ji = Replace(Str(4 + 1 - m), " ", "")
s1 = "http://quotes.money.163.com/trade/lsjysj_shu_000001.html?year=" + nian + "&season=" + ji + ""
s = GetSource(s1)
arr = Split(s, "'>")
For i = 1 To UBound(arr)
arr1 = Split(arr(i), " Sheet2.Cells(i + kaishihang, 1) = Right(Left(arr1(0), 4), 4) & "-" & Right(Left(arr1(0), 6), 2) & "-" & Right(Left(arr1(0), 10), 2)
arr2 = Split(arr1(1), Chr(60))
Sheet2.Cells(i + kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">") + 1)
arr3 = Split(arr1(2), Chr(60))
Sheet2.Cells(i + kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">") + 1)
arr4 = Split(arr1(3), Chr(60))
Sheet2.Cells(i + kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">") + 1)
arr5 = Split(arr1(4), Chr(60))
Sheet2.Cells(i + kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">") + 1)
arr6 = Split(arr1(5), Chr(60))
Sheet2.Cells(i + kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">") + 1)
arr7 = Split(arr1(6), Chr(60))
Sheet2.Cells(i + kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">") + 1)
arr8 = Split(arr1(7), Chr(60))
Sheet2.Cells(i + kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">") + 1)
arr9 = Split(arr1(8), Chr(60))
Sheet2.Cells(i + kaishihang, 9) = Mid(arr9(0), InStr(arr9(0), ">") + 1)
Next i
Next m
Next h
Application.ScreenUpdating = True
n = Worksheets.Count
For i = 4 To n
Worksheets(i).Activate
歷史數據
Next
End Sub
第四步,保存工作簿,並對該工作簿命名為1,然後復制該工作簿27份,把所有股票代碼寫入每一個工作簿第一個工作表的A3到A127列。然後根據第一步對工作簿內的工作表命名,並在每一個工作表A2單元格內寫入股票代碼。
第五步,把這些工作簿存放到炒股文件夾下的資料庫文件下。然後在炒股文件夾下新建一個工作簿,命名為「一鍵更新表格」,寫入如下代碼:
Sub 所有股票歷史數據更新()
Dim wb As Workbook
For i = 1 To 27
Set wb = Workbooks.Open(ThisWorkbook.Path & "資料庫" & i & "".xlsb"")
Application.Run ""'"" & wb.Path & """" & i & "".xlsb'!所有股票歷史數據獲取""
wb.Save
wb.Close
Next i
End sub
當啟動這一段代碼以後,程序會自動一個一個的打開對應的工作簿然後獲取裡面所有股票的歷史數據,存放在對應的工作表當中。
第六步,對相應的程序添加按鈕,這樣,我們在啟動對應程序時,只需要點一下對應的按鈕就可以實現了。這樣,我們通過多個工作簿就實現了獲取所有股票歷史數據的方法。而後面,我們只需要通過獲取對應股票每一天的歷史數據,我們就能夠在任意一天很快速的能夠擁有所有股票的歷史數據了。
注意事項
1、在後續需要對這些數據進行分析,裡面會加入很多計算,所以啟動所有歷史數據更新時,我們應該要關閉自動更新。
2、因為歷史數據很大,所以這里只獲取四年的數據,想要獲取更多數據,可以更改程序裡面 「For h = 1 To 5」的那個5即可。
3、歷史數據的獲取需要較長的時間,要提前做好准備。
4、如果你想要弄清楚用EXCEL建立炒股系統的整套方法,請看後續內容。"

『叄』 如何通過excel獲取股票列表

1這里以獲取中國石油(601857)的行情為例,打開提供股市行情的網站,在頁面的「個股查詢」區域輸入該股票代碼,選擇「實時行情」,單擊「行情」按鈕之後就可以查詢中國石油的行情數據,接下來復制地址欄中網址。

2運行Excel,新建一個空白工作簿,選擇「數據」選項卡中「獲取外部數據」選項組中「導入外部數據一自網站」命令。

3彈出「新建Web查詢』對話框,在地址欄中輸入剛剛復制的地址,單擊「轉到」按鈕,此時在下面的文本框中打開網站,單擊「導入」按鈕。

4彈出「導入數據」對話框,選擇要插入的工作表,單擊「確定」按鈕即可。此時在工作表中導入了網站的數據。

『肆』 如何獲取股票數據excel格式的


1、 打開一個空白電子表格,並選擇【數據】標簽頁。
2、單擊【獲取外部數據】中的按紐,在彈出的【新建WEB查詢】對話框中輸入要導入,並單擊【轉到】按紐,打開;
3、 在打開的【新建WEB查詢】對話框中點擊黃色向右點頭選擇要導入的數據;
4、 數據選擇換成後,箭頭變成綠色的小勾,並點擊【導入】按紐完成數據的導入工作。
5、 數據導入完成之後,需要設定數據的刷新頻率。在任一單元格上右擊滑鼠,在菜單中選擇【數據范圍屬性】;
6、 在彈出的【數據范圍屬性】彈出菜單中更改【刷新控制項】中將默認的60分鍾修改成1分鍾,之後保存退出。

『伍』 Excel 獲取所有股票的數據,非常快,歷史數據怎麼獲取

下載你開戶股票行的電腦客戶端,可選擇導出歷史數據,即可

『陸』 "如何用excel獲取網頁上的股票數據,並按照日期製成表格"請問你是按照什麼技術完成的

抱歉,後來我使用文華財經的「有問必答」功能,請他們幫我編寫了一個指標,實現了我要的結果,所以並沒有用excel。
不過你說的我試過。這個方法我測試到一半就淺嘗則止了。你可以試試看。

第一步,找到你要的網站,獲得數據源。
第二步,excel裡面,有導入網站數據的功能,他會讓你選擇使用什麼數據表格。

具體的,你在網路上搜索一下——excel導入外部數據,就會有介紹。

『柒』 怎樣用Excel看股票如何看股票

推薦個非常好用的工具——騰訊文檔,我現在看股票實時信息就是用的這個,它們的在線表格有個「股票動態函數」,非常好用!簡單、無需學習、數據實時自動更新;看看我日常看的股票表:


『捌』 如何用excel獲得股票實時數據

自動獲取所有股票歷史數據,也能獲取當天數據https://item.taobao.com/item.htm?id=536564850759

『玖』 怎樣用excel 實時讀取 股票日線數據

定量分析的第一步,是獲取數據。
獲取股票歷史行情數據最方便的途徑,就是直接讀取股票行情軟體留在你電腦中的日線數據文件。
但如果不是程序員,電腦里一般不會有VB、VC之類的編程語言。
其實,大家的電腦中一般都有OFFICE。OFFICE中的EXCEL自帶了一個VBA語言的編程環境。功能也很強大。
我用EXCEL里的VBA編寫了一段代碼,讀取通達信股票行情軟體的日線文件。已經測試通過。
代碼如下。與愛好定量分析的朋友分享。
TypeMyType
a1AsLong'標示碼
a2AsLong'日期
a3AsSingle'開盤價
a4AsSingle'最高價
a5AsSingle'最低價
a6AsSingle'收盤價
a7AsSingle'成交金額
a8AsLong'成交量
EndType
Sub按鈕1_Click()
DimFile2AsInteger
DimbAsMyType
File1=FreeFile
Opensh600000.dayForBinaryAccessReadAs#File1i=1DoWhileNotEOF(File1)
Get#File1,,b
Cells(i,1)=b.a1
Cells(i,2)=b.a2
Cells(i,3)=b.a3
Cells(i,4)=b.a4
Cells(i,5)=b.a5
Cells(i,6)=b.a6

閱讀全文

與excel爬取股票數據相關的資料

熱點內容
怎麼查股票綁定的銀行卡號 瀏覽:424
白銀基金股票走勢 瀏覽:650
第九城市中國股票 瀏覽:952
股票換庄後的走勢如何 瀏覽:594
股票市盈率凈資產 瀏覽:884
經濟增長對股票投資影響 瀏覽:699
中國銀行股票發展趨勢 瀏覽:669
中國中旅歷史股票價格 瀏覽:576
股票賬戶怎麼改名字 瀏覽:218
買漲停後的股票風險大嗎 瀏覽:895
景興紙業轉債對股票有影響嗎 瀏覽:282
華泰證券股票交易軟體官方飯 瀏覽:71
st股票如何避免被退市 瀏覽:360
002160股票歷史資金流向 瀏覽:998
步長制葯股票可長期持有嗎 瀏覽:800
在股票公司上班賺錢嗎 瀏覽:47
龍芯科技的股票代碼 瀏覽:147
股票總資產少了好多 瀏覽:775
機構調研紡織服裝行業潛力股票 瀏覽:544