BUG: Moved asserts back to before calculations that rely on them.

This means we get a failed assert immediately, instead of an
OverflowError later.
This commit is contained in:
Richard Frank
2013-03-24 11:58:03 -04:00
committed by Eddie Hebert
parent 2504874a84
commit fdf38d3562
+9 -8
View File
@@ -263,6 +263,15 @@ class SimulationParameters(object):
self.period_start = period_start
self.period_end = period_end
self.capital_base = capital_base
assert self.period_start <= self.period_end, \
"Period start falls after period end."
assert self.period_start <= environment.last_trading_day, \
"Period start falls after the last known trading day."
assert self.period_end >= environment.first_trading_day, \
"Period end falls before the first known trading day."
self.first_open = self.calculate_first_open()
self.last_close = self.calculate_last_close()
start_index = \
@@ -274,14 +283,6 @@ class SimulationParameters(object):
self.trading_days = \
environment.trading_days[start_index:end_index + 1]
assert self.period_start <= self.period_end, \
"Period start falls after period end."
assert self.period_start <= environment.last_trading_day, \
"Period start falls after the last known trading day."
assert self.period_end >= environment.first_trading_day, \
"Period end falls before the first known trading day."
def calculate_first_open(self):
"""
Finds the first trading day on or after self.period_start.