Using timezone for trading session
This commit is contained in:
parent
9c34d935bd
commit
facf7fb0c6
@ -23,9 +23,9 @@
|
||||
# "fit_method_class": "pt_trading.static_fit.StaticFit",
|
||||
"close_outstanding_positions": true,
|
||||
"trading_hours": {
|
||||
"begin_session": "15:30:00",
|
||||
"end_session": "20:00:00",
|
||||
"timezone": "UTC"
|
||||
"begin_session": "06:00:00",
|
||||
"end_session": "16:00:00",
|
||||
"timezone": "America/New_York"
|
||||
}
|
||||
|
||||
}
|
||||
@ -45,14 +45,18 @@ class TradingPair:
|
||||
def get_begin_index(self) -> int:
|
||||
if "trading_hours" not in self.config_:
|
||||
return 0
|
||||
start_time = pd.to_datetime(self.config_["trading_hours"]["begin_session"]).time()
|
||||
assert "timezone" in self.config_["trading_hours"]
|
||||
assert "begin_session" in self.config_["trading_hours"]
|
||||
start_time = pd.to_datetime(self.config_["trading_hours"]["begin_session"]).tz_localize(self.config_["trading_hours"]["timezone"]).time()
|
||||
mask = self.market_data_['tstamp'].dt.time >= start_time
|
||||
return int(self.market_data_.index[mask].min())
|
||||
|
||||
def get_end_index(self) -> int:
|
||||
if "trading_hours" not in self.config_:
|
||||
return 0
|
||||
end_time = pd.to_datetime(self.config_["trading_hours"]["end_session"]).time()
|
||||
assert "timezone" in self.config_["trading_hours"]
|
||||
assert "end_session" in self.config_["trading_hours"]
|
||||
end_time = pd.to_datetime(self.config_["trading_hours"]["end_session"]).tz_localize(self.config_["trading_hours"]["timezone"]).time()
|
||||
mask = self.market_data_['tstamp'].dt.time <= end_time
|
||||
return int(self.market_data_.index[mask].max())
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user