2016-03-05 18:40:26 -05:00
|
|
|
|
using Base.Test
|
|
|
|
|
#include("../src/blackscholes.jl")
|
2016-03-05 17:49:30 -05:00
|
|
|
|
using Quant
|
|
|
|
|
|
2016-05-17 22:38:30 -04:00
|
|
|
|
@test 15.047 < blackscholes_call(100, 95, .25, .05, 0, 2, 1) < 15.0471
|
|
|
|
|
@test blackscholes_call(100, 95, .25, .05, 0, 2, 1) ==
|
|
|
|
|
blackscholes_call(100, 95, .25, .05, 0, 1)
|
2016-03-05 18:50:53 -05:00
|
|
|
|
|
|
|
|
|
precompute_low = [15.047, 15.047]
|
|
|
|
|
precompute_high = [15.0471, 15.0471]
|
|
|
|
|
S = [100, 100]; K = [95, 95]; σ = [.25, .25]; r = [.05, .05]
|
2016-05-17 22:38:30 -04:00
|
|
|
|
q = [.0, .0]; T = [2, 2]; t = [1, 1]
|
|
|
|
|
@test all(precompute_low .< blackscholes_call(S, K, σ, r, q, T, t)
|
2016-03-05 18:50:53 -05:00
|
|
|
|
.< precompute_high)
|
2016-03-05 17:49:30 -05:00
|
|
|
|
|
2016-05-17 22:38:30 -04:00
|
|
|
|
@test 5.413 < blackscholes_put(100, 95, .25, .05, .0, 2, 1) < 5.414
|
|
|
|
|
@test blackscholes_put(100, 95, .25, .05, .0, 2, 1) ==
|
|
|
|
|
blackscholes_put(100, 95, .25, .05, 0, 1)
|
2016-03-05 18:50:53 -05:00
|
|
|
|
|
|
|
|
|
precompute_low = [5.413, 5.413]
|
|
|
|
|
precompute_high = [5.414, 5.414]
|
2016-05-17 22:38:30 -04:00
|
|
|
|
@test all(precompute_low .< blackscholes_put(S, K, σ, r, q, T, t)
|
2016-03-05 18:50:53 -05:00
|
|
|
|
.< precompute_high)
|
2016-05-17 22:38:30 -04:00
|
|
|
|
|
|
|
|
|
@test blackscholes_call(100, 95, .25, .05, 0, 2, 1) ==
|
|
|
|
|
blackscholes_call(BlackScholes(100, 95, .25, .05, 0, 1, 2))
|
|
|
|
|
|
|
|
|
|
@test blackscholes_put(100, 95, .25, .05, 0, 2, 1) ==
|
|
|
|
|
blackscholes_put(BlackScholes(100, 95, .25, .05, 0, 1, 2))
|