閉じる
  1. オリジナルEA開発に着手
  2. 2015年9月の運用成績
  3. 期待利得を見ればEAのスプレッド耐性がわかる
  4. そのEA、スプレッド耐性ある?
  5. 転んでも ただでは起きんぞ こうなれば
  6. Titan FX Blade口座のスプレッドはどれくらい狭い?
  7. 紙一重の差?生き残ったマーチン
  8. docomo解約して格安SIMのmineoに移行したぜ!
  9. 逆相関ロジックによるポートフォリオの重要性
  10. EAはどこに出品すべきか
閉じる
閉じる
  1. 絶望的に低ボラなドル円相場
  2. セット販売とタイアップのお知らせ
  3. EA-BANKで11月首位獲得!
  4. EA-BANKでの提供開始!
  5. 儲かるなら売らない?
  6. 新Sunflowerを出品しました
  7. 機械学習のお勉強
  8. EAはどこに出品すべきか
  9. Swallowアップデートしました
  10. Swallowのバージョンアップ検討②
閉じる

あっきー and Company

他通貨ペア価格を参照しながらのバックテスト

自作のDandelionSwallowはEUR/USD対象のEAですが、この2つのEAには実は課題がありました。

それは、円口座とした場合の複利のバックテストが正しくできないということです。

 

私のEAでは複利としたときに設定レバレッジからロットを自動算出するようにしていて、

ロット数=レバレッジ×口座残高/EURJPY価格/100,000

という計算式でロットを計算しているのですが、バックテストはEURUSDのチャートで行っているのでEURJPY価格は普通にやると取得できないんですよ。

したがって、現状までは円口座でバックテストをするときはEUR/JPYを120円に固定してエラーが出ないようにしていました(現在出品しているバージョンでもそうしています)。

ちなみに実稼働では普通に取得できる仕様なようで、フォワードでは問題ないのですが。

 

ただ最近、複数通貨を取引するEAの構想を練っていることもあり、どうにかして複数通貨ペアの価格をバックテストで一気に取得する方法がないかと調べていたところ…ありました!

いくつかあるみたいですが、こちらのりゅーきさんのブログ記事によるとCopyClose()という関数を使うといいらしい。

ということで早速有り難くコードを拝借し、EURJPY価格取得の部分に組み込んでみました。圧倒的感謝。

これでバックテストを行い、EURJPYの価格が正しく参照できているかPrintで出力してみたところ…

jpyaccount_eurjpyprice

うむ、ちゃんと取得できているようです。

これでクロス円以外のEAについても円口座での複利のバックテストができます!

またひとつ勉強になりました。

 

まあただ一発で上手くいったわけではなくて、EUR/JPY価格も取得できたりできなかったりすることがあるみたいです。

原因はよくわかりませんが、とりあえず上手くいった方法としてはEUR/USDを使ったバックテストの直前に、同じ期間のEUR/JPYでダミー的にバックテストを行ってティックチャートを作り直しておくといいみたい。

161023_offline-charts

既にあるんならいいだろとも思ったのですが、そういうことでもないみたいですね。よくわからん。

 

ともあれ、これは使えるテクニックであることは確かです。

時間がなかなか取れなくて辛いのですが、これを利用して複数通貨ペアの価格を同時監視して取引するEAの作成にもチャレンジしてみたいと思います。

関連記事

  1. Swallowの決済バグを修正

  2. 【宣伝】自作EA第2弾出品開始

  3. オリジナルEA開発に着手

  4. EAはどこに出品すべきか

  5. オリジナルEAの初取引

  6. Swallow 低ボラ回避のバージョンアップ

おすすめ記事

  1. セット販売とタイアップのお知らせ
  2. EA-BANKでの提供開始!
  3. 新Sunflowerを出品しました
  4. EAはどこに出品すべきか
  5. Sunflowerの大幅アップデート

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


Twitter

サイト内検索

スポンサードリンク

bitFlyer ビットコインを始めるなら安心・安全な取引所で
ページ上部へ戻る