トップ  >  リファレンス  >  ストラテジーAPI  >  チャートオブジェクト  >  インジケータチャートパネル
インジケータチャートパネル

overChartがfalseのインジケータがチャート上にプロットされると、新しいインジケータパネルが作成されます。
(overChartについては https://www.dukascopy.com/client/javadoc/com/dukascopy/api/indicators/IndicatorInfo.html#isOverChart())indicator )
ストラテジーから、以下パネル操作を実行できます。
  • 同じパネルにインジケータを追加します。
  • パネルにチャートオブジェクトを追加します(他オブジェクトも実行します)。
  • パネルからすべてのインジケータを削除して、パネルを削除します。

チャートオブジェクトを各IChartPanelハンドラ(メインチャートを含む)に実装するには注意しなければなりません。
  • チャートパネルのキーはユニークです。
  • 異なるチャートパネルに同じIChartObjectを追加する事は出来ません。

インジケータとチャートオブジェクトの作成

addIndicatorメソッドを使用して同じIChartPanelに他インジケータを追加する事が出来ます。
IChartPanel.addメソッドを使用してチャートオブジェクトを追加出来ます。

IIndicator.getIndicatorInfo().isOverChart() = falseのインジケータのみ、インジケータパネルに追加できる事に注意して下さい。
isOverChart() = trueの場合はメインチャートにのみ追加できます。

以下サンプルは、異なる期間の2つのRSIインジケータを同じインジケータパネルに追加します。


サンプルソースコード:IndicatorPanelAddStochAndHLines.java





インジケータとインジケータパネルの削除

IChartPanel.removeIndicatorメソッドを呼び出して、インジケータを削除します。
最後のインジケータパネルのインジケータを削除すると、パネルも削除されます。
checking IChartPanel.isActive()でメインチャートの下に、未だパネルがあるかチェック出来ます。
全アクティブインジケータパネルはIChart.getSubPanels()メソッドを呼ぶ事で取得出来ます。

以下サンプルは、ストラテジー停止時に全インジケータパネルを削除します。



@Override
public void onStop() throws JFException {
    
    // 全インジケータパネルを削除
    while(chart.getIndicatorPanels().size() > 0){
        IChartPanel panel = chart.getIndicatorPanels().get(0);
        for (IIndicator indicator : panel.getIndicators()) {
          panel.removeIndicator(indicator);
        }
    }
}





スポンサーリンク

スポンサーリンク
検索
リファレンスツリー


Copyright ©2016 JForexAPIで自動売買させ隊! All Rights Reserved.


Top

inserted by FC2 system