システムトレード

[EasyLanguage]手数料を設定して現実に近いシステムトレードをしよう

EasyLanguage 手数料

前回で[EasyLanguage]BracketOrderTicketで損切りや利食いをしよう利食いや損切りの設定の仕方を紹介しました。

これで、現実に近いシステムトレードが、ほとんどできるようになったかと思います。

今回は、バックテストの精度をあげる方法として、手数料を追加する方法を紹介します。

タートル 投資手法 バックテスト
この結果を見てもまだシステムトレードしないのか【タートル流投資手法の驚くべきバックテスト結果】タートルが取ったとされる投資手法をプログラム化して、バックテストを行いました。その結果としては、かなりのリターンが期待できるものでした。トレンドフォローの投資手法は、まだまだ現役であるようです。...

手数料を設定しよう

手数料追加

「チャート分析」ウィンドウで、普段通り、ストラテジーを挿入しましょう。

手数料追加

その後、「ストラテジーの設定」から「すべてのプロパティ」をクリックして、「ストラテジープロパティ」ウィンドウを開きましょう。

一般タブに、「取引手数料」というのがあるので、「金額指定」として、下に金額を入れてください。

手数料は、基本のままでは、100万円毎に432円(税込)なので、そのように入力します。

これで、手数料の設定は完了です。(実はここにはある落とし穴があるのですが、後程解説します。)

パンダはし
パンダはし
取引手数料の確認方法は過去記事マネックス証券でシステムトレードをはじめようを見てね

バックテストをしてみよう

手数料の設定が完了したら、バックテストしてみましょう。

と言っても、ストラテジーを挿入した時点でバックテストしてくれているので、パフォーマンスを確認しましょう。

手数料追加

「表示」タブから、「ストラテジーパフォーマンスレポート」をクリックしてください。

手数料追加-4

パフォーマンスレポートに、「総手数料」というのがあるので、それを確認してください。

その金額が、売買手数料となります。

パンダはし
パンダはし
ストラテジーによっては、全く無視できない金額になっていると思うよ

ここで、「総取引数」に着目してください。

総取引数は、画像では117となっています。

この取引数とは、買い取引と売り取引の合計回数が示されています。

買い取引とは、買いから入る注文で買い注文+売り注文で1とカウントします。

逆に売り取引は、空売り+買い戻しで1とカウントします。

したがって、総取引数の2倍が本当に取引した回数なので注意してください。

パンダはし
パンダはし
手数料計算の取引数は、総取引の2倍!

たしかに、手数料は117×2×432=101,088円となり、パフォーマンスレポートの数字と一致します。

ここで確認してもらいたいのですが、みなさんの手数料体系はどうなっていますか?

基本のままでは1日の約定金額が100万円ごとに432円取られることになっていると思います。

つまり、買い取引でも、1日で買い取引が完結して、かつ、その合計金額が100万以下なら432円しか取られないはずです。

ここに、手数料の落とし穴があります。

ただ、パフォーマンスレポートに出ている手数料は、もっとも高い場合で計算されています。

つまり、実際には、もうちょっと手数料が少ないはずです。ということは、バックテストの結果は今よりも多少良くなる可能性があるということです。

したがって、バックテストのプロパティで手数料を追加する方法は、ぴったりと合うわけではないですが、それなりに使えることがわかりました。

取引数の検証

パンダはし
パンダはし
さっき、買い取引は買い注文+売り注文って言ってたけど本当??

こう思う方もいるかと思います。

そこで、今のストラテジーから空売り注文をなくして、バックテストしてみます。

パンダはし
パンダはし

もし、パフォーマンスレポートの売り取引が、「空売り+買い戻し」なら、その欄は計算されないはずです。

手数料追加-6

上の画像のように、ストラテジーを変更します。そして、再びバックテストをしてみた結果が下の画像です。

手数料追加-7

予想通り、売り取引がゼロとなりました!

これで、買い取引は買い注文+売り注文で、売り取引が空売り+買い戻しということがわかりました。

一方、もうひとつ疑問が残ります。

それは、買うだけかって、まだ売り注文が出ていない分も買い取引にカウントしているのでは?という疑問です。

これは、その通りです。つまり、手数料を1回分多く計上している可能性がある点に、注意が必要です。

より正確に手数料を出すには?

パンダはし
パンダはし
厳密な手数料を知りたいよー!

厳密な手数料を知るにはどうすればよいかというと、プログラム上でどうにかするしかありません。

例えば、取引回数をカウントする手があると思います。

手法としては、

売買条件に合致して、売買が行われたら、カウントを1増やす文を作ります。

このときに、Date関数で日付を入手しておいて、現在の日付とひとつ前の取引での日付が同じ、かつ、売買代金が100万以下であれば、カウントしないようにしておけば、手数料算出用の取引数がわかるようになります。

こうすれば、さらに現実に近い手数料が算出できます。

パンダはし
パンダはし
この方法がプログラム化できたらここで公開するね

さいごに

手数料の設定をしましたが、だいたいの金額ならわかるという結果になりました。

ただし、多めにカウントされる傾向にある点に注意です。

ちなみに、トレーディングアプリによる最適化(バックテスト)、通称OptimizationAPIでも、結果として取引数をアウトプットすることが可能です。

手数料追加

OptimizationAPI自体のやり方は、次々回記しますので、参考にしてください。

次回は、その他の細かい設定方法に関して紹介します。

タートル 投資手法 バックテスト
この結果を見てもまだシステムトレードしないのか【タートル流投資手法の驚くべきバックテスト結果】タートルが取ったとされる投資手法をプログラム化して、バックテストを行いました。その結果としては、かなりのリターンが期待できるものでした。トレンドフォローの投資手法は、まだまだ現役であるようです。...

システムトレード過去記事一覧Next→Coming Soon

Nocchi_nochilog(のっち)
少額投資をこよなく愛する1児のパパ&サラリーマン。
お小遣い制でも負けずに投資をしています。

知るだけで暮らしが豊かになる知識を発信中!
若いうちから投資することの重要性を伝えるべく、ブログの記事を更新しています。

特にインスタグラムでは、1日1分で自然とお金の知識が身につくような情報を発信しています。
ぜひ合わせてご覧ください!

下のアイコンから飛べます!
\ Follow me /

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です