12 lines
573 B
Python
12 lines
573 B
Python
from deltaforge.backtester import Backtester
|
|
from deltaforge.dsl import Asset, MarketSignal
|
|
from deltaforge.dsl import PlanDelta
|
|
|
|
def test_backtester_runs_deterministic():
|
|
a = Asset(id="eq-XYZ", type="equity", symbol="XYZ")
|
|
s = MarketSignal(asset=a, timestamp=0.0, price=10.0)
|
|
plan = PlanDelta(delta=[{"action": "hedge", "symbol": "XYZ", "size": -1.0, "price": 10.0}], timestamp=0.0, author="tester")
|
|
bt = Backtester(initial_cash=1000.0)
|
|
final_cash = bt.apply([s], plan)
|
|
assert final_cash == 1000.0 - 1.0 * 10.0 + 0 # initial cash minus hedge cost
|