Expand description
IBKR Rust Client
A clean, idiomatic Rust interface to Interactive Brokers’ TWS API.
§Example
use ibkr::{Client, Contract, BarSize, Duration, WhatToShow};
#[tokio::main]
async fn main() -> ibkr::Result<()> {
let client = Client::connect("127.0.0.1:7496", 1).await?;
let contract = Contract::stock("AAPL", "SMART", "USD");
let bars = client.historical_data(
contract,
Duration::Days(5),
BarSize::Day1,
WhatToShow::Trades,
true,
).await?;
for bar in bars {
println!("{}: O:{} H:{} L:{} C:{}",
bar.date, bar.open, bar.high, bar.low, bar.close);
}
Ok(())
}Re-exports§
pub use client::Client;pub use contract::Contract;pub use contract::OptionRight;pub use contract::SecurityType;pub use error::Error;pub use error::Result;pub use historical::BarData;pub use historical::BarSize;pub use historical::Duration;pub use historical::WhatToShow;pub use message::IncomingMessageId;pub use message::OutgoingMessageId;pub use wire::extract_message;pub use wire::make_field;pub use wire::make_message;pub use wire::parse_fields;pub use wire::FieldIterator;