Example #1
0
        public static HistoryPrice ToHistory(this PoloniexHistoryDataType historyDataType, Pair pair)
        {
            var history = new HistoryPrice(PoloniexTools.UnixTimeStampToDateTime(historyDataType.TimeStamp),
                                           historyDataType.Open, historyDataType.Close,
                                           historyDataType.High, historyDataType.Low, historyDataType.Volume, historyDataType.QuoteVolume);

            return(history);
        }
        public IEnumerable <HistoryPrice> MarketHistoryData(Pair pair, TimeframeType timeframe, TimeRange timeRange)
        {
            var start  = _timeCorrector.ToMarketTime(timeRange.Start);
            var finish = _timeCorrector.ToMarketTime(timeRange.Finish);

            var parameters = new Tuple <string, string> [5];

            parameters[0] = new Tuple <string, string>(EndPoints.CommandTag, EndPoints.GetHistoryData);
            parameters[1] = new Tuple <string, string>("currencyPair", PoloniexPairs.AsString(pair));
            parameters[2] = new Tuple <string, string>("start", PoloniexTools.DateTimeToUnixTimeStamp(start).ToString());
            parameters[3] = new Tuple <string, string>("end", PoloniexTools.DateTimeToUnixTimeStamp(finish).ToString());
            parameters[4] = new Tuple <string, string>("period", PoloniexTools.TimeFrameToSeconds(timeframe).ToString());

            var query = Connection.PublicGetQuery <List <PoloniexHistoryDataType> >(EndPoints.Public, parameters);

            return(query.Select(item => item.ToHistory(pair)));
        }
        public IEnumerable <MarketHistory> MarketTradeHistory(Pair pair, TimeRange timeRange)
        {
            var paramsCount = timeRange != null ? 4 : 2;
            var parameters  = new Tuple <string, string> [paramsCount];

            parameters[0] = new Tuple <string, string>(EndPoints.CommandTag, EndPoints.GetMarketHistory);
            parameters[1] = new Tuple <string, string>("currencyPair", PoloniexPairs.AsString(pair));
            if (timeRange != null)
            {
                var start  = _timeCorrector.ToMarketTime(timeRange.Start);
                var finish = _timeCorrector.ToMarketTime(timeRange.Finish);
                parameters[2] = new Tuple <string, string>("start", PoloniexTools.DateTimeToUnixTimeStamp(start).ToString());
                parameters[3] = new Tuple <string, string>("end", PoloniexTools.DateTimeToUnixTimeStamp(finish).ToString());
            }

            var query = Connection.PublicGetQuery <List <PoloniexTradeHistoryDataType> >(EndPoints.Public, parameters);

            return(query.Select(item => item.ToHistory(pair)));
        }