Annonce
Réduire
Aucune annonce.
Ads
Réduire
[Graphe AT PRo : programmation]
Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • bambi
    Invité a répondu
    Bonjour la file

    Une petite question de programmation

    <strong>Comment faire pour changer la couleur de la courbe d'un indicateur ?</strong>

    Par exemple pour que la courbe du RSI soit verte au-dessus de 50 et rouge en dessous.
    J'ai essayé avec des SI et ALORS mais je me retrouve avec des résultats qui ne ressemble pas à grand chose.

    Merci de vos suggestions <img src='http://www.pro-at.com/style/images/icones/icon_smile_wink.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:


  • rocabaz
    a répondu
    bonjour à tous,

    sur grapheat peut-on faire apparaitre la valeur d'un indic jour sur un graphique intraday
    par exemple, la valeur RSI jour sur un graphe 2H
    est-ce possible ?

    merci beaucoup

    Laisser un commentaire:


  • alexandre
    a répondu
    Bonjour Smallcaps,

    Cela me convient fort bien. Je n'aurais pas pu le retrouver .


    Bonne journée.

    Merci <img src='http://www.pro-at.com/style/images/icones/icon_smile.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:


  • smallcaps90
    a répondu
    Bonjour Alexandre,


    Je ne crois pas que le KVO ait été posté dans la file.
    J'ai dans ma biblio perso une version qui date de 2004. Elle n'est pas optimisée mais elle fonctionne. Je te la poste telle quelle.

    <strong>Programme :</strong>

    //Klinger Volume Oscillator (KVO) de Stephen Klinger
    //smallcaps90 le 09 juin 2004

    //Variables :
    //P=Prix
    //T=tendance
    //MQ=mesure quotidienne
    //MC=mesure cumulée
    //FV=force volume
    //R=moyenne expo rapide
    //L=moyenne expo lente

    //Paramètres :
    //P1=recul de calcul de la moyenne expo rapide R
    //P2=recul de calcul de la moyenne expo lente L
    //P3=recul de calcul de la moyenne expo du signal MKVO
    //====================================================

    P(0)=Haut+Bas+Cloture

    Si P>P(1)
    Alors
    T(0)=1
    Sinon
    T(0)=-1
    FinSi

    Si P=P(1) Alors T=T(1)

    MQ(0)=Haut-Bas

    Si T=1 ET T(1)=1 Alors MC(0)=MC(1)+MQ
    Si T=1 ET T(1)=-1 Alors MC(0)=MQ(1)+MQ
    Si T=-1 ET T(1)=1 Alors MC(0)=MQ(1)+MQ
    Si T=-1 ET T(1)=-1 Alors MC(0)=MC(1)+MQ

    FV(0)=Volume*Absolu(2*(MQ/MC)-1)*T*100

    R(0)=Exposuiv(R,FV,P1)
    L(0)=Exposuiv(L,FV,P2)

    KVO=R-L
    MKVO=Exposuiv(MKVO,KVO,P3)

    //fin du code

    <strong>Propriétés :</strong>

    <center><img src='http://images.pro-at.com/forums-bourse/0110/3668_060903.png' alt='' /></center>

    <strong>Un exemple :</strong>

    <center><img src='http://images.pro-at.com/forums-bourse/0110/3668_060914.png' alt='' /></center>

    Comme c'est un oscillateur, on l'utilise (pas seul) de façon classique : divergences (baissière en mai 09, haussière fin juin début juillet 09) et croisements avec sa ligne de signal, voire avec la ligne 0.

    Cordialement.

    Laisser un commentaire:


  • alexandre
    a répondu
    Bonsoir,

    Ayant perdu la programmation du KVO, pouvez vous m'aider à retrouver celle-ci dans la file?

    D'avance merci <img src='http://www.pro-at.com/style/images/icones/icon_smile.gif' border='0' alt='' title='' align='middle' />

    //Le KVO est basé sur les principes suivants:

    //· Le range des prix (i.e. plus haut – plus bas) est une mesure du mouvement, et les volumes sont la force derrière le mouvement. La somme plus haut + plus bas + clôture définit la tendance.
    // Une accumulation se produit quand la somme du jour est supérieure à celle de la séance précédente. A l’opposé, une distribution se produit quand la somme du jour est inférieure
    // à celle de la séance précédente. Quand les sommes sont égales, la tendance existante continue.

    //· Les volumes donnent naissance aux changements continuels des prix en intra-day qui sont le reflet des pressions d’achat et de vente.
    // Le KVO quantifie la différence entre le nombre d’actions étant accumulées et distribuées sous le nom de "volume force/force des volumes".
    // Une force des volumes puissante et en hausse devrait accompagner une tendance ascendante et puis graduellement se contracter avec le temps dans le cadre des étapes finales
    // d’une tendance haussière et des premières étapes
    //de la tendance baissière qui lui succédera. Cette action devrait être suivie d’une augmentation de la force des volumes reflétant une certaine accumulation avant
    //qu’un plus-bas ne se développe.

    //· En convertissant la force des volumes en un oscillateur représentant la différence entre une moyenne mobile exponentielle à 34 et une autre à 55 unités de temps,
    // avec une ligne de déclenchement qui sera la moyenne mobile exponentielle à 13 unités de temps de cette différence, la force des volumes qui rentre et ressort du titre peut être
    // facilement suivie. Ensuite, il suffira de comparer cette force à l’action des prix pour vous aider à identifier des divergences sur des sommets et des creux.

    Laisser un commentaire:


  • ybm
    a répondu
    Vais passer aux backtests..

    avec ces P4 et P5....

    Merci de nous faire partager ton Expérience...

    Bonne fiesta pour cette fin d'Année 2009....!!!

    a+ <img src='http://www.pro-at.com/style/images/icones/icon_smile_wink.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:


  • smallcaps90
    a répondu
    Re Ybm,


    Difficile à dire.
    J'ai fait un petit essai très simple sur Michelin que tu peux reproduire.

    J'ai arrêté le processus de calcul des "cycles" en modifiant les 2 instructions :

    Si RangHisto>P4 Alors
    ...
    en :

    Si RangHisto>P4 ET RangHisto<=P5 Alors
    ...

    J'introduis un paramètre P5 que je décrémente par exemple de la valeur 30 à la valeur 0.
    Avec la dernière version de GrapheAT Pro on peut modifier la valeur de P5 dans la fenêtre Propriétés de proche en proche et on utilise la touche "Appliquer" pour visualiser l'effet obtenu.

    Sur Michelin voilà ce que j'obtiens.
    Je ne te joins pas les courbes car je manque de temps.

    Lorsque P5=25, au 24/11/09, il apparaît un "MinorCycleBuy" 2 périodes avant le 20/11/09 donc.
    Celui-ci se maintient pour P5=24 puis 23 et il disparaît pour P5=22 donc le 26/11/09.

    Pour P5=21, le 27/11/09, un "MajorCycleSell" apparaît une période avant le 26/11/09.
    Celui-ci ne disparaîtra plus.

    Lorsque P5=14, le 08/12/09, il apparaît un "MinorCycleSell" un jour avant soit le 07/11/09.
    Il se maintient jusqu'à ce que P5=8 le 16/12/09 où il disparaît.

    Puis lorsque P5=7, le 17/12/09, un nouveau "MajorCycleSell" apparaît une période avant le 16/12/09 . Il ne disparaît plus.


    Bon ce n'est qu'un petit essai dont il est difficile de tirer des conclusions définitives.
    Néanmoins un signal n'apparaît jamais à la dernière période apparemment. Il vient une période avant au moins.

    Les "MajorCycle..." semblent plus stables que les "MinorCycle...".
    Une fois établis il ne semblent pas changer (sur l'exemple de Michelin uniquement pour le moment). Faut-il en conclure qu'il ne faille s'intéreser qu'aux "MojorCycle..."?

    Ce que l'on peut voir sur la vidéo du blog indonésien est semblable.

    Cordialement.

    Laisser un commentaire:


  • ybm
    a répondu
    OK....

    j'avais corrigé ce bug...mais tu m'as devancé...!!

    A combien de barres " Maximun " estimes-tu l'effet "Repeindre"....généré par ton programme ??

    Laisser un commentaire:


  • smallcaps90
    a répondu
    Re ybm,


    Exact P8 n'existe plus dans la version simplifiée.
    Il fixe le nombre de périodes situées en début d'historique qui sont éliminées des calculs.

    Voici le bug prog corrigé :

    //================
    //Cycle_Identifier
    //================

    //v0.1 PROTOTYPE
    //29/12/2009
    //transcodé par smallcaps90
    //à partir de Cycle_Identifier.mq4
    //=================================


    //==================Ingrédients
    //
    // Range sur P4 barres
    srange=0
    Pour P4 Cours
    srange=srange+haut-bas
    FinPour
    Range=srange/P4*P2

    //Prix pour l'étude
    //ici on peut choisir une zerolag aussi
    //sur les clotures ou sur un RSI des clotures
    //
    CyclePrice(0)=Moyenne(Cloture,P1)

    //==================Cycles mineurs
    //
    Si RangHisto><strong><font color='#FF0000'>P4</font></strong> Alors

    Si Switch>-1 Alors
    Si CyclePrice<Price1BuyA Alors
    Si BuySwitchA=1 Alors
    MinorCycleBuy(RangHisto-Price1BuyB)=0
    LineBuff(RangHisto-Price1BuyB)=0
    FinSi
    Price1BuyA=CyclePrice
    Price1BuyB=RangHisto
    BuySwitchA=1
    Sinon //ici CyclePrice>=Price1BuyA
    SwitchA=RangHisto-Price1BuyB
    MinorCycleBuy(SwitchA)=-1
    LineBuff(SwitchA)=-1
    BuySwitchA=1
    CyclePrice1=CyclePrice(SwitchA)
    Cond1= CyclePrice-CyclePrice1>=Range //SweepA
    Si Cond1=1 ET SwitchA>=1 Alors
    Switch=-1
    Price1SellA=CyclePrice
    Price1SellB=RangHisto
    SellSwitchA=0
    BuySwitchA=0
    FinSi
    FinSi
    FinSi

    Si Switch<1 Alors
    Si CyclePrice>Price1SellA Alors
    Si SellSwitchA=1 Alors
    MinorCycleSell(RangHisto-Price1SellB)=0
    LineBuff(RangHisto-Price1SellB)=0
    FinSi
    Price1SellA=CyclePrice
    Price1SellB=RangHisto
    SellSwitchA=1
    Sinon
    SwitchA=RangHisto-Price1SellB
    MinorCycleSell(SwitchA)=1
    LineBuff(SwitchA)=1
    SellSwitchA=1
    CyclePrice2=CyclePrice(SwitchA)
    Cond1=(CyclePrice2-CyclePrice)>=Range
    Si Cond1=1 ET SwitchA>=1 Alors
    Switch=1
    Price1BuyA=CyclePrice
    Price1BuyB=RangHisto
    SellSwitchA=0
    BuySwitchA=0
    FinSi
    FinSi
    FinSi

    FinSi

    LineBuff=0
    MinorCycleBuy=0
    MinorCycleSell=0


    //==================Cycles majeurs
    //
    Si RangHisto><strong><font color='#FF0000'>P4</font></strong> Alors

    Si Switch2>-1 Alors
    Si CyclePrice<Price2BuyA Alors
    Si BuySwitchB=1 Alors
    MajorCycleBuy(RangHisto-Price2BuyB)=0
    //LineBuff(RangHisto-Price2BuyB)=0
    FinSi
    Price2BuyA=CyclePrice
    Price2BuyB=RangHisto
    BuySwitchB=1
    Sinon
    SwitchB=RangHisto-Price2BuyB
    MajorCycleBuy(SwitchB)=-1
    //LineBuff(SwitchB)=-1
    BuySwitchB=1
    CyclePrice3=CyclePrice(SwitchB)
    Cond6= CyclePrice-CyclePrice3>=Range*P3
    Si Cond6 ET SwitchB>=1 Alors
    Switch2=-1
    Price2SellA=CyclePrice
    Price2SellB=RangHisto
    SellSwitchB=0
    BuySwitchB=0
    FinSi
    FinSi
    FinSi

    Si Switch2<1 Alors
    Si CyclePrice>Price2SellA Alors
    Si SellSwitchB=1 Alors
    MajorCycleSell(RangHisto-Price2SellB)=0
    //LineBuff(RangHisto-Price2SellB)=0
    FinSi
    Price2SellA=CyclePrice
    Price2SellB=RangHisto
    SellSwitchB=1
    Sinon
    SwitchB=RangHisto-Price2SellB
    MajorCycleSell(SwitchB)=1
    //LineBuff(SwitchB)=1
    SellSwitchB=1
    CyclePrice4=CyclePrice(SwitchB)
    Cond6=(CyclePrice4-CyclePrice)>=Range*P3 //SweepB
    Si Cond6=1 ET SwitchB>=1 Alors
    Switch2=1
    Price2BuyA=CyclePrice
    Price2BuyB=RangHisto
    SellSwitchB=0
    BuySwitchB=0
    FinSi
    FinSi
    FinSi

    FinSi

    LineBuff=0
    MajorCycleBuy=0
    MajorCycleSell=0


    //fin du code

    Si tu veux plutôt utiliser la profondeur de l'historique qui serait examinée, tu pourrais remplacer les deux instructions qui contiennent P4 en rouge gras dans le listing ci-dessus par :

    <strong>Si RangHisto>=Finhisto-P4 Alors</strong>

    A ce moment là tu donnerais à P4 le nombre de périodes sur lesquelles le calcul serait fait en fin d'historique.

    Bon courage avec le bouquin de B. Williams...

    Cordialement.

    Laisser un commentaire:


  • ybm
    a répondu
    Smallcaps90..

    Sur ton programme..j'ai une erreur "parametre P8 non défini "....!!!

    Et j'ai un trou de mémoire car il me semble qu'il s'agit du réglage de la profondeur de l'historique...???

    Oui...non ??

    merci de m'éclairer..
    a+

    Laisser un commentaire:


  • ybm
    a répondu
    Tu as visé dans le mille.....!!!

    car sur ma table de chevet...repose " New Trading Dimensions".....de Bill Williams...

    le tout en version original....ce qui ne facilite pas la tache...!!!

    Awesome Oscillator....est a la base de mon trading..avec " l'impulse de Elder".....

    Encore du boulot en supplément..

    Quand on aime...on ne compte pas..!!


    Merci

    a+ <img src='http://www.pro-at.com/style/images/icones/icon_smile_wink.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:


  • smallcaps90
    a répondu
    Bonjour ybm,



    Oui tu as raison pour l'indicateur indonésien situé au dessus du CycleIdentifier sur la vidéo.
    Il ne repeint pas lui. Il se contente de reprendre les intersections que tu as citées. On retrouve qq explications qui le confirment au dessus du panel qui montre les paramètres du CycleIdentifier.

    <center><img src='http://images.pro-at.com/forums-bourse/1209/3668_300900.png' alt='' /></center>

    Barres jaunes (Kuning) = croisements + et - du AC de Bill Williams avec la ligne 0 ;
    Barres bleues (Biru) = croisements + de la Stoch (5,3,4) avec la ligne 20 ;
    Barres rouges (Merah) = croisements - de la Stoch (5,3,4) avec la ligne 80.

    Rien de bien nouveau.

    Pour ce qui concerne Bill Williams et son système fractal "Profituny", j'avais ouvert un post à ce sujet en 2004 (!) à :
    <a href='/ref.php?uri=http%3A%2F%2Fwww.pro-at.com%2Fforums-bourse%2Fbourse-1-14879.html%23314137' target="_blank">http://www.pro-at.com/forums-bourse/bourse-1-14879...</a>
    Vu le peu d'intérêt que cela avait suscité, je n'avais pas posté ses indicateurs dans la file ici.

    Si cela t'intéresse, le AC(Awesome Accelerator) est un oscillateur de moyennes qui utilise le AO (Awesome Oscillator) qui n'est qu'une sorte de MACD sur moyennes arithmétiques :

    //==================================
    //AWESOME OSCILLATOR (sorte de MACD)
    //de Bill Williams
    //19 dec2004
    //

    AO(0)=MOYENNE((HAUT+BAS)/2,5)-MOYENNE((HAUT+BAS)/2,34)
    //AO(0)=MOYENNE(CLOTURE,5)-MOYENNE(CLOTURE,34)

    SI AO>AO(1) ALORS
    AO_GREEN=AO
    SINON
    SI AO<AO(1) ALORS
    AO_RED=AO
    FINSI
    FINSI

    //===================================
    //AWESOME ACCELERATOR (utilise le AO)
    //de Bill Williams
    //19 dec 2004
    //

    AC(0)=<strong>AO.AO</strong>-MOYENNE(AO.AO,5)

    SI AC>AC(1) ALORS
    AC_GREEN=AC
    SINON
    SI AC<AC(1) ALORS
    AC_RED=AC
    FINSI
    FINSI


    J'ai écrit "AO.AO" ci-dessus car je n'avais pas créé le AC comme indicateur dérivé du AO, je devais donc récupérer le AO, d'où la notation.
    Le AC est en avance sur le AO du fait de son calcul identique à une pseudo-dérivée.

    Voici ce que cela donne avec Michelin :

    <center><img src='http://images.pro-at.com/forums-bourse/1209/3668_300942.png' alt='' /></center>

    Je ne suis pas entré dans les détails pour ce qui concerne l'utilisation du système indonésien. Apparemment les barres rouges seraient des signaux de sortie et les bleues des signaux d'entrée longue. Je ne sais pas comment sont utilisées les barres jaunes.
    Je te laisse le soin de comparer avec le CycleIdentifier qui repeint, parfois, les dernière barres c'est évident avec les lignes du type :
    <em>MinorCycleBuy(RangHisto-Price1BuyB)=0
    LineBuff(RangHisto-Price1BuyB)=0 </em>
    etc.

    Cordialement.

    Laisser un commentaire:


  • ybm
    a répondu
    Je viens de me mettre a l'indonésien..!!

    ai regardé la vidéo...

    barre bleu = croisement sto/20
    barre rouge = croisement sto/80
    barre jaune = croisement 0 ...exact ???

    Si ai bien compris...cela ne repeint pas le passé de facon si évidente ..???

    Ton avis..svp <img src='http://www.pro-at.com/style/images/icones/icon_smile_wink.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:


  • smallcaps90
    a répondu
    Re ybm,


    Cà n'a pas été facile.
    Bon j'ai du simplifier au max et certains paramètres fixés en tête du programme modèle ont disparu. Je me suis demandé s'ils étaient vraiment utiles...
    Maintenant, comme tu le dis si bien, c'est à toi que revient de faire le boulot! Bon courage donc.

    Cordialement.

    Laisser un commentaire:


  • ybm
    a répondu
    T'es un terrible ,...toi......

    Me voila avec un programme au top....

    et du boulot pour plusieurs semaines..!!!

    Franchement....merci

    Si cela intéresse d'autre personnes....la porte est grande ouverte...

    a+ <img src='http://www.pro-at.com/style/images/icones/icon_smile_wink.gif' border='0' alt='' title='' align='middle' />

    Laisser un commentaire:

Chargement...
X