1
0
Fork
You've already forked apca-lite
0
No description
Daniel Mueller e538f7488f
Bump version to 0.25.0
This change bumps the crate to version 0.25.0. The following notable
changes have been made since 0.24.0:
- Added gzip compression support for transparent API response
 compression controlled by default enabled gzip feature
- Added support for subscribing to realtime trades
- Reworked symbols related types in data::v2::stream module
- Added class member to api::v2::order::Order type
- Added symbols member to api::v2::orders::OrdersReq type
- Added Deserialize implementation for more types
- Updated ActivityType enum to be in sync with upstream variants
- Made api::v2::position::Position exhaustive
- Bumped uuid dependency to 1.0
2022年06月14日 23:16:39 -07:00
ci Add gzip content decoding support 2022年06月13日 22:07:10 -07:00
examples Bump uuid dependency to 1.0 2022年04月30日 15:37:04 -07:00
src Adjust stock split & spin off account activity strings 2022年06月12日 15:57:11 -07:00
Cargo.toml Bump version to 0.25.0 2022年06月14日 23:16:39 -07:00
CHANGELOG.md Bump version to 0.25.0 2022年06月14日 23:16:39 -07:00
LICENSE Introduce error module 2018年12月08日 05:36:33 -08:00
README.md Replace "trade update" terminology with "order update" 2022年05月22日 10:19:28 -07:00
rustfmt.toml Add rustfmt.toml to the repository 2021年08月17日 18:53:45 -07:00

pipeline coverage crates.io Docs rustc

apca

apca is a library for interacting with the Alpaca API at alpaca.markets. The crate is entirely written in Rust and exposes a fully async API based on the native async/await language feature.

The crate provides access to the majority of functionality provided by Alpaca, including, but not limited to:

  • inquiring of account information
  • changing of the account configuration
  • retrieving of past account activity
  • accessing the market clock
  • submitting, changing, listing, and canceling orders
  • listing and closing open positions
  • listing and retrieving general asset information
  • streaming of order updates over WebSocket
  • historic market data retrieval through Alpaca's Data API
  • real time market data streaming via Alpaca's websocket API

For convenient command-line based access to the API, please use apcacli.

Usage

The following example illustrates how to create a Client object and then submit a limit order for AAPL with a limit price of USD 100:

letapi_info=ApiInfo::from_env().unwrap();letclient=Client::new(api_info);letrequest=order::OrderReqInit{type_: Type::Limit,limit_price: Some(Num::from(100)),..Default::default()}.init("AAPL",Side::Buy,order::Amount::quantity(1));letorder=client.issue::<order::Post>(&request).await.unwrap();

The returned order object can subsequently be inspected to find out details about the order (such as its ID). The full example is available here.

Please refer to the full documentation for more details.