PureBytes Links
Trading Reference Links
|
No problem! Thanks for a great attitude, as they said some time ago,
I'm ok, you're ok. Had a look at your site - great but, as in the FAQ,
not sure what you are selling..... I'll just keep on reading....
Regards
MG Ferreira
TsaTsa EOD Programmer and trading model builder
http://www.ferra4models.com
http://fun.ferra4models.com
--- In equismetastock@xxxxxxxxxxxxxxx, "Larry Carhartt" <lc@xxxx> wrote:
> You are right. I am wrong. I appreciate your not letting me get
away with
> it. I am so used to writing code in my own obscure way, I misread
your code
> thinking it was multiplying percent change by 100. Thank you very much.
>
> Best,
>
> Larry Carhartt
>
> MasterDATA
> The Only Source for Index & ETF Composite/Breadth Reports, Charts & Data
> www.MasterDATA.com
> lc@xxxx
> 818-701-6686
>
>
>
> -----Original Message-----
> From: equismetastock@xxxxxxxxxxxxxxx
[mailto:equismetastock@xxxxxxxxxxxxxxx]
> On Behalf Of mgf_za_1999
> Sent: Wednesday, September 28, 2005 8:58 PM
> To: equismetastock@xxxxxxxxxxxxxxx
> Subject: [EquisMetaStock Group] Re: Constant price from a specific
date -
> FOLLOWUP
>
>
> These two formulas give *exactly* the same result. They will only
differ due
> to rounding, and then the simpler one will be more accurate. *Both*
of them
> will never go negative.
>
> The idea of the former is to calculate (baseless) percentage changes and
> apply that to 100 (or 1000 or whatever) while the idea of the latter
is to
> rescale so that the value at BeginYearPx is equal to 100 (or
whatever). I
> guess you ran into the negative values with the percentage change
idea where
> it can easily happen.
>
> Not that it matters that much as, again, both give the same answer. What
> matters is that neither will go negative.
>
> Regards
> MG Ferreira
> TsaTsa EOD Programmer and trading model builder
http://www.ferra4models.com
> http://fun.ferra4models.com
>
> --- In equismetastock@xxxxxxxxxxxxxxx, "Larry Carhartt" <lc@xxxx> wrote:
> > I originally tried as you suggest (not the same code as yours but
> similar
> > idea) and realized it does not work with negative numbers. The
> parentheses
> > make all the difference. The percent change is "added" to 100 to
> make all
> > the historical prices above zero. Simply multiplying by 100 allows
> > the result to remain negative. Negative values will not plot in a
bar
> > or candlestick chart. For a line chart, what you suggest works fine
> > since lines can display below zero.
> >
> > Thank you
> >
> > Best,
> >
> > Larry Carhartt
> >
> > MasterDATA
> > The Only Source for Index & ETF Composite/Breadth Reports, Charts &
> > Data www.MasterDATA.com lc@xxxx
> > 818-701-6686
> >
> >
> >
> > -----Original Message-----
> > From: equismetastock@xxxxxxxxxxxxxxx
> [mailto:equismetastock@xxxxxxxxxxxxxxx]
> > On Behalf Of mgf_za_1999
> > Sent: Wednesday, September 28, 2005 8:17 PM
> > To: equismetastock@xxxxxxxxxxxxxxx
> > Subject: [EquisMetaStock Group] Re: Constant price from a specific
> date -
> > FOLLOWUP
> >
> >
> > You could simplify the last line a bit, it now does something like
> >
> > x + calcs - x
> >
> > and you can simplify it to simply
> >
> > calcs
> >
> > Instead of
> >
> > 100+((C-BeginYearPx)/BeginYearPx*100)
> >
> > use
> >
> > 100 * C / BeginYearPx
> >
> > which is a lot easier to understand and change in future. The
> > original version calculates the percentage change and applies that to
> > 100
> while this
> > version simply rescales the close so that it is equal to 100 at the
> > beginning of the year. Same result, but different approaches. One
> looks like
> > rocket science, other is a simple rescaling calculation.
> >
> > Anyhow, if you ever want to change it, say to start at 1,000 in stead
> > of 100, or 1 or whatever, this is easier to do as well. Also, note
how
> > the ratio is being used here, to catch up on some other discussions.
> >
> > Regards
> > MG Ferreira
> > TsaTsa EOD Programmer and trading model builder
> http://www.ferra4models.com
> > http://fun.ferra4models.com
> >
> >
> > --- In equismetastock@xxxxxxxxxxxxxxx, "Larry Carhartt" <lc@xxxx>
> > wrote:
> > > Thanks, Jose. I realize that. Because I publish these datafiles
> > > for
> > > download, I didn't want users to have to download the full database
> > every
> > > night. By the setting the constant price to the last day of last
> > year, they
> > > only will be "required" to fully download once a year. Soon,
> > > instead
> > > of doing a full download nightly, I am rewriting the plug-in so they
> > will only
> > > need to download the current day's data and it will put itself into
> > > the right place in their file (append or replace). If I set the
> > constant price
> > > exactly one year ago, "all" the price values for the equal weighted
> > prices
> > > would change daily thus affecting the entire data base every day. I
> > realize
> > > the current relative price shown will be measure from the start
> > price of the
> > > current year. In terms of the overall price history, however,
> > everything
> > > stays aligned properly between stocks, indexes and ETFs. They are
> all
> > > reduced to a common denominator, 100.
> > >
> > > Best,
> > >
> > > Larry Carhartt
> > >
> > > MasterDATA
> > > The Only Source for Index & ETF Composite/Breadth Reports, Charts &
> > > Data www.MasterDATA.com lc@xxxx
> > > 818-701-6686
> > >
> > >
> > >
> > > -----Original Message-----
> > > From: equismetastock@xxxxxxxxxxxxxxx
> > [mailto:equismetastock@xxxxxxxxxxxxxxx]
> > > On Behalf Of Jose Silva
> > > Sent: Wednesday, September 28, 2005 4:55 PM
> > > To: equismetastock@xxxxxxxxxxxxxxx
> > > Subject: [EquisMetaStock Group] Re: Constant price from a specific
> > date -
> > > FOLLOWUP
> > >
> > >
> > > Larry, you've set the month variable in your code to last December,
> > > so that currently it is only measuring the last ten months.
> > >
> > > To save a lot of time (and possible errors) with the date setting,
> > > you could try Richard's excellent NexusDate.dll to automate this
> > > process for you in MetaStock:
> > >
> > > ---8<------------------------
> > > { Download NexusDate.dll from:
> > > http://www.tradernexus.com/nexusdate }
> > >
> > > x:=ExtFml("NexusDate.DaysOld")>=366;
> > > StartDate:=x=0 AND Alert(x,2);
> > > BeginYearPx:=LastValue(ValueWhen(1,StartDate,C));
> > >
> > > 100+((C-BeginYearPx)/BeginYearPx*100)
> > > ---8<------------------------
> > >
> > >
> > > jose '-)
> > > http://www.metastocktools.com
> > >
> > >
> > >
> > > --- In equismetastock@xxxxxxxxxxxxxxx, "Larry Carhartt" <lc@xxxx>
> > > wrote:
> > > >
> > > > Although many of you supplied answers for my earlier inquiry
> > regarding
> > > > finding the price of 1 year ago and setting it as a constant (and
> > > > I appreciate the response very much), I elected to use Roy
Larsen's.
> > > > For reasons that I will spare you, I now have decided to use
> instead
> > > > the last closing price of last year as the constant. In other
> > words, I
> > > > will be calculating the rate of return for the current calendar
> > > > year both forward (this is normal practice) and backward (not very
> common)
> > > > based upon the closing price of the last trade day of last year.
> > > > I
> > > > modified Roy's formula as follows:
> > > >
> > > > Sm:=12;
> > > > Sd:=28;
> > > > Sy:=LastValue(Year()-1);
> > > >
> > > > StartDate:=(DayOfMonth()>=Sd AND
> > > > Month()=Sm AND
> > > > Year()=Sy);
> > > >
> > > > BeginYearPx:=LastValue(ValueWhen(1,StartDate,C));
> > > >
> > > > 100+(((C-BeginYearPx)/BeginYearPx)*100);
> > > >
> > > > I know it is more than a little modified, but Roy's original
> > > > formula introduced me to some MetaStock functions I had never
used
> > > > before. THAT is the true value of this forum. Yes, you may get
> > > > the exact answer you need, but you can learn from every answer
(from
> guys like
> > > > Roy, Jose, Richard and many more I should be mentioning). By the
> > > > way, I still plan on using Roy's original formula for other
> purposes
> > > > (with full credit, of course). And, Jose, thank you for getting
> > > > my
> > > > brain kick-started by pointing out the problem with simply
> > > > accumulating percentage gains/losses.
> > > >
> > > > When I use the above as the formula for the custom indicator, it
> > > > generates the correct values. You may notice that I also modified
> > the
> > > > last line (my addition) so that the year always starts with a
> > value of
> > > > 100. The reason for this is that I plan on additionally
> > > > generating OHLC MetaStock format price files outside of MetaStock
> > > > and then converting those files to MetaStock (that code will be
> > > > based on the same formula). That way, I can display bar or
> > > > candlestick charts
> > with
> > > > the new "relative" OHLC prices. OHLC price files won't plot
> > > > negative
> > > > values, so starting at 100 always keeps the value above 0 even
when
> > > > going back previous to the beginning of the year or if the
current
> > > > price is down for the year. In other words, if the security is
> > down 3%
> > > > from the current year's beginning price, the displayed value for
> > > > that
> > > > day will be 97. It really seems to do a good job of keeping the
> > > > displayed value properly aligned with the actual price and
current
> > > > rate of return without drift of any kind.
> > > >
> > > > I think I mentioned this before, but in case you are tuning in
> > > > late, where I am really going with this is to recalculate all the
> > > > indexes and ETFs I work with to equal weight composites. Most
> > > > indexes are either cap weighted like the S&P 500 Index or price
> > > > weighted
> like the
> > > > Dow Jones Industrial Average. To do that, I need to apply this
> > formula
> > > > to each of 3400 components I follow then recalculate the
> > > > historical data on the composites using the values given by the
> > > > above formula
> > and
> > > > then simply total them and divide by the number of components in
> > > > the index or ETF. Voila, an equal weighted composite (I think or
> > > > hope).
> > > >
> > > > Again, I appreciate everyone's input on this.
> > > >
> > > > Thank you.
> > > >
> > > > Best,
> > > >
> > > > Larry Carhartt
> > > >
> > > > MasterDATA Composite Plug-in For MetaStock
> > > > The Only Source for Index & ETF Composite/Breadth Historical
> > MetaStock
> > > > Data <http://www.masterdata4metastock.com/>
> > > > www.MasterDATA4MetaStock.com <mailto:lc@x...> lc@xxxx
> > > > 818-701-6686
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > Yahoo! Groups Links
> >
> >
> >
> >
> >
> >
> > Yahoo! Groups Links
>
>
>
>
>
>
> Yahoo! Groups Links
------------------------ Yahoo! Groups Sponsor --------------------~-->
Try Online Currency Trading with GFT. Free 50K Demo. Trade
24 Hours. Commission-Free.
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/BefplB/TM
--------------------------------------------------------------------~->
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/equismetastock/
<*> 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/
|