到奇狐勝券首頁 奇狐社區論壇 購買奇狐勝券 試用奇狐勝券
 
論壇首頁 你可以在這裡編輯你的資料,查看短訊,訂閱主題和論壇參數等等 免費會員註冊 會員列表 論壇幫助 論壇日曆 論壇搜索 加入我的最愛 登出論壇  
奇狐社區論壇 : Powered by vBulletin version 2.3.0 奇狐社區論壇 > 指標公式 > 應用交流 > 數據轉換
  上一主題   下一主題
作者
主題 發表新主題    回覆主題
mowtua
中級會員

註冊日期: Dec 2005
來  自:
文章數量: 55

數據轉換

GET數據轉換


_Barpos := BARPOS;
_Year := YEAR;
_Month := MONTH;
_Day := DAY;
_Datatype := DATATYPE;
_Marketlabel := MARKETLABEL;
_StkName := STKLABEL;
_Open := OPEN;
_High := HIGH;
_Low := LOW;
_Close := CLOSE;
_Vol := VOL;
_Amount := AMOUNT;

<%
Dim Marketlabels,Stknames,Datatypes,Opens,Highs,Lows,Closes,Vols,Amounts,Years,Months,Days
Barposes = ffl.vardata("_Barpos")
Years = ffl.vardata("_Year")
Months = ffl.vardata("_Month")
Days = ffl.vardata("_Day")
Datatypes = ffl.vardata("_Datatype")
Marketlabels = ffl.vardata("_Marketlabel")
Stknames = ffl.vardata("_Stkname")
Opens = ffl.vardata("_Open")
Highs = ffl.vardata("_High")
Lows = ffl.vardata("_Low")
Closes = ffl.vardata("_Close")
Vols = ffl.vardata("_Vol")
Amounts = ffl.vardata("_Amount")

If ReportFolderStatus("D:\Data") = 0 Then CreatFolder()
SelectCreatAsciiDataType(Datatypes)

Function SelectCreatAsciiDataType(Types)
Select Case Types
Case 0

Case 1

Case 2
Call CreateAsciiDataMin("05min","W")
Case 3
Call CreateAsciiDataMin("15min","SW")
Case 4
Call CreateAsciiDataMin("30min","SS")
Case 5
Call CreateAsciiDataMin("60min","M")
Case 6
Call CreateAsciiDataDayes()
Case 7

Case 8

Case 9

Case 10

Case 11

Case Else

End Select
End Function

Function CreateAsciiDataMin(FolderName,DataName)
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateTrue = -1,TristateFalse = 0,TristateUseDefault = -2
Dim Fso,FileName,TextStream,LineData,ArrayLast,LastDate,AforeDate,AforeYear,AforeMonth,AforeDay
Set Fso = CreateObject("Scripting.FileSystemObject")
FileName = "D:\Data\" & FolderName & "\" & DataName & StkNames & ".TXT"
Set TextStream = Fso.OpenTextFile(FileName, ForWriting, True)
ArrayLast = Ubound(Barposes)
LastDate = Years(ArrayLast) & "-" & Months(ArrayLast) & "-" & Days(ArrayLast)
For i = 0 To ArrayLast
AforeDate = DateAdd("d",(i-ArrayLast),LastDate)
AforeYear = Year(AforeDate)
AforeMonth = Month(AforeDate)
If Len(AforeMonth) = 1 Then AforeMonth = "0" & AforeMonth
AforeDay = Day(AforeDate)
If Len(AforeDay) = 1 Then AforeDay = "0" & AforeDay
Opens(i) = FormatNumber(Opens(i),3,,,TristateFalse)
Highs(i) = FormatNumber(Highs(i),3,,,TristateFalse)
Lows(i) = FormatNumber(Lows(i),3,,,TristateFalse)
Closes(i) = FormatNumber(Closes(i),3,,,TristateFalse)
Vols(i) = FormatNumber(Vols(i),3,,,TristateFalse)
Amounts(i) = FormatNumber(Amounts(i),3,,,TristateFalse)
LineData = AforeMonth &"/" & AforeDay &"/" & AforeYear& ", " & Opens(i) & ", " & Highs(i) & ", " & Lows(i) & ", " & Closes(i) & ", " & Vols(i) & ", " & Amounts(i)
TextStream.WriteLine LineData
Next
TextStream.Close
End Function

Function CreateAsciiDataDayes()
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Const TristateTrue = -1,TristateFalse = 0,TristateUseDefault = -2
Dim i,Fso,FileName,TextStream,LineData,AforeLast,ArrayLast
Set Fso = CreateObject("Scripting.FileSystemObject")
FileName = "D:\Data\Dayes\" & "A" & StkNames & ".TXT"
IF ReportFileStatus(FileName) = 0 Then
Set TextStream = Fso.OpenTextFile(FileName,ForWriting,True)
ArrayLast = Ubound(Barposes)
For i = 0 To ArrayLast
If Len(Months(i)) = 1 Then Months(i) = "0" & Months(i)
If Len(Days(i)) = 1 Then Days(i) = "0" & Days(i)
Opens(i) = FormatNumber(Opens(i),3,,,TristateFalse)
Highs(i) = FormatNumber(Highs(i),3,,,TristateFalse)
Lows(i) = FormatNumber(Lows(i),3,,,TristateFalse)
Closes(i) = FormatNumber(Closes(i),3,,,TristateFalse)
Vols(i) = FormatNumber(Vols(i),3,,,TristateFalse)
Amounts(i) = FormatNumber(Amounts(i),3,,,TristateFalse)
LineData = Months(i) &"/" & Days(i) & "/" & Years(i) & ", " & Opens(i) & ", " & Highs(i) & ", " & Lows(i) & ", " & Closes(i) & ", " & Vols(i) & ", " & Amounts(i)
TextStream.WriteLine LineData
Next
TextStream.Close
ElseIf ReportFileStatus(FileName) = 1 Then
AforeLast = 0
Set TextStream = Fso.OpenTextFile(FileName, ForReading, False)
Do Until TextStream.AtEndOfStream = True
TextStream.ReadLine
AforeLast = AforeLast+1
Loop
TextStream.Close
Set TextStream = Fso.OpenTextFile(FileName,ForAppending,False)
ArrayLast = Ubound(Barposes)
For i = AforeLast To ArrayLast
If Len(Months(i)) = 1 Then Months(i) = "0" & Months(i)
If Len(Days(i)) = 1 Then Days(i) = "0" & Days(i)
Opens(i) = FormatNumber(Opens(i),3,,,TristateFalse)
Highs(i) = FormatNumber(Highs(i),3,,,TristateFalse)
Lows(i) = FormatNumber(Lows(i),3,,,TristateFalse)
Closes(i) = FormatNumber(Closes(i),3,,,TristateFalse)
Vols(i) = FormatNumber(Vols(i),3,,,TristateFalse)
Amounts(i) = FormatNumber(Amounts(i),3,,,TristateFalse)
LineData = Months(i) & "/" & Days(i) &"/" & Years(i) & ", " & Opens(i) & ", " & Highs(i) & ", " & Lows(i) & ", " & Closes(i) & ", " & Vols(i) & ", " & Amounts(i)
TextStream.WriteLine LineData
Next
TextStream.Close
End If
End Function

Function ReportFileStatus(Filespec)
Dim Fso, Status
Set Fso = CreateObject("Scripting.FileSystemObject")
If (Fso.FileExists(Filespec)) Then
Status = 1
Else
Status = 0
End If
ReportFileStatus = Status
End Function

Function ReportFolderStatus(FolderDir)
Dim Fso, Status
Set Fso = CreateObject("Scripting.FileSystemObject")
If (Fso.FolderExists(FolderDir)) Then
Status = 1
Else
Status = 0
End If
ReportFolderStatus = Status
End Function

Function CreatFolder()
Dim Fso
Set Fso = CreateObject("Scripting.FileSystemObject")
Dim Folder
Set Folder = Fso.CreateFolder("D:\Data")
Set Folder = Fso.CreateFolder("D:\Data\Dayes")
Set Folder = Fso.CreateFolder("D:\Data\60min")
Set Folder = Fso.CreateFolder("D:\Data\30min")
Set Folder = Fso.CreateFolder("D:\Data\15min")
Set Folder = Fso.CreateFolder("D:\Data\05min")

End Function
%>
0;

向版主報告此篇 | 查IP位址
Old Post 2008-12-27 15:22
mowtua 現在離線 點選這裡查看 mowtua 的個人資料 點選這裡給 mowtua 傳送一條短訊 查找更多關於 mowtua 的文章 增加 mowtua 至你的好友列表 編輯/刪除訊息 引用回覆
mowtua
中級會員

註冊日期: Dec 2005
來  自:
文章數量: 55

數據轉換 ------------轉貼的文章

向版主報告此篇 | 查IP位址
Old Post 2008-12-27 15:23
mowtua 現在離線 點選這裡查看 mowtua 的個人資料 點選這裡給 mowtua 傳送一條短訊 查找更多關於 mowtua 的文章 增加 mowtua 至你的好友列表 編輯/刪除訊息 引用回覆
全部時間均為台灣時間, 現在時間為13:41 發表新主題    回覆主題
  上一主題   下一主題
顯示可列印版本 | 訂閱此主題

論壇跳轉:
主題評分:

論壇規定:
你不可以發表新主題
你不可以回覆文章
你不可以上傳附件
你不可以編輯自己的文章
HTML語法禁止
vB 語法核准
表情符號核准
貼圖語法[IMG]核准
 

本站所有內容未經作者授權禁止轉貼節錄, 發表言論僅供參考勿作為投資決策依據。瀏覽本站請使用 IE 5.5 以上版本, 最佳瀏覽解析度 1024 x 768 全彩。

Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.  聯絡我們