BacktestingDataRequest
interface cAlgo.API Since 5.3
DesktopCLICloud
Represents a backtesting data request for a backtesting data source.
Environment behaviour
CLI — not supported. Available to plugins only, and plugins cannot run in the CLI.
Cloud — not supported. Available to plugins only, and plugins cannot run in the cloud.
Definition
public interface BacktestingDataRequest
Namespace: cAlgo.API · Group: DataSource
Examples
private void OnDataRequested(BacktestingDataRequest request)
{
Print("{0} data requested for {1} from {2} to {3}", request.DataType, request.PriceDataSourceId.Symbol.Name, request.StartTime, request.EndTime);
if (request.DataType != BacktestingDataSourceDataType.Tick)
{
request.Fail("Only tick data is provided by this data source");
return;
}
var ticks = MarketData.GetTicks(request.PriceDataSourceId.Symbol.Name);
var data = ticks.Where(tick => tick.Time >= request.StartTime && tick.Time <= request.EndTime)
.Select(tick => new BacktestingTick(tick.Time, tick.Bid, tick.Ask));
request.Complete(new BacktestingTickData(data));
}
from System import Array
def on_data_requested(self, request):
api.Print(f"{request.DataType} data requested for {request.PriceDataSourceId.Symbol.Name} from {request.StartTime} to {request.EndTime}")
if request.DataType != BacktestingDataSourceDataType.Tick:
request.Fail("Only tick data is provided by this data source")
return
ticks = api.MarketData.GetTicks(request.PriceDataSourceId.Symbol.Name)
data = [BacktestingTick(tick.Time, tick.Bid, tick.Ask) for tick in ticks if tick.Time >= request.StartTime and tick.Time <= request.EndTime]
request.Complete(BacktestingTickData(Array[BacktestingTick](data)))
Methods
| Name | Description |
|---|---|
CompleteDesktopCLICloudvoid | Completes current request. |
FailDesktopCLICloudvoid | Notifies current request failure if something went wrong. |
Properties
| Name | Description |
|---|---|
DataTypeDesktopCLICloudBacktestingDataSourceDataType | Gets request data type. |
EndTimeDesktopCLICloudDateTime | Gets request end time. |
PriceDataSourceIdDesktopCLICloudPriceDataSourceId | Gets request price data source Id (Symbol and TimeFrame). |
StartTimeDesktopCLICloudDateTime | Gets request start time. |
StatusDesktopCLICloudBacktestingDataRequestStatus | Gets current status of request. |
Events
| Name | Description |
|---|---|
StatusChangedDesktopCLICloudAction<BacktestingDataRequestStatusChangedEventArgs> | Occurs when request status is changed. |