I have toyed with a variety of seemingly interesting
things like this over the years most of which wind up on the garbage heap.
From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf Of Ted Byers
Sent: Tuesday, February 16, 2010
4:11 PM
To: amibroker@xxxxxxxxxxxxxxx
Subject: Re: [amibroker] Re:
Translation code of H.E. Hurst Coefficient byEhlers from TS to AM
Relax. It was just a figure of speech, to
caution against getting carried away with a neat idea one knows little
about. Joe did say he knew little about the matter, I guess except that
it exists.
With the current state of development of the math involved in the Hurst coefficient, and
related ideas, interest in experimenting with it is interesting. Interest
in actually applying it would strike me as risky jumping onto a
bandwagon. My worries about getting carried away with something like this
are related to experience over the past few decades of having been approached
by traders and financial advisors wanting to apply one thing or another
from the realm of nonlinear systems theory (I specialized in R&D looking at
the suitability of applying it in risk management) to their trading and
investing activities. They were not looking at doing the R&D
required, they just wanted to apply it. Even though they offered
outrageous sums for me to develop the code to do it, I refused because the
grounds for what they wanted me to do were inadequate so accepting would be
tantamount to taking money under false pretenses. I could not guarantee
that doing what they wanted would give them and their clients the results they
wanted.
So, then, whether or not there is a parade depends on the purpose of the code
originally and on the intent of the people wanting to use it (experimentation
vs real world application).
Sorry if I offended you. That was not intended.
Ted
On Tue, Feb 16, 2010 at 1:14 PM, fctonetti <ftonetti@xxxxxxxxxxnet> wrote:
Parade ? ... What parade ? ... All Joe did was point
someone at the library where some related stuff could be found one of which I
think I posted a long time ago.
--- In amibroker@xxxxxxxxxps.com,
Ted Byers <r.ted.byers@...> wrote:
>
> I don't mean to rain on your parade, but the notion of using something I
> don't know much about is something I find 'scary'.
>
> I would suggest you find out, and delve into the math behind it, before
> making much use of it.
>
> Examine it thoroughly, experiment with it enough to satisfy yourself you
can
> make good use of it. The Hurst
exponent is based on fascinating scientific
> work, and is an intriguing idea. But I am not yet convinced there are
> adequate algorithms available to compute it reliably, or that the math is
> adequately developed, to allow it to be used well.
>
> For the Hurst
coefficient, there are, in fact, several different algorithms
> for computing it, and these different algorithms rarely agree. I have
> written code (Java, C++) to compute it, but I do not trust the numbers any
> of these algorithms produce for any applied purpose. Therefore, I simply
do
> not apply them in code I write that others may use to manage their
> trading/investing. I wil not put other people's money at risk by letting
> them use math/algorithms I am not happy with. And I will not until I have
> sufficiently analyzed both the math and the algorithms behind the Hurst
> coefficient to the point I know why the available algorithms give
different
> results.
>
> FTR, I am the sort of individual that writes tens of thousands of lines of
> code to do statistical analysis before trusting a readily available stats
> package, and then still write code to provide diagnostics that such
packages
> typically don't provide. And my QA code typically applies my number
> crunching code to tens of millions of randomly generated test cases,
> requiring the result to have the expected mathematical properties: every
> analysis has a well defined suite of assumptions and mathematical
> properties, and my QA code tests every one of them. I do not regard my
code
> ready to be released unless it passes every one of these tests, and that
> includes giving error messages when the data it is applied to violates one
> or more of the assumptions inherent in the algorithm. I know some in the
> software development industry who would regard my standards as too
cautious
> or conservative, but given that my code has been used in risk management
in
> the environmental consulting industry, including the management of risk
> related to the nuclear industry, I tend to be paranoid about the quality
of
> my code. Really bad things can happen if it fails! So take my opinion for
> what its worth abd be aware some, perhaps many, will disagree with me.
>
> HTH
>
> Ted
>
> On Tue, Feb 16, 2010 at 10:45 AM, Joe Landry
<jelandry@xxx> wrote:
>
> >
> >
> > 
> > Sorry I don't know enough to know the difference.
> >
> > Joe L.
> >
> >
> >
> > ----- Original Message -----
> > *From:* Przemysław Nowaczewski
<cichy1235@xx.>
> > *To:* amibroker@xxxxxxxxxps.com
> > *Sent:* Tuesday, February 16, 2010 8:41 AM
> > *Subject:* Re: [amibroker] Translation code of H.E. Hurst Coefficient
by
> > Ehlers from TS to AM
> >
> >
> >
> > There are 3 indicators in AFL Library
> > - Cycle Highlighter,
> > - Hurst
"Like" DE,
> > - Hurst
Constant,
> > but none of them is the indicator based on H.E. Hurst coefficient
(not J.M.
> > Hurst)
like Ehlers does with his method.
> >
> >
> >
> >
> > --- *16.2.10 (Wt), Joe Landry
<jelandry@xxx>* napisał(a):
> >
> >
> > Od: Joe Landry <jelandry@xxx>
> > Temat: Re: [amibroker] Translation code of H.E. Hurst Coefficient by
Ehlers
> > from TS to AM
> > Do: amibroker@xxxxxxxxxps.com
> > Data: 16 Luty 2010 (Wtorek), 11:54
> >
> >
> >
> > Not many months ago there was a lot of work about Hurst methodology
> > published on the Amibroker board. Have you searched the library? Or
the
> > forum archives?
> >
> > JOE L.
> >
> > ----- Original Message -----
> > *From:*
cichy1235 <http://mc/compose?to=cichy1235@...>
> > *To:* amibroker@xxxxxxxxx ps.com<http://mc/compose?to=amibroker@yahoogroups.com>
> > *Sent:* Tuesday, February 16, 2010 4:31 AM
> > *Subject:* [amibroker] Translation code of H.E. Hurst Coefficient by
> > Ehlers from TS to AM
> >
> >
> >
> > I need help with translation code of H.E. Hurst Coefficient by John
Ehlers
> > from Tradestation to Amibroker...
> >
> > Original TS code is as follow:
> >
> > Inputs:
> > Price((H+L)/ 2),
> > Lookback(60) ;
> >
> > Vars:
> > I(0),
> > N(0),
> > count(0),
> > N1(0),
> > N2(0),
> > N3(0),
> > HH(0),
> > LL(0),
> > Dimen(0),
> > Color1(0),
> > Color2(0),
> > Color3(0),
> > PlotLen(0);
> >
> > Arrays:
> > H[190](0), H1[100](0), H2[100](0), H3[100](0), H4[100](0),
HAvg[100](0) ;
> >
> > For I = 1 to 50 Begin
> > N = 2*I;
> > N3 = (Highest(High, N) - Lowest(Low, N)) / N;
> > HH = High;
> > LL = Low;
> > For count = 0 to N/2 - 1 begin
> > If High[count] > HH then HH = High[count];
> > If Low[count] < LL then LL = Low[count];
> > End;
> > N1 = (HH - LL)/(N / 2);
> > HH = High[N/2];
> > LL = Low[N/2];
> > For count = N/2 to N - 1 begin
> > If High[count] > HH then HH = High[count];
> > If Low[count] < LL then LL = Low[count];
> > End;
> > N2 = (HH - LL)/(N / 2);
> >
> > If N1 > 0 and N2 > 0 and N3 > 0 then Dimen = (Log(N1 + N2) -
Log(N3)) /
> > Log(2);
> > H[N] = 2*(1 / Dimen - .5);
> > H[N] = 1.25*(H[N] - .5) + .6;
> > HAvg[N] = (H[N] + H1[N] + H2[N] + H3[N] + H4[N]) / 5;
> > If HAvg[N] > 1 then HAvg[N] = 1;
> > If HAvg[N] < 0 then HAvg[N] = 0;
> > H4[N] = H3[N];
> > H3[N] = H2[N];
> > H2[N] = H1[N];
> > H1[N] = H[N];
> > End;
> > For I = 2 to 50 Begin
> > N = 2*I - 1;
> > HAvg[N] = (HAvg[N - 1] + HAvg[N + 1]) / 2;
> > End;
> >
> > //Plot the Rescale-range Statistic as a Heatmap
> > PlotLen = Lookback;
> > If Plotlen > 99 Then PlotLen = 99;
> > For I = 8 to PlotLen Begin
> > //Convert RS to RGB Color for Display
> > If HAvg[I] >= .5 Then Begin
> > Color1 = 255*(2 - 2*HAvg[I]);
> > Color2 = 255*(2*HAvg[ I] - 1);
> > Color3 = 0;
> > End
> > Else If HAvg[I] < .5 Then Begin
> > Color1 = 255*(2*HAvg[ I]);
> > Color2 = 0;
> > Color3 = 255*(1 - 2*HAvg[I]);
> > End;
> > If I = 4 Then Plot4(4, "S4", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 5 Then Plot5(5, "S5", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 6 Then Plot6(6, "S6", RGB(Color1, Color2, Color3),0,4)
;
> > If I = 7 Then Plot7(7, "S7", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 8 Then Plot8(8, "S8", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 9 Then Plot9(9, "S9", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 10 Then Plot10(10, "S10", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 11 Then Plot11(11, "S11", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 12 Then Plot12(12, "S12", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 13 Then Plot13(13, "S13", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 14 Then Plot14(14, "S14", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 15 Then Plot15(15, "S15", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 16 Then Plot16(16, "S16", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 17 Then Plot17(17, "S17", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 18 Then Plot18(18, "S18", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 19 Then Plot19(19, "S19", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 20 Then Plot20(20, "S20", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 21 Then Plot21(21, "S21", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 22 Then Plot22(22, "S22", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 23 Then Plot23(23, "S23", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 24 Then Plot24(24, "S24", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 25 Then Plot25(25, "S25", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 26 Then Plot26(26, "S26", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 27 Then Plot27(27, "S27", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 28 Then Plot28(28, "S28", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 29 Then Plot29(29, "S29", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 30 Then Plot30(30, "S30", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 31 Then Plot31(31, "S31", RGB(Color1, Color2, Color3),0,4)
;
> > If I = 32 Then Plot32(32, "S32", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 33 Then Plot33(33, "S33", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 34 Then Plot34(34, "S34", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 35 Then Plot35(35, "S35", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 36 Then Plot36(36, "S36", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 37 Then Plot37(37, "S37", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 38 Then Plot38(38, "S38", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 39 Then Plot39(39, "S39", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 40 Then Plot40(40, "S40", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 41 Then Plot41(41, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 42 Then Plot42(42, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 43 Then Plot43(43, "S43", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 44 Then Plot44(44, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 45 Then Plot45(45, "S45", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 46 Then Plot46(46, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 47 Then Plot47(47, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 48 Then Plot48(48, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 49 Then Plot49(49, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 50 Then Plot50(50, "S50", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 51 Then Plot51(51, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 52 Then Plot52(52, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 53 Then Plot53(53, "S43", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 54 Then Plot54(54, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 55 Then Plot55(55, "S45", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 56 Then Plot56(56, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 57 Then Plot57(57, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 58 Then Plot58(58, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 59 Then Plot59(59, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 60 Then Plot60(60, "S50", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 61 Then Plot61(61, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 62 Then Plot62(62, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 63 Then Plot63(63, "S43", RGB(Color1, Color2, Color3),0,4)
;
> > If I = 64 Then Plot64(64, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 65 Then Plot65(65, "S45", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 66 Then Plot66(66, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 67 Then Plot67(67, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 68 Then Plot68(68, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 69 Then Plot69(69, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 70 Then Plot70(70, "S50", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 71 Then Plot71(71, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 72 Then Plot72(72, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 73 Then Plot73(73, "S43", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 74 Then Plot74(74, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 75 Then Plot75(75, "S45", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 76 Then Plot76(76, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 77 Then Plot77(77, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 78 Then Plot78(78, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 79 Then Plot79(79, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 80 Then Plot80(80, "S50", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 81 Then Plot81(81, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 82 Then Plot82(82, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 83 Then Plot83(83, "S43", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 84 Then Plot84(84, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 85 Then Plot85(85, "S45", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 86 Then Plot86(86, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 87 Then Plot87(87, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 88 Then Plot88(88, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 89 Then Plot89(89, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 90 Then Plot90(90, "S50", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 91 Then Plot91(91, "S41", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 92 Then Plot92(92, "S42", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 93 Then Plot93(93, "S43", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 94 Then Plot94(94, "S44", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 95 Then Plot95(95, "S45", RGB(Color1, Color2, Color3),0,4)
;
> > If I = 96 Then Plot96(96, "S46", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 97 Then Plot97(97, "S47", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 98 Then Plot98(98, "S48", RGB(Color1, Color2,
Color3),0,4) ;
> > If I = 99 Then Plot99(99, "S49", RGB(Color1, Color2,
Color3),0,4) ;
> >
> > End;
> >
> >
> > __________________________________________________
> > Czy juz jestes w Yahoo!?
> > Masz dosyc spamu? Poczta Yahoo! dysponuje najlepsza ochrona przed
spamem
> > http://pl.mail.yahoo.com
> >
> >
> >
>
**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.
TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com
TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
__,_._,___
|