-
Notifications
You must be signed in to change notification settings - Fork 29
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Wil Boayue
committed
Jan 22, 2025
1 parent
e36b9e1
commit 4314bf6
Showing
7 changed files
with
49 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
[package] | ||
name = "ibapi" | ||
version = "1.0.11" | ||
version = "1.1.0" | ||
edition = "2021" | ||
authors = ["Wil Boayue <[email protected]>"] | ||
description = "A Rust implementation of the Interactive Brokers TWS API, providing a reliable and user friendly interface for TWS and IB Gateway. Designed with a focus on simplicity and performance." | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
use clap::{arg, Command}; | ||
use time::macros::datetime; | ||
|
||
use ibapi::contracts::Contract; | ||
use ibapi::market_data::historical::{BarSize, ToDuration, WhatToShow}; | ||
use ibapi::Client; | ||
|
||
fn main() { | ||
env_logger::init(); | ||
|
||
let matches = Command::new("historical_data") | ||
.about("Get last 30 days of daily data for given stock") | ||
.arg(arg!(<STOCK_SYMBOL>).required(true)) | ||
.arg(arg!(--connection_string <VALUE>).default_value("127.0.0.1:4002")) | ||
.get_matches(); | ||
|
||
let connection_string = matches.get_one::<String>("connection_string").expect("connection_string is required"); | ||
let stock_symbol = matches.get_one::<String>("STOCK_SYMBOL").expect("stock symbol is required"); | ||
|
||
let client = Client::connect(&connection_string, 100).expect("connection failed"); | ||
|
||
let contract = Contract::stock(stock_symbol); | ||
|
||
let historical_data = client | ||
.historical_data( | ||
&contract, | ||
Some(datetime!(2023-04-11 20:00 UTC)), | ||
1.days(), | ||
BarSize::Hour, | ||
WhatToShow::Trades, | ||
true, | ||
) | ||
.expect("historical data request failed"); | ||
|
||
println!("start: {:?}, end: {:?}", historical_data.start, historical_data.end); | ||
|
||
for bar in &historical_data.bars { | ||
println!("{bar:?}"); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters