testing/drumb_test3.scala
author Christian Urban <urbanc@in.tum.de>
Wed, 08 Nov 2017 20:27:56 +0000
changeset 135 077e63e96287
parent 130 7f3f01dfe738
child 137 53c769a78a1e
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
130
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     1
//println("starting test now")
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     2
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
/*
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     4
import scala.concurrent._
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
import scala.concurrent.duration._
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
import ExecutionContext.Implicits.global
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     7
import scala.language.postfixOps 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     8
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     9
val test_data = List(List(Some(71.539941), None), List(Some(76.974614), None), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
                     List(Some(65.226685), Some(6.35)), List(Some(78.354649), Some(12.241)), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    11
                     List(Some(85.517645), Some(38.188)))
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
val test_deltas = List(List(Some(0.07596697626574789), None), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
                       List(Some(-0.152620823795232), None), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    15
                       List(Some(0.20126676681483952), Some(0.9277165354330709)), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
                       List(Some(0.09141762603007778), Some(2.119679764725104)))
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
lazy val f = Future {
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    19
  assert((yearly_yield(test_deltas, 100, 0) - 107).abs <= 2)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
  assert((yearly_yield(test_deltas, 100, 1) - 85).abs <= 2)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    21
  assert((yearly_yield(test_deltas, 100, 2) - 156).abs <= 2)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    22
  assert((yearly_yield(test_deltas, 100, 3) - 210).abs <= 2)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    23
  assert((investment(List("IBM", "BIDU"), 2004 to 2008, 100) - 298).abs <= 10)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    24
}
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    25
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    26
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    27
Await.result(f, 180 second)
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    28
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    29
*/
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    30
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    31
val urban_prices = List(List(Some(311.349976), Some(27.505054)), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    32
			List(Some(300.222351), Some(42.357094)), 
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    33
			List(Some(330.555054), Some(52.852215)))
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    34
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    35
7f3f01dfe738 updated
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    36
assert(CW6c.yearly_yield(CW6c.get_deltas(urban_prices), 100, 0) == 125)
135
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    37
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    38
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    39
val blchip_portfolio = List("GOOG", "AAPL", "MSFT", "IBM", "FB", "AMZN", "BIDU")
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    40
val rstate_portfolio = List("PLD", "PSA", "AMT", "AIV", "AVB", "BXP", "CCI", 
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    41
                            "DLR", "EQIX", "EQR", "ESS", "EXR", "FRT", "GGP", "HCP") 
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    42
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    43
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    44
assert(CW6c.investment(rstate_portfolio, 1978 to 2017, 100) == 30839)
077e63e96287 updated
Christian Urban <urbanc@in.tum.de>
parents: 130
diff changeset
    45
assert(CW6c.investment(blchip_portfolio, 1978 to 2017, 100) == 349597)