Portfolio
Holdings
Properties
SecurityHolding
objects have the following properties:
var securityHolding = Portfolio["SPY"]; var quantity = securityHolding.Quantity; var invested = securityHolding.Invested;
security_holding = self.Portfolio["SPY"] quantity = security_holding.Quantity invested = security_holding.Invested
FutureHolding
objects also have SettledProfit
and UnsettledProfit
properties.
Get Total Close Profit
To get the profit of a position holding if you closed the position, call the TotalCloseProfit
method. The value this method returns is denominated in your account currency and accounts for order fees.
var profit = Portfolio["SPY"].TotalCloseProfit();
profit = self.Portfolio["SPY"].TotalCloseProfit()
The TotalCloseProfit
method accepts the following optional arguments:
Argument | Data Type | Description | Default Value |
---|---|---|---|
includeFees | bool | Whether to reduce the profit based on the estimated fee from the fee model. | true True |
exitPrice | decimal? float/NoneType | A hypothetical exit price to use for the profit calculation. If you don't provide a value, it uses the bid price for sell orders or the ask price for buy orders. | null None |
entryPrice | decimal? float/NoneType | A hypothetical exit price to use for the profit calculation. If you don't provide a value, it uses the average price of the SecurityHolding . | null None |
quantity | decimal? float/NoneType | The quantity to liquidate. If you don't provide a value, it uses the quantity of the SecurityHolding . | null None |
LEAN uses this method to define the UnrealizedProfit
property.
Get Quantity Value
To get the value of a security at any quantity, call the GetQuantityValue
method. The value this method returns is denominated in your account currency.
// Get the quantity value at the current price var valueAtCurrentPrice = Portfolio["SPY"].GetQuantityValue(100); // Get the quantity value at a specific price var valueAtSpecificPrice = Portfolio["SPY"].GetQuantityValue(100, price: 30);
# Get the quantity value at the current price value_at_current_price = self.Portfolio["SPY"].GetQuantityValue(100) # Get the quantity value at a specific price value_at_specific_price = self.Portfolio["SPY"].GetQuantityValue(100, price=30)