閉じる
  1. MT4の動作がクソ重いから軽くするよう頑張ってみた
  2. 2015年の確定申告終了!
  3. セット販売とタイアップのお知らせ
  4. ブレイクアウトEAの原型完成
  5. Swallowタイアップキャンペーンと裏話
  6. シロクマさんEA復活傾向か?
  7. 転んでも ただでは起きんぞ こうなれば
  8. ゴゴジャンの中の人に初めて会った話
  9. 期待せざるを得ない。TFRを新規導入
  10. Nekoboo_Core2_Spec.Lを新規導入!
閉じる
閉じる
  1. 言い訳をさせてくれ
  2. 魔改造Ku-chart
  3. お名前.com FX VPSのレイテンシー計測
  4. EA-1グランプリ参加
  5. 全力アフィ記事
  6. 緋焔 販売開始!
  7. 絶望的に低ボラなドル円相場
  8. セット販売とタイアップのお知らせ
  9. EA-BANKで11月首位獲得!
  10. EA-BANKでの提供開始!
閉じる

あっきー 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. 試用版EAの配布を始めてみる

  2. Swallow試用版を用意しました

  3. ブレイクアウトEAの開発進捗

  4. 緋焔 販売開始!

  5. Swallowのバージョンアップ検討②

  6. EA-BANKでの提供開始!

おすすめ記事

  1. お名前.com FX VPSのレイテンシー計測
  2. 緋焔 販売開始!
  3. セット販売とタイアップのお知らせ
  4. EA-BANKでの提供開始!
  5. 新Sunflowerを出品しました

コメント

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

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

CAPTCHA


Twitter

サイト内検索

販売中オリジナルEA

マネーアップ

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