
- システムトレードをやってみたいけど手動注文が大変。何とかならないかな?
- 岡三RSSで発注したいけど実際にどうやるのかもっと詳しく手順を知りたい。
- というか、サンプルファイルがほしいんだけど...。
発注作業の部分は正直できるだけ楽をしたいですよね。私は株のシステムトレードでは毎日50銘柄くらいに対して注文を出していました。前日夜に指値で仕掛けて次の日は放置です。
発注作業自体は岡三オンライン証券の岡三RSSでテンプレートを作っていたので10分くらいで完了です。
今回、発注作業用のサンプルファイルを作ったので公開します。
例として『システムトレードの達人』で発生させたシグナルをテンプレートで発注する手順を説明します。
それでは見ていきましょう。
※テンプレートの使用は自己責任でお願いします。
株の注文用テンプレート【岡三RSS】(Excelマクロ使用)
テンプレートをダウンロードする場合は以下のリンクからどうぞ。
岡三RSS現物株注文テンプレートこのテンプレートは指値買い、指値売りの注文を行うことを前提としています。それ以外の成行注文などの場合は適宜Excelを修正して使用してください。
また、事前準備として岡三RSSのインストールが完了し、Excel VBAの参照設定も済んでいることが必要です。
テンプレートは『システムトレードの達人』などのシグナル生成ソフトと合わせて使うことを想定しています。以下では『システムトレードの達人』の例で説明します。
『システムトレードの達人』で売買シグナルを発生させた結果が下の図になります。

この結果をCSVファイルへ書き出すため、「CSVへ出力」のボタンを押します。ファイル保存画面で好きなファイル名を指定して保存します。これで売買シグナルが格納されたCSVファイルができました。
下の図は保存したCSVファイルをExcelで開いたところです。

ここで、買いシグナル部分の「銘柄コード」「枚数」「発注方法」をテンプレートの「現物買」シート上のA列、F列、T列にそれぞれ貼り付けます。
貼り付けた結果が下の図です。

正常に貼り付けができていればE列に正しい指値の単価が表示されます。
準備がよければ一番左上のセルにある「現物買」のボタンを押すと、マクロが動作して注文が実行されます。

注文結果は「注文照会」のシートで確認することができます。もし注文照会がうまく動作しない場合は岡三RSSをインストールしたフォルダへのパスが異なっていることが影響している場合がありますので、それぞれのインストール場所に合わせて修正してください。

これで売買シグナル発生ソフトから銘柄コード等をコピーペーストして岡三RSSに買い注文することができました。
売り注文を行う場合は買い注文と同様の作業を、今度は「現物売」のシートに対して行います。ここで注意点は、売りの場合は数量は保有している数量に合わせるということです。
そのため、「保有照会」シートで保有数量を確認するとよいでしょう。
ちなみに、マクロの中身は以下のようになっています。テンプレートのExcelシートでは「現物買」ボタンを押すとサブルーチン「TradeBuy」が実行され、「現物売」ボタンを押すとサブルーチン「TradeSell」が実行されるようにボタンとサブルーチンの対応付けがしてあります。
Sub TradeBuy()
Dim i As Long
Dim norder As String
With Worksheets("現物買")
For i = 4 To 1000
If .Cells(i, 19) = 1 Then
norder = NEWORDER(.Cells(i, 1), .Cells(i, 2), .Cells(i, 3), .Cells(i, 4), .Cells(i, 5), .Cells(i, 6), .Cells(i, 7), .Cells(i, 8), .Cells(i, 9), .Cells(i, 10), .Cells(i, 11), .Cells(i, 12), .Cells(i, 13), .Cells(i, 14), .Cells(i, 15), .Cells(i, 16), .Cells(i, 17))
End If
Next i
End With
End Sub
Sub TradeSell()
Dim i As Long
Dim norder As String
With Worksheets("現物売")
For i = 4 To 1000
If .Cells(i, 19) = 1 Then
norder = NEWORDER(.Cells(i, 1), .Cells(i, 2), .Cells(i, 3), .Cells(i, 4), .Cells(i, 5), .Cells(i, 6), .Cells(i, 7), .Cells(i, 8), .Cells(i, 9), .Cells(i, 10), .Cells(i, 11), .Cells(i, 12), .Cells(i, 13), .Cells(i, 14), .Cells(i, 15), .Cells(i, 16), .Cells(i, 17))
End If
Next i
End With
End Sub
以上、テンプレートを使った注文方法の説明でした。
発注作業を効率化できればその分だけ売買戦略構築などに注力できてよいと思います。今後もできるだけ負荷を減らしつつシステムトレードを行っていきたいと思います。