JForexにはアドバンスド設定というものがありまして、普段はあまり目につかないところだと思いますが、ここで個人的に2つのポイントが疑問に思いました。

jforex_setei

前にも一部書きましたが、ここをデューカスコピージャパンのセミナーで、山中先生に聞いた見解を含めて、ここを改めてシェアしたいと思います。

例外は止めるべきか、どうすべきか?

ここは自動売買をする人(ストラテジーを利用する人)だけ関係するところであります。普通のトレードをしていたら例外がでることはまず無いと思いますので。

ストラテジーを自分で作ってテストで走らせていると、例外が生じることがあります。

私の場合は、なぜか5分足ができるタイミングで、リアルタイムのデータが取得できず、例外が生じる場合がありました。

その場合は、JFExceptionが例外処理をするわけですが、通常は止まります。

この設定は、その時に止めるかどうかということを決める設定です。

私の場合はまず、自分で例外が発生した場合、どう処理をするか、自分で書きました。

その上で、もしJFExceptionで処理する場合は止めるという設定にしました。

というのも、山中先生に教えていただいたのですが、「try〜catch」で書いたとしても、catchできない例外が結構あるということですので、何が起こるかわからないのでひとまず止めるべきだということでした。

確かにそのとおりだと思います。

JForexの価格データの更新処理に関する設定はどうする?

これは2つの選択肢があります。

  1. 「更新の遅れを避けるために古いティックをスキップをする」
  2. 「価格データの履歴が抜け落ちることを避けるため、全てのティックを処理する」

この2つです。

「更新の遅れを避けるために古いティックをスキップをする」

の場合、更新が遅れないのはいいけれど、テクニカルがおかしくなるのでは?それってバックテストから逸脱した結果になるのでは?と思いました。

「価格データの履歴が抜け落ちることを避けるため、全てのティックを処理する」

の場合、多分テクニカルが正確に判断されて、バックテストの結果により近い結果がフォーワードで出やすくなるかもしれない。でも、更新が遅れるのは嫌だな。と思いました。

これも山中先生にアイディアを頂き、2つ並べて見ればわかりますが、殆ど変わりません。とのことでした。

そしてこれも自分で実際にやってました!

まず、リアルタイムデータを目視で見てみました。

これはなんとなく若干の違いがあるようですが(実際に昔の東証のシステムでも端末による違いがよくあったそうです)、殆どわかりません。

次にテクニカルデータをコンソールに出して見てました。

これは使うテクニカルによって程度の差がありますが、小数点以下が、若干変わる程度でした。

よって殆ど変わりません。よってこれはどっちを選んでも良いのではないかと思います。

ちなみに山中先生はどちらも殆ど変わらないが、「価格データの履歴が抜け落ちることを避けるため、全てのティックを処理する」を設定しているとのことでした。

気になる人はここは自分で確認してみると良いかと思われます。

そうすると、本当の感覚がわかりますよ♪

管理人オリジナルJForexツールが貰える!デュカースコピーキャンペーンについてはこちらから