JForexAPIにはIHistoryインターフェースが含まれていて、これでユーザーは様々なタイプのヒストリカルデータにアクセスする事が出来ます。
ヒストリカルデータのタイプは以下の通りです。
IHistoryはヒストリカルデータを表示するだけのメソッドではありません。
but, in case of bars, ticks and feeds, also the last available data when used with shift=0 - the last tick, currently forming bars, range bars, tick bars, etc.
詳細については上記リストリンクを参照して下さい。
ヒストリカルデータを取得するにはIHistoryフィールドを宣言する必要があります。
private IHistory history;
次に、onStartメソッドで宣言されたhistoryフィールドにコンテキストを割り当てます。
this.history = context.getHistory();
その後に、historyフィールドを初期化すると、ヒストリカルデータが使用可能になります。
デモプラットフォームでのデータ
デモプラットフォームを使用している場合、ヒストリカルデータとリアルタイムデータは異なります。
- リアルタイムティックデータは、デモ環境の配信データから作成されます。
- ヒストリカルデータはライブ環境からデータを返します。
ティックデータはデモとライブで異なります。
これはBID/OFFERオーダーがティック価格に影響するからです。
デモ環境でBID/OFFERオーダーのテストを有効にする為、デモ環境はティックを生成します。
正確なバックテストを行うには、デモ環境でのヒストリカルデータをライブ環境でのデータと等しくしなければなりません。