Большинство торговых стратегий основаны на анализе данных технических индикаторов. Вы имеете доступ ко встроенным индикаторам из вашего робота или пользовательских индикаторов. С каждым тиком, данные этих индикаторов пересчитываются торговой платформой, перед тем, как робот получает сигналы.

Если ваш робот использует индикатор, он должен быть создан методом OnStart() . Для этого используйте объект Indicators , включающий в себя все методы для встроенных индикаторов:

Indicators.BollingerBands(source, periods, deviations, maType)

В следующем примере робот создает два индикатора Simple Moving Average. С помощью метода OnTick() робот совмещает последние значения каждого индикатора. (значения сортируются в хронологическом порядке, так чтобы значения последнего индикатора согласовывались с последним баром текущего таймфрейма). Ордер будет открыт в том случае, если значение более быстрой средней скользящей (moving average) с меньшим периодом больше последнего значения медленной средней скользящей.

private MovingAverage slowMa;
private MovingAverage fastMa;
protected override void OnStart(){
  fastMa = Indicators.SimpleMovingAverage(MarketSeries.Close, 15);
  slowMa = Indicators.SimpleMovingAverage(MarketSeries.Close, 40);
  protected override void OnTick(){
    if (fastMa.Result.LastValue > slowMa.Result.LastValue){
      Trade.CreateBuyMarketOrder(Symbol, 10000);
    }
  }
}