|
|
|
|
@ -35,6 +35,10 @@ from apps.orb_trader.screener import (
|
|
|
|
|
load_universe,
|
|
|
|
|
)
|
|
|
|
|
from apps.orb_trader.state import ORBStateManager
|
|
|
|
|
from libs.intraday.features import enrich_daily_bars
|
|
|
|
|
from libs.intraday.orb_simulator import _aggregate_bars, compute_orb_candidates
|
|
|
|
|
from libs.intraday.simulator import _parse_ts, filter_market_hours
|
|
|
|
|
from libs.oracle_client.alpaca import get_snapshots
|
|
|
|
|
|
|
|
|
|
log = logging.getLogger(__name__)
|
|
|
|
|
|
|
|
|
|
@ -161,7 +165,6 @@ class ORBTradingEngine:
|
|
|
|
|
"volume": 0,
|
|
|
|
|
}]
|
|
|
|
|
|
|
|
|
|
from libs.intraday.features import enrich_daily_bars
|
|
|
|
|
self._enrichment = enrich_daily_bars(daily_bars_dict, [date_str])
|
|
|
|
|
self._daily_bars = daily_bars_dict
|
|
|
|
|
|
|
|
|
|
@ -292,7 +295,6 @@ class ORBTradingEngine:
|
|
|
|
|
"volume": 0,
|
|
|
|
|
}]
|
|
|
|
|
|
|
|
|
|
from libs.intraday.features import enrich_daily_bars
|
|
|
|
|
self._enrichment = enrich_daily_bars(daily_bars_dict, [date_str])
|
|
|
|
|
self._daily_bars = daily_bars_dict
|
|
|
|
|
daily_bars_count = len([s for s, b in raw_bars.items() if b])
|
|
|
|
|
@ -406,7 +408,6 @@ class ORBTradingEngine:
|
|
|
|
|
"long": 0, "short": 0, "skip_reason": "breadth",
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
from libs.intraday.orb_simulator import compute_orb_candidates
|
|
|
|
|
self._candidates = compute_orb_candidates(
|
|
|
|
|
bars_by_ticker=bars_by_ticker,
|
|
|
|
|
date_str=date_str,
|
|
|
|
|
@ -483,7 +484,6 @@ class ORBTradingEngine:
|
|
|
|
|
equity = self._get_equity()
|
|
|
|
|
|
|
|
|
|
# Fetch real-time snapshots for pending candidates via Oracle API
|
|
|
|
|
from libs.oracle_client.alpaca import get_snapshots
|
|
|
|
|
tickers = [c["ticker"] for c in self._pending_cands]
|
|
|
|
|
snapshots = get_snapshots(tickers)
|
|
|
|
|
|
|
|
|
|
@ -680,8 +680,6 @@ class ORBTradingEngine:
|
|
|
|
|
timeframe_minutes=5,
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
from libs.intraday.orb_simulator import _aggregate_bars
|
|
|
|
|
from libs.intraday.simulator import _parse_ts, filter_market_hours
|
|
|
|
|
|
|
|
|
|
group_size = self._params.sim_bar_minutes // 5
|
|
|
|
|
|
|
|
|
|
|