Forex StudioのDatacenterで取得したティックデータをExcelに取り込む

今回はマニアックな人向け。
Forex StudioのDatacenterで取得したティックデータをExcelに取り込み、ついでにスプレッドを計算するVBAのサンプルです。
下準備としてprice/Historyフォルダに格納されているzipを適当なフォルダに解凍してください。
FXCM-Tを取り込む場合は1日数十万レコードになりますのでExcel2007以降でないと取り込めません。
Option Explicit

'ティックファイル(.tck)を読み込む
Sub Import_TickData()

Dim filename
Dim filenum As Integer
Dim filepos As Long

Dim wkBook As Workbook
Dim wkSheet As Worksheet
Dim rowpos As Long

Dim timestamp_byte(7) As Byte
Dim bytepos As Integer
Dim timestamp As Double

Dim ticktime As Date
Dim ask As Double
Dim bid As Double
Dim spread As Double

'ティックファイル選択
filename = Application.GetOpenFilename("tick data (*.tck), *.tck", , "ティックファイルを開く")
If filename = False Then Exit Sub

'出力ブック作成
Set wkBook = Application.Workbooks.Add(xlWBATWorksheet)
Set wkSheet = wkBook.Worksheets(1)
With wkSheet
.Name = Dir(filename)
.Cells(1) = "時間"
.Cells(2) = "Bid"
.Cells(3) = "Ask"
.Cells(4) = "Spread"
End With
rowpos = 2

'ティックファイルを開く
filenum = FreeFile
Open filename For Binary Access Read As filenum

For filepos = 1 To LOF(filenum) Step 40

'LongLong型の読み取り
Get filenum, filepos, timestamp_byte()
timestamp = 0
For bytepos = 0 To 7
timestamp = timestamp + timestamp_byte(bytepos) * 256# ^ bytepos
Next

'LongLong型にシリアル化された日時をVBAのDate型に変換
timestamp = timestamp / 10000000#
timestamp = Fix(timestamp)
timestamp = timestamp / 86400# - 693593#
ticktime = CDate(timestamp)

'Ask/Bidの読み取り
Get filenum, filepos + 8, ask
Get filenum, filepos + 16, bid

'スプレッドの計算
spread = ask - bid
If bid < 5 Then
spread = Round(spread * 10000, 1)
Else
spread = Round(spread * 100, 1)
End If

'シート出力
With wkSheet
.Cells(rowpos, 1) = ticktime
.Cells(rowpos, 2) = bid
.Cells(rowpos, 3) = ask
.Cells(rowpos, 4) = spread
End With
rowpos = rowpos + 1

Next

'ティックファイルを閉じる
Close filenum

MsgBox "読み込み完了!"

End Sub

実行結果
ティック取込

使い道は…あまりありません(爆)。MT4のストラテジテスターにティックデータのAskとスプレッドが使えれば理想なのですが、プロセスパッチとかの壁が高すぎます(/_;) テキストにしてPHPやら何やらで加工しまくれば、あるいは…?(こちら方面はあまり調べてない)

あと自分の環境だけかもしれませんが、Dukascopy-Tのクロス円は何故か100分の1の値段が入っていました。hstファイル(一括)でエクスポートしてMT4のオフラインチャートで確認しても100分の1の値段だったので、ダウンロード時に何か問題があったのかもしれません。FXCM-Tは問題ありませんでした。
時間はGMTですので適宜修正して下さい。

Forex Studioの開発は中断しているようですが、開発元 Softgate Limited のウェブサイトがリニューアルされていました。今後に期待しましょう。

コメント

Secret

プロフィール

nekonote

Author:nekonote

EAを作るのが趣味になってしまったらしい。

あとマニアックな運用とかetc...その時の気分で書き殴る(?)
そんなブログ

※当ブログ記事へのリンクはご自由にどうぞ

 
運用は…fx-onのみんなのMT4に公開しているかも?
fx-on 通常会員ページ
fx-on 出品者ページ

最新記事
最新コメント
月別アーカイブ
カテゴリ
検索フォーム
ブログランキング
にほんブログ村 為替ブログ システムトレード 自作EA派へ





QRコード
QR
RSSリンクの表示
リンク
FX情報サイト
 優秀トレーダーの投資法をゲット!
FX投資情報コミュニティfx-on.com


国内MT4取扱会社
外為ファイネスト カコテン iOsMA (type DI) EURAUD タイアップキャンペーン

アヴァトレード・ジャパン株式会社 カコテン iOsMA (type DI) EURAUD タイアップキャンペーン

FOREX.com×タイアップキャンペーン☆Beatrice-07 FXTF×ForexSolidタイアップキャンペーン



自作EA紹介


EAフォワード集計結果
海外MT4業者
海外業者を選ぶ際は、まず金融庁の「注意喚起」を熟読して下さい。無登録業者で事故っても自己責任ですよ!
自分はゲムトレード&GEMFOREXに突撃してみましたw




自分もカコテンシリーズを幾つか出品しています。 運用結果でネタが集まれば時々記事にします。

ゲムトレードはEAの将来価値をリスクヘッジするには良い仕組みを提供していると思います。ただし本当に実力のあるEAはfx-on等から買った方が良いでしょう。
取引明細には現れませんがIBのような仕組みでゲムトレードへ報酬が渡っていますので、単一EAの長期運用ではデメリットが成績に現れると思われます。

※繰り返しますが海外業者でトラブっても自己責任です。お忘れなく!
FX専用VPS
レンタルサーバーなら使えるねっと



みんなのMT4
紫色:リアル口座
水色:デモ口座
ねこぱんち | fx-on.com
ねこぱんちMAXでも | fx-on.com
ねこのまえあし | fx-on.com
€$ XM demo | fx-on.com
£$ FxPro demo | fx-on.com
€¥ IFC Markets demo 2nd! | fx-on.com
£¥ IC Markets demo  | fx-on.com
$¥ MGK Global demo | fx-on.com
BigBoss demo AUDJPY | fx-on.com
€x LandFX demo | fx-on.com
KAKO10 iIchimoku リアル OANDA | fx-on.com
KAKO10 iIchimoku デモ FXTF | fx-on.com
KAKO10_iMA(H27.5~) | fx-on.com
KAKO10 iMA デモ Axiory(運用終了) | fx-on.com
KAKO10 iMA デモ Axiory新鯖 | fx-on.com
Ava demo iOsMA方向性スイング(運用終了) | fx-on.com
カコテン iOsMA (type DI) デモ Centrade | fx-on.com
カコテン iMomentum (type DI) デモ Arena | fx-on.com
瞬殺!!! NCSEC demo ※運用終了 | fx-on.com
GEMFOREX demo 新サーバーお試し ※破綻 | fx-on.com
 | fx-on.com
 | fx-on.com
 | fx-on.com
 | fx-on.com