俺にも執筆活動させろボケ

NinjaTraderでバックテスト1

ヒストリカルデータの作成から

形式を思い出すために過去自分で作ったku-Powerを見てみる

 

20020102 045700;1000.1559 ;100
20020102 045800;1000.1213 ;100
20020102 045900;1000.1942 ;100
20020102 050000;1000.0723 ;100
20020102 050100;999.6815 ;100
20020102 050200;1000.0483 ;100
20020102 050300;999.6925 ;100
20020102 050400;1000.1166 ;100
20020102 050500;1000.1231 ;100
20020102 050600;1000.1518 ;100
20020102 050700;999.9491 ;100
20020102 050800;999.4168 ;100
20020102 050900;999.3203 ;100
20020102 051000;999.3203 ;100
20020102 051100;999.3027 ;100
20020102 051200;999.6119 ;100

 

ということは

YYYYMMDD_HHMMSS;BID(ASK?);Volume

しかしOHLCの一分足をインポートしたいのでこの形式じゃないな

BIDの部分を4分割してセミコロンでつなぐだけだな。

 

実際に取得しているレートをDBから取得してみる

f:id:nemui3900:20180328195310j:plain

UNIXをYYYYMMDD_HHMMSSに変換する

pandasでunix時間をdatetimeに変換する - How to make datas our friends

 

その前にpandasでdatetimeに変換しておく

f:id:nemui3900:20180328202138j:plain

9時間ずれておる、なんでやGMTを指定しないとだめか?

highschoolstudent.hatenablog.com

f:id:nemui3900:20180328203134j:plain

マニュアルに思いっきり書いてあった。formatも書いてあるな

f:id:nemui3900:20180328203239j:plain

いっぺんにやったら怒られた両方はでけへん

f:id:nemui3900:20180328203533j:plain

一旦UNIX→datetime

f:id:nemui3900:20180328203714j:plain

 

datetime format変換

qiita.com

stackoverflow.com

 

f:id:nemui3900:20180328205135j:plain

さてoriginをコピペした関係で10年ずれてた、あぶねえ。

できたと思ったけど降順と昇順が逆である。

 

f:id:nemui3900:20180328205555j:plain

 

qiita.com

Qiitaの中で一番ためになったまである。

f:id:nemui3900:20180328210009j:plain

あとはセミコロン区切りのCSVに変換するだけだな

7のときになんでセミコロンやねんって思ってて多分俺だけじゃないので8でもそうなのか調べに行く

NinjaTrader 8

変わらないらしい、セミコロンに一発でできない気がする。

余裕でできた、sepで指定できるね。

Pandas のデータフレームを CSV ファイルやテキストファイルに出力する – Python でデータサイエンス

そのまえにvolumeが埋まってないので100で埋める。

f:id:nemui3900:20180328212742j:plain

怒られたけど入った。

これをCSVのTXTにする。

f:id:nemui3900:20180328213634j:plain

ようやくできた。

確か通貨の概要みたいなのを作成しておかないとインポートできない気がしたので

次にやる。ようやくNinjaTrader8を触れる。