调用方法:
context.portfolio.stock_account
释义:
context.portfolio.stock_account是投资组合中的股票账户信息.
属性:
|
属性 |
含义 |
调用方法 |
|
pnl |
总盈亏 |
context.portfolio.stock_account.pnl |
|
market_value |
账户持仓市值 |
context.portfolio.stock_account.market_value |
|
transaction_cost |
手续费 |
context.portfolio.stock_account.transaction_cost |
|
total_value |
总资产 |
context.portfolio.stock_account.total_value |
|
positions |
账户持仓情况 |
context.portfolio.stock_account.positions: 是所有股票持仓信息, 返回格式为字典, 其Key为持仓的代码, Value为持仓信息 |
|
available_cash |
账户可用现金 |
context.portfolio.stock_account.available_cash |
|
frozen_cash |
冻结资金 |
context.portfolio.stock_account.frozen_cash |
注意事项:
1.context.portfolio为系统信息,请不要修改其中的任何字段.
示例:
def init(context):
#设置要交易的股票
g.index = '000001.SZ'
def handle_bar(context, bar_dict):
order_id = order(g.index, 100)
log.info(context.portfolio.stock_account)
示例返回结果:
StockAccount({'available_cash': 98956.963,
'positions': {'000001.SZ': StockPosition({'symbol': '000001.SZ',
'available_amount': 0,
'market_value': 1036.0,
'last_price': 10.36,
'datetime': datetime.datetime(2018, 11, 27, 9, 30),
'profit_rate': 0.0,
'cost_basis': 0,
'position_days': 0,
'pnl': 0,
'pre_price': 10.34,
'markup': 0.001934235976789127,
'draw_down': 0.0,
'amount': 100})},
'transaction_cost': 5,
'market_value': 1036.0,
'frozen_cash': 0.0,
'total_value': 99992.963,
'pnl': 0})