Fix bug for history requests with custom symbols (#8262)
* Potential solution to the bug * Add test file * Fix bugs * Address requested changes
This commit is contained in:
committed by
GitHub
parent
a543af71dc
commit
74c3501ed3
@@ -906,7 +906,7 @@ namespace QuantConnect.Algorithm
|
||||
}
|
||||
|
||||
var symbols = tickers.ConvertToSymbolEnumerable().ToArray();
|
||||
var dataType = GetCustomDataTypeFromSymbols(symbols);
|
||||
var dataType = Extensions.GetCustomDataTypeFromSymbols(symbols);
|
||||
|
||||
return GetDataFrame(History(symbols, periods, resolution, fillForward, extendedMarketHours, dataMappingMode, dataNormalizationMode,
|
||||
contractDepthOffset), dataType);
|
||||
@@ -969,7 +969,7 @@ namespace QuantConnect.Algorithm
|
||||
}
|
||||
|
||||
var symbols = tickers.ConvertToSymbolEnumerable().ToArray();
|
||||
var dataType = GetCustomDataTypeFromSymbols(symbols);
|
||||
var dataType = Extensions.GetCustomDataTypeFromSymbols(symbols);
|
||||
|
||||
return GetDataFrame(History(symbols, start, end, resolution, fillForward, extendedMarketHours, dataMappingMode,
|
||||
dataNormalizationMode, contractDepthOffset), dataType);
|
||||
@@ -1719,20 +1719,5 @@ namespace QuantConnect.Algorithm
|
||||
}
|
||||
return history;
|
||||
}
|
||||
|
||||
private Type GetCustomDataTypeFromSymbols(Symbol[] symbols)
|
||||
{
|
||||
if (symbols.Any())
|
||||
{
|
||||
if (!SecurityIdentifier.TryGetCustomDataTypeInstance(symbols[0].ID.Symbol, out var dataType)
|
||||
|| symbols.Any(x => !SecurityIdentifier.TryGetCustomDataTypeInstance(x.ID.Symbol, out var customDataType) || customDataType != dataType))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return dataType;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user