Media Mobile JMA di Jurik Research

Yale

Nuovo Utente
Registrato
14/10/01
Messaggi
131
Punti reazioni
11
Qualcuno ne fa uso ? Mantiene quel che promette ?
Grazie

Yale
 
Scritto da Yale
Qualcuno ne fa uso ?

io

Mantiene quel che promette ?

insomma.

Stasera cerco di recuperare l'algoritmo e ve lo pubblico.

Si tratta di un clone in linguaggio C che replica il funzionamento dell'originale.
 
Questa é una traduzione "modernizzata" in Clipper

FUNCTION ElabExp ()
LOCAL nBeta
LOCAL nLastEx
LOCAL nDiv
LOCAL x

aMMob := ARRAY (nArrMax)

nBeta := 0
nLastEx := 0
nDiv := (nLenArrMed - 4)

FOR x = 1 TO nLenArr
IF EMPTY (nLastEx)
IF .NOT. EMPTY (aMed [x])
nLastEx := aMed [x]
ENDIF
ENDIF

IF nLastEx > 0
IF .NOT. EMPTY (aMed [x])
nDirez := 0
nBeta := ABS((aMed [x] - nLastEx) / nLastEx)

IF x > 4
IF .NOT. EMPTY (aMMob [x-4])
IF aMMob [x-4] > 0
nDirez := ABS((nLastEx - aMMob [x-4]) / aMMob [x-4])
ENDIF
ENDIF
ENDIF

nBeta -= nDirez
nBeta := (nBeta / nDiv) * 4
IF nBeta > 0.5
nBeta := 0.5
ENDIF

aMMob [x] := (aMed [x] * nBeta) + ((1 - nBeta) * nLastEx)
nLastEx := aMMob [x]
ENDIF
ENDIF
NEXT x
RETURN Nil
 
Scritto da roberto
Questa é una traduzione "modernizzata" in Clipper


Ovviamente questa NON E' la media Media Mobile JMA di Jurik Research, ma una modestissima media mobile esponenziale con un paio di trucchetti simpatici incorporati :)
 
Ecco come lavora sul DJ, che é bello ostico.
 

Allegati

  • $indu.gif
    $indu.gif
    18,7 KB · Visite: 1.027
anche in scala annuale
 

Allegati

  • $indu_y.gif
    $indu_y.gif
    17,6 KB · Visite: 1.027
Ecco la media con una taratura pari al 50% della precedente
 

Allegati

  • $indu.gif
    $indu.gif
    18,7 KB · Visite: 988
Ed ecco una taratura pari al doppio della precedente (quella iniziale)
 

Allegati

  • $indu.gif
    $indu.gif
    18,7 KB · Visite: 975
Scritto da roberto
Ovviamente questa NON E' la media Media Mobile JMA di Jurik Research, ma una modestissima media mobile esponenziale con un paio di trucchetti simpatici incorporati :)
Bellissimo avatar!!! :D
Si può spiegare, per chi non capisce i geroglifici dell'algoritmo che hai postato sopra :confused:, in cosa consistono questi simpatici trucchetti?
E' roba che si può mettere in piedi su excel? (il duro lavoro e la fatica non mi spaventano...) ;)

Jelly
 
Scritto da jellyfish
Bellissimo avatar!!! :D
Si può spiegare, per chi non capisce i geroglifici dell'algoritmo che hai postato sopra :confused:, in cosa consistono questi simpatici trucchetti?
E' roba che si può mettere in piedi su excel? (il duro lavoro e la fatica non mi spaventano...) ;)

Jelly

Credo proprio che non ci siano problemi nel mettere in piedi con Excel la formuletta :)

Quali simboli non comprendi ?

aMMob é l'array (matrice) che contiene la media risultante

aMed é il valore di ingresso - io uso (OPEN + CLOSE * 3)/4

nArrMax é il numero di elementi che utilizzi

nLenArrMed é la "lunghezza teorica" della tua media. (Essendo una media esponenziale non ha una lunghezza :) )


ABS (x) é il valore assoluto di x

:= é l'operatore di assegnazione.

serve altro ? ;)
 
x roberto

Ti sei ricordato : - )
Vedrò di trovare il tempo per sperimentare un pò.
Thanks!
 
Scritto da roberto

[...]
nBeta -= nDirez
nBeta := (nBeta / nDiv) * 4

[...]

Premesso che non conosco Clipper ma sono un discreto programmatore di tutto....

Ho compreso tutto quello che c'era scritto ma quello evidenziato non lo capisco proprio..... me lo spieghi? :D

Ciao
Giuppy
 
Scritto da Giuppy


Premesso che non conosco Clipper ma sono un discreto programmatore di tutto....

Ho compreso tutto quello che c'era scritto ma quello evidenziato non lo capisco proprio..... me lo spieghi? :D

Ciao
Giuppy

La media esponenziale per definizione non ha una lunghezza definita.

nDiv := (nLenArrMed - 4)
nBeta := (nBeta / nDiv) * 4

permette di utilizzare per nLenArrMed un valore "verosimile" e quindi di testare questo algoritmo all'interno di software che usano le MM classiche.

nBeta -= nDirez significa sottrai nDirez a nBeta

dove IF aMMob [x-4] > 0
nDirez := ABS((nLastEx - aMMob [x-4]) / aMMob [x-4])
ENDIF

nDirez e' quindi la "direzionalità" settimanale :)
 
A me interessa Jurik Moving Average o "clone" per Amibroker... perchè il DLL costa una cifra assurda.... va bene anche se qualcuno ha un codice per metastock... o riesce a tradurre il C di Roberto in Amibroker AFL o Metastock.

Grazie
 
la pagina a cui si riferisce non esiste piu'.Puo' Sig Roberto indicarne una funzionante cosi' vediamo il tutto.
 
Indietro