28 lines
851 B
Python
28 lines
851 B
Python
from __future__ import annotations
|
|
|
|
from typing import Any, Dict
|
|
|
|
import pandas as pd
|
|
|
|
|
|
class Prediction:
|
|
tstamp_: pd.Timestamp
|
|
disequilibrium_: float
|
|
scaled_disequilibrium_: float
|
|
|
|
def __init__(self, tstamp: pd.Timestamp, disequilibrium: float, scaled_disequilibrium: float):
|
|
self.tstamp_ = tstamp
|
|
self.disequilibrium_ = disequilibrium
|
|
self.scaled_disequilibrium_ = scaled_disequilibrium
|
|
|
|
def to_dict(self) -> Dict[str, Any]:
|
|
return {
|
|
"tstamp": self.tstamp_,
|
|
"disequilibrium": self.disequilibrium_,
|
|
"signed_scaled_disequilibrium": self.scaled_disequilibrium_,
|
|
"scaled_disequilibrium": abs(self.scaled_disequilibrium_),
|
|
# "pair": self.pair_,
|
|
}
|
|
def to_df(self) -> pd.DataFrame:
|
|
return pd.DataFrame([self.to_dict()])
|
|
|