閉じる
  1. FX自動売買を野球に例えると
  2. 2015年9月の運用成績
  3. 2015年度そこそこ好調だったEA:New Breeze v5とVBS…
  4. ABLENETが速い! VPS上のMT4のレイテンシを比較
  5. cTraderでの自動売買に挑戦
  6. ストップレベル、気にしてますか?
  7. Genesis Traderのスキャルロジックを最適化!
  8. 2015年度好調なEAその1:3BTS
  9. 期待せざるを得ない。TFRを新規導入
  10. 2016年末にあたり思うこと:EA選定基準など①
閉じる
閉じる
  1. EA-BANKで11月首位獲得!
  2. EA-BANKでの提供開始!
  3. 儲かるなら売らない?
  4. 新Sunflowerを出品しました
  5. 機械学習のお勉強
  6. EAはどこに出品すべきか
  7. Swallowアップデートしました
  8. Swallowのバージョンアップ検討②
  9. Sunflowerの大幅アップデート
  10. 出品EAの今後の処遇
閉じる

あっきー 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. 新Sunflowerを出品しました

  4. Swallowのポジション保有時間に関するコード修正

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

  6. オリジナルEAをリアル口座でテストしてみる

おすすめ記事

  1. EA-BANKでの提供開始!
  2. 新Sunflowerを出品しました
  3. EAはどこに出品すべきか
  4. Sunflowerの大幅アップデート
  5. 指値決済による累積ポジティブスリッページの分析

コメント

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

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

CAPTCHA


Twitter

サイト内検索

販売中オリジナルEA

スポンサードリンク

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