Hi,
1) The function
getNumberOfElements() returns nothing because you need to set output parameters for the Ichimoku indicator:
ichimoku.setOutputParameter(0, new double[endIndex + 1]);
ichimoku.setOutputParameter(1, new double[endIndex + 1]);
ichimoku.setOutputParameter(2, new double[endIndex + 1]);
ichimoku.setOutputParameter(3, new double[endIndex + 1]);
ichimoku.setOutputParameter(4, new double[endIndex + 1]);
ichimoku.setOutputParameter(5 , new Object[endIndex + 1]);
2) To add time period parameters to the form, please create a structure for the periods and add it to the OptInputParameterInfo array the as
Period parameter:
int[] periodValues = new int[10];
String[] periodNames = new String[10];
periodValues[0] = 0;
periodNames[0] = Period.ONE_MIN.name();
periodValues[1] = 1;
periodNames[1] = Period.FIVE_MINS.name();
periodValues[2] = 2;
periodNames[2] = Period.TEN_MINS.name();
periodValues[3] = 3;
periodNames[3] = Period.FIFTEEN_MINS.name();
periodValues[4] = 4;
periodNames[4] = Period.THIRTY_MINS.name();
periodValues[5] = 5;
periodNames[5] = Period.ONE_HOUR.name();
periodValues[6] = 6;
periodNames[6] = Period.FOUR_HOURS.name();
periodValues[7] = 7;
periodNames[7] = Period.DAILY.name();
periodValues[8] = 8;
periodNames[8] = Period.WEEKLY.name();
periodValues[9] = 9;
periodNames[9] = Period.MONTHLY.name();
optInputParameterInfos = new OptInputParameterInfo[] {new OptInputParameterInfo("Period", OptInputParameterInfo.Type.OTHER, new IntegerListDescription(7, periodValues, periodNames))};
3) You can use
IHistory.getBars methods to get bars by the the specified period.