Un consiglio:

Invece di fare

ArrayList<Movimento> movimenti= new ArrayList<Movimento>();

usa

List<Movimento> movimenti= new ArrayList<Movimento>();

Entra nell'ottica di lavorare per contratto e non per tipo concreto