Announcement

Collapse
No announcement yet.

Supertrend

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Supertrend

    Salve ragazzi,

    vedo che il mio precedente thread non ha suscitato molti consensi.....

    vediamo se questo riceverĂ  maggiori contributi.

    cmq grazie....

    Veniamo al punto: ho trovato la formula per un indicatore (Supertrend) che mi interesserebbe implementare su eSignal, ma essendo in easylanguage e sopratutto capendo una mazza di programmazione non riesco a plottare....




    INPUT: HBKTypPrxCentr(1),HBKTypPrxSort(2),HBKintrvp(1),kl argeurSup(1.8),klargeurInf(-1.8),HBKLisp(10);
    var: HBKPrxCentr(C),HBKPrxSort(C),HBKPlusH(0),HBKPlusB( 0),HB(0),AmplitudVrGIntHBK(0),HBKAtr(0),
    HBKMoy(0),HBKH(0),HBKB(0),HBKHMoy(0),HBKBMoy(0),HB Ktendance(0),
    HBKLisIntrvp(HBKLisp*HBKintrvp),Maxccant(HBKLisInt rvp);



    HBKPlusH=HighestFC(HC,HBKintrvp);
    HBKPlusB=LowestFC(BC,HBKintrvp);
    if HBKTypPrxCentr =1 then HBKPrxCentr=cc;
    if HBKTypPrxCentr =2 then HBKPrxCentr=(HBKPlusH+HBKPlusB)*0.5;
    if HBKTypPrxCentr =3 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc)/3;
    if HBKTypPrxCentr =4 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc+OC[HBKintrvp-1]) *0.25;
    if HBKTypPrxCentr =5 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc[HBKintrvp])/3;
    if HBKTypPrxCentr =6 then HBKPrxCentr=(HBKPlusH+HBKPlusB+cc[HBKintrvp]+OC[HB Kintrvp-1])*0.25;

    if HBKTypPrxSort =1 then HBKPrxSort=cc;
    if HBKTypPrxSort =2 then HBKPrxSort=(HBKPlusH+HBKPlusB)*0.5;
    if HBKTypPrxSort =3 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc)/3;
    if HBKTypPrxSort =4 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc+OC[HBKintrvp-1])* 0.25;
    if HBKTypPrxSort =5 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc[HBKintrvp])/3;
    if HBKTypPrxSort =6 then HBKPrxSort=(HBKPlusH+HBKPlusB+cc[HBKintrvp]+OC[HBK intrvp-1])*0.25;

    AmplitudVrGIntHBK=(maxlist(HBKPlusH,CC[HBKintrvp]) -minlist(HBKPlusB,CC[HBKintrvp]))*0.5;

    Input:typeCalcul(6),GrafInfOuSup(1);
    if HBKLisp>1 then begin
    if typeCalcul=1 then begin
    HBKMoy=average(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=average(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;
    end;
    if typeCalcul=2 then begin
    HBKMoy=average(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=average(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;IF HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]);
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;IF HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]);
    end;
    if typeCalcul=3 then begin
    HBKMoy=xaverage(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=xaverage(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;
    end;
    if typeCalcul=4 then begin
    HBKMoy=Xaverage(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=Xaverage(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;IF HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]);
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;IF HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]);
    end;
    if typeCalcul=5 then begin
    HBKMoy=Waverage(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=Waverage(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;
    end;
    if typeCalcul=6 then begin
    HBKMoy=average(HBKPrxCentr,HBKLisIntrvp);
    HBKAtr=Waverage(AmplitudVrGIntHBK,HBKLisIntrvp);
    HBKHMoy=HBkmoy+klargeurSup*HBKAtr;IF HBKTendance=-1 then HBKHmoy=minlist(HBKHmoy,HBKHmoy[1]);
    HBKBMoy=HBkmoy+klargeurInf*HBKAtr;;IF HBKTendance=1 then HBKBmoy=maxlist(HBKBmoy,HBKBmoy[1]);
    end;
    end else begin
    HBKH=HBKPrxCentr+klargeurSup*AmplitudVrGIntHBK;
    HBKB=HBKPrxCentr+klargeurInf*AmplitudVrGIntHBK;
    HBKMoy=HBKPrxCentr;
    HBKHMoy=HBKH;
    HBKBMoy=HBKB;
    end;

    if HBKPrxSort>HBKHMoy then HBKtendance=1;
    if HBKPrxSort<HBKBMoy then HBKtendance=-1;

    if GrafInfouSup=1 then begin

    Plot1(HBKMoy+GapJcumu,"Moy HB");
    if klargeurSup>0 then begin
    Plot2(HBKHMoy+GapJcumu,"Bande Sup");
    if HBKtendance>0 then setplotcolor(3,yellow);
    end;
    if klargeuriNF<0 then begin
    if HBKtendance<0 then setplotcolor(2,yellow);
    end;
    Plot3(HBKBMoy+GapJcumu,"Bande Inf");
    if GrafInfouSup=3 then
    Plot4(oC,"Ouverture",yellow);

    end else begin
    if HBKtendance>0 then begin
    Plot2(HBKHMoy-HBKMoy,"Bande Sup");
    setplotcolor(2,BLACK);
    end;
    if HBKtendance<0 then begin
    Plot2(HBKBMoy-HBKMoy,"Bande Sup");
    setplotcolor(2,red);
    end;
    pLOT1(0,"Moy HB",blue);
    if GrafInfouSup=2 then
    Plot4(oC-HBKMoy,"Ouverture",yellow);

    end;

    Qualcuno può cortesemente darmi 1 mano???

    Grazie mille

  • #2
    Ciao sgrich,

    nel caso non ti venisse nessuno in aiuto sul forum, ti ricordo che esistono compagnie private in grado di creare EFS da formule scritte in altri linguaggi. Maggiori informazioni qui
    Jan
    eSignal Support

    Comment

    Working...
    X