當前位置:首頁 » 數據倉庫 » 股票數據資料庫建立
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

股票數據資料庫建立

發布時間: 2022-10-03 05:57:23

❶ 如何下載股票歷史成交數據到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建立炒股系統的整套方法,請看後續內容。"

❷ 股票交易管理系統 資料庫的

三個臭皮匠頂個諸葛亮。更何況你是一個人操作,而我們是一個集體來分析、操作,
各有各的分工。而你呢?盤中你有時間分析股票那麼你有時間去盯盤嗎?
你有時間盯盤,那麼你有時間去找消息嗎?你有時間找消息那麼你有時間去研究公司、
行業、熱點、資金、主力、市場、盤面、個股、等等……你要記住一心不能二用,
如果一心二用你認為你能做好嗎?答案是否定的,不能。而我們有專業去分析消息、
搜索消息,以及專業研究熱點、研究資金、研究市場,和專業去上市公司調研的老師。
你自己是肯定不能辦到這些的。只有做到這些你才可以在股市裡成為王者。但是,
現在離這些還差多少?10%、30%、50%呢?應該還有很多吧。那你還有什麼理由不加入我們呢,
肯能我們離這些還有一定的欠缺,但是我們分工明確,最起碼比你賺的要多。

❸ 利用ACCESS模擬股票買入賣出軟體的資料庫如何設計

模擬股票和實戰有很大區別的 比如賣漲停模擬股票可以賣如 實戰很難

❹ 如何實時寫股票數據進資料庫

既然你自己設計了一個資料庫,現在是每天收盤後,從同花順軟體里導出EXCEL,再導入資料庫,來進行分析。那麼你想及時查看開盤數據,那就用同樣的技術,從同花順軟體里導出EXCEL,再導入資料庫進行分析好了,向你學習!

❺ 公司需要建立股票市場各個行業的資料庫,需要哪些數據怎麼從各證券公司給出的研究報告裡面提取信息

股票軟體里有分行業的,你可以選取龍頭,看一下企業的主營構成、毛利率、凈利潤,看企業有沒有前景主要是看產品

❻ 要寫一個證券的行業深度研究報告,怎樣建立相關的資料庫

調用證券公司交易介面API或利用現有軟體的資料庫實現深度研究
也可參考文庫《實時股票數據介面大全》完成

❼ 怎麼做實時的股票資料庫

1、實時的股票資料庫是不需要個人去建立,直接打開股票交易軟體即可查看所有的股票數據。或者打開相關的證券網站、財經網站都可以查看實時的股價變動情況。
2、資料庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫,它產生於距今六十多年前,隨著信息技術和市場的發展,特別是二十世紀九十年代以後,數據管理不再僅僅是存儲和管理數據,而轉變成用戶所需要的各種數據管理的方式。資料庫有很多種類型,從最簡單的存儲有各種數據的表格到能夠進行海量數據存儲的大型資料庫系統都在各個方面得到了廣泛的應用。

❽ 如何把股票數據導入資料庫

先從菜單欄里找到數據導出(保存),導出為EXCEL,然後打開統計軟體或資料庫,再找到文件(數據)導入,把EXCEL導入。
一般都是這個方法,不同的軟體有一定差異。

❾ 股票分時數據 用什麼資料庫

可以使用銳思資料庫。
銳思高頻資料庫囊括上海、深圳等各大證券期貨交易所等權威機構數據,交易文件包括分筆和5分鍾、10分鍾、15分鍾、20分鍾、30分鍾、40分鍾、60分鍾頻率的分時數據。
它是為滿足量化投資時代背景下市場各類參與者對於高頻數據等方面的迫切需求而推出的,基於高頻數據訪問與應用的一款產品。

❿ mysql怎麼做股票資料庫

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import tushare as ts
from sqlalchemy import create_engine

code_list = []

#資料庫鏈接參數
host = '10.0.0.5'
port = 3306
user = 'root'
password = 'qweqwe'
database = 'stock'
charset = "utf8"
table = "stock_data"

# create table stock_data(id int auto_increment,code int(6) zerofill,date date not null,open decimal(10,2) not null,high decimal(10,2) not null,close decimal(10,2) not null,low decimal(10,2) not null,volume decimal(10,2),turnover decimal(10,2),primary key (id),index(code),index(date),index(open),index(high),index(close),index(low));

def get_data (code):
df = ts.get_hist_data(code)
data = df.iloc[::-1, [0, 1, 2, 3, 4, 13]]
data["code"] = code
return data

def save_data_to_mysql (data,user = 'root',password = 'qweqwe',database = 'stock',charset = "utf8",table = "stock_data"):
engine = create_engine('mysql://' + user + ':' + password + '@' + host + '/' + database + '?charset=' + charset)
data.to_sql(table, engine, if_exists='append')
return

for code in code_list:
try:
data = get_data(code)
save_data_to_mysql(data)
print str(code) + "導入mysql成功"
except:
print str(code) + "獲取數據失敗"