39 lines
1002 B
Bash
39 lines
1002 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
echo "Running DeltaForge Skeleton tests..."
|
|
|
|
# Ensure Python is available
|
|
python3 -V
|
|
pip3 -V
|
|
|
|
# Build the package to verify packaging metadata compiles
|
|
python3 -m build || { echo "Build failed"; exit 1; }
|
|
|
|
echo "Running a minimal deterministic flow..."
|
|
python3 - << 'PY'
|
|
from deltaforge_skeleton.core import Asset, MarketSignal
|
|
from deltaforge_skeleton.adapters.equity_feed import EquityFeedAdapter
|
|
from deltaforge_skeleton.curator import Curator
|
|
from deltaforge_skeleton.execution import ExecutionEngine
|
|
from deltaforge_skeleton.backtester import Backtester
|
|
|
|
apple = Asset(symbol='AAPL')
|
|
sig = MarketSignal(asset=apple, price=150.0, timestamp=0.0, liquidity=1.0)
|
|
|
|
curator = Curator()
|
|
plan = curator.synthesize([sig])
|
|
|
|
engine = ExecutionEngine()
|
|
routes = engine.route(plan)
|
|
|
|
bt = Backtester()
|
|
replay = bt.replay(plan)
|
|
|
|
print("PLAN:", plan)
|
|
print("ROUTES:", routes)
|
|
print("REPLAY:", replay)
|
|
PY
|
|
|
|
echo "All good. Ready to publish once READY_TO_PUBLISH is created."
|