concept JuiceStrategy1 extends JuiceStrategy { // pullback levels for different profits settableWithVar double profitLevel1; settableWithVar double keepPercentage1; settableWithVar double profitLevel2; settableWithVar double keepPercentage2; settableWithVar double profitLevel3; settableWithVar double keepPercentage3; // max loss before leverage settableWithVar double maxLoss = 0.5; AbstractJuicer makeJuicer() { new MultiPullbackJuicer j; j.stopLossLimit(-maxLoss); j.stopLossEnabled(true); for (int i = 1; i <= 3; i++) { double profitLevel = toDouble(get(this, "profitLevel" + i)); double keepPercentage = toDouble(get(this, "keepPercentage" + i)); if (profitLevel != 0 || keepPercentage != 0) j.addLevel(profitLevel, keepPercentage); } ret j; } }