5月のEA毎の成績から、また反省会(の準備)

5月不調の状況と今後の対策に向けて、まずは各EAの5月からの成績をpipsベースにてチャート化しました。

 

この取り引き結果は、自分ルール(イベント時EA停止や、早朝手動決済など)により、裁量部分があります。

5月不調の原因は、このルールが精緻化されていない為と踏んでいます。よってこのチャートは検証のとっかかり資料です。

 

ですが、分析・反省の前に、チャート作り作業を簡素化する為に、少し時間がかかりましたので、

今日はここまでにして、明日の日曜日を利用して、分析し対策する予定です。

 

今日は、主に技術的なメモみたいな内容です。

 

2014/5/1〜5/23までのEA毎の取引成績(pips単位)

 

 

 

追記:チャート形式の表示は、Wordpressの”Visualizer Library”というプラグインを使用して作成しています。

0524-01

 

この様な、各EAの取引日毎の累進加算データまでを、Access1クエリで作成できます。

ですが、上記のチャート形式に表すには、

 

 

 

 

0524-02

 

このように、データの並び替えが必要です。

チャート作成の際、手作業でコピペコピペしていましたが、

これまた面倒になりましたので、不慣れなExcelマクロを駆使して、機械的に即時作業が出来るように

しました。

っていうところで、思いのほか時間がかかりすぎてしまい、今日はここまで。。。

 

 

この、チャート元ネタ形式に変換するマクロが下記のものです。が、基本的に自分用です。

コードロジックの説明がないので、なんのこっちゃと思いますが、EA毎のチャートを作る補助処理です。

 

vbマクロサンプル  概要すら説明なしです。相当なやっつけソースで、メモです
Sub toTableData()
    Dim numRows As Integer
    Dim eaStr As String
    Dim i As Integer
    Dim j As Integer
    Dim lastRow As Integer
    Dim eaCount As Integer
    
    'コピー先シートの初期化
    Worksheets("table").Cells.Clear
    
    lastRow = Worksheets("data").Range("A1").End(xlDown).Row
    eaStr = Worksheets("data").Range("A2")
    
    '1EAあたりのデータ個数を調べる
    For i = 3 To lastRow Step 1
        If eaStr <> Cells(i, 1).Value Then
            eaCount = i - 2
            Exit For
        End If
    Next i
    
    j = 2
    '日付データをコピー(A列)
    Worksheets("table").Cells(1, 1) = "TradeDate"
    Worksheets("table").Cells(2, 1) = "date"
    Worksheets("data").Range("B" & i & ":B" & i + eaCount - 1).Copy Worksheets("table").Cells(3, 1)

    'EA毎に列をずらしてコピペコピペのロジック(B列以降)
    For i = 2 To lastRow Step eaCount
        If i > lastRow Then
            Exit For
        End If
        Worksheets("data").Range("A" & i).Copy Worksheets("table").Cells(1, j)
        Worksheets("table").Cells(2, j) = "number"
        Worksheets("data").Range("C" & i & ":C" & i + eaCount - 1).Copy Worksheets("table").Cells(3, j)
        j = j + 1
    Next i

    
End Sub

 

 

 

コメントを残す