設計:PDCA(1) | シストレの現実

シストレの現実

インフラ構築のプロが、シストレをゼロから始める記録です。
リーン・スタートアップの考えを取り込み、Expert Adviser を作っていきます。

教えるような大したものではなく、ユースケースの一つになれば幸いです。

運用設計のうち、PDCAの部分です。

以前にも書いた通り、相場という変化するものを対象にするシステムという特性上、コマメな修正で最適化する必要があります。
そのためにも、非常に重要な仕組みといえます。

今回はまず記録対象のログ仕様を決めます。

ログ仕様

まずはログの取得ですか、不足の無いように取得します。
主に通貨情報取引情報を別々のログとして記録します。

共通仕様
・文字コード:UTF-8(できる限り英数字のみ)
・記録形式:CSV(ダブルクォーテーション無し)


通貨情報の仕様
[記録書式]
・ファイル名  :currency20YY.csv
・記録タイミング:時間毎

[記録内容]
・記録日時(yyyy/mm/dd hh:mm:ss形式)
・対象通貨(GBP/JPYのみ)
・通貨始値(小数点第三位まで)
・通貨終値(小数点第三位まで)
・通貨最高値(小数点第三位まで)
・通貨最低値(小数点第三位まで)
・短期移動平均値(小数点第三位まで)
・長期移動平均値(小数点第三位まで)
・RSI値(小数点第一位まで)
・MACD短期値(小数点第三位まで)
・MACD長期値(小数点第三位まで)

→ 1時間に83バイト×24時間×365日=年間727,080バイト。
 全然ラクショーな量ですね。


取引情報の仕様
[記録書式]
・ファイル名  :order_ea1_20YY.csv
・記録タイミング:取引毎

[記録内容]
・取引日時(yyyy/mm/dd hh:mm:ss形式)
・取引通貨(GBP/JPYのみ)
・取引売買(SELL/BUY)
・取引種別(Open/Close)←「新規」「決済」
・取引価格(小数点第三位まで)
・チケット番号(文字列、制限なし)←ポジションの通し番号
・マジックナンバー(文字列、制限なし)←注文の通し番号
・取引収支(文字列、制限なし)
・注文成否(0/-1)

→ こっちは取引ごとなので、計算するまでもなく、サイズは問題なしです。


移動平均などの指標値は、分析するアプリケーション側で実装する手もありますが、テクニカルオシレータ系の値は計算が複雑なんで、一緒に記録したいと考えています。
※MACDやRSIは使いたい予定があるので、一緒に記録します。

なお、通貨情報はMT4でいつでも取り出せるはずです。
しかしながら、分析に使用するアプリケーション上で扱うにはCSVになっている方が都合が良いので、今回は一緒に記録します。


恐らく開発中に微修正はあるでしょうが、現段階はこの程度ということで。

※修正(2016/01/02)
複数のEAを運用できるようにログ名称の修正。
order20YY.csv → order_ea1_20YY.csv
(ea1部分がEA名)