pysonar_demo/service.pyStatic analysis
1 """Application service connecting models and scoring functions.""" 2 3 from .models import Market, Prediction, Report 4 from .scoring import confidence_band, score_market 5 6 7 class DemoApp: 8 def __init__(self, name): 9 self.name = name 10 11 def build_market(self, payload): 12 return Market( 13 payload["question"], 14 payload["yes_price"], 15 payload["volume"], 16 ) 17 18 def predict(self, market): 19 score = score_market(market) 20 confidence = confidence_band(score) 21 return Prediction(market, score, confidence) 22 23 def build_report(self, payloads): 24 predictions = [] 25 for payload in payloads: 26 market = self.build_market(payload) 27 predictions.append(self.predict(market)) 28 29 title = self.name + " · " + str(len(predictions)) + " analyzed markets" 30 return Report(title, predictions)