Skip to content

7. Working with Stock Handler

AFP edited this page Apr 3, 2023 · 14 revisions

Introduction

after create new instance of TSE class, you can access the Stock Handler as following:

     var tse = new TSE();
     var marketHandler = tse.GetMarketHandler();
     // جستجوی سهام
     var stocks = marketHandler.FindStock("فخاس");

     var stock = tse.GetStockHandler(stocks[0]);

the GetStockHandler() function give you accessing 20 features:

  1. Accessing to Transaction History (سابقه معاملات)
  2. Accessing to Brief Informations (در یک نگاه)
  3. Accessing to Announcements (اطلاعیه ها)
  4. Accessing to Company Identity (شناسه)
  5. Accessing to Balance Sheet (ترازنامه)
  6. Accessing to Council Announcement (اگهی مجامع)
  7. Accessing to Status Change (تغییر وضعیت)
  8. Accessing to Board of Director (هیئت مدیره)
  9. Accessing to Real Legal (حقیقی و حقوقی)
  10. Accessing to Stockholders (سهامداران)
  11. Accessing to EPS (EPS)
  12. Accessing to DPS (DPS)
  13. Accessing to Company Info (معرفی شرکت)
  14. Accessing to Cost Benefit (سود و زیان)
  15. Accessing to Supervisor Message (پیام های ناظر)
  16. Accessing to Statistics (آمار)
  17. Accessing to Council Decisions (تصمیمات مجمع)
  18. Accessing to Stock Queue (تابلو معاملات)
  19. Accessing to Portfo (پرتفوی)
  20. Accessing to Transaction Details (ریز معاملات)

Accessing to Transaction History

you need to call GetTransactionHistory method like this:

    // دریافت سابقه معاملات - روزهای معامله شده
    var transactionHistory = stock.GetTransactionHistory();
    
    // دریافت سابقه معاملات -  همه روزها
    transactionHistory = stock.GetTransactionHistory(Tse.Entities.TransactionHistoryType.AllDay);

the return value is IList Collection of TransactionHistory class that let you access this field:

    /// <summary>
    /// تاریخ معاملات
    /// </summary>
    public string Date

    /// <summary>
    /// تعداد معاملات
    /// </summary>
    public string Count

    /// <summary>
    /// حجم معاملات انجام شده
    /// </summary>
    public string Volume 

    /// <summary>
    /// ارزش معاملات
    /// </summary>
    public string Value 

    /// <summary>
    /// قیمت دیروز
    /// </summary>
    public string YesterdayPrice

    /// <summary>
    /// اولین قیمت
    /// </summary>
    public string FirstPrice 

    /// <summary>
    /// آخرین قیمت
    /// </summary>
    public string LastTransactionPrice

    /// <summary>
    /// قیمت پایانی
    /// </summary>
    public string FinalTransactionPrice 

    /// <summary>
    /// کمترین قیمت
    /// </summary>
    public string MinimumPrice 

    /// <summary>
    /// بیشترین قیمت
    /// </summary>
    public string MaximumPrice 

Accessing to Brief Informations

you need to call BriefInformations method like this:

        // دریافت اطلاعات اولیه نماد
        var BriefInformations = stock.BriefInformations();

the return value is single object of BriefInformation class that let you access this field:

        /// <summary>
        /// آخرین معامله
        /// </summary>
        public string LastTransaction
        
        /// <summary>
        /// قیمت پایانی
        /// </summary>
        public string FinalPrice 

        /// <summary>
        /// اولین قیمت
        /// </summary>
        public string FirstPrice 

        /// <summary>
        /// قیمت دیروز
        /// </summary>
        public string YesterdayPrice 

        /// <summary>
        /// تعداد معاملات
        /// </summary>
        public string TransactionCount 

        /// <summary>
        /// حجم معاملات
        /// </summary>
        public string TransactionVolume 

        /// <summary>
        /// ارزش معاملات
        /// </summary>
        public string TransactionValue 

        /// <summary>
        /// ارزش بازار
        /// </summary>
        public string MarketValue

        /// <summary>
        /// بازه روز
        /// </summary>
        public Range TodayRange 

        /// <summary>
        /// معاملات حقیقی ها
        /// </summary>
        public CurrentDayTransactionDetails RealsTransaction { get; internal set; }

        /// <summary>
        /// معاملات حقوقی ها
        /// </summary>
        public CurrentDayTransactionDetails LegalTransaction { get; internal set; }

Accessing to Announcements

you need to call Announcements method like this:

        // دریافت مجامع
        var Announcements = stock.Announcements();

the return value is IList Collection of Announcement class that let you access this field:

        /// <summary>
        /// عنوان
        /// </summary>
        public string Title 

        /// <summary>
        /// تاریخ
        /// </summary>
        public string Date

        /// <summary>
        /// لینک دانلود
        /// </summary>
        public string DownloadLink 

        /// <summary>
        /// الصاق ها
        /// </summary>
        public List<Attachment> Attachments 

Accessing to Company Identity

you need to call CompanyIdentities method like this:

        // دریافت اطلاعات بخش شناسه نماد
        var CompanyIdentities = stock.CompanyIdentities();

the return value is single object of CompanyIdentity class that let you access this field:

        /// <summary>
        /// کد 12 رقمی نماد
        /// </summary>
        public string Symbol12DigitCode 

        /// <summary>
        /// کد 5 رقمی نماد
        /// </summary>
        public string Symbol5DigitCode 

        /// <summary>
        /// نام لاتین شرکت
        /// </summary>
        public string EnglishCompanyName 

        /// <summary>
        /// کد 4 رقمی شرکت
        /// </summary>
        public string Company4DigitCode

        /// <summary>
        /// نام شرکت 
        /// </summary>
        public string CompanyName 

        /// <summary>
        /// نماد فارسی
        /// </summary>
        public string PersianSymbol 

        /// <summary>
        /// نماد 30 رقمی فارسی
        /// </summary>
        public string Persian30DigitSymbol 

        /// <summary>
        /// کد 12 رقمی شرکت
        /// </summary>
        public string Company12DigitCode 

        /// <summary>
        /// بازار
        /// </summary>
        public string Market 

        /// <summary>
        /// کد تابلو
        /// </summary>
        public string BoardCode 

        /// <summary>
        /// کد گروه صنعت
        /// </summary>
        public string IndustryGroupCode 

        /// <summary>
        /// گروه صنعت
        /// </summary>
        public string IndustryGroup 

        /// <summary>
        /// کد زیر گروه صنعت
        /// </summary>
        public string IndustrySubGroupCode 

        /// <summary>
        /// زیر گروه صنعت
        /// </summary>
        public string IndustrySubGroup 

Accessing to Balance Sheet

you need to call BalanceSheets method like this:

        // دریافت ترازنامه ها
        var BalanceSheets = stock.BalanceSheets();

the return value is IList Collection of BalanceSheet class that let you access this field:

        /// <summary>
        /// عنوان
        /// </summary>
        public string Title

        /// <summary>
        /// نام گزارش
        /// </summary>
        public string ReportName 

        /// <summary>
        /// تاریخ انتشار
        /// </summary>
        public string PublishDate

        /// <summary>
        /// سال مالی
        /// </summary>
        public string YearEndToDate 

        /// <summary>
        /// دوره مالی
        /// </summary>
        public string PeriodEndToDate

        /// <summary>
        /// اطلاعات
        /// </summary>
        public List<List<string>> Data 

        /// <summary>
        /// دوره زمانی
        /// </summary>
        public string Period 

        /// <summary>
        /// وضعیت
        /// </summary>
        public BalanceSheetStatus Status 

Accessing to Council Announcement

you need to call CouncilAnnouncements method like this:

        // دریافت اطلاعات بخش آگهی مجمع
        var CouncilAnnouncements = stock.CouncilAnnouncements();

the return value is IList Collection of CouncilAnnouncement class that let you access this field:

        /// <summary>
        /// عنوان مجمع
        /// </summary>
        public string Title

        /// <summary>
        /// زمان مجمع
        /// </summary>
        public string Time 

        /// <summary>
        /// محل برگزاری
        /// </summary>
        public MeetingLocation MeetingLocation 

        /// <summary>
        /// دستورات جلسه
        /// </summary>
        public List<string> AgendaItems

Accessing to Status Change

you need to call StatusChanges method like this:

        // دریافت اطلاعات بخش تغییر وضعیت
        var StatusChanges = stock.StatusChanges();

the return value is IList Collection of StatusChange class that let you access this field:

        /// <summary>
        /// تاریخ
        /// </summary>
        public string Date

        /// <summary>
        /// زمان
        /// </summary>
        public string Time 

        /// <summary>
        /// وضعیت جدید
        /// </summary>
        public string Status 

Accessing to Board of Director

you need to call BoardOfDirectors method like this:

        // دریافت اطلاعات بخش هیئت مدیره
        var BoardOfDirectors = stock.BoardOfDirectors();

the return value is IList Collection of BoardOfDirector class that let you access this field:

        /// <summary>
        /// عنوان
        /// </summary>
        public string Title 

        /// <summary>
        /// تاریخ و زمان
        /// </summary>
        public string DateTime 

        /// <summary>
        /// تاریخ جلسه
        /// </summary>
        public string CouncilDate

        /// <summary>
        /// تاریخ هیئت مدیره
        /// </summary>
        public string BoardDirectorDate 

        /// <summary>
        /// اعضاء
        /// </summary>
        public IList<Member> Members 

        /// <summary>
        /// مدیر عامل
        /// </summary>
        public DirectorManager DirectorManager 

Accessing to Real Legal

you need to call RealLegals method like this:

        // دریافت اطلاعات حقیقی و حقوقی
        var RealLegals = stock.RealLegals();

the return value is IList Collection of RealLegal class that let you access this field:

        /// <summary>
        /// تاریخ معاملات
        /// </summary>
        public string Date 

        /// <summary>
        /// معاملات خرید
        /// </summary>
        public Buy Buyes 

        /// <summary>
        /// معاملات فروش
        /// </summary>
        public Sell Sellers 

        /// <summary>
        /// تغییر مالکیت حقوقی به حقیقی
        /// </summary>
        public string OwnershipLegalToReal 

Accessing to Stockholders

you need to call Stockholders method like this:

        // دریافت اطلاعات بخش سهامداران
        var Stockholders = stock.Stockholders();

the return value is IList Collection of Stockholder class that let you access this field:

        /// <summary>
        /// سهامدار / دارنده
        /// </summary>
        public string Holder 

        /// <summary>
        /// سهم
        /// </summary>
        public string Share

        /// <summary>
        /// درصد
        /// </summary>
        public string Percent 

        /// <summary>
        /// تغییر
        /// </summary>
        public string Status 

Accessing to EPS

you need to call EPSs method like this:

        // دریافت اطلاعات بخش EPS
        var eps = stock.EPSs();

the return value is IList Collection of EPS class that let you access this field:

        /// <summary>
        /// تاریخ انتشار
        /// </summary>
        public string Date 

        /// <summary>
        /// دوره زمانی
        /// </summary>
        public string PeriodTime 

        /// <summary>
        /// پیش بینی
        /// </summary>
        public string Predict 

        /// <summary>
        /// رشد
        /// </summary>
        public string Growth 

        /// <summary>
        /// واقعی
        /// </summary>
        public string Real 

        /// <summary>
        /// پوشش
        /// </summary>
        public string Cover 

        /// <summary>
        /// سال قبل
        /// </summary>
        public string LastYear 

        /// <summary>
        /// دوره قبل
        /// </summary>
        public string LastPeriod

Accessing to DPS

you need to call DPSs method like this:

        // دریافت اطلاعات بخش DPS
        var dps = stock.DPSs();

the return value is IList Collection of DPS class that let you access this field:

        /// <summary>
        /// تاریخ انتشار
        /// </summary>
        public string PublishDate

        /// <summary>
        /// تاریخ مجمع
        /// </summary>
        public string CouncilDate 

        /// <summary>
        /// سال مالی
        /// </summary>
        public string FiscalYear 

        /// <summary>
        /// سود یا زیان پس از کسر مالیات
        /// </summary>
        public string ProfitOrLoss

        /// <summary>
        /// سود قابل تخصیص
        /// </summary>
        public string DistributableProfit

        /// <summary>
        /// سود انباشته پایان دوره
        /// </summary>
        public string AccumulatedProfit 

        /// <summary>
        /// سود نقدی هر سهم
        /// </summary>
        public string CashProfit

Accessing to Company Info

you need to call CompanyInfos method like this:

        // دریافت اطلاعات بخش معرفی شرکت
        var CompanyInfos = stock.CompanyInfos();

the return value is single object of CompanyInfo class that let you access this field:

        /// <summary>
        /// موضوع فعالیت
        /// </summary>
        public string ActivityTopic 

        /// <summary>
        /// مدیر عامل
        /// </summary>
        public string ManagerDirector

        /// <summary>
        /// آدرس
        /// </summary>
        public string Address

        /// <summary>
        /// شماره تلفن
        /// </summary>
        public string Phone

        /// <summary>
        /// نمابر
        /// </summary>
        public string Fax 

        /// <summary>
        /// نشانی دفتر
        /// </summary>
        public string OfficeAddress 

        /// <summary>
        /// نشانی امور سهام
        /// </summary>
        public string StockAffairsAddress

        /// <summary>
        /// وب سایت
        /// </summary>
        public string Website

        /// <summary>
        /// پست الکترونیکی
        /// </summary>
        public string Email 

        /// <summary>
        /// حسابرس
        /// </summary>
        public string Auditor

        /// <summary>
        /// سرمایه
        /// </summary>
        public string Fund 

        /// <summary>
        /// سال مالی
        /// </summary>
        public string FiscalYear 

        /// <summary>
        /// مدیر مالی
        /// </summary>
        public string FinancialManager 

        /// <summary>
        /// شناسه ملی
        /// </summary>
        public string NationalID

Accessing to Cost Benefit

you need to call CostBenefits method like this:

        // دریافت اطلاعات بخش سود و زیان
        var CostBenefits = stock.CostBenefits();

the return value is IList Collection of CostBenefit class that let you access this field:

        /// <summary>
        /// عنوان
        /// </summary>
        public string Title 

        /// <summary>
        /// تاریخ
        /// </summary>
        public string Date 

        /// <summary>
        /// نام گزارش
        /// </summary>
        public string ReportName 

        /// <summary>
        /// سال گزارش
        /// </summary>
        public string YearEndToDate

        /// <summary>
        /// دوره گزارش
        /// </summary>
        public string Period 

        /// <summary>
        /// وضعیت حسابرسی
        /// </summary>
        public string IsAudited 

        /// <summary>
        /// دوره مالی
        /// </summary>
        public string PeriodEndToDate 

        /// <summary>
        /// اطلاعات
        /// </summary>
        public List<List<string>> Data

Accessing to Supervisor Message

you need to call SupervisorMessages method like this:

        // دریافت اطلاعات بخش پیام های ناظر
        var SupervisorMessages = stock.SupervisorMessages();

the return value is IList Collection of SupervisorMessage class that let you access this field:

        /// <summary>
        /// عنوان
        /// </summary>
        public string Title 

        /// <summary>
        /// زمان انتشار
        /// </summary>
        public string Time

        /// <summary>
        /// متن پیام
        /// </summary>
        public string Message

Accessing to Statistics

you need to call Statistics method like this:

        // دریافت اطلاعات بخش آمار
        var statistics = stock.Statistics();

the return value is IList Collection of Statistics class that let you access this field:

        /// <summary>
        /// آمار روزهای منفی
        /// </summary>
        public NegetiveDays NegetiveDays { get; internal set; }

        /// <summary>
        /// آمار روزهای مثبت
        /// </summary>
        public PositiveDays PositiveDays { get; internal set; }

        /// <summary>
        /// آمار روزهای معاملاتی
        /// </summary>
        public TradingDays TradingDays { get; internal set; }

        /// <summary>
        /// دفعات معامله
        /// </summary>
        public TradingCounts TradingCounts { get; internal set; }

        /// <summary>
        /// ارزش معاملات
        /// </summary>
        public TradingValue TradingValue { get; internal set; }

        /// <summary>
        /// ارزش شرکت
        /// </summary>
        public CompanyValue CompanyValue { get; internal set; }

        /// <summary>
        /// حجم معاملات
        /// </summary>
        public TradingVolume TradingVolume { get; internal set; }

        /// <summary>
        /// قیمت ها
        /// </summary>
        public Prices Prices { get; internal set; }

        /// <summary>
        /// وضعیت نماد
        /// </summary>
        public SymbolStatus SymbolStatus { get; internal set; }

        /// <summary>
        /// خریداران و فروشندگان
        /// </summary>
        public BuyersSellers BuyersSellers { get; internal set; }

        /// <summary>
        /// حقیقی حقوقی
        /// </summary>
        public LegalReal LegalReal { get; internal set; }
    }

    /// <summary>
    /// حقیقی حقوقی
    /// </summary>
    public class LegalReal
    {
        /// <summary>
        /// میانگین حجم خرید حقیقی در 3 ماه گذشته
        /// </summary>
        public decimal AverageOfRealBuyVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم خرید حقیقی در 12 ماه گذشته
        /// </summary>
        public decimal AverageOfRealBuyVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم خرید حقیقی در 3 ماه گذشته
        /// </summary>
        public int RankOfRealBuyVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم خرید حقیقی در 12 ماه گذشته
        /// </summary>
        public int RankOfRealBuyVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم خرید حقوقی در 3 ماه گذشته
        /// </summary>
        public decimal AverageOfLegalBuyVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم خرید حقوقی در 12 ماه گذشته
        /// </summary>
        public decimal AverageOfLegalBuyVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم خرید حقوقی در 3 ماه گذشته
        /// </summary>
        public int RankOfLegalBuyVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم خرید حقوقی در 12 ماه گذشته
        /// </summary>
        public int RankOfLegalBuyVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد خریدار حقیقی در 3 ماه گذشته
        /// </summary>
        public int AverageNumberOfRealBuyerIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد خریدار حقیقی در 12 ماه گذشته
        /// </summary>
        public int AverageNumberOfRealBuyerIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریدار حقیقی در 3 ماه گذشته
        /// </summary>
        public int RankOfNumberOfRealBuyerIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریدار حقیقی در 12 ماه گذشته
        /// </summary>
        public int RankOfNumberOfRealBuyerIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد خریدار حقوقی در 3 ماه گذشته
        /// </summary>
        public int AverageNumberOfLegalBuyerIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد خریدار حقوقی در 12 ماه گذشته
        /// </summary>
        public int AverageNumberOfLegalBuyerIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریدار حقوقی در 3 ماه گذشته
        /// </summary>
        public int RankOfNumberOfLegalBuyerIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریدار حقوقی در 12 ماه گذشته
        /// </summary>
        public int RankOfNumberOfLegalBuyerIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم فروش حقیقی در 3 ماه گذشته
        /// </summary>
        public decimal AverageOfRealSellVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم فروش حقیقی در 12 ماه گذشته
        /// </summary>
        public decimal AverageOfRealSellVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم فروش حقیقی در 3 ماه گذشته
        /// </summary>
        public int RankOfRealSellVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم فروش حقیقی در 12 ماه گذشته
        /// </summary>
        public int RankOfRealSellVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم فروش حقوقی در 3 ماه گذشته
        /// </summary>
        public decimal AverageOfLegalSellVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم فروش حقوقی در 12 ماه گذشته
        /// </summary>
        public decimal AverageOfLegalSellVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم فروش حقوقی در 3 ماه گذشته
        /// </summary>
        public int RankOfLegalSellVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم فروش حقوقی در 12 ماه گذشته
        /// </summary>
        public int RankOfLegalSellVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشنده حقیقی در 3 ماه گذشته
        /// </summary>
        public int AverageNumberOfRealSellerIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشنده حقیقی در 12 ماه گذشته
        /// </summary>
        public int AverageNumberOfRealSellerIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشنده حقیقی در 3 ماه گذشته
        /// </summary>
        public int RankOfNumberOfRealSellerIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشنده حقیقی در 12 ماه گذشته
        /// </summary>
        public int RankOfNumberOfRealSellerIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشنده حقوقی در 3 ماه گذشته
        /// </summary>
        public int AverageNumberOfLegalSellerIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشنده حقوقی در 12 ماه گذشته
        /// </summary>
        public int AverageNumberOfLegalSellerIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشنده حقوقی در 3 ماه گذشته
        /// </summary>
        public int RankOfNumberOfLegalSellerIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشنده حقوقی در 12 ماه گذشته
        /// </summary>
        public int RankOfNumberOfLegalSellerIn12PastMonth { get; internal set; }
    }

    /// <summary>
    /// خریداران و فروشندگان
    /// </summary>
    public class BuyersSellers
    {
        /// <summary>
        /// میانگین تعداد خریداران در 3 ماه گذشته
        /// </summary>
        public int AverageOfBuyersNumberIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد خریداران در 12 ماه گذشته
        /// </summary>
        public int AverageOfBuyersNumberIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریداران در 3 ماه گذشته
        /// </summary>
        public int RankOfBuyersNumberIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد خریداران در 12 ماه گذشته
        /// </summary>
        public int RankOfBuyersNumberIn12PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشندگان در 3 ماه گذشته
        /// </summary>
        public int AverageOfSellersNumberIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین تعداد فروشندگان در 12 ماه گذشته
        /// </summary>
        public int AverageOfSellersNumberIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشندگان در 3 ماه گذشته
        /// </summary>
        public int RankOfSellersNumberIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه تعداد فروشندگان در 12 ماه گذشته
        /// </summary>
        public int RankOfSellersNumberIn12PastMonth { get; internal set; }
    }

    /// <summary>
    /// وضعیت نماد
    /// </summary>
    public class SymbolStatus
    {
        /// <summary>
        /// تعداد روزهای باز در 3 ماه گذشته
        /// </summary>
        public int NumberOfOpenDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// تعداد روزهای باز در 12 ماه گذشته
        /// </summary>
        public int NumberOfOpenDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای باز در 3 ماه گذشته
        /// </summary>
        public decimal PercentOfOpenDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای باز در 12 ماه گذشته
        /// </summary>
        public decimal PercentOfOpenDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای باز در 3 ماه گذشته
        /// </summary>
        public int RankOfOpenDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای باز در 12 ماه گذشته
        /// </summary>
        public decimal RankOfOpenDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// تعداد روزهای بسته در 3 ماه گذشته
        /// </summary>
        public decimal NumberOfCloseDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// تعداد روزهای بسته در 12 ماه گذشته
        /// </summary>
        public decimal NumberOfCloseDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای بسته در 3 ماه گذشته
        /// </summary>
        public decimal PercentOfCloseDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای بسته در 12 ماه گذشته
        /// </summary>
        public decimal PercentOfCloseDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای بسته در 3 ماه گذشته
        /// </summary>
        public int RankOfCloseDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای بسته در 12 ماه گذشته
        /// </summary>
        public int RankOfCloseDaysIn12PastMonth { get; internal set; }
    }

    /// <summary>
    /// قیمت ها
    /// </summary>
    public class Prices
    {
        /// <summary>
        /// قیمت میانگین وزنی آخرین روز - بدون دخالت حجم مبنا
        /// </summary>
        public decimal WeightedAveragePriceInLastDayWithoutBaseVolume { get; internal set; }

        /// <summary>
        /// قیمت میانگین وزنی آخرین روز - با دخالت حجم مبنا
        /// </summary>
        public decimal WeightedAveragePriceInLastDayWithBaseVolume { get; internal set; }

    }

    /// <summary>
    /// حجم معاملات
    /// </summary>
    public class TradingVolume
    {
        /// <summary>
        /// میانگین حجم معاملات در 3 ماه گذشته
        /// </summary>
        public ulong AverageTradingVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین حجم معاملات در 12 ماه گذشته
        /// </summary>
        public ulong AverageTradingVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم معاملات در 3 ماه گذشته
        /// </summary>
        public int RankOfTradingVolumeIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه حجم معاملات در 12 ماه گذشته
        /// </summary>
        public int RankOfTradingVolumeIn12PastMonth { get; internal set; }

        /// <summary>
        /// حجم معاملات آخرین روز
        /// </summary>
        public ulong TradingVolumeInLastDay { get; internal set; }

    }

    /// <summary>
    /// ارزش شرکت
    /// </summary>
    public class CompanyValue
    {
        /// <summary>
        /// ارزش شرکت در آخرین روز
        /// </summary>
        public decimal CompanyValueInLastDay { get; internal set; }

        /// <summary>
        /// رتبه ارزش شرکت در آخرین روز
        /// </summary>
        public int RankOfCompanyValueInLastDay { get; internal set; }
    }

    /// <summary>
    /// ارزش معاملات
    /// </summary>
    public class TradingValue
    {
        /// <summary>
        /// میانگین ارزش معاملات در 3 ماه گذشته
        /// </summary>
        public decimal AverageTradingValueIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین ارزش معاملات در 12 ماه گذشته
        /// </summary>
        public decimal AverageTradingValueIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه ارزش معاملات در 3 ماه گذشته
        /// </summary>
        public int RankTradingValueIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه ارزش معاملات در 12 ماه گذشته
        /// </summary>
        public int RankTradingValueIn12PastMonth { get; internal set; }

        /// <summary>
        /// ارزش معاملات آخرین روز
        /// </summary>
        public decimal TradingValueInLastDay { get; internal set; }
    }

    /// <summary>
    /// دفعات معامله
    /// </summary>
    public class TradingCounts
    {
        /// <summary>
        /// میانگین دفعات معاملات روزانه در 3 ماه گذشته
        /// </summary>
        public int AverageDailyTradingCountsIn3PastMonth { get; internal set; }

        /// <summary>
        /// میانگین دفعات معاملات روزانه در 12 ماه گذشته
        /// </summary>
        public int AverageDailyTradingCountsIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه دفعات معاملات روزانه در 3 ماه گذشته
        /// </summary>
        public int RankOfDailyTradingCountsIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه دفعات معاملات روزانه در 12 ماه گذشته
        /// </summary>
        public int RankOfDailyTradingCountsIn12PastMonth { get; internal set; }

        /// <summary>
        /// دفعات معاملات در آخرین روز
        /// </summary>
        public int TradingCountsInLastDay { get; internal set; }

    }

    /// <summary>
    /// آمار روزهای معاملاتی
    /// </summary>
    public class TradingDays
    {
        /// <summary>
        /// روزهای بدون معامله در 3 ماه گذشته
        /// </summary>
        public int DaysWithoutTradingIn3PastMonth { get; internal set; }

        /// <summary>
        /// روزهای بدون معامله در 12 ماه گذشته
        /// </summary>
        public int DaysWithoutTradingIn12PastMonth { get; internal set; }

        /// <summary>
        /// روزهای با معامله در 3 ماه گذشته
        /// </summary>
        public int DaysWithTradingIn3PastMonth { get; internal set; }

        /// <summary>
        /// روزهای با معامله در 12 ماه گذشته
        /// </summary>
        public int DaysWithTradingIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای با معامله در 3 ماه گذشته
        /// </summary>
        public int RankOfTradingDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای با معامله در 12 ماه گذشته
        /// </summary>
        public int RankOfTradingDaysIn12PastMonth { get; internal set; }
    }

    /// <summary>
    /// آمار روزهای منفی
    /// </summary>
    public class NegetiveDays
    {
        /// <summary>
        /// تعداد روزهای منفی در 3 ماه گذشته
        /// </summary>
        public int NumberOfNegetiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// تعداد روزهای منفی در 12 ماه گذشته
        /// </summary>
        public int NumberOfNegetiveDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای منفی در 3 ماه گذشته
        /// </summary>
        public decimal PercentOfNegetiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای منفی در 12 ماه گذشته
        /// </summary>
        public decimal PercentOfNegetiveDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای منفی در 3 ماه گذشته
        /// </summary>
        public int RankOfNegetiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای منفی در 12 ماه گذشته
        /// </summary>
        public int RankOfNegetiveDaysIn12PastMonth { get; internal set; }
    }

    /// <summary>
    /// آمار روزهای مثبت
    /// </summary>
    public class PositiveDays
    {
        /// <summary>
        /// تعداد روزهای مثبت در 3 ماه گذشته
        /// </summary>
        public int NumberOfPositiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// تعداد روزهای مثبت در 12 ماه گذشته
        /// </summary>
        public int NumberOfPositiveDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای مثبت در 3 ماه گذشته
        /// </summary>
        public decimal PercentOfPositiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// درصد روزهای مثبت در 12 ماه گذشته
        /// </summary>
        public decimal PercentOfPositiveDaysIn12PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای مثبت در 3 ماه گذشته
        /// </summary>
        public int RankOfPositiveDaysIn3PastMonth { get; internal set; }

        /// <summary>
        /// رتبه روزهای مثبت در 12 ماه گذشته
        /// </summary>
        public int RankOfPositiveDaysIn12PastMonth { get; internal set; }
    }

Accessing to Council Decisions

you need to call CouncilDecisions method like this:

        // دریافت اطلاعات بخش تصمیمات مجمع
        var councilDecisions = stock.CouncilDecisions();

the return value is IList Collection of CouncilDecision class that let you access this field:

    
    /// <summary>
    /// تصمیمات مجمع
    /// </summary>
    public class CouncilDecision
    {
        /// <summary>
        /// عنوان
        /// </summary>
        public string Title { get; internal set; }

        /// <summary>
        /// تاریخ
        /// </summary>
        public string Date { get; internal set; }

        /// <summary>
        /// انتهای سال مالی
        /// </summary>
        public DateTime? YearEndToDate { get; internal set; }

        /// <summary>
        /// مکان و زمان
        /// </summary>
        public PlaceAndDateTime PlaceAndDateTime { get; internal set; }

        /// <summary>
        /// سهامداران
        /// </summary>
        public IList<Stockholder> Stockholder { get; internal set; }

        /// <summary>
        /// هیئت رئیسه
        /// </summary>
        public IList<string> Presidium { get; internal set; }

        /// <summary>
        /// مدیر عامل
        /// </summary>
        public DirectorManager DirectorManager {get;internal set;}

        /// <summary>
        /// صورت سود و زیان
        /// </summary>
        public IList<IncomeStatement> IncomeStatements { get; internal set; }

        /// <summary>
        /// سود قابل تخصیص
        /// </summary>
        public IList<DividedRetainedEarning> DividedRetainedEarning { get; internal set; }

        /// <summary>
        /// بازرس
        /// </summary>
        public Inspector Inspector { get; internal set; }

        /// <summary>
        /// روزنامه
        /// </summary>
        public IList<string> Newspaper { get; internal set; }

        /// <summary>
        /// دستمزد اعضای هیئت مدیره
        /// </summary>
        public string BoardMemberWage { get; internal set; }

        /// <summary>
        /// پاداش اعضای عیئت مدیره
        /// </summary>
        public string BoardMemberGift { get; internal set; }

        /// <summary>
        /// سایر موارد
        /// </summary>
        public string Other { get; internal set; }
    }

    /// <summary>
    /// بازرس
    /// </summary>
    public class Inspector
    {
        /// <summary>
        /// متن نهایی
        /// </summary>
        public string Text { get; internal set; }

        /// <summary>
        /// بازرس اصلی
        /// </summary>
        public string Auditor { get; internal set; }

        /// <summary>
        /// بازرس علل البدل
        /// </summary>
        public string AlternativeAuditor { get; internal set; }

    }

    /// <summary>
    /// سود قابل تخصیص
    /// </summary>
    public class DividedRetainedEarning
    {
        /// <summary>
        /// شرح
        /// </summary>
        public string Statement { get; internal set; }

        /// <summary>
        /// مقدار
        /// </summary>
        public string Value { get; internal set; }
    }

    /// <summary>
    /// صورت سود و زیان
    /// </summary>
    public class IncomeStatement
    {
        /// <summary>
        /// شرح
        /// </summary>
        public string Title { get; internal set; }

        /// <summary>
        /// مقادیر
        /// </summary>
        public List<string> Values { get; internal set; }
    }

    /// <summary>
    /// مکان و زمان
    /// </summary>
    public class PlaceAndDateTime
    {
        /// <summary>
        /// تاریخ
        /// </summary>
        public DateTime? Date { get; internal set; }

        /// <summary>
        /// زمان
        /// </summary>
        public TimeSpan? Time { get; internal set; }

        /// <summary>
        /// مکان
        /// </summary>
        public string Place { get; internal set; }
    }

Accessing to Stock Queue

you need to call StockQueue method like this:

        // دریافت اطلاعات تابلو معاملات
        var stockQueue = stock.StockQueue(QueueStatus.Full); // این فراخوانی تمام سفارشات ثبت شده در تابلو را نشان میدهد، که شامل سفارشاتی که در محدوده مجاز روز قرار ندارند، نیز میشود
        // یا
        var stockQueue = stock.StockQueue(QueueStatus.Clean); // صرفاً سفارشاتی را نشان میدهد که در محدوده مجاز روز قرار دارند

the return value is IList Collection of StockQueue class that let you access this field:

    /// <summary>
    /// تابلو سهام
    /// </summary>
    public class StockQueue
    {
        /// <summary>
        /// بخش خرید تابلو
        /// </summary>
        public IList<RowStockQueue> BuyStockQueue { get; internal set; }

        /// <summary>
        /// بخش فروش تابلو
        /// </summary>
        public IList<RowStockQueue> SellStockQueue { get; internal set; }
    }

    public class RowStockQueue
    {
        /// <summary>
        /// تعداد
        /// </summary>
        public int Count { get; internal set; }

        /// <summary>
        /// حجم
        /// </summary>
        public ulong Volume { get; internal set; }

        /// <summary>
        /// قیمت
        /// </summary>
        public decimal Price { get; internal set; }
    }

Accessing to Portfo

you need to call Portfo method like this:

        // دریافت اطلاعات بخش پرتفوی
        var portfo= stock.Portfo();

the return value is IList Collection of Portfo class that let you access this field:

     /// <summary>
    /// نمایش اطلاعات بخش پورتفوی
    /// </summary>
    public class Portfo
    {
        /// <summary>
        /// پرتفو به تفکیک گروه صنعت
        /// </summary>
        public IList<ByIndustryGroup> ByIndustryGroup { get; internal set; }

        /// <summary>
        /// پرتفوی شرکت های بورسی
        /// </summary>
        public IList<CompaniesPortfo> CompaniesInBourse { get; internal set; }

        /// <summary>
        /// پرتفو شرکت های غیر بورسی
        /// </summary>
        public IList<CompaniesPortfo> CompaniesOutBourse { get; internal set; }

        /// <summary>
        /// صورت ریز معاملات تحصیل شده
        /// </summary>
        public IList<ObtainingAllTransactions> ObtainingAllTransactions { get; internal set; }

        /// <summary>
        /// صورت ریز معاملات واگذار شده
        /// </summary>
        public IList<AssignmentTransaction> AssignmentTransaction { get; internal set; }
    }

    /// <summary>
    /// پرتفوی به تفکیک گروه صنعت
    /// </summary>
    public class ByIndustryGroup
    {
        public PortfoBasicInfo PortfoBasicInfo { get; internal set; }

        public IList<ByIndustryGroupFields> ByIndustryGroupFields { get; internal set; }
    }

    /// <summary>
    /// پورتفوی شرکتها (بورسی و غیر بورسی)
    /// </summary>
    public class CompaniesPortfo
    {
        public PortfoBasicInfo PortfoBasicInfo { get; internal set; }

        public IList<CompaniesPortfoFields> CompaniesPortfoFields { get; internal set; }
    }

    /// <summary>
    /// ریز معاملات تحصیل شده
    /// </summary>
    public class ObtainingAllTransactions
    {
        public PortfoBasicInfo PortfoBasicInfo { get; internal set; }

        public IList<ObtainingAllTransactionsFields> ObtainingAllTransactionsFields { get; internal set; }
    }

    /// <summary>
    /// ریز معاملات واگذار شده
    /// </summary>
    public class AssignmentTransaction
    {
        public PortfoBasicInfo PortfoBasicInfo { get; internal set; }

        public IList<AssignmentTransactionFields> AssignmentTransactionFields { get; internal set; }
    }

    public class ByIndustryGroupFields
    {
        /// <summary>
        /// عنوان آیتم پرتفو
        /// </summary>
        public string Item { get; internal set; }

        /// <summary>
        /// پذیرفته شده در بورس
        /// </summary>
        public Period AcceptedInMarket { get; internal set; }

        /// <summary>
        /// خارج از بورس
        /// </summary>
        public Period OutOffMarket { get; internal set; }

        /// <summary>
        /// جمع سرمایه گذاری
        /// </summary>
        public Period TotalInvestment { get; internal set; }
    }

    public class CompaniesPortfoFields
    {
        /// <summary>
        /// نام شرکت
        /// </summary>
        public string Name { get; internal set; }

        /// <summary>
        /// سرمایه
        /// </summary>
        public ulong Capital { get; internal set; }

        /// <summary>
        /// ارزش اسمی هر سهم
        /// </summary>
        public int NominalValue { get; internal set; }

        /// <summary>
        /// دوره (ابتدای دوره، تغییرات، انتهای دوره)
        /// </summary>
        public Period PeriodsValue { get; internal set; }
    }

    public class ObtainingAllTransactionsFields
    {
        /// <summary>
        ///  نام شرکت
        /// </summary>
        public string ComapanyName { get; internal set; }

        /// <summary>
        /// تعداد سهام
        /// </summary>
        public ulong NumberOfStocks { get; internal set; }

        /// <summary>
        /// بهای تمام شده هر سهم
        /// </summary>
        public int StockActivityCost { get; internal set; }

        /// <summary>
        /// کل مبلغ بهای تمام شده پذیرفته شده در بورس
        /// </summary>
        public int TotalAmountActivityCostInBourse { get; internal set; }

        /// <summary>
        /// کل مبلغ بهای تمام شده پذیرفته شده در خارج از بورس
        /// </summary>
        public int TotalAmountActivityCostInOutBourse { get; internal set; }
    }

    public class AssignmentTransactionFields
    {
        /// <summary>
        ///  نام شرکت
        /// </summary>
        public string ComapanyName { get; internal set; }

        /// <summary>
        /// تعداد سهام
        /// </summary>
        public ulong NumberOfStocks { get; internal set; }

        /// <summary>
        /// بهای تمام شده هر سهم
        /// </summary>
        public int StockActivityCost { get; internal set; }

        /// <summary>
        /// کل مبلغ بهای تمام شده
        /// </summary>
        public int TotalAmountActivityConst { get; internal set; }

        /// <summary>
        /// قیمت واگذاری هر سهم
        /// </summary>
        public int PriceOfAssignmentPerStock { get; internal set; }

        /// <summary>
        /// کل مبلغ واگذاری
        /// </summary>
        public int TotalAmountOfAssignment { get; internal set; }

        /// <summary>
        /// سود و زیان واگذاری
        /// </summary>
        public int ProfitOfAssignment { get; internal set; }
    }

    /// <summary>
    /// نمایش دهنده یک دوره
    /// </summary>
    public class Period
    {
        /// <summary>
        /// ابتدای دوره
        /// </summary>
        public PeriodItems OutsetPeriod { get; internal set; }
        
        /// <summary>
        /// تغییرات
        /// </summary>
        public PeriodItems Change { get; internal set; }

        /// <summary>
        /// انتهای دوره
        /// </summary>
        public PeriodItems OutrancePeriod { get; internal set; }
    }

    /// <summary>
    /// .ویژگی های یک دوره
    /// مقادیر این کلاس بسته به نوع تفکیک شده پرتفوی متفاوت خواهد بود
    /// </summary>
    public class PeriodItems
    {
        /// <summary>
        /// تعداد شرکت
        /// </summary>
        public int? NumberOfCompany { get; internal set; }

        /// <summary>
        /// بهای تمام شده
        /// </summary>
        public long? ActivityCost { get; internal set; }

        /// <summary>
        /// ارزش بازار
        /// </summary>
        public long? MarketValue { get; internal set; }

        /// <summary>
        /// درصد کل
        /// </summary>
        public decimal? TotalPercentage { get; internal set; }

        /// <summary>
        /// تعداد سهام
        /// </summary>
        public long? NumberOfStocks { get; internal set; }

        /// <summary>
        /// درصد مالکیت
        /// </summary>
        public decimal? OwnershipPercentage { get; internal set; }

        /// <summary>
        /// بهای تمام شده هر سهم
        /// </summary>
        public int? StockActivityCost { get; internal set; }

        /// <summary>
        /// ارزش هر سهم
        /// </summary>
        public int? StockValue { get; internal set; }

        /// <summary>
        /// افزایش (کاهش)
        /// </summary>
        public int? IncreaseDecrease { get; internal set; }

        /// <summary>
        /// کل مبلغ بهای تمام شده
        /// </summary>
        public int? TotalAmountActivityConst { get; internal set; }
    }

    public class PortfoBasicInfo
    {
        /// <summary>
        /// عنوان
        /// </summary>
        public string Title { get; internal set; }

        /// <summary>
        /// تاریخ انتشار
        /// </summary>
        public DateTime? Publish { get; internal set; }

        /// <summary>
        /// نام گزارش
        /// </summary>
        public string ReportName { get; internal set; }

        /// <summary>
        /// انتهای سال مالی
        /// </summary>
        public DateTime? YearEndToDate { get; internal set; }

        /// <summary>
        /// دوره
        /// </summary>
        public string Period { get; internal set; }

        /// <summary>
        /// وضعیت حسابرسی
        /// </summary>
        public bool IsAudited { get; internal set; }

        /// <summary>
        /// انتهای دوره
        /// </summary>
        public DateTime? PeriodEndToDate { get; internal set; }
    }

Accessing to Transaction Details

you need to call GetTransactionDetails method like this:

        // دریافت ریز معاملات صورت گرفته بر اساس تاریخ شمسی
        var transactionDetails = stock.GetTransactionDetails("1399/10/21");

        // دریافت ریز معاملات صورت گرفته براساس تاریخ میلادی
        var transactionDetails = stock.GetTransactionDetails(ِDateTime.Now);

        // دریافت ریز معاملات صورت گرفته براساس سابقه معاملات
        var transactionHistory = stock.GetTransactionHistory();
        var transactionDetails = stock.GetTransactionDetails(ِtransactionHistory[10]);

the return value is IList Collection of TransactionDetails class that let you access this field:

        /// <summary>
    /// نمایش ریزمعاملات در یک روز خاص
    /// </summary>
    public class TransactionDetails
    {
        /// <summary>
        /// شناسه معامله
        /// </summary>
        public int TransactionId { get; internal set; }

        /// <summary>
        /// زمان انجام معامله
        /// </summary>
        public TimeSpan Time { get; internal set; }

        /// <summary>
        /// حجم انجام شده
        /// </summary>
        public ulong Volume { get; internal set; }

        /// <summary>
        /// قیمت مورد معامله
        /// </summary>
        public decimal Price { get; internal set; }

        /// <summary>
        /// نشان میدهد که آیا معامله مورد تایید قرار گرفته است یا نه
        /// </summary>
        public bool Canceled { get; internal set; }
    }