Dukascopy
 
 
Wiki JStore Search Login

Attention! Read the forum rules carefully before posting a topic.

    Try to find an answer in Wiki before asking a question.
    Submit programming questions in this forum only.
    Off topics are strictly forbidden.

Any topics which do not satisfy these rules will be deleted.

Getting exception: adding STOCH indicators on chart
 Post subject: Getting exception: adding STOCH indicators on chart Post rating: 0   New post Posted: Fri 04 May, 2012, 13:05 

User rating: 0
Joined: Fri 04 May, 2012, 12:35
Posts: 9
Location: Japan, Tokyo
Hi, I have read JForex Wiki article: https://www.dukascopy.com/wiki/#Add_indicators_on_chart
and trying to add STOCH indicators on chart with optional field but getting following exceptions.
Can you please help me out what is expected option values for STOCH?
It would be nice if exception can includes expected option values.
Caused by: java.lang.IllegalArgumentException: Unexpected optional parameter [com.dukascopy.api.IIndicators$MaType]=[EMA] for index [2]
   at com.dukascopy.charts.math.dataprovider.AbstractDataProvider.initIndicatorInputs(AbstractDataProvider.java:548)
   at com.dukascopy.charts.math.dataprovider.AbstractDataProvider.addIndicator(AbstractDataProvider.java:410)
   at com.dukascopy.charts.data.AbstractDataSequenceProvider.addIndicator(AbstractDataSequenceProvider.java:497)
   at com.dukascopy.charts.chartbuilder.DataManagerImpl.addIndicator(DataManagerImpl.java:74)
Here is my code:
    @Configurable("FastKPeriod")
    public int fastKPeriod = 8;
   
    @Configurable("SlowKPeriod")
    public int slowKPeriod = 3;

    @Configurable("MAType")
    public MaType mAType = MaType.EMA;

    public void onStart(IContext context) throws JFException {
        this.context = context;
        this.engine = context.getEngine();
        this.indicators = context.getIndicators();
        this.console = context.getConsole();
        this.history = context.getHistory();

        Set<Instrument> subscribedInstruments = context.getSubscribedInstruments();
        if (!subscribedInstruments.contains(this.instrument)) {
            subscribedInstruments.add(this.instrument);
        }
        context.setSubscribedInstruments(subscribedInstruments);
        IChart chart = context.getChart(this.instrument);
        IIndicator indSTOCH = indicators.getIndicator("STOCH");

        for (int i = 0; i < indSTOCH.getIndicatorInfo().getNumberOfInputs(); i++) {
             InputParameterInfo inputParameterInfo = indSTOCH.getInputParameterInfo(i);
             inputParameterInfo.setOfferSide(side);
             inputParameterInfo.setAppliedPrice(IIndicators.AppliedPrice.CLOSE);
        }                                                   

        chart.addIndicator(indicators.getIndicator("STOCH"), new Object[] { fastKPeriod, slowKPeriod, mAType, slowDPeriod, mAType});
        chart.addIndicator(indicators.getIndicator("RSI"), new Object[] { rsiPeriod});
    }


 
 Post subject: Re: Getting exception: adding STOCH indicators on chart Post rating: 0   New post Posted: Fri 04 May, 2012, 14:37 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
Indicators exprect primitive types as their optional inputs, thus you need to change
chart.addIndicator(indicators.getIndicator("STOCH"), new Object[] { fastKPeriod, slowKPeriod, mAType, slowDPeriod, mAType});
to
chart.addIndicator(indicators.getIndicator("STOCH"), new Object[] { fastKPeriod, slowKPeriod, mAType.ordinal(), slowDPeriod, mAType.ordinal()});


 
 Post subject: Re: Getting exception: adding STOCH indicators on chart Post rating: 0   New post Posted: Fri 04 May, 2012, 15:30 

User rating: 0
Joined: Fri 04 May, 2012, 12:35
Posts: 9
Location: Japan, Tokyo
Thx!


 

Jump to:  

  © 1998-2025 Dukascopy® Bank SA
On-line Currency forex trading with Swiss Forex Broker - ECN Forex Brokerage,
Managed Forex Accounts, introducing forex brokers, Currency Forex Data Feed and News
Currency Forex Trading Platform provided on-line by Dukascopy.com