private static void fillFactory(SimulatorSettingsGridFactory settings) throws BadParameterException, BadAlgorithmException { settings.addStock( "in", algoStockName(Input.class.getSimpleName()), "e", Arrays.asList(new String[] {"open", "close"})); settings.addStock( "ema", algoStockName(Ema.class.getSimpleName()), new AlgorithmSettingsIteratorFactory() .add(new MpDouble("P", 0.1, 0.6, 0.5)) .add(new MpSubExecution("", "in"))); settings.addStock( "level", algoStockName("." + Level.class.getSimpleName()), new AlgorithmSettingsIteratorFactory() .add(new MpDouble("f", 15.0, 20.0, 5)) .add(new MpSubExecution("", Arrays.asList(new String[] {"ema"})))); settings.addEod( "os", algoEodName(OneSideOpenAlgorithm.class.getSimpleName()), "side", Arrays.asList(new String[] {"long", "short"})); final AlgorithmSettingsIteratorFactory factoryPositionSide = new AlgorithmSettingsIteratorFactory(); factoryPositionSide.add(new MpSubExecution("", Arrays.asList(new String[] {"in", "level"}))); factoryPositionSide.add(new MpInteger("n", 1, 32, 32)); factoryPositionSide.add(new MpInteger("m", 1, 32, 32)); factoryPositionSide.add(new MpDouble("ps", 50000.0, 200001.0, 160000.0)); settings.addEod( "pnm", algoEodName(PositionNDayMStocks.class.getSimpleName()), factoryPositionSide); }
private SimulatorSettingsGridList getDefaultSimulatorSettingsGridList( final StockStorage stockStorage) throws IOException { try { final FromToPeriod period = new FromToPeriod("01-01-2013", "01-01-2014"); final SimulatorSettingsGridFactory factory = new SimulatorSettingsGridFactory(stockStorage, period); fillFactory(factory); return factory.getList(); } catch (ParseException | BadParameterException | BadAlgorithmException e) { throw new IOException(e.getMessage()); } }