---
id: "T:cAlgo.API.TimeSeries"
kind: "interface"
namespace: "cAlgo.API"
url: "https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/"
---

> Documentation index for agents: https://help.ctrader.com/ctrader-algo/llms.txt · machine index: https://help.ctrader.com/ctrader-algo/api.json

# TimeSeries (interface)

A series of values that represent time like Bars.OpenTimes

Environments: Desktop supported · CLI supported · Cloud supported.

## Definition

```csharp
public interface TimeSeries
```

## Examples

C#:

```csharp
using cAlgo.API;
using cAlgo.API.Internals;

namespace cAlgo
{
    // This sample indicator shows how to use Bars OpenTimes Time Series
    public partial class TimeSeriesSample : Indicator
    {
        protected override void Initialize()
        {
            // Every Bars object has a time series which is the open times of bars
            var timeSeries = Bars.OpenTimes;

            Print("Count: ", timeSeries.Count);

            // You can get another bars index by using TimeSeries GetIndexByTime/GetIndexByExactTime methods

            var dailyBars = MarketData.GetBars(TimeFrame.Daily);

            var dailyBarsIndex = timeSeries.GetIndexByTime(dailyBars.OpenTimes.LastValue);

            var open = Bars.OpenPrices[dailyBarsIndex];

            Print("Daily Bars Index: ", dailyBarsIndex, " | Open: ", open);
        }

        public override void Calculate(int index)
        {
        }
    }
}
```

Python:

```python
import clr
clr.AddReference("cAlgo.API")

from cAlgo.API import *

class TimeSeriesSample():
    def initialize(self):
        # Every Bars object has a time series which is the open times of bars
        timeSeries = api.Bars.OpenTimes

        api.Print(f"Count: {timeSeries.Count}")

        # You can get another bars index by using TimeSeries GetIndexByTime/GetIndexByExactTime methods
        dailyBars = api.MarketData.GetBars(TimeFrame.Daily)
        dailyBarsIndex = timeSeries.GetIndexByTime(dailyBars.OpenTimes.LastValue)
        openPrice = api.Bars.OpenPrices[dailyBarsIndex]
        api.Print(f"Daily Bars Index: {dailyBarsIndex} | Open: {openPrice}")
```

config.json:

```json
{
  "AccessRights": "None",
  "TimeZone": "UTC",
  "IsOverlay": false
}
```

## Methods

- `int GetIndexByExactTime(DateTime dateTime)` — Find the index in the different time frame series. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/GetIndexByExactTime/index.md)
- `int GetIndexByTime(DateTime dateTime)` — Find the index in the different time frame series. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/GetIndexByTime/index.md)
- `DateTime Last(int index)` — Access a value in the data series certain number of bars ago. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/Last/index.md)

## Properties

- `int Count {get;}` — Gets the number of elements contained in the series. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/Count/index.md)
- `DateTime Item {get;}` — Returns the DateTime value at the specified index. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/Item/index.md)
- `DateTime LastValue {get;}` — Gets the last value of this time series. [details](https://help.ctrader.com/ctrader-algo/references/Collections/DataSeries/TimeSeries/LastValue/index.md)

