補充資料:
如何獲取所有股票歷史數據:
如果要對股市進行分析,首先就要獲取所有股票的歷史數據,只有通過股票的歷史數據,我們才能分析出股市的規律。
(以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 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), " ", "")
jidu = Replace(Str(4 + 1 - m), " ", "")
With objXML
.Open "GET", "/trade/lsjyj_" + gp + ".html?year=" + nian + "&season=" + jidu + "", False
.Send
If objXML.Status = 200 Then
txtContent = .responsetext
arr = Split(txtContent, "'>
For i = 1 To UBound(arr)
arr1 = Split(arr(i), "
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, jidu 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 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), " ", "")
jidu = Replace(Str(4 + 1 - m), " ", "")
s1 = "/trade/lsjysj_zhishu_000001.html?year=" + nian + "&season=" + jidu + ""
s = GetSource(s1)
arr = Split(s, "'>
For i = 1 To UBound(arr)
arr1 = Split(arr(i), "
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建立炒股系統的整套方法,請看後續內容。"已贊過已踩過妳對這個回答的評價是?評論收起 ._1uevpeq{zoom:1;background-color:#fff;border:0;margin-bottom:10px;padding:30px 0 20px 42px;position:relative}._1uevpeq.ec-1841{padding:20px 0}._1uevpeq.ec-2246{padding:20px 0 10px}.ec-1841 .y7we4hu{font-size:16px;margin-bottom:-5px}.y7we4hu{color:#7a8f9a;height:25px;line-height:25px;overflow:hidden;position:relative}.y7we4hu h2{margin:0;padding:0}.y7we4hu:after{clear:both;content:" ";display:block;height:0;visibility:hidden}a.tycfu7u{color:#666;float:right;font-size:12px;margin-left:8px;text-decoration:none}.hhhv6ex{color:#666;font-size:13px;line-height:normal;line-height:20px;margin-top:10px}.vnsdjzp{margin-top:15px;position:relative}.vnsdjzp h3{font-weight:400;padding:0}.vnsdjzp a{text-decoration:none}.vnsdjzp em{color:#d81419;font-style:normal}.ec-2246 .vnsdjzp{margin-top:20px}._853bpkf{margin-top:10px}.a8gn2rz{margin-top:24px}._9rp2sus{display:block;overflow:hidden;width:auto}._4fuv54y,._85hk68c,.c84cjyj,.cd2v8yz,.gbuysgj,.gbxbqd2,.kpq54qk,.kw488k9,.puc33cm,.rdg9v5w,.yg47vz5{box-sizing:border-box;float:left;min-height:1px;position:relative}.cd2v8yz{width:8.33333333%}.gbuysgj{width:16.6666666%}.c84cjyj{width:25%}.puc33cm{width:33.33333333%}._85hk68c{width:50%}.rdg9v5w{width:58.3333333%}.kw488k9{width:66.66666667%}.kpq54qk{width:75%}.gbxbqd2{width:83.3333333%}._4fuv54y{width:91.66666667%}.yg47vz5{width:100%}.hc9wng2{float:right}body a.xny78f9,body div.xny78f9{color:#333;display:block;font-family:Arial,Helvetica,sans-serif;font-size:14px!important;line-height:19px;margin-bottom:10px;text-decoration:none}a.xny78f9:hover{color:#34b458;text-decoration:underline}a.xny78f9 font{color:#34b458}a.xny78f9 div{word-break:break-all}.v3zrcrj{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.q1dpns8{-webkit-line-clamp:2}.ndfxdqz,.q1dpns8{word-wrap:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;word-break:break-all}.ndfxdqz{-webkit-line-clamp:3}._7qtpw9j{-webkit-line-clamp:4}._2dt35k2,._7qtpw9j{word-wrap:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;word-break:break-all}._2dt35k2{-webkit-line-clamp:5}._1r3uysh{-webkit-line-clamp:10}._1r3uysh,.yux2cc6{word-wrap:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;word-break:break-all}.yux2cc6{-webkit-line-clamp:12}._4bxpxs9{-webkit-line-clamp:18;word-wrap:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;word-break:break-all}body .k795fxy{color:#7a8f9a;font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:22px;padding-top:0;position:relative;transform:translateY(.4666666667em)}body .k795fxy:before{content:"";display:block;height:0;margin-top:-10px}body .k795fxy a{color:#7a8f9a;display:block}body .k795fxy a ._1nczxan{color:#666}body .k795fxy button{background:#fff;border:1px solid;border-radius:3px;bottom:0;color:#38f;float:right;font-size:12px;line-height:12px;padding:7px 13px;position:absolute;right:0}body .k795fxy .db1j6uz{margin-left:5px}body .k795fxy .mxyzxgv{border:1px solid #eee;border-radius:50%;display:inline-block;height:22px;line-height:0;margin-right:7px;margin-top:-2px;vertical-align:middle;width:22px}body .k795fxy .accwaqu{margin-right:8px}.zdjeshn{position:absolute;right:0}.tx6hcqf{-webkit-box-orient:horizontal;-webkit-box-align:stretch;-webkit-align-content:flex-start;-webkit-align-items:stretch;display:-webkit-flex;-webkit-flex-wrap:nowrap;-webkit-justify-content:space-between;width:auto}.bde3hfs{flex:1}body .k795fxy a.n1yex5p,body .k795fxy div.n1yex5p{display:flex;justify-content:space-between}.k795fxy .ec-showurl-line:hover{text-decoration:underline}.k795fxy .ec-showurl-line{color:#9eacb6}.k795fxy{padding-bottom:1px}@charset "UTF-8";body ._886bxmw{font-size:12px;line-height:22px;padding-top:0;transform:translateY(.4166666667em)}body ._886bxmw:before{content:"";display:block;height:0;margin-top:-10px}body ._886bxmw a,body ._886bxmw div{color:#333}body ._886bxmw .d81nas8{color:#999;font-size:15px;line-height:25px}body ._886bxmw ._9mnfgfc{margin-right:5px}._886bxmw font{color:#34b458}.ec-2246 ._886bxmw font{color:#c60a00}.ec-2246 ._886bxmw{font-size:16px}.ec-2246 ._8gpc1uj{position:relative}.ec-2246 ._8gpc1uj:after{background-color:#fff;bottom:0;color:#34b458;content:"點擊查看詳情";display:inline-block;padding-left:10px;padding-right:0;position:absolute;right:0}.ec-2246 ._8gpc1uj:before{background-image:linear-gradient(270deg,#fff,hsla(0,0%,100%,0));bottom:0;content:"";height:29px;position:absolute;right:90px;width:47px}.qeb9494{padding-bottom:100%}.cbnvsmc{padding-bottom:133.33333333%}.bd8dsh2{padding-bottom:33.3333333333%}.s8vwdyg{padding-bottom:56.25%}._7647yj6{padding-bottom:50%}._3hu75mr{padding-bottom:75%}.kdcm6p9{padding-bottom:66.66666667%}.xgdthff{padding-bottom:40%}.wagcupv{background-position:50%;background-repeat:no-repeat;background-size:cover}._3hu75mr,._7647yj6,.bd8dsh2,.cbnvsmc,.kdcm6p9,.qeb9494,.s8vwdyg,.xgdthff{height:0;overflow:hidden}._3hu75mr img,._7647yj6 img,.bd8dsh2 img,.cbnvsmc img,.kdcm6p9 img,.qeb9494 img,.s8vwdyg img,.xgdthff img{width:100%}.dycvwv4{border-radius:9px}._1kcc4s3{border-top-left-radius:0}.f9mstuk{border-top-right-radius:0}._24395ct{border-bottom-right-radius:0}.r1yfcd1{border-bottom-left-radius:0}.qd9k1mu{color:#333;font-size:14px;line-height:24px;margin-top:2px}.qhn3ktc{color:#f60;font-size:14px;line-height:22px;margin:5px 0;vertical-align:middle}._6ad8bqy{position:relative}.a85j8fv{background:radial-gradient(transparent 50%,rgba(0,0,0,.05) 100%);height:100%;left:0;position:absolute;top:0;transform:translateZ(0);width:100%}.dycvwv4 .a85j8fv{border-radius:9px}._1kcc4s3 .a85j8fv{border-top-left-radius:0}.f9mstuk .a85j8fv{border-top-right-radius:0}._24395ct .a85j8fv{border-bottom-right-radius:0}.r1yfcd1 .a85j8fv{border-bottom-left-radius:0}._6ad8bqy.qeb9494{height:92px;padding-bottom:0}.ec-2246 ._6ad8bqy.kdcm6p9{height:160px;margin:auto;padding:0;width:240px}body .c69sfzc{display:flex;font-size:0;overflow:hidden}body ._5dn6uyv{margin-right:8px;max-width:35px;min-width:35px;vertical-align:top}body .qrpnxfs{background:url(//nv00.cdn.bcebos.com/nv01/static/ecom/img/pc/head-img-535c333798.png) no-repeat 50%;background-size:100% 100%;height:100%;width:100%}body .nmkjhaf{height:35px;min-width:0}body .v1ftvns{color:#000;font-size:16px;font-weight:inherit;line-height:1;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body ._7pt3pe5{color:#999;font-size:12px;line-height:1}body .c69sfzc .m11ehk9 img{width:100%}body .c69sfzc ._7enmqsz{margin-right:15px}body ._5dn6uyv{border-radius:50%;max-width:40px;min-width:40px;overflow:hidden}body .v1ftvns{color:#333;font-size:14px;font-weight:700;line-height:20px;margin-bottom:0}body ._7pt3pe5{color:#9eacb6;line-height:17px;margin-top:3px} 樹帆教育科技(深圳)廣告2024-07-21股票註冊,短線高手實盤經驗總結,書中詳細講解26種股市實用交易戰法,包括大市強弱,市場趨勢的判斷、選股方法及選股標準、正確的買賣時機等1元包郵xt-tf.shufanedus.com !function(t){"use strict";function e(t,e){if(t){var n=new Date().getTime(),i=new Image;t+="&rand="+(n+Math.random()),window.ecomLogImage||(window.ecomLogImage={}),window.ecomLogImage["--IMAGE"+n]=i,e=e||{};var r=!1;i.onload=i.onerror=i.onabort=function(o){if(!e.charge){if(o&&"load"!==o.type){if(r)"error"in e&&e.error();else{i.src=t,r=!0;return}}else"load"in e&&e.load()}i.onload=i.onerror=i.onabort=null,window.ecomLogImage["--IMAGE"+n]=null,i=null},i.src=t}}var n,i=function(){var t,e,n,i=0,r=0,o=0,s=0,a=0,c=0,u=0,l=0,h=/link\?url\=([^\&]+)/,f=/\?url\=([^\.]+)\./,d="data-cklink",p=/[?&]tn=([^&]*)/;function v(t){if(!t)return!1;var e=h.exec(t)||f.exec(t);return!!e&&(h.exec(t)?e[1].length