@Shinkero
Trader, Investor, C# student

Как назначить собственную переменную из получаемых данных C#?

Всем доброго времени суток.
Новичок в C#, пока только учусь программировать. Пишу небольшое приложение под сторонний API и столкнулся с проблемой и не могу найти решение.

Имеется консольное приложение с подключенным API. Данный API предназначен для постоянный трансляции данных. В моем случае существуют метод и класс. При их использовании, я получаю огромное кол-во данных в виде таблички. Моя задача - "вытащить" только определенные пункты из этих данных и назначить их на собственные переменные. Американская поддержка молчит в этом плане, поэтому прошу помощи у знатоков.

Не судите строго.
Собственно используемые методы и коды + то, что хочу получить на выходе.

public override void AskQuote(AskInfo oInfo)
               {
               StringBuilder sb = new StringBuilder();
               oInfo.Dump(sb);
               Console.Out.Write(sb);
               }


Класс:
public class AskInfo
    {
        public AskInfo();

        public CallbackType CallbackType { get; set; }
        public string Exchange { get; set; }
        public int ImpliedSize { get; set; }
        public double LeanPrice { get; set; }
        public int NumOrders { get; set; }
        public double Price { get; set; }
        public int Size { get; set; }
        public string Symbol { get; set; }
        public UpdateType UpdateType { get; set; }
        public int Ssboe { get; set; }
        public int Usecs { get; set; }
        public object Context { get; set; }

        public void Dump(StringBuilder sb);
    }


Выводится данный код через следующую команду:

oEngine.subscribe(sExchange, sSymbol, SubscriptionFlags.Prints, null);

сам subscribe:
public void subscribe(string sExchange, string sSymbol, SubscriptionFlags eFlags, object oContext);


На выходе я получаю следующую инфо в консоли:


AskInfo :
symbol : ESM0
exchange : CME
price : 2490,75
size : 13
implied size : 0
num orders : 8
lean price : 0
update type : Solo
callback type : Update
context :
timestamp : 1585782112.588152
AskInfo :
symbol : ESM0
exchange : CME
price : 2490,5
size : 10
implied size : 0
num orders : 8
lean price : 0
update type : Solo
callback type : Update
context :
timestamp : 1585782112.788476


В чем собственно вопрос. Эти данные поступают постоянно (и достаточно часто) и обновляются постоянно.
Что мне нужно - это выделить определенные значения и назначить собственные переменные (например вытащить значение price, exchange либо вообще любое из тех, которые предоставляются). Т.е., я хочу получить double Price из AskInfo. Каким образом это можно сделать? Спасибо!

p.s.: Добавляю еще enum котрый называется SubscriptionFlags:
[Flags]
    public enum SubscriptionFlags
    {
        None = 0,
        Prints = 1,
        Quotes = 2,
        Best = 4,
        Close = 8,
        PrintsCond = 16,
        Settlement = 32,
        Open = 64,
        MarketMode = 128,
        HighLow = 256,
        TradeVolume = 512,
        ClosingIndicator = 1024,
        OpeningIndicator = 2048,
        OpenInterest = 4096,
        RefData = 8192,
        MidPrice = 16384,
        HighBidLowAsk = 32768,
        PriceLimit = 65536,
        ProjectedSettlement = 131072,
        All = 262143
    }
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
freeExec
@freeExec
Участник OpenStreetMap
public override void AskQuote(AskInfo oInfo)
{
      Console.Out.Write(oInfo.Price);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы