Announcement

Collapse
No announcement yet.

Elliot Wave

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Elliot Wave

    Hi there,

    Could someone convert this Elliot Wave Analyzer (weekly waves)for MetaStock also in daily or intraday waves, in efs?

    A bit how it works:

    It identify some period (differ for each sort of EW line). For example, for Weekly Wave this period is one week. And yes, then it'll select HIGHEST AND LOWEST bar and chart the line depends on which bar number is smaller. Check out source code for WEEKLY WAVE logic below.
    I like notice - this is ANALYZE METHOD only. NOT TRADEABLE Add-On. Visit my personal web site for check out my own TRADEABLE logic.
    And my Nelly Elliot Wave MetaStock Add-on plots straight lines which help traders analyze stocks. Not indicator's style lines like other tools. This is major feature.

    // BEGIN LOGIC

    procedure IdentifyWeeklyWaves;
    var

    i: integer;
    lastWeekClose, lastShift, lastWeekOpen: integer;
    weekHighShift, weekLowShift: integer;
    weekHighPrice, weekLowPrice: double;
    swing_0, swing_1, swing_2, swing_3: integer;
    middleWeekShift: integer;

    begin

    lastShift := -1;

    for i := 0 to High(timeDate) do
    begin

    lastWeekClose := GetLastWeeklyClose(i);

    if (lastShift = lastWeekClose) then
    Continue
    else
    lastShift := lastWeekClose;

    lastWeekOpen := GetLastWeeklyClose(lastWeekClose);

    if (lastWeekClose = -1) or (lastWeekOpen = -1) then
    Continue;

    weekHighShift := GetHighestHighShift(lastWeekClose - 1, lastWeekClose - lastWeekOpen);
    weekLowShift := GetLowestLowShift(lastWeekClose - 1, lastWeekClose - lastWeekOpen);

    weekHighPrice := H[weekHighShift];
    weekLowPrice := L[weekLowShift];

    if (weekHighShift < weekLowShift) then
    begin
    weeklyWaves[lastWeekOpen] := weekHighPrice;
    middleWeekShift := lastWeekClose - MathCeil((lastWeekClose - lastWeekOpen + 1) / 2);
    weeklyWaves[middleWeekShift] := weekLowPrice;
    end
    else
    begin
    weeklyWaves[lastWeekOpen] := weekLowPrice;
    middleWeekShift := lastWeekClose - MathCeil((lastWeekClose - lastWeekOpen + 1) / 2);
    weeklyWaves[middleWeekShift] := weekHighPrice;
    end;

    end;

    end;

    // END OF LOGIC

  • #2
    Your code appears to be one proc out of a larger program--reproducing it for esignal won't get you much.

    BTW, you say to visit your personal website--where would that be?

    Comment

    Working...
    X