So, once again - could anyone help me with translate the code written by Ehlers (see below) from TS to AM ???
Regards CromCruach
--- 17.2.10 (Śr), Ton Sieverding <ton.sieverding@xxxxxxxxxx> napisał(a):
Od: Ton Sieverding <ton.sieverding@xxxxxxxxxx> Temat: Re: [amibroker] Re: Translation code of H.E. Hurst Coefficient byEhlers from TS to AM Do: amibroker@xxxxxxxxxxxxxxx Data: 17 Luty 2010 (Środa), 8:43
"Genius is one percent inspiration,
ninety-nine percent perspiration. " – Thomas Alva Edison,
Regards, Ton.
----- Original Message -----
Sent: Wednesday, February 17, 2010 6:13
AM
Subject: RE: [amibroker] Re: Translation
code of H.E. Hurst Coefficient byEhlers from TS to AM
I have toyed with a
variety of seemingly interesting things like this over the years most of which
wind up on the garbage heap.
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@xxxxxxxxxx net>
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@xxxxxxxxx ps.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@xxxxxxxxx ps.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@xxxxxxxxx ps.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 > > > >
>
> >
|