運用設計のうち、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名)