Thanks for the test task. When developing a solution I decided to walk less known to me road using akka streams as a basis for the solution imagining 'what if' situation that the file to be processed is very large and undesirable to be consumed and processed in memory as a whole. as part of running small demo in Main.scala you should provide a number from 1 to 3 as an argument. 1 - daily price, 2 - daily return, 3 - period mean Results will be printed as soon as they arrive There are also tests covering most important code pieces