Hi All,
I'm trying to save historical all time highs into a list every time the Maximum function returns a new historical high. I am using the following:
public Maximum ath(Symbol symbol, int period, Resolution ? resolution = null, Func<IBaseData, decimal> selectorHigh = null)
{
var name = CreateIndicatorName(symbol, $"Historical High({period})", resolution);
var historicalHigh = new Maximum(name, period);
// assign a default value for the selector function
if (selectorHigh == null)
{
var subscription = GetSubscription(symbol);
if (typeof(QuoteBar).IsAssignableFrom(subscription.Type))
{
// if we have trade bar data we'll use the High property, if not x => x.Value will be set in RegisterIndicator
selectorHigh = x => ((QuoteBar)x).High;
}
}
RegisterIndicator(symbol, historicalHigh, ResolveConsolidator(symbol, resolution), selectorHigh);
if (EnableAutomaticIndicatorWarmUp)
{
WarmUpIndicator(symbol, historicalHigh, resolution);
}
return historicalHigh;
}