Example #1
0
        public static IBSocket SendFundamental(this IBSocket socket, FundamentalReports report)
        {
            switch (report)
            {
            case FundamentalReports.Overview:
                return(socket.Send("ReportSnapshot"));

            case FundamentalReports.Statements:
                return(socket.Send("ReportsFinStatements"));

            case FundamentalReports.Summary:
                return(socket.Send("ReportsFinSummary"));

            case FundamentalReports.Ratio:
                return(socket.Send("ReportRatios"));

            case FundamentalReports.Estimates:
                return(socket.Send("RESC"));

            case FundamentalReports.Calendar:
                return(socket.Send("CalendarReport"));

            default:
                throw new ArgumentOutOfRangeException(nameof(report));
            }
        }
Example #2
0
        /// <summary>
        /// To subscribe or unsubscribe to receive market reports for the specified instrument. The results will come through the <see cref="IBTrader.NewFundamentalReport"/> event.
        /// </summary>
        /// <param name="security">Security.</param>
        /// <param name="report">The report type.</param>
        /// <param name="isSubscribe"><see langword="true" /> if you need to subscribe, otherwise <see langword="false" />.</param>
        public void SubscribeFundamentalReport(Security security, FundamentalReports report, bool isSubscribe)
        {
            var transactionId = TransactionIdGenerator.GetNextId();

            _states.Add(transactionId, Tuple.Create(security, report));

            SendInMessage(new FundamentalReportMarketDataMessage(report)
            {
                //SecurityId = GetSecurityId(security),
                TransactionId = transactionId,
                IsSubscribe   = isSubscribe
            }.FillSecurityInfo(this, security));
        }
Example #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="FundamentalReportMarketDataMessage"/>.
 /// </summary>
 /// <param name="report">The report type.</param>
 public FundamentalReportMarketDataMessage(FundamentalReports report)
 {
     Report   = report;
     DataType = ExtendedMarketDataTypes.FundamentalReport;
 }
Example #4
0
		/// <summary>
		/// To subscribe or unsubscribe to receive market reports for the specified instrument. The results will come through the <see cref="IBTrader.NewFundamentalReport"/> event.
		/// </summary>
		/// <param name="security">Security.</param>
		/// <param name="report">The report type.</param>
		/// <param name="isSubscribe"><see langword="true" /> if you need to subscribe, otherwise <see langword="false" />.</param>
		public void SubscribeFundamentalReport(Security security, FundamentalReports report, bool isSubscribe)
		{
			var transactionId = TransactionIdGenerator.GetNextId();

			_states.Add(transactionId, Tuple.Create(security, report));

			SendInMessage(new FundamentalReportMarketDataMessage(report)
			{
				//SecurityId = GetSecurityId(security),
				TransactionId = transactionId,
				IsSubscribe = isSubscribe
			}.FillSecurityInfo(this, security));
		}
Example #5
0
		/// <summary>
		/// Initializes a new instance of the <see cref="FundamentalReportMarketDataMessage"/>.
		/// </summary>
		/// <param name="report">The report type.</param>
		public FundamentalReportMarketDataMessage(FundamentalReports report)
		{
			Report = report;
			DataType = ExtendedMarketDataTypes.FundamentalReport;
		}
Example #6
0
		public static IBSocket SendFundamental(this IBSocket socket, FundamentalReports report)
		{
			switch (report)
			{
				case FundamentalReports.Overview:
					return socket.Send("ReportSnapshot");
				case FundamentalReports.Statements:
					return socket.Send("ReportsFinStatements");
				case FundamentalReports.Summary:
					return socket.Send("ReportsFinSummary");
				case FundamentalReports.Ratio:
					return socket.Send("ReportRatios");
				case FundamentalReports.Estimates:
					return socket.Send("RESC");
				case FundamentalReports.Calendar:
					return socket.Send("CalendarReport");
				default:
					throw new ArgumentOutOfRangeException("report");
			}
		}