IBKR knowledge base
Get positions from IBKR
Read account positions into a pandas DataFrame without placing orders.
IntermediateDraft
positionspandasportfolio
Purpose
Convert portfolio positions into a tabular Python structure for inspection.
Requirements
- Connected IBKR session
- pandas
- ib_insync
Notes
This reads portfolio positions only. It does not place orders.
Example
python
from ib_insync import IB
import pandas as pd
ib = IB()
ib.connect("127.0.0.1", 7497, clientId=1)
rows = []
for item in ib.positions():
rows.append({
"account": item.account,
"symbol": item.contract.symbol,
"secType": item.contract.secType,
"currency": item.contract.currency,
"exchange": item.contract.exchange,
"position": item.position,
"avgCost": item.avgCost,
})
df = pd.DataFrame(rows)
print(df)
ib.disconnect()Contributors
IBKR Specialist
