ProRealTime
Zone de développement des applications API, des logiciels et utilitaires développés par les membres du forum

Aide pour développer l’équivalent de la Jurik Moving Average

par takapoto » 11 déc. 2017 16:23

La JMA ou Jurik Moving Average est une moyenne mobile avec très peu de retard, développée et commercialisée par Jurik Research : http://www.jurikres.com/catalog1/ms_ama.htm#top
jma.png
jma.png (61.54 Kio) Vu 1756 fois
Cet indicateur est vendu environ 200 $, ce qui n’est pas forcément rédhibitoire mais avec l’inconvénient majeur de ne pouvoir être installé que sur un poste à la fois. Et la procédure pour la basculer d’un PC à l’autre est très lourde. Je l’avais achetée il y a quelques années mais j’ai perdu les factures ainsi que la DLL et je ne peux donc plus l’utiliser.

J’ai trouvé deux codes approchants pour PRT :
1 - Résultat correct mais sans les sources (en noir sur le graphe ci-dessous) :
http://sohocool.over-blog.com/article-moyenne-adaptive-jurik-smooth-pour-prt-120413874.html
2 - Résultat moins bon mais avec les sources (en bleu sur le graphe ci-dessous)
http://sohocool.over-blog.com/article-moyenne-jurik-smooth-pour-prorealtime-119657525.html
Comparaison.png
Comparaison.png (48.17 Kio) Vu 1756 fois
En rouge : moyenne mobile simple

J’essaie donc de développer l’équivalent mais je manque de formation théorique sur le traitement et le lissage du signal et son auto-adaptivité au contexte.

Donc je fais appel aux membres du forum qui ont une solide formation mathématique et qui voudrons bien m'orienter sur les bonnes pistes.

Merci par avance :)
Spoiler:
PS 1 :
Il ne s’agit pas de la moyenne de Hull décrite ici :
https://alanhull.com/hull-moving-average

PS2 :
Evitons que cette file ne dérive vers une discussion sur la pertinence d’utiliser les moyennes mobiles, sur l’intérêt de la JMA par rapport aux autres moyenne, sur le mirage que constitue l’ambition de lisser un signal sans le déformer, etc. Ceux qui veulent en discuter peuvent le faire ici :
https://www.elitetrader.com/et/threads/why-are-quants-afraid-of-mark-jurik.209408

PS3 :
Il est bien entendu que si je développe quelque chose de satisfaisant grâce à votre aide, je le publierais (au format PRT et en C#)

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 11 déc. 2017 16:56

Merci -, je vais aller voir IMSL

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par falex » 11 déc. 2017 17:13

Ça ressemble à une fft (fast Fourier transforme).

Quel est son intérêt par rapport a une MM a période courte ?

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par Jim » 11 déc. 2017 20:52

Takapoto, peux-tu préciser ta demande :
1) disposes-tu de la formule de la JMA ? (apparemment elle serait confidentielle)
2) as-tu une difficulté mathématique à comprendre la formule ?
3) as-tu une difficulté pour le codage ?

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par gribouille » 11 déc. 2017 21:03

bonsoir,

de vagues souvenirs me feraient pencher vers un filtre PID (Proportionnel Intégral Dérivé) et ça se travaille avec la transformée de Laplace. Wiki donne quelques infos. Quant à le mettre en place, de l'eau est passée sous les ponts depuis mes études .... :?

jlr

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par Nomade » 11 déc. 2017 21:20

Sans connaitre les equations a l'origine de la JMA difficile d'aller tres loin.

Par contre si tu veux ajouter de l'adaptivite a la JuSmoothedV1 de sohocool, tu peux te baser sur (http://sohocool.over-blog.com/article-moyenne-double-exponentielle-dema-multi-alphas-adaptative-119910002.html).

il calcule un coef fonction d'une volatilite calculee avec l'ecart type et pondere la periode de la moyenne par ce coef:

dev=STD[period_de_reference](prix)
avgstd=average[periode_de_reference](dev)
coef_volatilite=avg/dev
period=periode_de_reference * coef_volatilite // multiplie ou divise si tu veux augmenter ou diminuer la periode avec la volat

et tu utilises la variable period dans les calculs de la moyenne (ce n'est plus un entier mais pas genant pour la formulation utilisee):

Code : #

////MOVING AVERAGE "JURIK" SMOOTH
//BY SOHOCOOL AOUT 2013
///VARIABLE
///P= PERIODEREFERENCE //ENTIER
///PH = PHASE  //ENTIER  DEFAUT =1
////ALF = POWER // ENTIER  DEFAUT =1
///////////////CHOIX DE 1 A 5
//OPT = OPTION //ENTIER      0= FILT 0
//                           1= FILT 1
//               DEFAUT      2= FILT2
prix=customclose

dev=std[p](prix)
avg=average[p](dev)
coefvolatilite=avg/dev
period=p*coefvolatilite

bet=(0.45*(Period-1)/(0.45*(Period-1)+2))
phase=ph

if alph=1 then
alpha = bet
elsif alph =2 then
alpha = bet*bet
elsif alph=3 then
alpha= bet*bet*bet
elsif alph =4 then
alpha =bet*bet*bet*bet
elsif alph =5 then
alpha= bet*bet*bet*bet*bet
else
alpha =bet
endif
If barindex >Period then
Filt0 = (1-alpha)*prix + alpha*Filt0[1]
Det0  = (prix - Filt0)*(1 - bet) + bet*Det0[1]
Filt1 = Filt0 + Phase*Det0
Det1  = (Filt1 - Filt2[1]) * ((1 - alpha)*(1-alpha)) + alpha*alpha*Det1[1]
Filt2 = Filt2[1] + Det1
endif
if Opt = 0 then
JSmooth = Filt0
elsif Opt = 1 then
JSmooth = Filt1
elsif Opt = 2 then
JSmooth = Filt2
else
jsmooth = filt2
endif
return  jsmooth as " Jurik Smooth"

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par DarthTrader » 12 déc. 2017 00:55

apparemment elle est dispo sur metatrader http://www.best-metatrader-indicators.com/jurik-moving-average-jma/

y a pas moyen de la transformer en language prt ou autre ?

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 12 déc. 2017 05:55

@Jim : Non je n'ai pas la formule, je cherche à la reconstituer mais je ne sais pas quelles équations mathématiques utiliser.
@jlr : C'est justement ce genre d'équations que je recherche. Je vais voir ce que je peux en tirer.
@Nomade : Je vais implémenter l'adaptivite et je ferais un retour
@Darth : Je vais transformer le code mq4 en prt et je fais un retour

:merci: à tous !

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 12 déc. 2017 10:21

Bonjour Tristan. Si tu peux le retrouver, ça m'intéresse (au cas où la JMA employée serait différente de celles déjà mentionnées). Merci !

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par HellionReign » 12 déc. 2017 10:29

Bonjour Takapoto,

Très Intéressant ton indicateur là...
Bon courage pour son développement :top:
takapoto a écrit : @Darth : Je vais transformer le code mq4 en prt et je fais un retour
:hein: What.... Est-ce vraiment possible Taka ?

On m'avait dit que c'était impossible... :|
Mais Si Oui ça m’intéresse au plus haut point pour 2, 3 indicateurs mt4... ;)

A Bientôt :mercichinois:

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 12 déc. 2017 10:30

Merci !
Je vais compiler toutes les informations que j'ai récoltées et je ferais un retour global quand j'aurais quelque chose de tangible.

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 12 déc. 2017 10:34

HellionReign a écrit : :hein: What.... Est-ce vraiment possible Taka ?
C'est possible pour des codes simples.
Malheureusement et après vérification, pour le code de la JMA ce n'est pas possible, ne serait-ce que parce qu'il n'y a pas de gestion des tableaux.
(sans parler de l'impossibilité de créer des fonctions)
Je vais donc essayer de convertir ce code en C# et je le posterai quand ce sera fait.

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par HellionReign » 12 déc. 2017 10:40

Merci Takapoto :top:

Ah que pour les codes simples... :roll:
Ce sont des indicateurs plutôt complexes... ça n'ira pas... Bon tant pis... ;)

Bon courage pour ta JMA :mercichinois:

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 12 déc. 2017 10:47

Ne prends pas ce que j'ai dit pour argent comptant : je connais très mal ProBuilder.
Peut-être devrais-tu créer une file spécifique pour chaque indicateur que tu veux transposer afin que des membres plus compétents te répondent...

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par HellionReign » 12 déc. 2017 10:57

Re takapoto,

Merci pour ta réponse Takapoto... Pourquoi pas... ;)

Mais avant Je vais voir si ces indicateurs ne bénéficient pas de droits d'auteur... :|
Je voudrais rester un maximummum dans la légalité... :roll:
J'envoie de suite un mail à l'auteur (non moins célèbre) pour lui demander son accord... ;)

A Bientôt :mercichinois:

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par Jim » 12 déc. 2017 11:17

HellionReign a écrit : Mais avant Je vais voir si ces indicateurs ne bénéficient pas de droits d'auteur... :|
Je voudrais rester un maximummum dans la légalité... :roll:
Il ne faut pas tomber dans la paranoïa !
1) il n'y a pas encore de Hadopi des indicateurs :)
2) d'un point de vue légal tu peux protéger le nom de ton indicateur, mais tu ne peux pas protéger sa formule mathématique. Donc n'importe qui a le droit d'utiliser n'importe quel indicateur en toute légalité :geek:

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par HellionReign » 12 déc. 2017 20:23

- Jim :
Bonsoir... Non rien à voir avec la parano... Je suis guéri :lol:
Ok ok... (Sauf bien sur si celui-ci est payant... :| )
Mais Merci pour l'info Jim... Je ne savais pas. :top:

Bonne Soirée :mercichinois:

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par Euraed » 19 déc. 2017 19:04

Bonjour

Je n'avais pas vu cette file
Je comprends ton intérêt pour cette Jurik Moving Average que je ne connaissais pas.
Lorsque j'ai besoin de quelque chose de similaire j'utilise la Hull.

La réponse indicielle du filtre Jurik est effectivement impressionnante en temps de montée et dépassement.
J'ai regardé un peu le sujet. Evidemment on ne trouve pas le détail (le lien de Tristan ne fournit pas d'info puisque dans le code on ne sait d'où viennent les ... c'est juste une mise en oeuvre de JMA )
Néanmoins j'ai l'impression qu'il s'agit d'un filtre d'ordre 5 avec gabarit spectral.

Cela n'aidera pas vraiment mais voici un lien sur les filtres numériques
http://paristech.institutoptique.fr/site.php?id=753&fileid=9818

Toujours est il que c'est du costaud, un peu plus que ce qui est vu au collège

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par takapoto » 19 déc. 2017 19:29

Merci pour ton document. Je ne sais pas si je pourrais l'exploiter, mais il c'est ce genre de récapitulatif théorique que je cherche.
Les "JMA" que l'on trouve pour MT4 ou prt ne sont pas des vraies JMA mais des approches plus ou moins fidèles. Elles n'en sont pas moins intéressantes.

Re: Aide pour développer l’équivalent de la Jurik Moving Ave

par Euraed » 16 janv. 2018 00:25

Bonsoir

Tu as trouvé la formule ?

Sujets similaires
DAX 200 weekly moving average
Fichier(s) joint(s) par ManiakTrader » 21 oct. 2018 13:07 (0 Réponses)
Un équivalent du tracker BX4 sur le Nasdaq ?
par helio » 18 mars 2018 23:05 (12 Réponses)
Équivalent à "position forcée" sur futures
par Benoist Rousseau » 27 juin 2018 11:10 (3 Réponses)
Site équivalent à l'EUREX pour le DJ
par Daeiondf » 29 nov. 2018 10:16 (2 Réponses)
panne cotation équivalent fermeture du marché ?
par ChristelleP » 17 juin 2021 16:24 (2 Réponses)
Average Lifetime Performance
par LLivingstone » 13 mai 2014 20:19 (5 Réponses)
Comment développer un système de trading?
par Edd » 23 avr. 2016 22:04 (16 Réponses)
Average Directional Movement Index (ADMI) sur PRT ?
par Clive » 10 déc. 2016 23:11 (5 Réponses)