JForexAPIの全フィードはIFeedDescriptorインターフェースで表されます。
各フィードはデータタイプを持っており、その要素はITimedDataを拡張したインターフェースで表され、
これらはIFeedDescriptor作成で使用されるコンストラクタを調整します。
フィードタイプ
以下表は、利用可能なフィードタイプと提供されるコンストラクタの例です。
データタイプ |
ITimedDataフィード要素 |
IFeedDescriptorサンプル |
TIME_PERIOD_AGGREGATION |
IBar |
IFeedDescriptor temp =
new TimePeriodAggregationFeedDescriptor(
Instrument.EURUSD,
Period.TEN_SECS,
OfferSide.ASK,
Filter.NO_FILTER
);
|
TICKS |
ITick |
IFeedDescriptor temp =
new TicksFeedDescriptor(
Instrument.EURUSD
);
|
PRICE_RANGE_AGGREGATION |
IRangeBar |
IFeedDescriptor temp =
new RangeBarFeedDescriptor(
Instrument.EURUSD,
PriceRange.TWO_PIPS,
OfferSide.ASK
);
|
RENKO |
IRenkoBar |
IFeedDescriptor temp =
new RenkoFeedDescriptor(
Instrument.EURUSD,
PriceRange.TWO_PIPS,
OfferSide.ASK
);
|
TICK_BAR |
ITickBar |
IFeedDescriptor temp =
new TickBarFeedDescriptor(
Instrument.EURUSD,
TickBarSize.valueOf(20),
OfferSide.ASK
);
|
POINT_AND_FIGURE |
IPointAndFigure |
IFeedDescriptor temp =
new PointAndFigureFeedDescriptor(
Instrument.EURUSD,
PriceRange.TWO_PIPS,
ReversalAmount.TWO,
OfferSide.ASK
);
OfferSide.ASK
);
|
フィード登録
以下サンプルはフィード登録を行います。
IContext.subscribeToFeedの最初のパラメータ変更すると、フィードタイプテーブルの他フィードを登録出来ます。
サンプルソースコード:
SingleSimpleFeedTest.java
複数フィード使用
以下サンプルは、複数のフィードを登録します。
サンプルソースコード:
MultiSimpleFeedTest.java
任意の価格を取得
上の2つのサンプルでは、ITimedData toStringメソッドを使用し、全フィード要素データを出力しました。
以下サンプルは終値のみ取得します。
サンプルソースコード:
RangeBarFeedTest.java
フィードヒストリー、インジケータ算出、チャートを開く
フィードヒストリーとフィードのインジケータ算出の詳細についてはリンク先を参照して下さい。
以下サンプルは、下記フィード操作を行います。:
- フィード登録し、最新のフィードデータをログ出力します
- フィードディスクリプタでヒストリーを取得します
- フィードディスクリプタでインジケータ算出します
- フィードチャートを開きます
サンプルソースコード:
FeedHistIndFromList.java