using Managing.Infrastructure.Databases.MongoDb.Attributes;
using Managing.Infrastructure.Databases.MongoDb.Configurations;
using MongoDB.Bson.Serialization.Attributes;
using static Managing.Common.Enums;

namespace Managing.Infrastructure.Databases.MongoDb.Collections
{
    [BsonCollection("Candles")]
    public class CandleDto : Document
    {
        public TradingExchanges Exchange { get; set; }
        public Timeframe Timeframe { get; set; }
        public string Ticker { get; set; }
        [BsonDateTimeOptions]
        public DateTime OpenTime { get; set; }
        [BsonDateTimeOptions]
        public DateTime CloseTime { get; set; }
        public decimal Open { get; set; }
        public decimal Close { get; set; }
        public decimal High { get; set; }
        public decimal Low { get; set; }
        public decimal BaseVolume { get; set; }
        public decimal QuoteVolume { get; set; }
        public int TradeCount { get; set; }
        public decimal TakerBuyBaseVolume { get; set; }
        public decimal TakerBuyQuoteVolume { get; set; }
    }
}
