예제 #1
0
        public static QuoteArray GetHistoricalQuotes(IHistoricalDataProvider provider, Instrument instrument, DateTime datetime1, DateTime datetime2)
        {
            ArrayList  arrayList  = DataManager.r6ZT8iFUv(provider, instrument, DataManager.EDataSeries.Quote, datetime1, datetime2, -1L);
            QuoteArray quoteArray = new QuoteArray();

            foreach (Quote quote in arrayList)
            {
                quoteArray.Add(quote);
            }
            return(quoteArray);
        }
예제 #2
0
        public Stack stkTrades; // stack the trades so oldest at the bottom based on retrieval from iqfeed



        public HistoryState(
            GetHistory gh
            )
        {
            this.gh   = gh;
            trades    = new TradeArray();
            quotes    = new QuoteArray();
            stkTrades = new Stack(2000);
            dtstk     = new DateTime(0);
            Init();
        }
예제 #3
0
 public void Close()
 {
     gh         = null;
     instrument = null;
     bs         = null;
     bars       = null;
     trades     = null;
     quotes     = null;
     stkTrades  = null;
     bufSock.Close();
     bufSock = null;
 }
예제 #4
0
        public QuoteArray GetQuoteArray(string series, DateTime datetime1, DateTime datetime2)
        {
            QuoteArray quotes = new QuoteArray();

            if (this.file.Series[series] != null)
            {
                foreach (Quote quote in this.file.Series[series].GetArray(datetime1, datetime2))
                {
                    quotes.Add(quote);
                }
            }
            return(quotes);
        }
예제 #5
0
 public QuoteArray this [Instrument instrument]
 {
     get
     {
         QuoteArray quoteArray = this.arrayList[instrument] as QuoteArray;
         if (quoteArray == null)
         {
             quoteArray = new QuoteArray();
             this.arrayList.Add(instrument, quoteArray);
         }
         return(quoteArray);
     }
 }
예제 #6
0
        public static QuoteSeries GetHistoricalQuotes(string provider, Instrument instrument, DateTime begin, DateTime end)
        {
            QuoteSeries quoteSeries = new QuoteSeries();

            if (SmartQuant.Providers.ProviderManager.HistoricalDataProviders.Contains(provider))
            {
                QuoteArray historicalQuotes = SmartQuant.Instruments.DataManager.GetHistoricalQuotes(SmartQuant.Providers.ProviderManager.HistoricalDataProviders[provider], instrument.instrument, begin, end);
                foreach (SmartQuant.Data.Quote obj in historicalQuotes)
                {
                    quoteSeries.series.Add(obj);
                }
            }
            return(quoteSeries);
        }
예제 #7
0
        private static void OnNewQuote(object sender, QuoteEventArgs e)
        {
            Instrument instrument = e.Instrument as Instrument ?? InstrumentManager.Instruments[e.Instrument.Symbol, e.Provider.Name];

            if (instrument == null)
            {
                return;
            }

            Quote quote = e.Quote;

            if (DataManager.quoteArrayLength != 0)
            {
                QuoteArray quoteArray = DataManager.quoteArrayList[instrument];
                quoteArray.Add(quote);
                if (DataManager.quoteArrayLength != -1 && quoteArray.Count > DataManager.quoteArrayLength)
                {
                    quoteArray.RemoveAt(0);
                }
            }
            instrument.EmitNewQuote(new QuoteEventArgs(quote, instrument, e.Provider));
        }
예제 #8
0
		public QuoteSeries()
		{
			this.series = new QuoteArray();
		}
예제 #9
0
		internal QuoteSeries(QuoteArray series)
		{
			this.series = series;
		}
예제 #10
0
			internal QuoteSeriesEnumerator(QuoteArray series)
			{
				this.series = series;
				this.enumerator = series.GetEnumerator();
			}
예제 #11
0
 internal QuoteSeriesEnumerator(QuoteArray series)
 {
     this.series     = series;
     this.enumerator = series.GetEnumerator();
 }
예제 #12
0
 public QuoteSeries()
 {
     this.series = new QuoteArray();
 }
예제 #13
0
 internal QuoteSeries(QuoteArray series)
 {
     this.series = series;
 }