# Why does Ehler's cycle study CRASH V8 64 bit ?

Questions about MultiCharts and user contributed studies.
Posts: 673
Joined: 09 Apr 2010
Has thanked: 438 times
Been thanked: 250 times
Contact:

### Why does Ehler's cycle study CRASH V8 64 bit ?

It works and verifies in V7.4 , verifies in V8 64 bit, but causes shutdown of V8 64 bit.
I tried it on two different computers with V8 64 bit and both crash- I haven't tried V8 32bit.

Code: Select all

`[LegacyColorValue = TRUE];{Sine Wave Indicator}Inputs:   Price((H+L)/2),deg(30);      Vars:      InPhase(0),      Quadrature(0),      Phase(0),      DeltaPhase(0),      count(0),      InstPeriod(0),      Period(0),      DCPhase(0),      RealPart(0),      ImagPart(0);If CurrentBar > 5 then begin   {Compute InPhase and Quadrature components}   Value1 = Price - Price[6];   Value2 =Value1[3];   Value3 =.75*(Value1 - Value1[6]) + .25*(Value1[2] - Value1[4]);   InPhase = .33*Value2 + .67*InPhase[1];   Quadrature = .2*Value3 + .8*Quadrature[1];   {Use ArcTangent to compute the current phase}   If AbsValue(InPhase +InPhase[1]) > 0 then Phase =ArcTangent(AbsValue((Quadrature+Quadrature[1]) / (InPhase+InPhase[1])));   {Resolve the ArcTangent ambiguity}   If InPhase < 0 and Quadrature > 0 then Phase = 180 - Phase;   If InPhase < 0 and Quadrature < 0 then Phase = 180 + Phase;   If InPhase > 0 and Quadrature < 0 then Phase = 360 - Phase;      {Compute a differential phase, resolve phase wraparound, and limit delta phase errors}   DeltaPhase = Phase[1] - Phase;   If Phase[1] < 90   and Phase > 270 then DeltaPhase = 360 + Phase[1] - Phase;   If DeltaPhase < 1 then DeltaPhase = 1;   If DeltaPhase > 60 then Deltaphase = 60;      {Sum DeltaPhases to reach 360 degrees. The sum is the instantaneous period.}   InstPeriod = 0;   Value4 = 0;   For count = 0 to 40 begin      Value4 = Value4 + DeltaPhase[count];      If Value4 > 360 and   InstPeriod = 0 then begin         InstPeriod = count;      end;   end;      {Resolve Instantaneous Period errors and  smooth}   If InstPeriod = 0 then InstPeriod = InstPeriod[1];   Value5 = .25*InstPeriod + .75*Value5[1];      {Compute Dominant Cycle Phase, Sine of the Phase Angle,   and Leadsine}   Period = IntPortion(Value5);   RealPart = 0;   ImagPart = 0;   For count = 0 To Period  - 1 begin      RealPart = RealPart + Sine(360 * count / Period) * (Price[count]);      ImagPart = ImagPart + Cosine(360 * count / Period) * (Price[count]);   end;   If AbsValue(ImagPart) > 0.001 then DCPhase = Arctangent(RealPart / ImagPart);   If AbsValue(ImagPart) <= 0.001 then DCPhase = 90 * Sign(RealPart);         DCPhase = DCPhase + 90;   If ImagPart < 0 then DCPhase = DCPhase + 180;   If DCPhase > 315 then DCPhase = DCPhase - 360;      Plot1(Sine(DCPhase), "Sine");   Plot2(Sine(DCPhase + deg), "LeadSine");   end;  `

Henry MultiСharts
Posts: 8667
Joined: 25 Aug 2011
Has thanked: 1218 times
Been thanked: 2792 times