기금넷 공식사이트 - 금 선물 - 주식의 과거 거래 데이터를 Excel 또는 txt 로 다운로드하려면 어떻게 해야 합니까?

주식의 과거 거래 데이터를 Excel 또는 txt 로 다운로드하려면 어떻게 해야 합니까?

예를 들어, (Think pad X 13 리용 노트북과 Windows 10 작업을 예로 들자면) 먼저 해당 주식의 K라인 형태로 전환하여 데이터를 다운로드하고 "F/Kloc-0" 을 누릅니다. 데이터 내보내기-> 모든 데이터 내보내기-> 내보내기 유형 선택에서 excel 또는 txt 를 선택합니다.

보충 정보:

주식에 대한 모든 과거 데이터를 얻는 방법

주식시장을 분석하려면 먼저 모든 주식의 역사적 데이터를 얻어야 한다. 주식의 역사적 데이터를 통해서만 주식시장의 법칙을 분석할 수 있다.

(Think pad X 13 리용 노트북과 Windows 10 작업을 예로 들어 보겠습니다.)

I. 도구/원자재

1, EXCEL2007 이상, WPS 를 사용할 수 없습니다.

2, 컴퓨터 1g 메모리 1 코어 프로세서 이상 구성.

3. 논리적 분석 능력이 강하고 지혜가 많은 뇌.

방법/절차:

첫 번째 단계에서는 주식 코드를 가져와 첫 번째 워크시트 A4 에서 A 127 로 일부 복사한 다음 프로그램을 통해 각 코드를 다른 워크시트 A2 위치에 쓰고 주식 코드로 워크시트 이름을 지정합니다. 이 프로세스는 다음과 같습니다.

하위 시트 명명 ()

I = 4 부터 127 까지의 경우

침대 시트 (하나). Range ("a2") = "'"& 장 (1). 범위 ("a"& 나)

다음으로 저는

I = 4 부터 장까지. 숫자를 세다

침대 시트 (하나). Name = Sheets(i) 입니다. 범위 ("a2") 입니다. 가치

그리고 나서

끝단 접합

두 번째 단계는 주식의 역사적 데이터를 얻는 것입니다. 코드는 다음과 같습니다.

전용 함수 get source (surl as string) as string

Dim oXHTTP 를 객체로 사용

Set oXHTTP = CreateObject("MSXML2. XMLHTTP) 를 참조하십시오

OXHTTP. 오픈' get', sURL, False

OXHTTP. 보내다

GetSource = oXHTTP.responsetext

OXHTTP = Nothing 을 설정합니다

기능을 종료합니다

하위 히스토리 데이터 ()

Dim objXML 을 객체로 사용

TxtContent 를 문자열로 치수기입합니다

I 를 정수로 치수기입합니다

Dim strCode 를 문자열로 사용

치수 어셈블리는 문자열로 사용됩니다

Dim 케이시 라인

Dim arr, arr 1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9, arr/kloc-;

오류 발생 시 다음 단계로 진행합니다

EndRow = Range("a65536 "). 끝내기 (xlUp). 줄

StartRow = 4

If startRow Range (셀 (startRow, 1), 셀 (EndRow, 1 1)) 입니다. 값 = ""

기타

출구 커넥터

만약 ... 끝날거야

Set obj XML = createobject ("Microsoft. XMLHTTP) 를 참조하십시오

Gp = [A2]

H = 1 4 의 경우

M = 1 4 의 경우

Kaishihang = [A65535] 입니다. 끝내기 (xlUp). 줄

Nian = replace (str (year (now)+1-h), ",",""

두키 = Replace(Str(4+1-m), ",",""

ObjXML 사용

。 GET','/trade/lsjyj _'+gp+'를 엽니다. Html? 연도 = "+nian+"& 계절 = "+두경기+"",거짓

。 보내다

ObjXML 인 경우. 그럼 상태 = 200 입니다

TxtContent =. 응답 텍스트

Arr = Split(txtContent, "'>")

I = 1 끝 UBound(arr) 의 경우

Arr 1 = Split(arr(i), "Cells(i+kaishihang,1) = right (left)

Arr2 = split (arr1(1), Chr(60))

Cells(i+kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">)+1

Arr3 = Split(arr 1(2), Chr(60))

Cells(i+kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">)+1

Arr4 = Split(arr 1(3), Chr(60))

Cells(i+kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">)+1

Arr5 = Split(arr 1(4), Chr(60))

Cells(i+kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">)+1

Arr6 = Split(arr 1(5), Chr(60))

Cells(i+kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">)+1

Arr7 = Split(arr 1(6), Chr(60))

Cells(i+kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">)+1

Arr8 = Split(arr 1(7), Chr(60))

Cells(i+kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">)+1

Arr9 = Split(arr 1(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(arr 10(0), instr (arr/kloc

Arr11= split (arr1(10), Chr(60))

Cells(i+kaishihang,11) = mid (arr11(0)

다음으로 저는

만약 ... 끝날거야

로 끝맺다

다음 m

다음 h

Set objXML = Nothing

끝단 접합

세 번째 단계는 상교소 및 모든 주식에 대한 역사적 데이터를 얻는 것이다. 이 프로세스는 다음과 같습니다.

Sub 모든 주식 기록 데이터 수집 ()

신청하다. 화면 업데이트 = false

Dim s 는 문자열, gp 는 문자열, 연도는 문자열, 두기니는 문자열, s 1 은 문자열입니다

Dim arr, arr 1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9

Dim I, h 만큼 길다

Dim 케이시 라인

Dim LastRow 만큼 길고 r 만큼 길다

오류 발생 시 다음 단계로 진행합니다

EndRow = Sheet2 입니다. 범위 ("a65536"). 끝내기 (xlUp). 줄

StartRow = 4

시트 2 로 시작하는 경우. 범위 (워크시트 2). 셀 (startRow, 1), 시트 2. 셀 (EndRow, 9)). 값 = ""

기타

출구 커넥터

만약 ... 끝날거야

H = 1 ~ 5 의 경우

M = 1 4 의 경우

Kaishihang = Sheet2 입니다. [A65535] 입니다. 끝내기 (xlUp). 줄

Nian = replace (str (year (now)+1-h), ",",""

두키 = Replace(Str(4+1-m), ",",""

S1= "/trade/lsjysj _ zhi Shu _ 000001.html? 연도 = "+nian+"& 계절 = "+두경기+"

S = GetSource(s 1)

Arr = Split(s, "'>")

I = 1 끝 UBound(arr) 의 경우

Arr 1 = Split(arr(i), "시트 2. Cells(i+kaishihang,1) = right (왼쪽 (arr1(0), 4), 4); -"& Right (왼쪽 (arr1(0), 6), 2)-"& 오른쪽 (왼쪽 (arr 1(0), 10), 2)

Arr2 = split (arr1(1), Chr(60))

워크시트 2. Cells(i+kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">)+1

Arr3 = Split(arr 1(2), Chr(60))

워크시트 2. Cells(i+kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">)+1

Arr4 = Split(arr 1(3), Chr(60))

워크시트 2. Cells(i+kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">)+1

Arr5 = Split(arr 1(4), Chr(60))

워크시트 2. Cells(i+kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">)+1

Arr6 = Split(arr 1(5), Chr(60))

워크시트 2. Cells(i+kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">)+1

Arr7 = Split(arr 1(6), Chr(60))

워크시트 2. Cells(i+kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">)+1

Arr8 = Split(arr 1(7), Chr(60))

워크시트 2. Cells(i+kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">)+1

Arr9 = Split(arr 1(8), Chr(60))

워크시트 2. Cells(i+kaishihang, 9) = Mid(arr9(0), InStr(arr9(0), ">)+1

다음으로 저는

다음 m

다음 h

신청하다. 화면 업데이트 = true

N = 워크시트. 숫자를 세다

I = 4 ~ n 인 경우

워크시트 (1). 활동을 하다

역사적 데이터

그리고 나서

끝단 접합

4 단계에서는 통합 문서를 저장하고 1 이라는 이름을 지정한 다음 27 개의 통합 문서를 복사하여 각 통합 문서의 첫 번째 워크시트 A3 ~ A 127 열의 주식 코드를 모두 씁니다. 그런 다음 1 단계에 따라 통합 문서의 워크시트 이름을 지정하고 각 워크시트의 A2 셀에 주식 코드를 기록합니다.

5 단계에서 stock 폴더 아래의 데이터베이스 파일에 통합 문서를 저장합니다. 그런 다음 stock 폴더 아래에 "one-click update table" 이라는 새 통합 문서를 작성하고 다음 코드를 작성합니다.

Sub 모든 주식 과거 데이터 업데이트 ()

Wb 를 통합 문서로 표시

I = 1 27 까지의 경우

Wb = Workbooks 를 설정합니다. 열기 (ThisWorkbook). 경로 및 경로. "\ 데이터베이스 \"&; 나 & amp"".xlsb "")

신청하다. """"""& ampwb 를 실행합니다. 경로 및 경로. "& 나 & amp"".xlsb! 모든 재고 내역 데이터 수집 ""

웹. 구조

웹. 닫기

다음으로 저는

끝단 접합

이 코드가 시작되면 프로그램은 자동으로 해당 통합 문서를 하나씩 열고 모든 주식에 대한 과거 데이터를 가져와 해당 워크시트에 저장합니다.

6 단계에서는 해당 프로그램에 버튼을 추가하여 해당 프로그램을 시작할 때 해당 버튼을 클릭하기만 하면 됩니다. 이렇게 하면 여러 통합 문서를 통해 주식의 모든 과거 데이터를 얻을 수 있습니다. 앞으로 우리는 매일 해당 주식에 대한 역사적 데이터만 얻으면 어느 날 모든 주식에 대한 역사적 데이터를 빠르게 소유할 수 있다.

주의할 사항

1. 우리는 미래에 이 데이터를 분석해야 합니다. 이로 인해 많은 계산이 증가하므로 모든 과거 데이터 업데이트를 시작할 때 자동 업데이트를 꺼야 합니다.

2. 역사 데이터가 매우 크기 때문에, 여기는 4 년의 데이터만 얻을 수 있다. 더 많은 데이터를 얻으려면 프로그램에서 "h = 1 5" 의 숫자 5 를 변경할 수 있습니다.

3. 사료를 얻는 데는 시간이 오래 걸리므로 미리 준비해야 합니다.

4. EXCEL 로 주식거래 시스템을 구축하는 전체적인 방법을 이해하려면 다음을 보십시오. "나는 이미 자랑했다, 밟았다. 이 대답에 대한 당신의 평가는 무엇입니까? 평론을 거두다. _1uevpeq {zoom:1; 배경색: # fff 테두리: 0; Margin-bottom:10px; 채우기: 30px 0 20px 42px 위치: 상대}. _1uevpeq.ec-1841{padding: 20px0}. _1uevpeq.ec-2246 {padding: 20px010px}. Ec-1841.y7we4hu {font-size:16px; Margin-bottom:-5px}. y7we4hu {color: # 7a8f9a; 높이: 25px 행 높이: 25px 오버플로: 숨기기; Position: relative}. y 7we4hu H2 {margin: 0; Padding: 0}. y7we4hu: after {clear: both; 내용: \ "\"; 화면표시: 블록; 높이: 0; 가시성: 숨겨진 a.tyc fu7u {color: # 666; 부동: 예; Font-size:12px; 왼쪽 여백: 8pxtext-decoration: none}. hhhv6ex {color: # 666; Font-size:13px; 행 높이: 일반; 행 높이: 20pxmargin-top: 10px}. Vnsdjzp {margin-top:15px; 위치: 상대}. Vnsdjzph3 {font-weight: 400; 채우기: 0}. Vnsdjzp a {텍스트-설명: 없음}. Vnsdjzp em {color: # D81419; 글꼴 스타일: 보통}. Ec-2246. Vnsdjzp{margin-top:20px} 입니다. _ 853bpkf {margin-top:10px}. a8gn2rz {margin-top: 24px}. _ 9rp2sus {디스플레이: 블록; 오버플로우: 숨기기; 폭: 자동}. _4fuv54y,. _85hk68c,. c84cjyj,. cd2v8yz,. gbuysgj,. gbxbqd2,. kpq54qk,. kw488k9,. puc33cm,. rds 부동: 왼쪽; Min-height:1px; 위치: 상대} .cd2v8yz {너비: 8.3333333%}. Gbuysgj {width:16.66666666%}. c84cjyj {width: 25%}. puc33cm {width: 33.3333336 _ 85hk68c {폭: 50%}. rdg9v5w {폭: 58.33333333%}. kw488k9 {폭: 66.66666667%} ... _ 4fuv54y {폭: 91.666666667%}. yg 47vz5 {폭:100%}. hc9ww 화면표시: 블록; 서체 시리즈: 에어리어, 헬베티카, 세리프 없음; Font-size: 14px! 중요; 행 높이:19px; Margin-bottom:10px; Text-decoration: none} a.xny78f9: hover {color: # 34b458; Text-decoration: underline} a.xny78f9font {color: # 34b458} a.xny78f9div {word-break: break 텍스트 오버플로우: 줄임표; 공백: nowrap}. q1dpns8 {-WebKit-line-clamp: 2}. Ndfxdqz,. q1dpns8 {word-wrap: break-word; -webkit-box-orient: 수직; 표시:-WebKit-box; 오버플로우: 숨기기; 분사: break-all}. Ndfxdqz{-webkit-line-clamp:3}. _7qtpw9j{-webkit-line-clamp:4}. _2dt35k2,. _ 7qtp w9j {word-wrap: break-word; -webkit-box-orient: 수직; 표시:-WebKit-box; 오버플로우: 숨기기; 분사: break-all}. _2dt35k2{-webkit-line-clamp:5}. _1R3 uysh {-WebKit-line-clamp:10}. _ 1r3uysh,. Yu x2 cc6 {word-wrap: break-word; -webkit-box-orient: 수직; 표시:-WebKit-box; 오버플로우: 숨기기; Word-break: break-all}. Yu x2 cc6 {-WebKit-line-clamp:12}. _ 4bxpxs9 {-WebKit-line-clamp:18; 줄 바꿈: 하이픈 넣기; -webkit-box-orient: 수직; 표시:-WebKit-box; 오버플로우: 숨기기; Word-break: break-all} body.k795fxy {color: # 7a8f9a; 서체 시리즈: 에어리어, 헬베티카, 세리프 없음; Font-size:12px; 행 높이: 22px 채우기 상단: 0; 위치: 상대적; Transform: translate y (.4666667em)} body.k795fxy: before {content: ""; 화면표시: 블록; 높이: 0; Margin-top:-10px} body.k795fxy a {color: # 7a8f9a; Display: block} body.k795fxy a. _1nczan {color: # 666} body.k795fxy 버튼 {backgroor 테두리: 1px 솔리드; 경계 반지름: 3px 맨 아래: 0; 색상: # 38f 부동: 예; Font-size:12px; 행 높이:12px; 채우기: 7px13px; 위치: 절대; 오른쪽: 0} body.k795fxy.db1j6uz {margin-left: 5px} body.k795fxy. Mxyzxgv {border:1pxsolid # eee; 경계 반지름: 50%; 화면표시: 인라인-블록; 높이: 22px 행 높이: 0; 오른쪽 여백: 7px 마진탑:-2px; 수직 정렬: 가운데; 폭: 22px} 차체. k795fxy. Accwaqu{margin-right:8px}. Zdjeshn {위치: 절대; Right: 0}. tx6hcqf {-WebKit-box-orient: horizontal; -WebKit-box-align: stretch; -WebKit-align-content: flex-start; -WebKit-align-items: stretch; 표시:-WebKit-flex; -WebKit-flex-wrap: nowrap; -WebKit-justify-content: 공간-between; Width: auto}. bde3hfs {flex:1} body.k795fxy a.n1yex5p, body.; Justify-content: space-between}. k795fxy. Ec-showurl-line: hover {text-decoration: underline}. k795fxy. Ec-showurl-line {color: # 9 eacb6}. k795fxy {padding-bottom:1px} @ charset 몸. _ 886bxmw {font-size:12px; 행 높이: 22px 채우기 상단: 0; Transform: translate y (.41666667em)} body 입니다. _ 886bxmw: before {content: ""; 화면표시: 블록; 높이: 0; Margin-top:- 10px} 본문. _886bxmw a, body 입니다. _886bxmw div{color:#333}body. _ 886bxmw.d81nas8 {color: # 999; Font-size:15px; 행 높이: 25px} 본문. _886bxmw. _9mnfgfc{margin-right:5px}. _886bxmw font{color:#34b458}. Ec-2246. _ 886bxmwfont {색상: # c60a00}. Ec-2246. _ 886bxmw {font-size:16px}. Ec-2246. _ 8gpc1uj {위치: relative}. Ec-2246. _ 8gpc1uj: after {background-color: # fff; 맨 아래: 0; 색상: # 34b458 내용: "자세한 내용을 보려면 클릭하십시오." 화면표시: 인라인-블록; 왼쪽 채우기:10px; 오른쪽 채우기: 0; 위치: 절대; 오른쪽: 0} 입니다. Ec-2246. _ 8gpc1uj: before {background-image: linear-gradient (270 도, #fff, HSLA ( 맨 아래: 0; 내용: \ "\"; 높이: 29px 위치: 절대; 오른쪽: 90pxwidth: 47px} body.c69sfzc {display: flex; 글꼴 크기: 0; 오버플로우: 숨김} 본체. _ 5dn6uyv {margin-right: 8px; 최대 폭: 35px 최소 폭: 35px 수직 정렬: 맨 위} 본문. Qrpnxfs {background: URL (//nv00.cdn.bcebos.com/nv01/static/ECOM/img 배경-크기:100%100%; 키:100%; 너비: 100%} 본문. Nmkjhaf {height:35px;; Min-width: 0} body.v1ftv ns {color: # 000; 글꼴 크기:16px; Font-weight: 상속; 행 높이:1; 여백-맨 아래: 8px 오버플로: 숨기기; 텍스트 오버플로우: 줄임표; 비어 있음: nowrap}body. _ 7pt3pe5 {색상: # 999; Font-size:12px; Line-height:1} body.c69sfzc.m11ehk9img {width:/; _ 5dn6uyv {경계 반지름: 50%; 최대 폭: 40px 최소 폭: 40pxoverflow: hidden} body.v1ftv ns {color: # 333; Font-size:14px; 글꼴 두께: 700; 행 높이: 20pxmargin-bottom:0 본문. _ 7pt3pe5 {color: # 9 eacb6; 행 높이:17px; Margin-top:3px} 타오바오의 베스트셀러 광고 2024-07-04 주식 앱 순위, 타오바오에서 쇼핑하고, 안심하고 상품을 고르고, 쇼핑을 하면 더욱 안심할 수 있다. 슈퍼 브랜드, 슈퍼 할인, 빠른 생활, 원스톱! 타오! 마음에 들어요! Simba.taobao.com! 함수 (t){ "엄격한 사용"; 함수 e(t, e){ if(t){ var n = 새 날짜 (). GetTime (), I = 새 이미지; T+="&rand="+(n+Math.random ()), window.ecomlogimage | | (window.ecomlogimage) Var r=! 1; I.onload = i.onerror = i.onabort = function (o) {if (! E.charge) {if (o&&"로드"! = = o. type){ e&&e. error () 의 if (r) "error"; Else{i.src=t, r=! 0; Return}} else "load" in e&& e.load ()} i.on load = i.on error = i.ona bort = null; I.src=t}}var n, i=function(){var t, e, n, i=0, r=0, o=0, s=0,; Url \ = ([\&]+)/,f =/\? Url \ = ([\.]+) \./,d = "데이터 체크 링크", p=/[? &] TN = ([&] *)/; 함수 v(t){if (! T) 반환! 1; Var e = h.exec (t) | | f.exec (t); 돌아오다! ! E&&(h.exec(t)? E[ 1]. 길이