---
id: "T:cAlgo.API.PriceDataSourceId"
kind: "struct"
namespace: "cAlgo.API"
url: "https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/DataSource/PriceDataSourceId/"
---

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

# PriceDataSourceId (struct)

Represents the Id for price data, it's used for backtesting data sources.

Environments: Desktop supported · CLI not supported · Cloud not supported.

- CLI: Available to plugins only, and plugins cannot run in the CLI.
- Cloud: Available to plugins only, and plugins cannot run in the cloud.

## Definition

```csharp
public sealed struct PriceDataSourceId : ValueType
```

Available since cAlgo.API 5.3.

## Examples

C#:

```csharp
private void OnDataRequested(BacktestingDataRequest request)
{
    var priceDataSourceId = request.PriceDataSourceId;
    Print("Data requested for {0} {1}", priceDataSourceId.Symbol.Name, priceDataSourceId.TimeFrame);
}
```

Python:

```python
def on_data_requested(self, request):
    priceDataSourceId = request.PriceDataSourceId
    api.Print(f"Data requested for {priceDataSourceId.Symbol.Name} {priceDataSourceId.TimeFrame}")
```

## Constructors

- `public PriceDataSourceId(Symbol Symbol, TimeFrame TimeFrame)` — Represents the Id for price data, it's used for backtesting data sources. [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/DataSource/PriceDataSourceId/Constructor/index.md)

## Properties

- `public Symbol Symbol {get; set;}` — Symbol [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/DataSource/PriceDataSourceId/Symbol/index.md)
- `public TimeFrame TimeFrame {get; set;}` — TimeFrame [details](https://help.ctrader.com/ctrader-algo/references/Plugin/Backtesting/DataSource/PriceDataSourceId/TimeFrame/index.md)

