struct method not working
struct method not working
16 Mar 2019, 02:53
Hi,
First of all, I only tested this on backtesting since we are saturday.
I created a List<TickData> named tickRecord, which stores the following struct :
public struct TickData { public double Variation; public void SetVariation(double _newPrice, double _oldPrice) { if (_newPrice > _oldPrice) Variation = _newPrice - _oldPrice; else if (_newPrice < _oldPrice) Variation = -(_oldPrice - _newPrice); else Variation = 0; } }
When I try to set the Variation property through a for loop like this :
for (int i = tickRecord.Count - 1; i >= 0; i--) { if (i = 0) // Do nothing else tickRecord[i].SetVariation(tickRecord[i].Bid, tickRecord[i - 1].Bid); }
It doesn't work, Variation stays the same :
for i = 1 : 1,12879 - 1,12879 = 0
for i = 2 : 1,12879 - 1,12879 = 0
for i = 3 : 1,1288 - 1,12879 = 0
for i = 4 : 1,12879 - 1,1288 = 0
for i = 5 : 1,1288 - 1,12879 = 0
etc...
From my research I'd say, tickRecord[i].SetVariation(); is the problem.
But I can't find anywhere how to make it work or why does it do that.
Replies
a.fernandez.martinez
17 Mar 2019, 00:02
I solved the problem by making a class instead of a struct
@a.fernandez.martinez
a.fernandez.martinez
16 Mar 2019, 03:29
I tried to do it outside of the loop like this :
It still didn't work, same results...
@a.fernandez.martinez