1. 借助powerbi批量导入2000+csv数据文件到sqlserver数据库的办法
要解决批量导入2000+CSV数据文件到SQL Server数据库的问题,可以遵循以下步骤:
首先,背景是需要分析大量的股票数据,数据以2000多个CSV文件存储在本地。由于使用Power BI Desktop进行分析,每次加载和更新这些文件耗时较长。因此,考虑将数据导入SQL Server数据库以提高效率。
步骤如下:
1. 使用Power BI Desktop中的Power Query加载数据,进行合并操作。
2. 合并后的数据将加载至Power BI Desktop。
3. 在Power BI Desktop中安装DAX Studio插件。
4. 在DAX Studio界面选择高级功能,然后执行数据导出操作,选择导出至SQL Server。
5. 按照指示输入云SQL Server地址或本地计算机名称和数据库名称,点击导入按钮。
6. 数据将自动写入数据库中,此过程已验证为简单且不易出错。
完成导入后,使用SQL Server Studio即可查看已导入的数据库。
通过此方法,成功解决了批量导入大量CSV文件到SQL Server数据库的问题,简化了数据加载过程,提高了效率。
2. 通过Tushare平台,获取指数信息存入数据库中
通过Tushare平台,获取并存入数据库指数信息,具体步骤如下:
首先,获取股票指数信息。利用Python的tushare库,通过账号访问数据源,获取上证综指、深证成指、上证50、沪深300与中证500等指数的数据。以2011年1月1日至2020年12月31日的数据为例,使用Pandas库进行数据处理,最后将数据连接至数据库。
其次,建立数据库连接并创建表格。在MySQL数据库中,创建一个名为tushare.index_daily的表格,表格包括指数代码、交易日期、开盘价、最高价、最低价、收盘价、昨收价与成交量。
再次,将获取的指数数据插入数据库中。使用for循环遍历各指数,执行SQL语句插入数据至指定表格。确保数据完整性和准确性。
接着,计算每个日期对应的星期。使用SQL的WEEKDAY函数,返回交易日期对应的星期编号(0为星期一,6为星期日)。
随后,计算每日涨跌幅。通过计算收盘价与昨收价的百分比变化,得出每日涨跌幅。
最后,统计分组得到每个指数不同天的平均涨跌幅。使用SQL语句,按指数代码与星期编号分组,并计算平均涨跌幅。结果按照指数代码与星期排序,便于分析。
将处理后的数据输出,使用Python连接数据库执行SQL查询,并将查询结果转化为列表输出。完成数据的获取、处理与展示。
3. 如何下载股票历史成交数据到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建立炒股系统的整套方法,请看后续内容。"
4. 股票历史数据下载_股票历史数据下载excel
股票历史数据下载到Excel的简要指南: 一、选择数据源 专业金融数据平台:可以通过访问各大金融数据平台或交易所的官方网站,这些平台通常会提供股票历史数据的下载服务。 第三方数据提供商:如Tushare等Python库,它们提供了丰富的金融数据接口,可以通过编程方式获取股票历史数据。
二、数据格式选择 CSV格式:CSV格式是一种通用的数据交换格式,易于被Excel等数据处理软件识别和导入。在下载股票历史数据时,优先选择CSV格式。 Excel格式:部分数据源可能直接提供Excel格式的股票历史数据,但这种情况相对较少。如果数据源只提供其他格式(如TXT、数据库文件等),则需要进行格式转换。
三、下载与导入Excel 直接下载CSV文件:从数据源下载CSV格式的股票历史数据后,双击该文件即可在Excel中打开,并自动转换为Excel表格。 使用Python等工具转换:如果下载的数据不是CSV或Excel格式,可以使用Python等工具进行数据清洗和格式转换。例如,使用Tushare库获取数据后,可以将其保存为CSV文件,再导入Excel。 数据清洗与整理:在Excel中打开CSV文件后,可能需要进行一些数据清洗和整理工作,如删除无用列、调整列顺序、设置日期格式等。
四、注意事项 数据版权:在下载和使用股票历史数据时,请注意遵守相关法律法规和数据版权规定。 数据准确性:确保下载的数据准确无误,避免使用错误的数据进行投资分析。 数据更新:定期更新股票历史数据,以反映市场的最新变化。
5. 万德数据库如何导入股票代码_嘉泰激光
在万德数据库中导入股票代码“嘉泰激光”的方法如下: 通过数据浏览器批量导入: - 打开万德数据库的数据浏览器。
- 在菜单栏中找到“工具”或类似选项,进入“板块管理”。
- 选择“新建板块”,为你的板块命名,例如“嘉泰激光板块”。
- 选择导入方式,推荐使用“文件导入”。准备一个包含“嘉泰激光”股票代码的TXT文件,格式通常为每行一个股票代码。
- 选择该TXT文件进行导入,完成后在数据浏览器中即可选择该板块查看相关数据。
通过Wind.NET信息终端设置自选股: - 打开Wind.NET信息终端,登录你的账户。
- 点击“股票”菜单,进入“自选股监控”。
- 在“我的自选股”窗口中,点击右上角“设置自选”。
- 在“板块管理”窗口中,点击“新建”来创建一个新的自选股板块,并为其命名。
- 选择“文件导入”方式,将包含“嘉泰激光”股票代码的TXT文件导入到该板块中。
注意事项: - 确保TXT文件中的股票代码格式正确,无多余字符或空格。
- 如果“嘉泰激光”是一个具体的公司名称而非股票代码,你可能需要先通过万德数据库的搜索功能找到对应的股票代码,然后再进行导入。
- 不同的万德数据库版本或客户端界面可能略有不同,但大体操作流程相似。如果遇到问题,可以参考万德数据库的官方帮助文档或联系客服支持。
6. 证券数据如何导出股票数据库(股票投资策略)
证券数据导出到股票数据库(股票投资策略)的步骤如下: 使用股票软件导出数据: - 打开股票软件:首先,需要在电脑上打开所使用的股票分析或交易软件。
- 选择导出功能:不同的软件有不同的导出方式。一些软件可能通过快捷键(如按34后回车)来调出导出对话框,而其他软件可能需要通过菜单栏中的“数据导出”或类似选项来执行。
- 设置导出格式和路径:在导出对话框中,选择需要的导出格式(通常是Excel格式),并指定保存数据的路径。
- 执行导出:点击“导出”按钮,等待数据导出完成。
编辑和整理数据(如果需要): - 打开Excel:使用Microsoft Excel或其他兼容的电子表格软件打开导出的数据文件。
- 检查数据:确认数据无误,包括日期、股票代码、开盘价、收盘价、成交量等关键信息。
- 整理数据:根据需要,对数据进行进一步的编辑和整理,如排序、筛选、添加公式等。
将数据导入到数据库: - 打开数据库软件:启动所使用的数据库管理系统(如MySQL、SQL Server等)。
- 创建或选择数据库和表:根据需要,创建一个新的数据库和表,或者选择一个现有的数据库和表来存储导入的数据。
- 执行数据导入:在数据库管理系统中,找到数据导入功能(通常位于“任务”或“导入和导出”菜单下)。按照向导的提示,选择导出的Excel文件作为数据源,并指定目标数据库和表。然后,执行导入操作。
进行统计分析: - 使用数据库查询语言:利用SQL或其他数据库查询语言,对导入的数据进行统计分析。可以编写查询语句来获取特定的数据子集,或者计算统计指标(如均值、标准差、相关性等)。
- 利用数据库的分析工具:一些数据库管理系统提供了内置的数据分析工具,可以利用这些工具进行更深入的数据挖掘和分析。
制定投资策略: - 基于分析结果制定策略:根据统计分析的结果,结合市场趋势、行业前景、公司基本面等因素,制定适合自己的投资策略。
- 定期更新和调整策略:市场是不断变化的,因此需要定期更新和调整投资策略以适应新的市场情况。
注意事项: - 在导出和导入数据时,要确保数据的完整性和准确性。
- 不同的股票软件和数据库管理系统可能有不同的导出和导入方式,因此需要根据具体情况进行操作。
- 在进行统计分析时,要选择合适的统计方法和指标,以确保分析结果的可靠性和有效性。
7. 证券数据如何导出股票数据库(股票投资策略)
证券数据导出到股票数据库(股票投资策略)的步骤如下: 使用股票软件导出数据: - 打开股票软件:首先,在电脑上打开你所使用的股票软件,如通达信、同花顺、招商证券等。
- 找到数据导出功能:在软件内,通常可以通过菜单栏或快捷键找到“数据导出”或类似功能。例如,在通达信中,可以按34键后回车,选择“数据导出”。
- 选择导出格式和路径:在导出数据时,选择Excel格式,并指定保存路径。这样可以确保数据以表格形式保存,便于后续处理。
编辑和整理数据: - 打开Excel文件:使用Excel打开导出的数据文件。
- 检查和清理数据:确认数据无误后,根据需要清理和整理数据,如删除无关列、调整列顺序等。
- 格式化数据:确保数据具有Excel表格样式,如设置合适的列宽、对齐方式等,以便更好地进行后续分析。
将数据导入到数据库: - 选择数据库软件:根据你的需求选择合适的数据库软件,如MySQL、SQL Server等。
- 创建数据库和表:在数据库软件中创建新的数据库和表,表的结构应与导出的Excel数据相匹配。
- 导入数据:使用数据库软件提供的导入功能,将Excel数据导入到数据库中。具体操作可能因数据库软件而异,但通常包括选择数据源、指定目标表、映射字段等步骤。
进行统计分析: - 使用数据库查询功能:在数据库中,你可以使用SQL查询语言对数据进行统计分析,如计算均值、标准差、生成图表等。
- 结合投资策略:根据统计分析结果,结合你的股票投资策略,制定具体的投资决策。
注意事项: - 在导出和导入数据时,务必确保数据的完整性和准确性。
- 不同的股票软件和数据库软件可能具有不同的导出和导入功能,具体操作请参照相应软件的官方文档或帮助文件。
- 在进行统计分析时,应充分考虑数据的时效性和相关性,避免过度拟合或误导性的结论。
与股票真实数据导入数据库相关的资料
热点内容
股票快速盈利方
发布:2025-08-16 14:09:56
浏览:547
|