From bb16eda1fab6fd1c8b7c61ed3d11a3ccdc9f8d64 Mon Sep 17 00:00:00 2001 From: Ryan Day Date: Mon, 28 Jan 2013 14:08:44 -0500 Subject: [PATCH] Force float value, and compare result against boundary --- zipline/finance/risk.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/zipline/finance/risk.py b/zipline/finance/risk.py index 49e5c2e5..968db9a1 100644 --- a/zipline/finance/risk.py +++ b/zipline/finance/risk.py @@ -258,9 +258,9 @@ class RiskMetricsBase(object): (x - mar)**2 for x in self.algorithm_returns if x < mar] - dr = math.sqrt(sum(downside) / len(self.algorithm_returns)) + dr = float(math.sqrt(sum(downside) / len(self.algorithm_returns))) - if dr == 0: + if dr < 0.000001: return 0.0 return ((self.algorithm_period_returns - mar) / dr) @@ -640,9 +640,9 @@ algorithm_returns ({algo_count}) in range {start} : {end}" (x - mar)**2 for x in self.algorithm_returns if x < mar] - dr = math.sqrt(sum(downside) / len(self.algorithm_returns)) + dr = float(math.sqrt(sum(downside) / len(self.algorithm_returns))) - if dr == 0: + if dr < 0.000001: return 0.0 return ((self.algorithm_period_returns[-1] - mar) /