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.

Time zone EET for indicators on JForex
 Post subject: Time zone EET for indicators on JForex Post rating: 0   New post Posted: Thu 09 Jun, 2016, 16:53 
User avatar

User rating: 1
Joined: Sat 27 Jul, 2013, 16:42
Posts: 17
Location: Russian Federation, Saint-Petersburg
Hi support!
please help to me,
I would like understand some info about indicator JForex and code.

how to get the data for the indicator fibPivot , with shift 0 using the EET time zone ???

thank You for help

 package Optimum;

import com.dukascopy.api.Configurable;
import com.dukascopy.api.Filter;
import com.dukascopy.api.IAccount;
import com.dukascopy.api.IBar;
import com.dukascopy.api.IContext;
import com.dukascopy.api.IEngine;
import com.dukascopy.api.IHistory;
import com.dukascopy.api.IIndicators;
import com.dukascopy.api.IMessage;
import com.dukascopy.api.IStrategy;
import com.dukascopy.api.ITick;
import com.dukascopy.api.ITimedData;
import com.dukascopy.api.Instrument;
import com.dukascopy.api.JFException;
import com.dukascopy.api.JFTimeZone;
import com.dukascopy.api.OfferSide;
import com.dukascopy.api.Period;
import com.dukascopy.api.Unit;
import com.dukascopy.api.feed.IFeedDescriptor;
import com.dukascopy.api.feed.IFeedListener;
import com.dukascopy.api.feed.util.TimePeriodAggregationFeedDescriptor;
import java.util.HashSet;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;

public class TZ_EET implements IStrategy, IFeedListener {

    private IContext context;
    private IEngine engine;
    private IIndicators indicators;
    private IHistory history;

    public Set<Instrument> subscrin = new HashSet();
    @Configurable("Instrument")
    public Instrument validInstr = Instrument.EURUSD;
    private IFeedDescriptor fd_1d;

    public void onStart(IContext context) throws JFException {
        this.context = context;
        engine = context.getEngine();
        indicators = context.getIndicators();
        history = context.getHistory();
        subscrin.add(validInstr);
        context.setSubscribedInstruments(subscrin, true);

        Period p1d_eet = Period.createCustomPeriod(Unit.Day, 1, JFTimeZone.EET);
        print("Custom Period: " + p1d_eet);

//        fd_1d = new TimePeriodAggregationFeedDescriptor(validInstr, p1d_eet, OfferSide.BID, Filter.NO_FILTER);
//        context.subscribeToFeed(fd_1d, this);
//        double[] pivot = indicators.fibPivot(fd_1d, fd_1d.getOfferSide(), Period.DAILY).calculate(0);
        double[] pivot0 = indicators.fibPivot(validInstr, p1d_eet, OfferSide.BID, Period.DAILY, 0);
        print(pivot0, "pivot data shift 0");

        double[] pivot1 = indicators.fibPivot(validInstr, p1d_eet, OfferSide.BID, Period.DAILY, 1);
        print(pivot1, "pivot data shift 1");
    }

    public void onFeedData(IFeedDescriptor feedDescriptor, ITimedData feedData) {
//        context.getConsole().getInfo().println("completed " + feedData + " of feed: " + feedDescriptor);
    }

    public void onAccount(IAccount account) throws JFException {
    }

    public void onStop() throws JFException {
    }

    public void onTick(Instrument instrument, ITick tick) throws JFException {
    }

    public void onBar(Instrument instrument, Period period, IBar askBar, IBar bidBar) throws JFException {
    }

    public void onMessage(IMessage message) throws JFException {
    }

    private void print(Object toPrint) {
        context.getConsole().getOut().println(toPrint.toString());
    }

    public void print(double[] iMat, String comm) {
        int rows = iMat.length;
        StringBuilder sb = new StringBuilder();
        sb.append(comm).append("\n");
        for (int i = 0; i < rows; i++) {
            sb.append("{").append(iMat[i]).append("}  ");
        }
        sb.append("\n");
        print(sb.toString());
    }

    public void print(double[][] iMat, String comm) {
        int rows = iMat.length;
        int cols = iMat[0].length;
        StringBuilder sb = new StringBuilder();
        sb.append(comm).append("\n");
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < cols; j++) {
                sb.append("{").append(iMat[i][j]).append("}  ");
            }
            sb.append("\n");
        }
        print(sb.toString());
    }
}


 
 Post subject: Re: Time zone EET for indicators on JForex Post rating: 0   New post Posted: Fri 10 Jun, 2016, 12:10 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
Hello,

Thanks you for reporting this issue. According to the latest JForex-API version, this method is deprecated. That means, we cant guarantee that it will work as it should.
However, this issues going to be fixed in nearest API release. All announcements can be found here

Here's your example how to use FibonacciPivotIndicator:
        fd_1d = new TimePeriodAggregationFeedDescriptor(validInstr, p1d_eet, OfferSide.BID, Filter.NO_FILTER);
        context.subscribeToFeed(fd_1d, this);
        double[] pivot = indicators.fibPivot(fd_1d, fd_1d.getOfferSide(), Period.DAILY).calculate(0);
        print(pivot, "pivot data shift 0");

        double[] pivot1 = indicators.fibPivot(fd_1d, fd_1d.getOfferSide(), Period.DAILY).calculate(1);
        print(pivot1, "pivot data shift 1");

Good Luck and have a nice day


 
 Post subject: Re: Time zone EET for indicators on JForex Post rating: 0   New post Posted: Mon 13 Jun, 2016, 10:07 
User avatar

User rating: 1
Joined: Sat 27 Jul, 2013, 16:42
Posts: 17
Location: Russian Federation, Saint-Petersburg
hi support!

thank you for reply. but shift 0, not working for Time zone EET.

do you have advice ?

regards


 

Jump to:  

cron
  © 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