Core Class Definitions

base_class.Strategy

The Strategy class is the highest level abstract class that stores all of the details of a Surmount trading strategy. It is not passed any inputs on instantiation, but the concrete implementation overload to do so.

interval: str abstractmethod property

assets: List[str] abstractmethod property

data: List property

run(data) abstractmethod

Runs the core logic of the strategy and returns a TargetAllocation object.

Parameters:
  • data

    a dictionary identifiying OHLCV and alternative data.

Returns:

base_class.TargetAllocation

The TargetAllocation class is a simple class that allows strategy output to be checked for validity and consistent across all strategies.

__init__(target_allocation)

Parameters:
  • target_allocation (Dict[str, float]) –

    a dictionary mapping string tickers to float portfolio allocations (sum must be <= 1)