|
Function GetCompareData(inBaseTicker As Ticker, inCompareTicker As Ticker) As List(Of Minute)
Dim ReturnList As New List(Of Minute)
Dim actualSeries As Object = TryCast(BaseSeries, XyDataSeries)
If Not actualSeries Is Nothing Then 'if series is XyDataSeries
Dim XValues = CType(actualSeries.GetType().GetProperty("XValues", BindingFlags.GetProperty Or BindingFlags.NonPublic Or BindingFlags.Instance).GetValue(actualSeries), IList(Of Double))
For i As Integer = 0 To XValues.Count - 1
Dim searchDateTime = DateTime.FromOADate(XValues(i))
Dim isHoliday As Boolean = False
For Each holiday In inCompareTicker.Holidays
If (holiday.Day = searchDateTime.Day) Then
isHoliday = True
End If
Next
If (isHoliday) Then
Dim NaNMinute As New Minute
NaNMinute.DateTime = searchDateTime
NaNMinute.Ticker = inCompareTicker
ReturnList.Add(NaNMinute)
Else
ReturnList.Add(inCompareTicker.Minutes(i))
End If
Next
End If
Return ReturnList
End Function |
|
Function GetCompareData(inBaseTicker As Ticker, inCompareTicker As Ticker) As List(Of Minute)
Dim ReturnList As New List(Of Minute)
Dim actualSeries As Object = TryCast(BaseSeries, XyDataSeries)
If Not actualSeries Is Nothing Then 'if series is XyDataSeries
Dim values = CType(CType(actualSeries, XyDataSeries).ItemsSource, ObservableCollection(Of Minute))
For i As Integer = 0 To values.Count - 1
Dim searchDateTime = values(i).DateTime
Dim isHoliday As Boolean = False
For Each holiday In inCompareTicker.Holidays
If (holiday.Day = searchDateTime.Day) Then
isHoliday = True
End If
Next
If (isHoliday) Then
Dim NaNMinute As New Minute
NaNMinute.DateTime = searchDateTime
NaNMinute.Ticker = inCompareTicker
ReturnList.Add(NaNMinute)
Else
ReturnList.Add(values(i))
End If
Next
End If
Return ReturnList
End Function
|
|
Function GetCompareData(inBaseTicker As Ticker, inCompareTicker As Ticker) As List(Of Minute)
Dim ReturnList As New List(Of Minute)
Dim actualSeries As Object = TryCast(BaseSeries, XyDataSeries)
If Not actualSeries Is Nothing Then 'if series is XyDataSeries
Dim XValues = CType(actualSeries.GetType().GetProperty("XValues", BindingFlags.GetProperty Or BindingFlags.NonPublic Or BindingFlags.Instance).GetValue(actualSeries), IList(Of Double))
Dim j As Integer = 0
For i As Integer = 0 To XValues.Count - 1
Dim searchDateTime = DateTime.FromOADate(XValues(i))
While (j < inCompareTicker.Minutes.Count)
Dim compareMinute = inCompareTicker.Minutes(j)
If (compareMinute.DateTime = searchDateTime) Then
ReturnList.Add(compareMinute)
j = j + 1
Exit While
ElseIf (searchDateTime < compareMinute.DateTime) Then
Dim NaNMinute As New Minute
NaNMinute.DateTime = searchDateTime
NaNMinute.Ticker = inCompareTicker
ReturnList.Add(NaNMinute)
Exit While
End If
j = j + 1
End While
Next
End If
Return ReturnList
End Function
|