/** * Init the trading stretegies */ private void createStrategies() { for(final BitfinexCurrencyPair currency : tradedCurrencies) { TradeStrategyFactory strategyFactory = new EMAStrategy03(5, 12, 40, timeSeries.get(currency)); final Strategy strategy = strategyFactory.getStrategy(); strategies.put(currency, strategy); } }
public void executeTrades() { for (int i = timeSeries.getBeginIndex(); i < timeSeries.getEndIndex(); i++) { final Strategy strategy = tradeStrategyFactory.getStrategy(); if(strategy.shouldEnter(i) && openContracts == 0) { openTrade(i); } else if(strategy.shouldExit(i) && openContracts > 0) { closeTrade(i); } } if(openContracts > 0) { closeTrade(timeSeries.getEndIndex()); } }