PureBytes Links
Trading Reference Links
|
Highest includes the current bar and all past bars for each bar. If it
included the NEXT bar you would be looking into the future which, unless you
are on the last bar of data, is not "known" yet. However, if this is what
you want just do this:
MaxEq2 = LastValue(Highest(CurEq2));
--
Terry
-----Original Message-----
From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf
Of Ken Close
Sent: Saturday, January 20, 2007 08:06
To: amibroker@xxxxxxxxxxxxxxx
Subject: [amibroker] Logic for MaxDD while in a Buy Period
I can not get the logic written to take care of a special case.
My objective is to determine the MaxDD in an equity curve (or the Close
Price line) while a signal is on a Buy.
I have used the following code snippit:
CurEq2 = Gain2chrt;
MaxEq2 = Highest(CurEq2);
CurDD2 = IIf(BIR, 100 * (MaxEq2 - CurEq2) / MaxEq2, 0);
MaxDD2 = Highest(CurDD2);
In most cases this is producing the correct answer, but I have discovered
certain cases where it delivers the wrong answer.
If the price (or Equity curve) has a down period in the NEXT buy period, the
code will still have as the HIGHEST value, the value from the PREVIOUS buy
period. This produces an incorrect value. The Highest function is looking
for the highest value in the array MaxEq2 no matter when it occurred. I
have not been able to figure out how to use the HHV function as the length
of the buy periods varies.
How can I write this logic so that the MaxEq2 variable will "reset" after
each Buy period expires, and be ready to determine the largest value in each
new Buy Period?
Thanks for any help.
Ken
Content-Description: "AVG certification"
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.17.2/641 - Release Date: 1/20/2007 10:24 AM
|