signalcanvas-graph-based-ma.../tests/test_graph.py

18 lines
711 B
Python

import time
from signalcanvas_graph_based_market_signal_s import Graph, SignalNode, Link, HedgePlan
def test_graph_basic():
g = Graph()
n1 = SignalNode(id="n1", type="price", asset="AAPL", venue="X", timestamp=time.time(), value=150.0)
n2 = SignalNode(id="n2", type="depth", asset="AAPL", venue="X", timestamp=time.time(), value=1.5)
g.add_node(n1)
g.add_node(n2)
l = Link(from_id="n1", to_id="n2", relation="lead-lag", weight=1.0)
g.add_link(l)
s = HedgePlan(id="h1", delta={"AAPL": 2.0}, scenario_name="sc1", timestamp=time.time())
g.add_hedge(s)
assert g.get_node("n1").id == "n1"
assert g.links[0].from_id == "n1"
assert g.hedges["h1"].delta["AAPL"] == 2.0