#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickTradeConditionStatisticsRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickTradeConditionStatisticsResponse {
#[prost(string, tag="1")]
pub value: ::prost::alloc::string::String,
#[prost(int64, tag="2")]
pub count: i64,
#[prost(int64, tag="3")]
pub total: i64,
#[prost(double, tag="4")]
pub percentage: f64,
#[prost(int64, tag="5")]
pub volume: i64,
#[prost(int64, tag="6")]
pub total_volume: i64,
#[prost(double, tag="7")]
pub volume_percentage: f64,
}
pub mod tick_trade_condition_statistics_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickTradeConditionStatisticsServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickTradeConditionStatisticsServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickTradeConditionStatisticsServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickTradeConditionStatisticsServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickTradeConditionStatisticsServiceClient::new(
InterceptedService::new(inner, interceptor),
)
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_trade_condition_statistics(
&mut self,
request: impl tonic::IntoRequest<super::TickTradeConditionStatisticsRequest>,
) -> Result<
tonic::Response<
tonic::codec::Streaming<super::TickTradeConditionStatisticsResponse>,
>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickTradeConditionStatisticsService/TickTradeConditionStatistics",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickTradeConditionsRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(message, optional, tag="3")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="4")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="5")]
pub offset: ::core::option::Option<::prost_types::Duration>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickTradeConditionsResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(int64, tag="2")]
pub volume: i64,
#[prost(int64, tag="3")]
pub count: i64,
#[prost(message, repeated, tag="4")]
pub description: ::prost::alloc::vec::Vec<super::super::super::r#type::shared::v1::Condition>,
#[prost(message, repeated, tag="5")]
pub data: ::prost::alloc::vec::Vec<TickTradeConditionData>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickTradeConditionData {
#[prost(string, tag="1")]
pub value: ::prost::alloc::string::String,
#[prost(int64, tag="2")]
pub count: i64,
#[prost(double, tag="3")]
pub percentage: f64,
#[prost(int64, tag="4")]
pub volume: i64,
#[prost(double, tag="5")]
pub volume_percentage: f64,
}
pub mod tick_trade_conditions_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickTradeConditionsServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickTradeConditionsServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickTradeConditionsServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickTradeConditionsServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickTradeConditionsServiceClient::new(
InterceptedService::new(inner, interceptor),
)
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_trade_conditions(
&mut self,
request: impl tonic::IntoRequest<super::TickTradeConditionsRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickTradeConditionsResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickTradeConditionsService/TickTradeConditions",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickSmaRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(enumeration="SmaPrice", tag="3")]
pub field: i32,
#[prost(int32, tag="4")]
pub length: i32,
#[prost(message, optional, tag="5")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="6")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="7")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="8")]
pub adjustment: bool,
#[prost(string, repeated, tag="9")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="10")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickSmaResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub value: f64,
#[prost(message, optional, tag="3")]
pub average: ::core::option::Option<f64>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum SmaPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_sma_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickSmaServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickSmaServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickSmaServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickSmaServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickSmaServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_sma(
&mut self,
request: impl tonic::IntoRequest<super::TickSmaRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickSmaResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickSmaService/TickSma",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickBarsRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(enumeration="BarPrice", tag="3")]
pub field: i32,
#[prost(message, optional, tag="4")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="5")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="6")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="7")]
pub adjustment: bool,
#[prost(string, repeated, tag="8")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="9")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickBarsResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub open: f64,
#[prost(double, tag="3")]
pub high: f64,
#[prost(double, tag="4")]
pub low: f64,
#[prost(double, tag="5")]
pub close: f64,
#[prost(int64, tag="6")]
pub volume: i64,
#[prost(int32, tag="7")]
pub count: i32,
#[prost(double, tag="8")]
pub vwap: f64,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BarPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_bars_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickBarsServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickBarsServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickBarsServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickBarsServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickBarsServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_bars(
&mut self,
request: impl tonic::IntoRequest<super::TickBarsRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickBarsResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickBarsService/TickBars",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickVwapRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(message, optional, tag="3")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="4")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="5")]
pub adjustment: bool,
#[prost(string, repeated, tag="6")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="7")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickVwapResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub vwap: f64,
#[prost(double, tag="3")]
pub trade: f64,
#[prost(int64, tag="4")]
pub volume: i64,
#[prost(int32, tag="5")]
pub ticks: i32,
}
pub mod tick_vwap_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickVwapServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickVwapServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickVwapServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickVwapServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickVwapServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_vwap(
&mut self,
request: impl tonic::IntoRequest<super::TickVwapRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickVwapResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickVwapService/TickVwap",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickCmaRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(enumeration="CmaPrice", tag="3")]
pub field: i32,
#[prost(message, optional, tag="4")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="5")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="6")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="7")]
pub adjustment: bool,
#[prost(string, repeated, tag="8")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="9")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickCmaResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub value: f64,
#[prost(message, optional, tag="3")]
pub average: ::core::option::Option<f64>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum CmaPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_cma_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickCmaServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickCmaServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickCmaServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickCmaServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickCmaServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_cma(
&mut self,
request: impl tonic::IntoRequest<super::TickCmaRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickCmaResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickCmaService/TickCma",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickEmaRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(enumeration="EmaPrice", tag="3")]
pub field: i32,
#[prost(int32, tag="4")]
pub length: i32,
#[prost(message, optional, tag="5")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="6")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="7")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="8")]
pub adjustment: bool,
#[prost(string, repeated, tag="9")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="10")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickEmaResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub value: f64,
#[prost(message, optional, tag="3")]
pub average: ::core::option::Option<f64>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum EmaPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_ema_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickEmaServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickEmaServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickEmaServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickEmaServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickEmaServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_ema(
&mut self,
request: impl tonic::IntoRequest<super::TickEmaRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickEmaResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickEmaService/TickEma",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickBollingerRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub constraints: ::core::option::Option<super::super::super::r#type::shared::v1::Constraints>,
#[prost(enumeration="BollingerPrice", tag="3")]
pub field: i32,
#[prost(int32, tag="4")]
pub length: i32,
#[prost(double, tag="5")]
pub deviation: f64,
#[prost(message, optional, tag="6")]
pub period: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="7")]
pub offset: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="8")]
pub sampling: ::core::option::Option<::prost_types::Duration>,
#[prost(bool, tag="9")]
pub adjustment: bool,
#[prost(string, repeated, tag="10")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="11")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickBollingerResponse {
#[prost(message, optional, tag="1")]
pub time_stamp: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub value: f64,
#[prost(message, optional, tag="3")]
pub lower: ::core::option::Option<f64>,
#[prost(message, optional, tag="4")]
pub upper: ::core::option::Option<f64>,
#[prost(message, optional, tag="5")]
pub middle: ::core::option::Option<f64>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum BollingerPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_bollinger_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickBollingerServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickBollingerServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickBollingerServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickBollingerServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickBollingerServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_bollinger(
&mut self,
request: impl tonic::IntoRequest<super::TickBollingerRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickBollingerResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickBollingerService/TickBollinger",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickPriipsRequest {
#[prost(message, optional, tag="1")]
pub identifier: ::core::option::Option<super::super::super::r#type::shared::v1::Identifier>,
#[prost(message, optional, tag="2")]
pub order_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="3")]
pub execution_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="4")]
pub execution_price: f64,
#[prost(enumeration="PriipsPrice", tag="5")]
pub field: i32,
#[prost(message, optional, tag="6")]
pub latency: ::core::option::Option<::prost_types::Duration>,
#[prost(string, repeated, tag="7")]
pub accept: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, repeated, tag="8")]
pub reject: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TickPriipsResponse {
#[prost(message, optional, tag="1")]
pub arrival_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(double, tag="2")]
pub arrival_price: f64,
#[prost(double, tag="3")]
pub arrival_cost: f64,
#[prost(message, optional, tag="4")]
pub open_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="5")]
pub close_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="6")]
pub order_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="7")]
pub execution_time: ::core::option::Option<::prost_types::Timestamp>,
#[prost(message, optional, tag="8")]
pub duration: ::core::option::Option<::prost_types::Duration>,
#[prost(message, optional, tag="9")]
pub latency: ::core::option::Option<::prost_types::Duration>,
#[prost(double, tag="10")]
pub execution_price: f64,
#[prost(int64, tag="11")]
pub count: i64,
#[prost(double, tag="12")]
pub open_price: f64,
#[prost(double, tag="13")]
pub high_price: f64,
#[prost(double, tag="14")]
pub low_price: f64,
#[prost(double, tag="15")]
pub close_price: f64,
#[prost(double, tag="16")]
pub vwap: f64,
#[prost(int64, tag="17")]
pub volume: i64,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum PriipsPrice {
Unspecified = 0,
Trade = 1,
Bid = 2,
Ask = 3,
}
pub mod tick_priips_service_client {
#![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
use tonic::codegen::*;
#[derive(Debug, Clone)]
pub struct TickPriipsServiceClient<T> {
inner: tonic::client::Grpc<T>,
}
impl TickPriipsServiceClient<tonic::transport::Channel> {
pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
where
D: std::convert::TryInto<tonic::transport::Endpoint>,
D::Error: Into<StdError>,
{
let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
Ok(Self::new(conn))
}
}
impl<T> TickPriipsServiceClient<T>
where
T: tonic::client::GrpcService<tonic::body::BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
{
pub fn new(inner: T) -> Self {
let inner = tonic::client::Grpc::new(inner);
Self { inner }
}
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> TickPriipsServiceClient<InterceptedService<T, F>>
where
F: tonic::service::Interceptor,
T::ResponseBody: Default,
T: tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
Response = http::Response<
<T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
>,
>,
<T as tonic::codegen::Service<
http::Request<tonic::body::BoxBody>,
>>::Error: Into<StdError> + Send + Sync,
{
TickPriipsServiceClient::new(InterceptedService::new(inner, interceptor))
}
#[must_use]
pub fn send_gzip(mut self) -> Self {
self.inner = self.inner.send_gzip();
self
}
#[must_use]
pub fn accept_gzip(mut self) -> Self {
self.inner = self.inner.accept_gzip();
self
}
pub async fn tick_priips(
&mut self,
request: impl tonic::IntoRequest<super::TickPriipsRequest>,
) -> Result<
tonic::Response<tonic::codec::Streaming<super::TickPriipsResponse>>,
tonic::Status,
> {
self.inner
.ready()
.await
.map_err(|e| {
tonic::Status::new(
tonic::Code::Unknown,
format!("Service was not ready: {}", e.into()),
)
})?;
let codec = tonic::codec::ProstCodec::default();
let path = http::uri::PathAndQuery::from_static(
"/systemathics.apis.services.tick_analytics.v1.TickPriipsService/TickPriips",
);
self.inner.server_streaming(request.into_request(), path, codec).await
}
}
}