[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [EquisMetaStock Group] Indicator Lines



PureBytes Links

Trading Reference Links

------------------------------------------------------------------------
You cannot reply to this message via email because you have chosen not
to disclose your email address to the group.

To reply:  http://groups.yahoo.com/group/equismetastock/post?act=reply&messageNum=5599
------------------------------------------------------------------------

Hi Robert

> Thank you for the continued support in answering my questions
> concerning creating a Metastock indicator.  I got the parser
> to work.  The data is entered as mmddyyyy not yyyymmdd because
> the latter creates too large of a number, and the number gets
> corrupted.  For the format that works, the largest number is
> 12312100 vs 21001231.

Unless you're cleaning up the data with Int() as the last calculated
manipulation then you could still be hit with a value that's slightly off
and therefore useless. Deliberately having a value that is fractionally
greater than required then trimming it with Int() seems to work but a bad
result will always appear when you least expect it : )

> I have one last question, maybe not last, but mucher closer to
> last.  With regards to drawing lines, I want to do the following:
> draw a line from x1,y1 to x2,y2 which I can do using your
> previous example.  However, what I want visible is from x2,y2
> to the most current date, or the line segment to the right of
> x2,y2.  I do not want the line segment between x1,y1 and x2,y2
> to be visible, nor do I want the line to the left of x1,y1 to
> be visible.

There are two mechanism's I use for blanking the left or right side of a
signal and I think both are used in my line code. Blanking on the right is
done by a +Ref() / -Ref() shuffle as in
Line:=Ref(Ref(Line,-Bp),Bp); {blank end of line}

This effectively blanks the end of the line for Bp periods. Remove this code
and the line will run the the right side of the chart.

The way to blank the left hand side of a signal is with the use of
ValueWhen() function. If you can create a signal that only comes true when
you want the line to appear (and not before) then you can use ValueWhen() to
trigger the display. Something like this should work.
If(ValueWhen(1,Signal,Signal)>-1,Line,0)

What happens here is that until "signal" is true (binary one) the
ValueWhen() will return N/A, but once it is triggered it will produce an
output value. Because the ValueWhen() produces N/A to the left of signal
then so will the If() function, and providing the If() function outputs what
you want from there on you should be in clover. I haven't tested this last
piece of code but providing you understand the underlying concept you should
be able to sort out any glitches.

Normally the sometimes very long N/A period resulting from the use of
ValueWhen() is a real nuisance, but this is one situation where it's
actually quite helpful.

Well there's the theory anyway.

Roy



> I hope this makes sense.
>
> Thanks for your continued help.
>
> Bob
>
> --------------------------------------------------------------------
> mail2web - Check your email from the web at
> http://mail2web.com/ .
>
>
>
> To unsubscribe from this group, send an email to:
> equismetastock-unsubscribe@xxxxxxxxxxxxxxx
>
>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>
>
>



To unsubscribe from this group, send an email to:
equismetastock-unsubscribe@xxxxxxxxxxxxxxx

 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/