Module Algostream_domain_portfolio.Position
type position_side = | Long| Short| Flat
type position = {symbol : Base.string;quantity : Base.float;average_price : Base.float;last_price : Base.float;unrealized_pnl : Base.float;realized_pnl : Base.float;total_cost : Base.float;commission_paid : Base.float;opened_at : Timestamp.t;updated_at : Timestamp.t;strategy_id : Base.string Base.option;
}val create_position :
?ts:Timestamp.t ->
symbol:Base.string ->
?strategy_id:Base.string ->
unit ->
positionval market_value : position -> Base__Float.tval cost_basis : position -> Base__Float.tval add_trade :
?ts:Timestamp.t ->
position ->
trade_quantity:Base__Float.t ->
trade_price:Base.float ->
commission:Base__Float.t ->
positionval total_pnl : position -> Base__Float.tval pnl_percentage : position -> Base__Float.tval leverage : position -> account_value:Base.Float.t -> Base__Float.t